/* ==========================================================
   MYCAMPER_ARTICLES_CSS_16B2
   Reusable modern category page
   ========================================================== */


body.com-content.view-category.layout-blog #sp-main-body {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}


body.com-content.view-category.layout-blog #sp-main-body > .container,
body.com-content.view-category.layout-blog #sp-main-body > .container-fluid {
    max-width: none !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}


body.com-content.view-category.layout-blog #sp-component {
    padding-left: 0 !important;
    padding-right: 0 !important;
}


.mca-page {
    --mca-orange: #ff7900;
    --mca-orange-dark: #ee6700;
    --mca-blue: #062d49;
    --mca-text: #182331;
    --mca-muted: #6c7887;
    --mca-border: #e3e9ef;
    --mca-soft: #f6f8fb;

    color: var(--mca-text);
    background: #fff;
}


.mca-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0,0,0,0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}


/* ==========================================================
   HERO
   ========================================================== */


.mca-fullbleed {
    position: relative;
    left: 50%;
    right: 50%;

    width: 100vw;

    margin-left: -50vw;
    margin-right: -50vw;
}


.mca-hero {
    overflow: hidden;
    background: #062d49;
}


.mca-hero__picture,
.mca-hero__picture img {
    display: block;
    width: 100%;
}


.mca-hero__picture img {
    height: auto;
}


.mca-search {
    position: absolute;

    left:
        max(
            4.8vw,
            calc(
                (100vw - 1500px)
                / 2
            )
        );

    bottom: 28px;

    z-index: 3;

    display: grid;

    grid-template-columns:
        auto
        minmax(0, 1fr)
        auto;

    align-items: center;

    width:
        min(
            540px,
            calc(100% - 48px)
        );

    min-height: 52px;

    padding:
        5px
        5px
        5px
        17px;

    border:
        1px solid
        rgba(255,255,255,.50);

    border-radius: 12px;

    background:
        rgba(255,255,255,.97);

    box-shadow:
        0 10px 35px
        rgba(0,0,0,.20);

    backdrop-filter:
        blur(8px);
}


.mca-search__icon {
    margin-right: 8px;

    color: #26384a;

    font-size: 24px;
}


.mca-search input[type="search"] {
    min-width: 0;

    height: 40px;

    padding: 0 7px;

    border: 0 !important;

    outline: 0 !important;

    background:
        transparent !important;

    box-shadow:
        none !important;

    color: #26384a;

    font-size: 14px;
}


.mca-search input[type="search"]::placeholder {
    color: #8994a2;
}


.mca-search button {
    min-width: 108px;

    height: 42px;

    padding:
        0 18px;

    border: 0;

    border-radius: 9px;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            #ff8615,
            #ff6f00
        );

    font-size: 14px;
    font-weight: 800;

    cursor: pointer;

    transition:
        transform .15s ease,
        box-shadow .15s ease;
}


.mca-search button:hover {
    transform:
        translateY(-1px);

    box-shadow:
        0 7px 18px
        rgba(var(--mca-orange-rgb, 255, 121, 0),.28);
}


/* ==========================================================
   TOPICS
   ========================================================== */


.mca-topics {
    position: relative;

    z-index: 4;

    width:
        min(
            1500px,
            calc(100% - 48px)
        );

    display: grid;

    grid-template-columns:
        repeat(
            7,
            minmax(0,1fr)
        );

    gap: 11px;

    margin:
        15px auto
        22px;
}


.mca-topic {
    min-height: 66px;

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 7px;

    padding:
        10px 8px;

    border:
        1px solid
        #e6ecf2;

    border-radius: 12px;

    color:
        #2c3948 !important;

    background:
        linear-gradient(
            180deg,
            #fbfcfd,
            #f3f6f9
        );

    font-size: 13px;
    font-weight: 750;

    line-height: 1.2;

    text-align: center;
    text-decoration: none !important;

    box-shadow:
        0 4px 15px
        rgba(13,47,73,.04);

    transition:
        transform .16s ease,
        border-color .16s ease,
        box-shadow .16s ease;
}


.mca-topic:hover {
    transform:
        translateY(-2px);

    border-color:
        rgba(var(--mca-orange-rgb, 255, 121, 0),.42);

    box-shadow:
        0 9px 24px
        rgba(13,47,73,.09);
}


.mca-topic--active {
    border-color:
        var(--mca-orange) !important;

    color: #fff !important;

    background:
        linear-gradient(
            135deg,
            #ff8a19,
            #ff6e00
        );

    box-shadow:
        0 8px 23px
        rgba(var(--mca-orange-rgb, 255, 121, 0),.22);
}


.mca-topic__icon {
    font-size: 18px;
}


/* ==========================================================
   MAIN SHELL
   ========================================================== */


.mca-shell {
    width:
        min(
            1500px,
            calc(100% - 48px)
        );

    margin:
        0 auto
        42px;
}


/* ==========================================================
   FEATURED
   ========================================================== */


.mca-feature-row {
    display: grid;

    grid-template-columns:
        minmax(0, 2fr)
        minmax(310px, .86fr);

    gap: 24px;

    margin-bottom: 22px;
}


.mca-feature {
    min-width: 0;

    overflow: hidden;

    border-radius: 15px;

    background: #071d2d;

    box-shadow:
        0 12px 35px
        rgba(11,43,65,.12);
}


.mca-feature__link {
    position: relative;

    display: block;

    min-height: 430px;

    color: #fff !important;

    text-decoration: none !important;
}


.mca-feature__link > img {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform .45s ease;
}


.mca-feature:hover
.mca-feature__link > img {
    transform:
        scale(1.025);
}


.mca-feature__shade {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(3,15,25,.06) 19%,
            rgba(3,15,25,.32) 52%,
            rgba(3,15,25,.92) 100%
        );
}


.mca-feature__content {
    position: absolute;

    z-index: 2;

    right: 0;
    bottom: 0;
    left: 0;

    padding:
        30px
        30px
        26px;
}


.mca-feature__badge {
    display: inline-flex;

    margin-bottom: 11px;

    padding:
        6px 10px;

    border-radius: 6px;

    color: #fff;

    background:
        var(--mca-orange);

    font-size: 11px;
    font-weight: 900;

    letter-spacing: .3px;
}


.mca-feature h2 {
    max-width: 800px;

    margin:
        0 0
        8px;

    color: #fff;

    font-size:
        clamp(
            27px,
            2.1vw,
            40px
        );

    font-weight: 850;

    line-height: 1.08;
}


.mca-feature p {
    max-width: 790px;

    margin:
        0 0
        15px;

    color:
        rgba(255,255,255,.88);

    font-size: 14px;

    line-height: 1.5;
}


.mca-feature__meta {
    display: flex;

    flex-wrap: wrap;

    gap:
        8px
        17px;

    color:
        rgba(255,255,255,.78);

    font-size: 11.5px;
}


.mca-feature__arrow {
    position: absolute;

    z-index: 3;

    right: 22px;
    bottom: 28px;

    width: 46px;
    height: 46px;

    display: flex;

    align-items: center;
    justify-content: center;

    border:
        1px solid
        rgba(255,255,255,.70);

    border-radius: 50%;

    color: #fff;

    background:
        rgba(2,18,30,.45);

    font-size: 35px;
    font-weight: 300;

    line-height: 1;
}


/* ==========================================================
   POPULAR
   ========================================================== */


.mca-popular {
    overflow: hidden;

    padding:
        20px
        19px
        13px;

    border:
        1px solid
        var(--mca-border);

    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 8px 27px
        rgba(15,50,74,.07);
}


.mca-popular__head {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 15px;

    padding-bottom: 12px;

    border-bottom:
        1px solid
        #edf0f3;
}


.mca-popular__head h2 {
    margin: 0;

    font-size: 17px;
    font-weight: 850;
}


.mca-popular__head > span {
    color:
        #7890a2;

    font-size: 10px;
}


.mca-popular__list {
    margin: 0;
    padding: 0;

    list-style: none;
}


.mca-popular__list li {
    border-bottom:
        1px solid
        #edf0f3;
}


.mca-popular__list li:last-child {
    border-bottom: 0;
}


.mca-popular__list a {
    display: grid;

    grid-template-columns:
        27px
        64px
        minmax(0,1fr);

    gap: 10px;

    align-items: center;

    min-height: 63px;

    padding:
        8px 0;

    color:
        var(--mca-text) !important;

    text-decoration: none !important;
}


.mca-popular__number {
    width: 25px;
    height: 25px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color:
        #394959;

    background:
        #eef2f5;

    font-size: 12px;
    font-weight: 850;
}


.mca-popular__list li:first-child
.mca-popular__number {
    color:
        #5e3500;

    background:
        #ffc661;
}


.mca-popular__list img {
    width: 64px;
    height: 44px;

    object-fit: cover;

    border-radius: 7px;
}


.mca-popular__copy {
    min-width: 0;
}


.mca-popular__copy strong {
    display: -webkit-box;

    overflow: hidden;

    color:
        #273544;

    font-size: 11.5px;
    font-weight: 800;

    line-height: 1.25;

    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}


.mca-popular__copy small {
    display: block;

    margin-top: 3px;

    color:
        #8994a0;

    font-size: 9.5px;
}


/* ==========================================================
   CONTENT + SIDEBAR
   ========================================================== */


.mca-content-layout {
    display: grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(330px, 420px);

    gap: 25px;

    align-items: start;
}


.mca-main {
    min-width: 0;
}


.mca-toolbar {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    min-height: 52px;

    margin-bottom: 13px;

    padding:
        7px
        2px;
}


.mca-toolbar > div:first-child {
    display: flex;

    align-items: baseline;

    flex-wrap: wrap;

    gap:
        5px
        10px;
}


.mca-toolbar strong {
    color:
        #253443;

    font-size: 14px;
}


.mca-toolbar span {
    color:
        #8793a0;

    font-size: 11px;
}


.mca-view-switch {
    display: flex;

    gap: 6px;
}


.mca-view-switch button {
    width: 35px;
    height: 35px;

    border:
        1px solid
        #dfe5ea;

    border-radius: 8px;

    color:
        #526170;

    background: #fff;

    font-size: 20px;

    cursor: pointer;
}


.mca-view-switch button.is-active {
    color: #fff;

    border-color:
        var(--mca-orange);

    background:
        var(--mca-orange);
}


/* ==========================================================
   CARDS
   ========================================================== */


.mca-cards {
    display: grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        );

    gap: 18px;
}


.mca-card {
    min-width: 0;

    overflow: hidden;

    border:
        1px solid
        var(--mca-border);

    border-radius: 13px;

    background: #fff;

    box-shadow:
        0 5px 20px
        rgba(20,51,72,.055);

    transition:
        transform .17s ease,
        box-shadow .17s ease;
}


.mca-card:hover {
    transform:
        translateY(-2px);

    box-shadow:
        0 10px 28px
        rgba(20,51,72,.10);
}


.mca-card__image {
    position: relative;

    display: block;

    aspect-ratio:
        16 / 9;

    overflow: hidden;
}


.mca-card__image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform .35s ease;
}


.mca-card:hover
.mca-card__image img {
    transform:
        scale(1.025);
}


.mca-card__image > span {
    position: absolute;

    top: 11px;
    left: 11px;

    padding:
        5px 9px;

    border-radius: 5px;

    color: #fff;

    background:
        #1976d2;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .2px;
}


.mca-card__body {
    padding:
        14px
        15px
        13px;
}


.mca-card h2 {
    margin:
        0 0
        7px;

    font-size: 17px;
    font-weight: 850;

    line-height: 1.2;
}


.mca-card h2 a {
    color:
        #1f2c39 !important;

    text-decoration: none !important;
}


.mca-card p {
    min-height: 42px;

    margin:
        0 0
        11px;

    color:
        #64717d;

    font-size: 12px;

    line-height: 1.45;
}


.mca-card__meta {
    display: flex;

    flex-wrap: wrap;

    gap:
        5px
        12px;

    color:
        #8b96a0;

    font-size: 9.5px;
}


/* List view */

.mca-cards--list {
    grid-template-columns:
        1fr;
}


.mca-cards--list
.mca-card {
    display: grid;

    grid-template-columns:
        minmax(220px, 34%)
        minmax(0,1fr);
}


.mca-cards--list
.mca-card__image {
    aspect-ratio: auto;

    min-height: 180px;
}


/* ==========================================================
   SIDEBAR PROMOS
   ========================================================== */


.mca-sidebar {
    display: grid;

    gap: 20px;

    min-width: 0;
}


.mca-map-promo {
    display: block;

    overflow: hidden;

    border-radius: 14px;

    box-shadow:
        0 9px 28px
        rgba(16,48,69,.11);

    transition:
        transform .17s ease,
        box-shadow .17s ease;
}


.mca-map-promo:hover {
    transform:
        translateY(-2px);

    box-shadow:
        0 13px 34px
        rgba(16,48,69,.16);
}


.mca-map-promo picture,
.mca-map-promo img {
    display: block;

    width: 100%;
}


.mca-map-promo img {
    height: auto;
}


/* ==========================================================
   NEWSLETTER
   ========================================================== */


.mca-newsletter {
    position: relative;

    overflow: hidden;

    min-height: 500px;

    border:
        1px solid
        #e1e8ef;

    border-radius: 14px;

    background:
        #eef6fd;

    box-shadow:
        0 9px 28px
        rgba(16,48,69,.09);
}


.mca-newsletter__art {
    position: absolute;

    inset: 0;

    z-index: 0;
}


.mca-newsletter__art,
.mca-newsletter__art img {
    display: block;

    width: 100%;
    height: 100%;
}


.mca-newsletter__art img {
    object-fit: cover;

    object-position:
        center top;
}


.mca-newsletter__form-wrap {
    position: absolute;

    z-index: 3;

    top: 34%;

    right: 6.5%;
    left: 6.5%;
}


.mca-newsletter__mobile {
    display: none;
}


/*
 * AcyMailing — make the REAL form fit the design.
 */

.mca-newsletter
.acym_module,
.mca-newsletter
.acym_fulldiv,
.mca-newsletter
.acym_module_form {
    width: 100% !important;

    margin: 0 !important;

    padding: 0 !important;

    background:
        transparent !important;
}


.mca-newsletter
table.acym_form,
.mca-newsletter
table.acym_form tbody,
.mca-newsletter
table.acym_form tr {
    width: 100% !important;

    margin: 0 !important;

    padding: 0 !important;
}


.mca-newsletter
table.acym_form tr {
    display: grid !important;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        );

    gap: 7px;
}


.mca-newsletter
table.acym_form td {
    display: block !important;

    width: auto !important;

    padding: 0 !important;
}


.mca-newsletter
table.acym_form input.cell {
    width: 100% !important;
    height: 38px !important;

    margin: 0 !important;

    padding:
        0 10px !important;

    border:
        1px solid
        #cfdbe5 !important;

    border-radius:
        8px !important;

    outline:
        none !important;

    background:
        rgba(255,255,255,.96) !important;

    box-shadow:
        0 3px 12px
        rgba(17,55,82,.07) !important;

    color:
        #243649 !important;

    font-size:
        10.5px !important;
}


.mca-newsletter
.acysubbuttons {
    display: block !important;
}


.mca-newsletter
.subbutton {
    width: 100% !important;
    height: 38px !important;

    margin: 0 !important;

    padding:
        0 10px !important;

    border:
        0 !important;

    border-radius:
        8px !important;

    color:
        #fff !important;

    background:
        linear-gradient(
            135deg,
            #ff8817,
            #ff6f00
        ) !important;

    box-shadow:
        0 6px 15px
        rgba(var(--mca-orange-rgb, 255, 121, 0),.20) !important;

    font-size:
        11px !important;
    font-weight:
        850 !important;
}


.mca-newsletter
.unsubbutton {
    display: none !important;
}


.mca-newsletter
.acym__field__error__block {
    font-size:
        8px !important;
}


.mca-newsletter
.acym_module_error,
.mca-newsletter
.acym_module_success {
    padding:
        7px !important;

    border-radius:
        7px !important;

    font-size:
        10px !important;
}


/* ==========================================================
   PAGINATION
   ========================================================== */


.mca-pagination {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    margin-top: 24px;
}


.mca-pagination
.pagination {
    margin: 0;
}


.mca-pagination
.page-link {
    color:
        #344454;

    border-color:
        #dfe5ea;
}


.mca-pagination
.active
.page-link {
    color: #fff;

    border-color:
        var(--mca-orange);

    background:
        var(--mca-orange);
}


.mca-pagination__counter {
    color:
        #65717e;

    font-size:
        11px;
}


/* ==========================================================
   TABLET
   ========================================================== */


@media (max-width: 1100px) {

    .mca-topics {
        grid-template-columns:
            repeat(
                4,
                minmax(0,1fr)
            );
    }


    .mca-feature-row {
        grid-template-columns:
            minmax(0,1.6fr)
            minmax(280px,.9fr);
    }


    .mca-content-layout {
        grid-template-columns:
            minmax(0,1fr)
            340px;
    }

}


@media (max-width: 900px) {

    .mca-search {
        bottom: 18px;

        left: 24px;
    }


    .mca-feature-row,
    .mca-content-layout {
        grid-template-columns:
            1fr;
    }


    .mca-feature__link {
        min-height: 390px;
    }


    .mca-sidebar {
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );

        align-items: start;
    }


    .mca-newsletter {
        min-height: 500px;
    }


    .mca-newsletter__desktop {
        display: none;
    }


    .mca-newsletter__mobile {
        display: block;
    }


    .mca-newsletter
    table.acym_form tr {
        grid-template-columns:
            1fr;
    }


    .mca-newsletter__form-wrap {
        top: 31%;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */


@media (max-width: 700px) {

    .mca-search {
        right: 15px;
        bottom: 18px;
        left: 15px;

        width: auto;

        min-height: 47px;

        padding:
            4px
            4px
            4px
            12px;

        border-radius: 10px;
    }


    .mca-search__icon {
        font-size: 20px;
    }


    .mca-search input[type="search"] {
        height: 37px;

        font-size: 12px;
    }


    .mca-search button {
        min-width: 84px;

        height: 38px;

        padding:
            0 11px;

        font-size: 12px;
    }


    .mca-topics {
        width:
            calc(100% - 24px);

        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );

        gap: 8px;

        margin:
            12px auto
            18px;
    }


    .mca-topic {
        min-height: 53px;

        font-size: 11px;
    }


    .mca-shell {
        width:
            calc(100% - 24px);

        margin-bottom: 25px;
    }


    .mca-feature-row {
        gap: 15px;
    }


    .mca-feature__link {
        min-height: 330px;
    }


    .mca-feature__content {
        padding:
            22px
            18px
            19px;
    }


    .mca-feature h2 {
        padding-right: 36px;

        font-size: 24px;
    }


    .mca-feature p {
        display: -webkit-box;

        overflow: hidden;

        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
    }


    .mca-feature__arrow {
        right: 13px;
        bottom: 17px;

        width: 38px;
        height: 38px;

        font-size: 29px;
    }


    .mca-popular {
        padding:
            16px
            14px
            9px;
    }


    .mca-cards {
        grid-template-columns:
            1fr;
    }


    .mca-cards--list
    .mca-card {
        grid-template-columns:
            1fr;
    }


    .mca-cards--list
    .mca-card__image {
        min-height: 0;

        aspect-ratio:
            16 / 9;
    }


    .mca-sidebar {
        grid-template-columns:
            1fr;
    }


    .mca-newsletter {
        min-height:
            min(
                590px,
                130vw
            );
    }


    .mca-newsletter__form-wrap {
        top: 31.5%;

        right: 7%;
        left: 7%;
    }


    .mca-pagination {
        flex-direction: column;

        align-items: center;
    }

}


/* ==========================================================
   VERY SMALL MOBILE
   ========================================================== */


@media (max-width: 420px) {

    .mca-search input[type="search"]::placeholder {
        font-size: 10px;
    }


    .mca-search button {
        min-width: 74px;

        padding:
            0 8px;
    }


    .mca-popular__head {
        align-items: flex-start;

        flex-direction: column;

        gap: 3px;
    }


    .mca-newsletter {
        min-height: 515px;
    }

}


/* ==========================================================
   ACCESSIBILITY
   ========================================================== */


.mca-page a:focus-visible,
.mca-page button:focus-visible,
.mca-page input:focus-visible {
    outline:
        3px solid
        rgba(var(--mca-orange-rgb, 255, 121, 0),.75);

    outline-offset:
        3px;
}


@media (prefers-reduced-motion: reduce) {

    .mca-page *,
    .mca-page *::before,
    .mca-page *::after {
        transition:
            none !important;

        scroll-behavior:
            auto !important;
    }

}

/* ==========================================================
   com_mycampercontent v0.4.1 dynamic integration helpers
   ========================================================== */
.mca-cards {
    grid-template-columns: repeat(var(--mca-grid-columns, 2), minmax(0, 1fr));
}

.mca-content-layout--no-sidebar {
    grid-template-columns: minmax(0, 1fr);
}

.mca-feature-row--single {
    grid-template-columns: minmax(0, 1fr);
}

@media (max-width: 700px) {
    .mca-cards {
        grid-template-columns: 1fr;
    }
}


/* ==========================================================
   MYCAMPER CONTENT TAG PAGE — v0.5.0
   Scoped additions only. Existing category visuals unchanged.
   ========================================================== */

body.com-tags.view-tag.layout-default #sp-main-body {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body.com-tags.view-tag.layout-default #sp-main-body > .container,
body.com-tags.view-tag.layout-default #sp-main-body > .container-fluid {
    max-width: none !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.com-tags.view-tag.layout-default #sp-component {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.mca-page--tag .mca-tag-hero {
    min-height: clamp(390px, 33vw, 620px);
}

.mca-page--tag .mca-tag-hero__copy {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: max(4.8vw, calc((100vw - 1500px) / 2));
    width: min(620px, calc(100% - 48px));
    transform: translateY(-58%);
    padding: 28px 32px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 22px;
    color: #fff;
    background: linear-gradient(135deg, rgba(4,34,55,.92), rgba(4,34,55,.68));
    box-shadow: 0 18px 55px rgba(0,0,0,.24);
    backdrop-filter: blur(5px);
}

.mca-page--tag .mca-tag-hero__eyebrow {
    display: block;
    margin-bottom: 3px;
    color: #fff;
    font-size: clamp(18px, 1.6vw, 28px);
    font-weight: 800;
    line-height: 1.1;
}

.mca-page--tag .mca-tag-hero__copy h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(42px, 4vw, 74px);
    font-weight: 900;
    line-height: .98;
    letter-spacing: -.035em;
    text-shadow: 0 3px 18px rgba(0,0,0,.28);
}

.mca-page--tag .mca-tag-hero__copy p {
    max-width: 520px;
    margin: 15px 0 0;
    color: rgba(255,255,255,.94);
    font-size: clamp(16px, 1.2vw, 21px);
    font-weight: 600;
    line-height: 1.35;
}

.mca-page--tag .mca-tag-hero__slogan {
    display: block;
    margin-top: 11px;
    color: #fff;
    font-size: 15px;
    font-weight: 750;
}

.mca-page--tag .mca-tag-hero__count {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    margin-top: 17px;
    padding: 7px 14px;
    border-radius: 999px;
    color: #162535;
    background: rgba(255,255,255,.95);
    font-size: 14px;
    font-weight: 850;
    box-shadow: 0 7px 22px rgba(0,0,0,.16);
}

.mca-page--tag .mca-tag-empty {
    padding: 28px;
    border: 1px solid var(--mca-border);
    border-radius: 14px;
    background: var(--mca-soft);
    color: var(--mca-muted);
    text-align: center;
    font-weight: 700;
}

@media (max-width: 900px) {
    .mca-page--tag .mca-tag-hero__copy {
        transform: translateY(-62%);
    }
}

@media (max-width: 700px) {
    .mca-page--tag .mca-tag-hero {
        min-height: 585px;
    }

    .mca-page--tag .mca-tag-hero__picture,
    .mca-page--tag .mca-tag-hero__picture img {
        height: 585px;
    }

    .mca-page--tag .mca-tag-hero__picture img {
        object-fit: cover;
        object-position: center;
    }

    .mca-page--tag .mca-tag-hero__copy {
        top: 28px;
        left: 18px;
        width: calc(100% - 36px);
        transform: none;
        padding: 20px 21px;
        border-radius: 18px;
    }

    .mca-page--tag .mca-tag-hero__eyebrow {
        font-size: 18px;
    }

    .mca-page--tag .mca-tag-hero__copy h1 {
        font-size: clamp(39px, 13vw, 58px);
    }

    .mca-page--tag .mca-tag-hero__copy p {
        margin-top: 10px;
        font-size: 15px;
    }

    .mca-page--tag .mca-tag-hero__count {
        margin-top: 13px;
    }
}

/* ==========================================================
   MYCAMPER CONTENT STEP 18J.10C
   TAG PAGE — RESTORE NORMAL MYCAMPER FOOTER

   Tag URLs without a Joomla menu item inherit the homepage
   body class "mycamper-new-home-page".

   home.css intentionally hides #sp-footer on the real
   homepage. Restore the normal footer ONLY for:
   body.com-tags.view-tag.mycamper-new-home-page
   ========================================================== */

body.com-tags.view-tag.mycamper-new-home-page #sp-footer {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

body.com-tags.view-tag.mycamper-new-home-page #sp-footer > .container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.com-tags.view-tag.mycamper-new-home-page #sp-footer > .container > .container-inner {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.com-tags.view-tag.mycamper-new-home-page #sp-footer .container-inner > .row {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body.com-tags.view-tag.mycamper-new-home-page #sp-footer #sp-footer1 {
    display: none !important;
}

body.com-tags.view-tag.mycamper-new-home-page #sp-footer #sp-footer2 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.com-tags.view-tag.mycamper-new-home-page #sp-footer #sp-footer2 > .sp-column,
body.com-tags.view-tag.mycamper-new-home-page #sp-footer #sp-footer2 .sp-module,
body.com-tags.view-tag.mycamper-new-home-page #sp-footer #sp-footer2 .sp-module-content,
body.com-tags.view-tag.mycamper-new-home-page #sp-footer #sp-footer2 .mod-custom {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
