html[data-cc-page="hotel-accommodation"] {
            --pink: #A90061;
            --pink-dark: #6F0037;
            --ink: #171717;
            --muted: #6f6b6d;
            --paper: #f6f4f4;
            --line: rgba(23,23,23,.13);
            --white: #fff;
            --display: "Playfair Display",serif;
            --body: "Inter",sans-serif
        }

        html[data-cc-page="hotel-accommodation"], html[data-cc-page="hotel-accommodation"] * {
            box-sizing: border-box;
            margin: 0;
            padding: 0
        }

        html[data-cc-page="hotel-accommodation"] {
            scroll-behavior: smooth
        }

        html[data-cc-page="hotel-accommodation"] body {
            font-family: var(--body);
            color: var(--ink);
            background: #fff;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased
        }

        html[data-cc-page="hotel-accommodation"] a {
            text-decoration: none;
            color: inherit
        }

        html[data-cc-page="hotel-accommodation"] img, html[data-cc-page="hotel-accommodation"] video {
            display: block;
            width: 100%
        }

        html[data-cc-page="hotel-accommodation"] button, html[data-cc-page="hotel-accommodation"] input, html[data-cc-page="hotel-accommodation"] textarea {
            font: inherit
        }

        html[data-cc-page="hotel-accommodation"] button {
            cursor: pointer
        }

        html[data-cc-page="hotel-accommodation"] .container {
            width: min(1420px,calc(100% - 80px));
            margin-inline: auto
        }

        html[data-cc-page="hotel-accommodation"] .eyebrow {
            font-size: 11px;
            letter-spacing: .2em;
            text-transform: uppercase;
            font-weight: 700;
            color: var(--pink)
        }

        html[data-cc-page="hotel-accommodation"] .section-rule {
            display: inline-block;
            width: 44px;
            height: 2px;
            background: var(--pink);
            transform-origin: left;
            transform: scaleX(0);
            transition: transform .8s cubic-bezier(.22,1,.36,1)
        }

            html[data-cc-page="hotel-accommodation"] .in-view .section-rule, html[data-cc-page="hotel-accommodation"] .section-rule.in-view {
                transform: scaleX(1)
            }

        html[data-cc-page="hotel-accommodation"] .btn {
            position: relative;
            isolation: isolate;
            overflow: hidden;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            min-height: 52px;
            padding: 0 28px;
            border: 1px solid transparent;
            font-size: 12px;
            font-weight: 700;
            letter-spacing: .1em;
            text-transform: uppercase;
            transition: transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease
        }

            html[data-cc-page="hotel-accommodation"] .btn::before {
                content: "";
                position: absolute;
                inset: 0;
                background: var(--pink-dark);
                transform: scaleX(0);
                transform-origin: left;
                transition: transform .42s cubic-bezier(.22,1,.36,1);
                z-index: -1
            }

            html[data-cc-page="hotel-accommodation"] .btn:hover {
                transform: translateY(-3px);
                filter: brightness(1.05)
            }

                html[data-cc-page="hotel-accommodation"] .btn:hover::before {
                    transform: scaleX(1)
                }

        html[data-cc-page="hotel-accommodation"] .btn-pink {
            background: var(--pink);
            color: #fff
        }

        html[data-cc-page="hotel-accommodation"] .btn-outline {
            border-color: currentColor;
            background: transparent
        }

        html[data-cc-page="hotel-accommodation"] .btn-white {
            background: #fff;
            color: #111
        }

            html[data-cc-page="hotel-accommodation"] .btn-white::before {
                background: var(--pink)
            }

            html[data-cc-page="hotel-accommodation"] .btn-white:hover {
                color: #fff;
                border-color: var(--pink)
            }
        /* HEADER */
        html[data-cc-page="hotel-accommodation"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,color .35s ease,box-shadow .35s ease
        }

            html[data-cc-page="hotel-accommodation"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #171717;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(15px)
            }

        html[data-cc-page="hotel-accommodation"] .topbar {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .05em
        }

        html[data-cc-page="hotel-accommodation"] .header.sticky .topbar {
            display: none
        }

        html[data-cc-page="hotel-accommodation"] .topbar .container {
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 25px
        }

        html[data-cc-page="hotel-accommodation"] .topbar-right {
            display: flex;
            align-items: center;
            gap: 22px
        }

        html[data-cc-page="hotel-accommodation"] .header-main {
            height: 102px
        }

            html[data-cc-page="hotel-accommodation"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="hotel-accommodation"] .brand {
            width: 190px;
            flex: 0 0 auto
        }

            html[data-cc-page="hotel-accommodation"] .brand img {
                width: 148px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="hotel-accommodation"] .brand-dark {
            display: none
        }

        html[data-cc-page="hotel-accommodation"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="hotel-accommodation"] .header.sticky .brand-dark {
            display: block;
            width: 185px;
            max-height: 48px;
            object-fit: contain;
            object-position: left center
        }

        html[data-cc-page="hotel-accommodation"] .header.sticky .brand {
            width: 210px
        }

        html[data-cc-page="hotel-accommodation"] .menu {
            margin-left: auto;
            display: flex;
            align-items: center;
            gap: 30px;
            height: 100%
        }

            html[data-cc-page="hotel-accommodation"] .menu a {
                height: 100%;
                display: flex;
                align-items: center;
                position: relative;
                font-size: 12px;
                font-weight: 600;
                letter-spacing: .08em;
                text-transform: uppercase;
                white-space: nowrap
            }

                html[data-cc-page="hotel-accommodation"] .menu a::after {
                    content: "";
                    position: absolute;
                    left: 0;
                    right: 100%;
                    bottom: 27px;
                    height: 1px;
                    background: var(--pink);
                    transition: right .3s ease
                }

                html[data-cc-page="hotel-accommodation"] .menu a:hover::after, html[data-cc-page="hotel-accommodation"] .menu a.active::after {
                    right: 0
                }

        html[data-cc-page="hotel-accommodation"] .header-book {
            margin-left: 32px
        }

        html[data-cc-page="hotel-accommodation"] .lang {
            position: relative
        }

        html[data-cc-page="hotel-accommodation"] .lang-button {
            border: 0;
            background: transparent;
            color: inherit;
            display: flex;
            align-items: center;
            gap: 7px
        }

            html[data-cc-page="hotel-accommodation"] .lang-button img {
                width: 25px;
                height: 15px;
                object-fit: cover
            }

        html[data-cc-page="hotel-accommodation"] .lang-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 10px);
            width: 170px;
            background: #fff;
            color: #171717;
            padding: 7px;
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            transform: translateY(8px);
            transition: .25s
        }

        html[data-cc-page="hotel-accommodation"] .lang.open .lang-menu {
            opacity: 1;
            visibility: visible;
            transform: none
        }

        html[data-cc-page="hotel-accommodation"] .lang-menu a {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 10px;
            font-size: 11px
        }

            html[data-cc-page="hotel-accommodation"] .lang-menu a:hover {
                background: #faf5f8;
                color: var(--pink)
            }

        html[data-cc-page="hotel-accommodation"] .lang-menu img {
            width: 25px;
            height: 15px;
            object-fit: cover
        }

        html[data-cc-page="hotel-accommodation"] .mobile-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 10px
        }

        html[data-cc-page="hotel-accommodation"] .mobile-trigger {
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 21px
        }

        html[data-cc-page="hotel-accommodation"] .mobile-lang .lang-menu {
            right: 48px;
            top: 52px
        }

        html[data-cc-page="hotel-accommodation"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.55);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="hotel-accommodation"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="hotel-accommodation"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            color: #171717;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .38s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="hotel-accommodation"] .drawer.open {
                transform: none
            }

        html[data-cc-page="hotel-accommodation"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #eee
        }

            html[data-cc-page="hotel-accommodation"] .drawer-head img {
                width: 150px
            }

        html[data-cc-page="hotel-accommodation"] .drawer-close {
            width: 40px;
            height: 40px;
            border: 0;
            background: #f3f3f3;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="hotel-accommodation"] .drawer-nav {
            display: grid;
            margin-top: 18px
        }

            html[data-cc-page="hotel-accommodation"] .drawer-nav a {
                padding: 15px 0;
                border-bottom: 1px solid #eee;
                font-size: 17px
            }

                html[data-cc-page="hotel-accommodation"] .drawer-nav a:hover {
                    color: var(--pink)
                }

        html[data-cc-page="hotel-accommodation"] .drawer-contact {
            margin-top: 28px;
            padding-top: 22px;
            border-top: 1px solid #eee
        }

            html[data-cc-page="hotel-accommodation"] .drawer-contact a {
                display: flex;
                align-items: center;
                gap: 10px;
                font-size: 12px;
                color: #555
            }

        html[data-cc-page="hotel-accommodation"] .drawer-social {
            display: flex;
            gap: 8px;
            margin-top: 18px
        }

            html[data-cc-page="hotel-accommodation"] .drawer-social a {
                width: 38px;
                height: 38px;
                border: 1px solid #ddd;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center
            }

        html[data-cc-page="hotel-accommodation"] .drawer .btn {
            width: 100%;
            margin-top: 24px
        }
        /* HERO */
        html[data-cc-page="hotel-accommodation"] .hero {
            position: relative;
            height: 82svh;
            min-height: 680px;
            color: #fff;
            background: #111;
            overflow: hidden
        }

            html[data-cc-page="hotel-accommodation"] .hero img.hero-bg {
                position: absolute;
                inset: 0;
                height: 100%;
                object-fit: cover;
                animation: kenburns_cc_hotelaccommodation 9s ease-in-out both
            }

            html[data-cc-page="hotel-accommodation"] .hero::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)
            }

        @keyframes kenburns_cc_hotelaccommodation {
            from {
                transform: scale(1.03)
            }

            to {
                transform: scale(1.12) translateX(-1.2%)
            }
        }

        html[data-cc-page="hotel-accommodation"] .hero-inner {
            position: relative;
            z-index: 2;
            height: 100%;
            display: flex;
            align-items: flex-end;
            padding-bottom: 90px
        }

        html[data-cc-page="hotel-accommodation"] .hero-copy {
            max-width: 800px
        }

        html[data-cc-page="hotel-accommodation"] .hero-kicker {
            display: flex;
            align-items: center;
            gap: 14px;
            margin-bottom: 20px
        }

            html[data-cc-page="hotel-accommodation"] .hero-kicker::before {
                content: "";
                width: 46px;
                height: 2px;
                background: var(--pink)
            }

        html[data-cc-page="hotel-accommodation"] .hero h1 {
            font-family: var(--display);
            font-size: clamp(60px,6vw,96px);
            line-height: .96;
            font-weight: 400;
            letter-spacing: -.045em
        }

        html[data-cc-page="hotel-accommodation"] .hero p {
            max-width: 580px;
            margin-top: 22px;
            font-size: 15px;
            line-height: 1.8;
            color: rgba(255,255,255,.88)
        }

        html[data-cc-page="hotel-accommodation"] .hero-actions {
            display: flex;
            gap: 12px;
            margin-top: 28px;
            flex-wrap: wrap
        }

        html[data-cc-page="hotel-accommodation"] .hero-place {
            position: absolute;
            right: 40px;
            bottom: 38px;
            z-index: 3;
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.75)
        }
        /* MOTION */
        html[data-cc-page="hotel-accommodation"] .reveal, html[data-cc-page="hotel-accommodation"] .reveal-left, html[data-cc-page="hotel-accommodation"] .reveal-right {
            opacity: 0;
            transition: opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)
        }

        html[data-cc-page="hotel-accommodation"] .reveal {
            transform: translateY(44px)
        }

        html[data-cc-page="hotel-accommodation"] .reveal-left {
            transform: translateX(-60px)
        }

        html[data-cc-page="hotel-accommodation"] .reveal-right {
            transform: translateX(60px)
        }

            html[data-cc-page="hotel-accommodation"] .reveal.in-view, html[data-cc-page="hotel-accommodation"] .reveal-left.in-view, html[data-cc-page="hotel-accommodation"] .reveal-right.in-view {
                opacity: 1;
                transform: none
            }

        html[data-cc-page="hotel-accommodation"] .stagger > * {
            opacity: 0;
            transform: translateY(24px);
            transition: opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)
        }

        html[data-cc-page="hotel-accommodation"] .stagger.in-view > * {
            opacity: 1;
            transform: none
        }

            html[data-cc-page="hotel-accommodation"] .stagger.in-view > *:nth-child(2) {
                transition-delay: .08s
            }

            html[data-cc-page="hotel-accommodation"] .stagger.in-view > *:nth-child(3) {
                transition-delay: .16s
            }

            html[data-cc-page="hotel-accommodation"] .stagger.in-view > *:nth-child(4) {
                transition-delay: .24s
            }

            html[data-cc-page="hotel-accommodation"] .stagger.in-view > *:nth-child(5) {
                transition-delay: .32s
            }

        html[data-cc-page="hotel-accommodation"] .image-reveal {
            position: relative;
            overflow: hidden;
            background: #111
        }

            html[data-cc-page="hotel-accommodation"] .image-reveal::after {
                content: "";
                position: absolute;
                inset: 0;
                background: #111;
                transform: scaleX(1);
                transform-origin: right;
                transition: transform 1s cubic-bezier(.77,0,.18,1);
                z-index: 2
            }

            html[data-cc-page="hotel-accommodation"] .image-reveal.in-view::after {
                transform: scaleX(0)
            }

            html[data-cc-page="hotel-accommodation"] .image-reveal img {
                height: 100%;
                object-fit: cover;
                transform: scale(1.06);
                transition: transform 1.4s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-accommodation"] .image-reveal.in-view img {
                transform: scale(1)
            }
        /* COMMON SECTIONS */
        html[data-cc-page="hotel-accommodation"] .intro-section {
            padding: 150px 0
        }

        html[data-cc-page="hotel-accommodation"] .intro-grid {
            display: grid;
            grid-template-columns: .85fr 1.15fr;
            gap: 110px;
            align-items: start
        }

            html[data-cc-page="hotel-accommodation"] .intro-grid h2, html[data-cc-page="hotel-accommodation"] .section-heading h2 {
                font-family: var(--display);
                font-size: clamp(52px,5vw,78px);
                line-height: 1;
                letter-spacing: -.04em;
                font-weight: 400
            }

            html[data-cc-page="hotel-accommodation"] .intro-grid p, html[data-cc-page="hotel-accommodation"] .section-heading p {
                font-size: 14px;
                line-height: 1.9;
                color: var(--muted);
                max-width: 620px
            }

        html[data-cc-page="hotel-accommodation"] .section-heading {
            margin-bottom: 58px
        }

            html[data-cc-page="hotel-accommodation"] .section-heading .eyebrow {
                margin-bottom: 16px
            }

            html[data-cc-page="hotel-accommodation"] .section-heading h2 {
                max-width: 850px
            }

            html[data-cc-page="hotel-accommodation"] .section-heading p {
                margin-top: 20px
            }

        html[data-cc-page="hotel-accommodation"] .soft {
            background: var(--paper)
        }
        /* FOOTER */
        html[data-cc-page="hotel-accommodation"] .footer {
            background: #111113;
            color: #fff
        }

        html[data-cc-page="hotel-accommodation"] .footer-main {
            padding: 72px 0 58px;
            display: grid;
            grid-template-columns: 1.1fr .7fr .85fr 1.2fr;
            gap: 70px
        }

        html[data-cc-page="hotel-accommodation"] .footer-logo {
            width: 170px
        }

        html[data-cc-page="hotel-accommodation"] .footer-copy {
            font-size: 12px;
            line-height: 1.8;
            color: rgba(255,255,255,.56);
            max-width: 320px;
            margin-top: 22px
        }

        html[data-cc-page="hotel-accommodation"] .footer h4 {
            font-size: 9px;
            letter-spacing: .18em;
            text-transform: uppercase;
            color: rgba(255,255,255,.45);
            margin-bottom: 20px
        }

        html[data-cc-page="hotel-accommodation"] .footer-links {
            display: grid;
            gap: 11px
        }

            html[data-cc-page="hotel-accommodation"] .footer-links a, html[data-cc-page="hotel-accommodation"] .footer p {
                font-size: 12px;
                line-height: 1.65;
                color: rgba(255,255,255,.68)
            }

                html[data-cc-page="hotel-accommodation"] .footer-links a:hover {
                    color: #fff
                }

        html[data-cc-page="hotel-accommodation"] .footer-contact-card {
            display: flex;
            align-items: center;
            gap: 12px;
            border: 1px solid rgba(255,255,255,.14);
            padding: 15px;
            margin-bottom: 10px
        }

            html[data-cc-page="hotel-accommodation"] .footer-contact-card i {
                color: var(--pink)
            }

        html[data-cc-page="hotel-accommodation"] .newsletter {
            margin-top: 22px
        }

        html[data-cc-page="hotel-accommodation"] .newsletter-form {
            display: flex;
            border: 1px solid rgba(255,255,255,.18);
            min-height: 48px
        }

            html[data-cc-page="hotel-accommodation"] .newsletter-form input {
                flex: 1;
                min-width: 0;
                border: 0;
                background: transparent;
                color: #fff;
                padding: 0 14px;
                outline: 0
            }

            html[data-cc-page="hotel-accommodation"] .newsletter-form button {
                border: 0;
                background: var(--pink);
                color: #fff;
                padding: 0 18px;
                font-size: 9px;
                font-weight: 700;
                text-transform: uppercase;
                letter-spacing: .1em
            }

        html[data-cc-page="hotel-accommodation"] .footer-social {
            display: flex;
            gap: 8px;
            margin-top: 20px
        }

            html[data-cc-page="hotel-accommodation"] .footer-social a {
                width: 37px;
                height: 37px;
                border: 1px solid rgba(255,255,255,.18);
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center
            }

        html[data-cc-page="hotel-accommodation"] .footer-bottom {
            border-top: 1px solid rgba(255,255,255,.1);
            padding: 22px 0 26px;
            display: flex;
            justify-content: space-between;
            gap: 20px;
            flex-wrap: wrap;
            font-size: 9px;
            color: rgba(255,255,255,.4)
        }

            html[data-cc-page="hotel-accommodation"] .footer-bottom nav {
                display: flex;
                gap: 18px;
                flex-wrap: wrap
            }

        html[data-cc-page="hotel-accommodation"] .scrolltop {
            position: fixed;
            right: 22px;
            bottom: 22px;
            width: 44px;
            height: 44px;
            border: 0;
            border-radius: 50%;
            background: var(--pink);
            color: #fff;
            z-index: 90;
            opacity: 0;
            visibility: hidden;
            transform: translateY(10px);
            transition: .3s
        }

            html[data-cc-page="hotel-accommodation"] .scrolltop.show {
                opacity: 1;
                visibility: visible;
                transform: none
            }

        html[data-cc-page="hotel-accommodation"] .mobile-book {
            display: none
        }

        @media(max-width:1050px) {
            html[data-cc-page="hotel-accommodation"] .container {
                width: calc(100% - 44px)
            }

            html[data-cc-page="hotel-accommodation"] .menu {
                gap: 18px
            }

                html[data-cc-page="hotel-accommodation"] .menu a {
                    font-size: 10px
                }

            html[data-cc-page="hotel-accommodation"] .header-book {
                margin-left: 20px
            }

            html[data-cc-page="hotel-accommodation"] .intro-grid {
                gap: 65px
            }

            html[data-cc-page="hotel-accommodation"] .footer-main {
                grid-template-columns: 1fr 1fr;
                gap: 45px
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-accommodation"] body {
                padding-bottom: 68px
            }

            html[data-cc-page="hotel-accommodation"] .container {
                width: calc(100% - 30px)
            }

            html[data-cc-page="hotel-accommodation"] .header {
                background: rgba(255,255,255,.97);
                color: #171717
            }

            html[data-cc-page="hotel-accommodation"] .topbar, html[data-cc-page="hotel-accommodation"] .menu, html[data-cc-page="hotel-accommodation"] .header-book {
                display: none
            }

            html[data-cc-page="hotel-accommodation"] .header-main {
                height: 72px
            }

            html[data-cc-page="hotel-accommodation"] .brand {
                width: 180px
            }

            html[data-cc-page="hotel-accommodation"] .brand-light {
                display: none !important
            }

            html[data-cc-page="hotel-accommodation"] .brand-dark {
                display: block !important;
                width: 160px !important;
                max-height: 44px !important;
                object-fit: contain
            }

            html[data-cc-page="hotel-accommodation"] .mobile-actions {
                display: flex
            }

            html[data-cc-page="hotel-accommodation"] .hero {
                height: 82svh;
                min-height: 620px;
                padding-top: 72px
            }

            html[data-cc-page="hotel-accommodation"] .hero-inner {
                padding-bottom: 70px
            }

            html[data-cc-page="hotel-accommodation"] .hero h1 {
                font-size: clamp(46px,12vw,62px)
            }

            html[data-cc-page="hotel-accommodation"] .hero p {
                font-size: 13px;
                max-width: 92%
            }

            html[data-cc-page="hotel-accommodation"] .hero-place {
                display: none
            }

            html[data-cc-page="hotel-accommodation"] .intro-section {
                padding: 105px 0
            }

            html[data-cc-page="hotel-accommodation"] .intro-grid {
                grid-template-columns: 1fr;
                gap: 32px
            }

                html[data-cc-page="hotel-accommodation"] .intro-grid h2, html[data-cc-page="hotel-accommodation"] .section-heading h2 {
                    font-size: 48px
                }

            html[data-cc-page="hotel-accommodation"] .section-heading {
                margin-bottom: 40px
            }

            html[data-cc-page="hotel-accommodation"] .footer-main {
                grid-template-columns: 1fr 1fr;
                gap: 38px 28px;
                padding-top: 55px
            }

            html[data-cc-page="hotel-accommodation"] .footer-brand {
                grid-column: 1/3
            }

            html[data-cc-page="hotel-accommodation"] .mobile-book {
                position: fixed;
                left: 12px;
                right: 12px;
                bottom: 10px;
                height: 56px;
                z-index: 400;
                border: 0;
                background: var(--pink);
                color: #fff;
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 10px;
                font-weight: 700;
                letter-spacing: .14em;
                text-transform: uppercase
            }

            html[data-cc-page="hotel-accommodation"] .scrolltop {
                bottom: 80px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .hero {
                min-height: 600px
            }

                html[data-cc-page="hotel-accommodation"] .hero h1 {
                    font-size: 45px
                }

            html[data-cc-page="hotel-accommodation"] .hero-actions .btn {
                width: 100%
            }

            html[data-cc-page="hotel-accommodation"] .intro-grid h2, html[data-cc-page="hotel-accommodation"] .section-heading h2 {
                font-size: 42px
            }

            html[data-cc-page="hotel-accommodation"] .footer-main {
                grid-template-columns: 1fr
            }

            html[data-cc-page="hotel-accommodation"] .footer-brand {
                grid-column: auto
            }

            html[data-cc-page="hotel-accommodation"] .footer-bottom {
                display: block
            }

                html[data-cc-page="hotel-accommodation"] .footer-bottom nav {
                    margin-top: 12px
                }
        }

        @media(prefers-reduced-motion:reduce) {
            html[data-cc-page="hotel-accommodation"], html[data-cc-page="hotel-accommodation"] * {
                scroll-behavior: auto !important
            }

            html[data-cc-page="hotel-accommodation"] .reveal, html[data-cc-page="hotel-accommodation"] .reveal-left, html[data-cc-page="hotel-accommodation"] .reveal-right, html[data-cc-page="hotel-accommodation"] .stagger > * {
                opacity: 1 !important;
                transform: none !important;
                transition: none !important
            }

            html[data-cc-page="hotel-accommodation"] .image-reveal::after {
                display: none
            }

            html[data-cc-page="hotel-accommodation"] .hero img.hero-bg {
                animation: none !important
            }
        }


        html[data-cc-page="hotel-accommodation"] .page-intro {
            padding: 155px 0 130px
        }

        html[data-cc-page="hotel-accommodation"] .page-intro-grid {
            display: grid;
            grid-template-columns: .9fr 1.1fr;
            gap: 110px;
            align-items: start
        }

        html[data-cc-page="hotel-accommodation"] .page-intro h2 {
            font-family: var(--display);
            font-size: clamp(56px,5.6vw,86px);
            line-height: .98;
            letter-spacing: -.045em;
            font-weight: 400
        }

        html[data-cc-page="hotel-accommodation"] .page-intro p {
            font-size: 15px;
            line-height: 1.95;
            color: var(--muted);
            max-width: 650px
        }

        html[data-cc-page="hotel-accommodation"] .big-space {
            padding: 150px 0
        }

        html[data-cc-page="hotel-accommodation"] .soft-space {
            padding: 150px 0;
            background: var(--paper)
        }

        html[data-cc-page="hotel-accommodation"] .rail-head {
            display: flex;
            align-items: end;
            justify-content: space-between;
            gap: 40px;
            margin-bottom: 48px
        }

            html[data-cc-page="hotel-accommodation"] .rail-head h2 {
                font-family: var(--display);
                font-size: clamp(52px,5vw,78px);
                line-height: 1;
                font-weight: 400;
                letter-spacing: -.04em
            }

            html[data-cc-page="hotel-accommodation"] .rail-head p {
                font-size: 14px;
                line-height: 1.85;
                color: var(--muted);
                max-width: 570px;
                margin-top: 18px
            }

        html[data-cc-page="hotel-accommodation"] .rail-nav {
            display: flex;
            gap: 8px
        }

            html[data-cc-page="hotel-accommodation"] .rail-nav button {
                width: 48px;
                height: 48px;
                border: 1px solid #ccc;
                background: #fff;
                transition: .25s
            }

                html[data-cc-page="hotel-accommodation"] .rail-nav button:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px)
                }

        html[data-cc-page="hotel-accommodation"] .rail-viewport {
            overflow-x: auto;
            overflow-y: hidden;
            scrollbar-width: none;
            cursor: grab;
            scroll-snap-type: x mandatory;
            user-select: none
        }

            html[data-cc-page="hotel-accommodation"] .rail-viewport::-webkit-scrollbar {
                display: none
            }

            html[data-cc-page="hotel-accommodation"] .rail-viewport.is-dragging {
                cursor: grabbing;
                scroll-snap-type: none
            }

        html[data-cc-page="hotel-accommodation"] .rail-track {
            display: flex;
            gap: 24px;
            width: max-content;
            padding-bottom: 4px
        }

        html[data-cc-page="hotel-accommodation"] .rail-card {
            width: min(500px,38vw);
            min-width: 390px;
            scroll-snap-align: start;
            background: #fff;
            border: 1px solid #ece8e9;
            transition: transform .35s ease,box-shadow .35s ease
        }

            html[data-cc-page="hotel-accommodation"] .rail-card:hover {
                transform: translateY(-7px);
                box-shadow: 0 24px 60px rgba(0,0,0,.08)
            }

        html[data-cc-page="hotel-accommodation"] .rail-image {
            height: 360px;
            overflow: hidden;
            background: #111
        }

            html[data-cc-page="hotel-accommodation"] .rail-image img {
                height: 100%;
                object-fit: cover;
                transition: transform .9s cubic-bezier(.22,1,.36,1)
            }

        html[data-cc-page="hotel-accommodation"] .rail-card:hover .rail-image img {
            transform: scale(1.045)
        }

        html[data-cc-page="hotel-accommodation"] .rail-copy {
            padding: 30px 30px 34px
        }

        html[data-cc-page="hotel-accommodation"] .rail-meta {
            display: flex;
            justify-content: space-between;
            gap: 20px;
            font-size: 9px;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #8b8688;
            margin-bottom: 14px
        }

            html[data-cc-page="hotel-accommodation"] .rail-meta span:first-child {
                color: var(--pink)
            }

        html[data-cc-page="hotel-accommodation"] .rail-copy h3 {
            font-family: var(--display);
            font-size: 36px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="hotel-accommodation"] .rail-copy p {
            font-size: 12px;
            line-height: 1.8;
            color: var(--muted);
            margin: 14px 0 22px;
            max-width: 410px
        }

        html[data-cc-page="hotel-accommodation"] .text-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            font-size: 10px;
            font-weight: 700;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: var(--pink)
        }

            html[data-cc-page="hotel-accommodation"] .text-link i {
                transition: transform .25s
            }

            html[data-cc-page="hotel-accommodation"] .text-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="hotel-accommodation"] .rail-progress {
            position: relative;
            height: 20px;
            margin-top: 25px;
            display: flex;
            align-items: center;
            cursor: pointer
        }

            html[data-cc-page="hotel-accommodation"] .rail-progress::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                height: 2px;
                background: #dedadb
            }

            html[data-cc-page="hotel-accommodation"] .rail-progress span {
                position: absolute;
                left: 0;
                height: 4px;
                width: 28%;
                background: var(--pink);
                transition: left .1s linear,width .2s ease;
                border-radius: 5px
            }

        html[data-cc-page="hotel-accommodation"] .editorial-split {
            display: grid;
            grid-template-columns: 1.1fr .9fr;
            gap: 25px;
            align-items: stretch
        }

            html[data-cc-page="hotel-accommodation"] .editorial-split.reverse {
                grid-template-columns: .9fr 1.1fr
            }

                html[data-cc-page="hotel-accommodation"] .editorial-split.reverse .split-visual {
                    order: 2
                }

        html[data-cc-page="hotel-accommodation"] .split-visual {
            min-height: 650px
        }

        html[data-cc-page="hotel-accommodation"] .split-panel {
            padding: 70px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            background: #fff
        }

            html[data-cc-page="hotel-accommodation"] .split-panel h2 {
                font-family: var(--display);
                font-size: clamp(50px,4.6vw,72px);
                line-height: 1;
                font-weight: 400;
                letter-spacing: -.04em
            }

            html[data-cc-page="hotel-accommodation"] .split-panel p {
                font-size: 14px;
                line-height: 1.9;
                color: var(--muted);
                margin: 24px 0 28px;
                max-width: 560px
            }

        html[data-cc-page="hotel-accommodation"] .fact-row {
            display: flex;
            gap: 32px;
            flex-wrap: wrap;
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid var(--line)
        }

            html[data-cc-page="hotel-accommodation"] .fact-row strong {
                font-family: var(--display);
                font-size: 28px;
                font-weight: 400;
                color: var(--pink)
            }

            html[data-cc-page="hotel-accommodation"] .fact-row small {
                display: block;
                font-size: 9px;
                letter-spacing: .12em;
                text-transform: uppercase;
                color: #888;
                margin-top: 4px
            }

        html[data-cc-page="hotel-accommodation"] .object-motion {
            opacity: 0;
            transform: translateY(34px) scale(.985);
            transition: opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1)
        }

            html[data-cc-page="hotel-accommodation"] .object-motion.in-view {
                opacity: 1;
                transform: none
            }

            html[data-cc-page="hotel-accommodation"] .object-motion:nth-child(even) {
                transform: translateY(34px) translateX(20px)
            }

                html[data-cc-page="hotel-accommodation"] .object-motion:nth-child(even).in-view {
                    transform: none
                }

        @media(max-width:900px) {
            html[data-cc-page="hotel-accommodation"] .page-intro-grid, html[data-cc-page="hotel-accommodation"] .editorial-split, html[data-cc-page="hotel-accommodation"] .editorial-split.reverse {
                grid-template-columns: 1fr;
                gap: 28px
            }

                html[data-cc-page="hotel-accommodation"] .editorial-split.reverse .split-visual {
                    order: 0
                }

            html[data-cc-page="hotel-accommodation"] .page-intro {
                padding: 110px 0 95px
            }

            html[data-cc-page="hotel-accommodation"] .big-space, html[data-cc-page="hotel-accommodation"] .soft-space {
                padding: 105px 0
            }

            html[data-cc-page="hotel-accommodation"] .rail-head {
                display: block
            }

            html[data-cc-page="hotel-accommodation"] .rail-nav {
                margin-top: 24px
            }

            html[data-cc-page="hotel-accommodation"] .rail-card {
                width: 76vw;
                min-width: 330px
            }

            html[data-cc-page="hotel-accommodation"] .split-visual {
                min-height: 520px
            }

            html[data-cc-page="hotel-accommodation"] .split-panel {
                padding: 48px 36px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .rail-card {
                width: 88vw;
                min-width: 280px
            }

            html[data-cc-page="hotel-accommodation"] .rail-image {
                height: 310px
            }

            html[data-cc-page="hotel-accommodation"] .rail-copy {
                padding: 24px
            }

            html[data-cc-page="hotel-accommodation"] .split-panel {
                padding: 36px 24px
            }

            html[data-cc-page="hotel-accommodation"] .split-visual {
                min-height: 430px
            }

            html[data-cc-page="hotel-accommodation"] .page-intro h2 {
                font-size: 48px
            }

            html[data-cc-page="hotel-accommodation"] .rail-head h2 {
                font-size: 46px
            }
        }

        html[data-cc-page="hotel-accommodation"] .room-highlight {
            padding: 0 0 150px
        }

            html[data-cc-page="hotel-accommodation"] .room-highlight .editorial-split {
                background: var(--paper)
            }

            html[data-cc-page="hotel-accommodation"] .room-highlight .split-panel {
                background: var(--paper)
            }

        html[data-cc-page="hotel-accommodation"] .stay-note {
            padding: 145px 0;
            background: #111113;
            color: #fff
        }

        html[data-cc-page="hotel-accommodation"] .stay-note-inner {
            max-width: 1050px
        }

        html[data-cc-page="hotel-accommodation"] .stay-note h2 {
            font-family: var(--display);
            font-size: clamp(58px,6vw,92px);
            font-weight: 400;
            line-height: .95;
            letter-spacing: -.05em
        }

        html[data-cc-page="hotel-accommodation"] .stay-note p {
            font-size: 14px;
            line-height: 1.9;
            color: rgba(255,255,255,.62);
            max-width: 600px;
            margin-top: 25px
        }
        /* Final v2 - hotel navigation clarity */
        html[data-cc-page="hotel-accommodation"] .drawer-back-group {
            color: var(--pink) !important;
            font-weight: 600 !important;
            border-bottom: 1px solid rgba(169,0,97,.18) !important;
            margin-bottom: 5px
        }

            html[data-cc-page="hotel-accommodation"] .drawer-back-group i {
                font-size: 11px;
                margin-right: 8px
            }

        html[data-cc-page="hotel-accommodation"] .menu a.active, html[data-cc-page="hotel-accommodation"] .menu-link.active {
            color: var(--pink)
        }

        /* v5 accommodation equal-weight layout */
        html[data-cc-page="hotel-accommodation"] .accommodation-intro {
            padding: 135px 0 50px;
            background: #fff
        }

        html[data-cc-page="hotel-accommodation"] .accommodation-intro-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 90px;
            align-items: end;
            margin-top: 18px
        }

        html[data-cc-page="hotel-accommodation"] .accommodation-intro h2 {
            font-family: var(--display);
            font-size: clamp(54px,5vw,78px);
            line-height: 1;
            font-weight: 400;
            letter-spacing: -.045em
        }

        html[data-cc-page="hotel-accommodation"] .accommodation-intro p {
            font-size: 14px;
            line-height: 1.9;
            color: var(--muted);
            max-width: 620px
        }

        html[data-cc-page="hotel-accommodation"] .soft-space#rooms {
            padding-top: 70px
        }

        html[data-cc-page="hotel-accommodation"] .rail-card {
            width: min(520px,40vw);
            min-width: 390px
        }

        html[data-cc-page="hotel-accommodation"] .rail-image {
            height: 365px
        }

        html[data-cc-page="hotel-accommodation"] .rail-copy {
            min-height: 285px;
            display: flex;
            flex-direction: column
        }

            html[data-cc-page="hotel-accommodation"] .rail-copy p {
                flex: 1
            }

            html[data-cc-page="hotel-accommodation"] .rail-copy .text-link {
                margin-top: auto
            }

        @media(max-width:900px) {
            html[data-cc-page="hotel-accommodation"] .accommodation-intro {
                padding: 105px 0 35px
            }

            html[data-cc-page="hotel-accommodation"] .accommodation-intro-grid {
                grid-template-columns: 1fr;
                gap: 24px
            }

            html[data-cc-page="hotel-accommodation"] .soft-space#rooms {
                padding-top: 55px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .accommodation-intro h2 {
                font-size: 46px
            }

            html[data-cc-page="hotel-accommodation"] .rail-card {
                width: 88vw;
                min-width: 280px
            }

            html[data-cc-page="hotel-accommodation"] .rail-copy {
                min-height: 265px
            }
        }


        /* V7 - Detail pages use vertical editorial presentation, never horizontal rails */
        html[data-cc-page="hotel-accommodation"] .detail-list {
            padding: 20px 0 145px;
            background: #fff
        }

            html[data-cc-page="hotel-accommodation"] .detail-list .container {
                display: flex;
                flex-direction: column;
                gap: 0
            }

        html[data-cc-page="hotel-accommodation"] .detail-row {
            display: grid;
            grid-template-columns: 1.08fr .92fr;
            min-height: 590px;
            border-top: 1px solid #e7e2e4;
            align-items: stretch;
            background: #fff
        }

            html[data-cc-page="hotel-accommodation"] .detail-row:last-child {
                border-bottom: 1px solid #e7e2e4
            }

            html[data-cc-page="hotel-accommodation"] .detail-row.reverse {
                grid-template-columns: .92fr 1.08fr
            }

                html[data-cc-page="hotel-accommodation"] .detail-row.reverse .detail-media {
                    order: 2
                }

                html[data-cc-page="hotel-accommodation"] .detail-row.reverse .detail-copy {
                    order: 1
                }

        html[data-cc-page="hotel-accommodation"] .detail-media {
            position: relative;
            overflow: hidden;
            min-height: 590px;
            background: #f2eff0
        }

            html[data-cc-page="hotel-accommodation"] .detail-media img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                display: block;
                transition: transform .9s cubic-bezier(.22,1,.36,1)
            }

        html[data-cc-page="hotel-accommodation"] .detail-row:hover .detail-media img {
            transform: scale(1.025)
        }

        html[data-cc-page="hotel-accommodation"] .detail-copy {
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding: 70px clamp(42px,5vw,82px)
        }

        html[data-cc-page="hotel-accommodation"] .detail-meta {
            display: flex;
            flex-wrap: wrap;
            gap: 12px 24px;
            margin-bottom: 22px;
            font-size: 10px;
            line-height: 1.5;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #817b7e
        }

            html[data-cc-page="hotel-accommodation"] .detail-meta span:first-child {
                color: var(--pink);
                font-weight: 700
            }

        html[data-cc-page="hotel-accommodation"] .detail-copy h3 {
            font-family: var(--display);
            font-size: clamp(44px,4.3vw,68px);
            line-height: .98;
            letter-spacing: -.04em;
            font-weight: 400;
            margin: 0 0 24px
        }

        html[data-cc-page="hotel-accommodation"] .detail-copy p {
            font-size: 14px;
            line-height: 1.9;
            color: var(--muted);
            max-width: 560px;
            margin: 0
        }

        html[data-cc-page="hotel-accommodation"] .detail-copy .text-link {
            margin-top: 30px
        }

        html[data-cc-page="hotel-accommodation"] .detail-number {
            font-family: var(--display);
            font-size: 18px;
            color: #b6afb2;
            margin-bottom: 24px
        }

        html[data-cc-page="hotel-accommodation"] .detail-page-intro {
            padding-bottom: 105px
        }

            html[data-cc-page="hotel-accommodation"] .detail-page-intro .page-intro-grid {
                align-items: end
            }

            html[data-cc-page="hotel-accommodation"] .detail-page-intro .eyebrow {
                margin-bottom: 18px
            }

        html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 {
            display: grid;
            grid-template-columns: repeat(2,minmax(0,1fr));
            gap: 20px;
            padding: 20px 0 145px
        }

            html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 figure {
                margin: 0;
                position: relative;
                overflow: hidden;
                aspect-ratio: 4/3;
                background: #f2eff0
            }

                html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 figure:nth-child(3n+1) {
                    aspect-ratio: 16/10
                }

            html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                display: block;
                transition: transform .8s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 figure:hover img {
                transform: scale(1.025)
            }

            html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 figcaption {
                position: absolute;
                left: 22px;
                bottom: 18px;
                color: #fff;
                font-size: 10px;
                font-weight: 700;
                letter-spacing: .12em;
                text-transform: uppercase;
                text-shadow: 0 2px 10px rgba(0,0,0,.45)
            }

        @media(max-width:900px) {
            html[data-cc-page="hotel-accommodation"] .detail-list {
                padding-bottom: 105px
            }

            html[data-cc-page="hotel-accommodation"] .detail-row, html[data-cc-page="hotel-accommodation"] .detail-row.reverse {
                grid-template-columns: 1fr;
                min-height: 0
            }

                html[data-cc-page="hotel-accommodation"] .detail-row.reverse .detail-media, html[data-cc-page="hotel-accommodation"] .detail-row.reverse .detail-copy {
                    order: initial
                }

            html[data-cc-page="hotel-accommodation"] .detail-media {
                min-height: 0;
                aspect-ratio: 4/3
            }

            html[data-cc-page="hotel-accommodation"] .detail-copy {
                padding: 54px 34px 64px
            }

            html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 {
                grid-template-columns: 1fr;
                gap: 16px;
                padding-bottom: 105px
            }

                html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 figure, html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 figure:nth-child(3n+1) {
                    aspect-ratio: 4/3
                }

            html[data-cc-page="hotel-accommodation"] .detail-page-intro {
                padding-bottom: 75px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .detail-copy {
                padding: 42px 22px 50px
            }

                html[data-cc-page="hotel-accommodation"] .detail-copy h3 {
                    font-size: 42px
                }

            html[data-cc-page="hotel-accommodation"] .detail-meta {
                gap: 8px 16px
            }

            html[data-cc-page="hotel-accommodation"] .detail-list {
                padding-top: 0
            }

            html[data-cc-page="hotel-accommodation"] .gallery-grid-v7 figcaption {
                left: 16px;
                bottom: 14px
            }
        }
    

        /* FINAL DEMO V4 REVIEW FIXES */

        html[data-cc-page="hotel-accommodation"] .image-reveal, html[data-cc-page="hotel-accommodation"] .rail-image {
            background: #f2eff0
        }

        html[data-cc-page="hotel-accommodation"] .stay-note {
            background: #f7f5f5 !important;
            color: #171717 !important;
            border-top: 1px solid #ece7e9
        }

            html[data-cc-page="hotel-accommodation"] .stay-note p {
                color: #6f686c !important
            }

            html[data-cc-page="hotel-accommodation"] .stay-note .eyebrow {
                color: var(--pink) !important
            }
    

        /* FINAL DEMO V8 - unified inner-page typography + centered intros */
        html[data-cc-page="hotel-accommodation"] {
            --inner-title: clamp(40px,4.2vw,58px);
            --inner-section-title: clamp(36px,3.7vw,52px);
            --inner-body: 13.5px
        }

        html[data-cc-page="hotel-accommodation"] .page-intro {
            padding: 92px 0 88px !important
        }

        html[data-cc-page="hotel-accommodation"] .page-intro-grid {
            grid-template-columns: 1fr !important;
            gap: 22px !important;
            align-items: center !important;
            max-width: 900px;
            margin: 0 auto;
            text-align: center
        }

            html[data-cc-page="hotel-accommodation"] .page-intro-grid > div, html[data-cc-page="hotel-accommodation"] .page-intro-grid > p {
                max-width: 820px;
                margin-left: auto;
                margin-right: auto
            }

        html[data-cc-page="hotel-accommodation"] .page-intro h2 {
            font-size: var(--inner-title) !important;
            line-height: 1.02 !important;
            letter-spacing: -.035em !important;
            margin: 0 !important
        }

        html[data-cc-page="hotel-accommodation"] .page-intro p {
            font-size: var(--inner-body) !important;
            line-height: 1.82 !important;
            max-width: 720px !important;
            margin: 0 auto !important
        }

        html[data-cc-page="hotel-accommodation"] .page-intro .eyebrow {
            margin-bottom: 14px !important
        }

        html[data-cc-page="hotel-accommodation"] .page-intro .reveal-left, html[data-cc-page="hotel-accommodation"] .page-intro .reveal-right {
            transform: translateY(22px) !important
        }

            html[data-cc-page="hotel-accommodation"] .page-intro .reveal-left.in-view, html[data-cc-page="hotel-accommodation"] .page-intro .reveal-right.in-view {
                transform: none !important
            }

        /* keep section titles premium but proportional */
        html[data-cc-page="hotel-accommodation"] .section-heading h2, html[data-cc-page="hotel-accommodation"] .rail-head h2, html[data-cc-page="hotel-accommodation"] .hotel-section-head h2 {
            font-size: var(--inner-section-title) !important;
            line-height: 1.04 !important;
            letter-spacing: -.03em !important
        }

        html[data-cc-page="hotel-accommodation"] .section-heading p, html[data-cc-page="hotel-accommodation"] .rail-head p, html[data-cc-page="hotel-accommodation"] .hotel-section-head p {
            font-size: var(--inner-body) !important;
            line-height: 1.82 !important
        }

        @media(max-width:900px) {
            html[data-cc-page="hotel-accommodation"] .page-intro {
                padding: 72px 0 68px !important
            }

            html[data-cc-page="hotel-accommodation"] .page-intro-grid {
                padding: 0 8px
            }

            html[data-cc-page="hotel-accommodation"] .page-intro h2 {
                font-size: clamp(38px,7vw,50px) !important
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .page-intro {
                padding: 58px 0 54px !important
            }

                html[data-cc-page="hotel-accommodation"] .page-intro h2 {
                    font-size: 38px !important
                }

                html[data-cc-page="hotel-accommodation"] .page-intro p {
                    font-size: 13px !important
                }
        }

        /* V8 detail content: exact 6/6 image/text, clean zigzag, no overlap */
        html[data-cc-page="hotel-accommodation"] .detail-list {
            padding-top: 0 !important
        }

        html[data-cc-page="hotel-accommodation"] .detail-row, html[data-cc-page="hotel-accommodation"] .detail-row.reverse {
            grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
            min-height: 520px !important;
            align-items: stretch !important;
            overflow: hidden !important
        }

            html[data-cc-page="hotel-accommodation"] .detail-row.reverse .detail-media {
                order: 2 !important
            }

            html[data-cc-page="hotel-accommodation"] .detail-row.reverse .detail-copy {
                order: 1 !important
            }

        html[data-cc-page="hotel-accommodation"] .detail-media {
            min-height: 520px !important;
            margin: 0 !important;
            position: relative !important;
            inset: auto !important;
            z-index: 1 !important
        }

            html[data-cc-page="hotel-accommodation"] .detail-media img {
                position: absolute !important;
                inset: 0 !important;
                width: 100% !important;
                height: 100% !important;
                object-fit: cover !important
            }

        html[data-cc-page="hotel-accommodation"] .detail-copy {
            min-width: 0 !important;
            margin: 0 !important;
            position: relative !important;
            inset: auto !important;
            z-index: 2 !important;
            padding: 56px clamp(38px,4vw,64px) !important;
            background: #fff !important
        }

            html[data-cc-page="hotel-accommodation"] .detail-copy h3 {
                font-size: clamp(36px,3.6vw,50px) !important;
                line-height: 1.02 !important;
                letter-spacing: -.03em !important;
                margin-bottom: 18px !important
            }

            html[data-cc-page="hotel-accommodation"] .detail-copy p {
                font-size: 13.5px !important;
                line-height: 1.82 !important;
                max-width: 520px !important
            }

        html[data-cc-page="hotel-accommodation"] .detail-number {
            font-size: 15px !important;
            margin-bottom: 18px !important
        }

        html[data-cc-page="hotel-accommodation"] .detail-meta {
            margin-bottom: 16px !important
        }

        @media(max-width:900px) {
            html[data-cc-page="hotel-accommodation"] .detail-row, html[data-cc-page="hotel-accommodation"] .detail-row.reverse {
                grid-template-columns: 1fr !important;
                min-height: 0 !important
            }

                html[data-cc-page="hotel-accommodation"] .detail-row.reverse .detail-media, html[data-cc-page="hotel-accommodation"] .detail-row.reverse .detail-copy {
                    order: initial !important
                }

            html[data-cc-page="hotel-accommodation"] .detail-media {
                min-height: 0 !important;
                aspect-ratio: 16/10 !important
            }

                html[data-cc-page="hotel-accommodation"] .detail-media img {
                    position: absolute !important
                }

            html[data-cc-page="hotel-accommodation"] .detail-copy {
                padding: 44px 30px 52px !important
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .detail-copy {
                padding: 36px 22px 44px !important
            }

                html[data-cc-page="hotel-accommodation"] .detail-copy h3 {
                    font-size: 36px !important
                }
        }

        /* V8 footer separation rule */
        html[data-cc-page="hotel-accommodation"] body > section:last-of-type {
            border-bottom: 1px solid #e8e3e5;
        }


        /* V9 - accommodation rate + facts treatment */
        html[data-cc-page="hotel-accommodation"] .detail-copy {
            padding: 54px 58px 58px !important
        }

        html[data-cc-page="hotel-accommodation"] .room-rate {
            margin: 20px 0 24px;
            padding: 18px 0 20px;
            border-top: 1px solid var(--line);
            border-bottom: 1px solid var(--line)
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-label {
            display: block;
            font-size: 10px;
            font-weight: 700;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: #8a8487;
            margin-bottom: 7px
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-line {
            display: flex;
            align-items: baseline;
            gap: 10px;
            flex-wrap: wrap
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-price {
            font-size: 34px;
            font-weight: 700;
            letter-spacing: -.035em;
            color: var(--ink)
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-currency {
            font-size: 13px;
            font-weight: 700;
            letter-spacing: .08em;
            color: var(--pink)
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-note {
            display: block;
            margin-top: 5px;
            font-size: 11px;
            color: #969093
        }

        html[data-cc-page="hotel-accommodation"] .room-facts {
            display: grid;
            gap: 13px;
            margin: 0 0 26px
        }

        html[data-cc-page="hotel-accommodation"] .room-fact {
            display: grid;
            grid-template-columns: 28px 1fr;
            gap: 12px;
            align-items: center;
            font-size: 13px;
            line-height: 1.45;
            color: #3f3b3d
        }

            html[data-cc-page="hotel-accommodation"] .room-fact i {
                width: 28px;
                height: 28px;
                border: 1px solid #e4dfe1;
                border-radius: 50%;
                display: grid;
                place-items: center;
                color: var(--pink);
                font-size: 11px
            }

        html[data-cc-page="hotel-accommodation"] .room-actions {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
            margin-top: 26px
        }

            html[data-cc-page="hotel-accommodation"] .room-actions .btn {
                min-height: 46px;
                padding: 0 22px;
                font-size: 10px
            }

            html[data-cc-page="hotel-accommodation"] .room-actions .btn-outline {
                border-color: #222;
                color: #222
            }

        html[data-cc-page="hotel-accommodation"] .detail-copy > p.room-description {
            margin-bottom: 0 !important
        }

        @media(max-width:900px) {
            html[data-cc-page="hotel-accommodation"] .detail-copy {
                padding: 42px 34px 48px !important
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .detail-copy {
                padding: 34px 22px 40px !important
            }

            html[data-cc-page="hotel-accommodation"] .room-rate-price {
                font-size: 30px
            }

            html[data-cc-page="hotel-accommodation"] .room-actions .btn {
                flex: 1;
                min-width: 140px
            }
        }
    

        /* FINAL DEMO V10 - global header/menu consistency + hero legibility */
        html[data-cc-page="hotel-accommodation"] .header-main {
            height: 92px !important
        }

            html[data-cc-page="hotel-accommodation"] .header-main .container {
                height: 100% !important;
                align-items: center !important
            }

        html[data-cc-page="hotel-accommodation"] .header-book {
            min-height: 48px !important;
            padding: 0 24px !important;
            font-size: 10px !important;
            font-weight: 700 !important;
            letter-spacing: .10em !important
        }
        /* Hotel menu */
        html[data-cc-page="hotel-accommodation"] .menu > a {
            font-family: var(--body) !important;
            font-size: 11px !important;
            font-weight: 600 !important;
            letter-spacing: .075em !important;
            line-height: 1 !important;
            text-transform: uppercase !important
        }
        /* Group menu */
        html[data-cc-page="hotel-accommodation"] .menu-link {
            font-family: var(--body) !important;
            font-size: 11px !important;
            font-weight: 600 !important;
            letter-spacing: .075em !important;
            line-height: 1 !important;
            text-transform: uppercase !important
        }

        html[data-cc-page="hotel-accommodation"] .menu {
            gap: 26px !important
        }

        html[data-cc-page="hotel-accommodation"] .brand img {
            max-height: 66px !important
        }

        html[data-cc-page="hotel-accommodation"] .hero .eyebrow, html[data-cc-page="hotel-accommodation"] .hero-kicker, html[data-cc-page="hotel-accommodation"] .hero-kicker.eyebrow, html[data-cc-page="hotel-accommodation"] .hero-copy .eyebrow {
            color: #fff !important
        }

            html[data-cc-page="hotel-accommodation"] .hero-kicker::before {
                background: #fff !important
            }

        @media(max-width:1200px) {
            html[data-cc-page="hotel-accommodation"] .menu {
                gap: 18px !important
            }

                html[data-cc-page="hotel-accommodation"] .menu > a, html[data-cc-page="hotel-accommodation"] .menu-link {
                    font-size: 10px !important
                }

            html[data-cc-page="hotel-accommodation"] .header-book {
                margin-left: 20px !important;
                padding: 0 20px !important
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-accommodation"] .header-main {
                height: 72px !important
            }

            html[data-cc-page="hotel-accommodation"] .brand img {
                max-height: 46px !important
            }

            html[data-cc-page="hotel-accommodation"] .mobile-trigger {
                font-size: 20px !important
            }
        }
    

        /* V10 - accommodation: commercial hotel listing, not PDF/factsheet */
        html[data-cc-page="hotel-accommodation"] .room-eyebrow {
            font-size: 10px;
            font-weight: 700;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: var(--pink);
            margin-bottom: 13px
        }

        html[data-cc-page="hotel-accommodation"] .detail-copy h3 {
            margin-bottom: 16px !important
        }

        html[data-cc-page="hotel-accommodation"] .room-description {
            max-width: 600px !important
        }

        html[data-cc-page="hotel-accommodation"] .room-commerce {
            display: grid;
            grid-template-columns: minmax(0,1fr) auto;
            gap: 34px;
            align-items: end;
            margin-top: 30px
        }

        html[data-cc-page="hotel-accommodation"] .room-commerce-main {
            min-width: 0
        }

        html[data-cc-page="hotel-accommodation"] .room-facts-inline {
            display: flex;
            align-items: flex-start;
            gap: 22px 30px;
            flex-wrap: wrap;
            margin: 0 0 27px
        }

        html[data-cc-page="hotel-accommodation"] .room-fact-inline {
            display: flex;
            align-items: flex-start;
            gap: 9px;
            min-width: 0;
            max-width: 240px
        }

            html[data-cc-page="hotel-accommodation"] .room-fact-inline i {
                color: var(--pink);
                font-size: 15px;
                margin-top: 2px;
                flex: 0 0 auto
            }

        html[data-cc-page="hotel-accommodation"] .room-fact-text {
            display: grid;
            gap: 3px;
            min-width: 0
        }

            html[data-cc-page="hotel-accommodation"] .room-fact-text small {
                font-size: 8px;
                line-height: 1;
                text-transform: uppercase;
                letter-spacing: .13em;
                color: #999296;
                font-weight: 700
            }

            html[data-cc-page="hotel-accommodation"] .room-fact-text strong {
                font-size: 11.5px;
                line-height: 1.45;
                font-weight: 600;
                color: #2d292b
            }

        html[data-cc-page="hotel-accommodation"] .room-rate-side {
            min-width: 150px;
            text-align: right;
            align-self: end;
            padding-bottom: 2px
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-label-v10 {
            display: block;
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #8f888c;
            margin-bottom: 5px
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-amount {
            display: flex;
            justify-content: flex-end;
            align-items: baseline;
            gap: 7px;
            white-space: nowrap
        }

            html[data-cc-page="hotel-accommodation"] .room-rate-amount strong {
                font-size: 31px;
                line-height: 1;
                font-weight: 700;
                letter-spacing: -.045em;
                color: #171717
            }

            html[data-cc-page="hotel-accommodation"] .room-rate-amount span {
                font-size: 11px;
                font-weight: 700;
                letter-spacing: .08em;
                color: var(--pink)
            }

        html[data-cc-page="hotel-accommodation"] .room-rate-per, html[data-cc-page="hotel-accommodation"] .room-rate-plan {
            display: block;
            color: #9a9497;
            line-height: 1.45
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-per {
            font-size: 10px;
            margin-top: 6px
        }

        html[data-cc-page="hotel-accommodation"] .room-rate-plan {
            font-size: 9px
        }

        html[data-cc-page="hotel-accommodation"] .room-actions-v10 {
            display: flex;
            gap: 10px;
            flex-wrap: wrap
        }

            html[data-cc-page="hotel-accommodation"] .room-actions-v10 .btn {
                min-height: 44px;
                padding: 0 20px;
                font-size: 9px
            }
        /* kill old rate/list presentation if legacy rules remain */
        html[data-cc-page="hotel-accommodation"] .room-rate, html[data-cc-page="hotel-accommodation"] .room-facts, html[data-cc-page="hotel-accommodation"] .room-actions {
            display: none !important
        }

        @media(max-width:1180px) {
            html[data-cc-page="hotel-accommodation"] .room-commerce {
                grid-template-columns: 1fr;
                gap: 24px
            }

            html[data-cc-page="hotel-accommodation"] .room-rate-side {
                text-align: left;
                min-width: 0
            }

            html[data-cc-page="hotel-accommodation"] .room-rate-amount {
                justify-content: flex-start
            }
        }

        @media(max-width:900px) {
            html[data-cc-page="hotel-accommodation"] .room-facts-inline {
                gap: 18px 24px
            }

            html[data-cc-page="hotel-accommodation"] .room-fact-inline {
                max-width: 100%;
                min-width: calc(50% - 16px)
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .room-facts-inline {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 18px
            }

            html[data-cc-page="hotel-accommodation"] .room-fact-inline {
                min-width: 0
            }

                html[data-cc-page="hotel-accommodation"] .room-fact-inline:last-child {
                    grid-column: 1/-1
                }

            html[data-cc-page="hotel-accommodation"] .room-rate-amount strong {
                font-size: 28px
            }

            html[data-cc-page="hotel-accommodation"] .room-actions-v10 .btn {
                flex: 1
            }
        }
    

/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="hotel-accommodation"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-accommodation"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-accommodation"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="hotel-accommodation"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="hotel-accommodation"] .internal-banner .hero-inner, html[data-cc-page="hotel-accommodation"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="hotel-accommodation"] .internal-banner .hero-copy, html[data-cc-page="hotel-accommodation"] .internal-banner .offers-page-hero-copy, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="hotel-accommodation"] .internal-banner .hero-kicker, html[data-cc-page="hotel-accommodation"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="hotel-accommodation"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-kicker, html[data-cc-page="hotel-accommodation"] .internal-banner h1, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="hotel-accommodation"] .internal-banner .hero-kicker::before, html[data-cc-page="hotel-accommodation"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="hotel-accommodation"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="hotel-accommodation"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="hotel-accommodation"] .internal-banner .hero-inner, html[data-cc-page="hotel-accommodation"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="hotel-accommodation"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="hotel-accommodation"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="hotel-accommodation"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-accommodation"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="hotel-accommodation"] .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;
}
html[data-cc-page="hotel-accommodation"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="hotel-accommodation"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="hotel-accommodation"] .footer-reference::after{display:none!important;}
html[data-cc-page="hotel-accommodation"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="hotel-accommodation"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="hotel-accommodation"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="hotel-accommodation"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="hotel-accommodation"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="hotel-accommodation"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="hotel-accommodation"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="hotel-accommodation"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="hotel-accommodation"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="hotel-accommodation"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="hotel-accommodation"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="hotel-accommodation"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="hotel-accommodation"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="hotel-accommodation"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="hotel-accommodation"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="hotel-accommodation"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="hotel-accommodation"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="hotel-accommodation"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="hotel-accommodation"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="hotel-accommodation"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="hotel-accommodation"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="hotel-accommodation"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="hotel-accommodation"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="hotel-accommodation"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="hotel-accommodation"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="hotel-accommodation"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="hotel-accommodation"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="hotel-accommodation"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="hotel-accommodation"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="hotel-accommodation"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="hotel-accommodation"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="hotel-accommodation"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="hotel-accommodation"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="hotel-accommodation"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="hotel-accommodation"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="hotel-accommodation"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="hotel-accommodation"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-accommodation"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="hotel-accommodation"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-accommodation"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="hotel-accommodation"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-brand, html[data-cc-page="hotel-accommodation"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="hotel-accommodation"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-accommodation"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="hotel-accommodation"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-brand, html[data-cc-page="hotel-accommodation"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="hotel-accommodation"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="hotel-accommodation"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="hotel-accommodation"] .footer-reference-form button{min-height:52px;}
}


        /* FINAL DEMO V11 - standard hotel footer from Hotel_Dining.html */
        html[data-cc-page="hotel-accommodation"] .footer {
            background: #111113 !important;
            color: #fff !important;
            position: relative !important
        }

            html[data-cc-page="hotel-accommodation"] .footer .footer-main {
                padding: 72px 0 58px !important;
                display: grid !important;
                grid-template-columns: 1.1fr .7fr .85fr 1.2fr !important;
                gap: 70px !important
            }

            html[data-cc-page="hotel-accommodation"] .footer .footer-logo {
                width: 170px !important;
                height: auto !important;
                object-fit: contain !important
            }

            html[data-cc-page="hotel-accommodation"] .footer .footer-copy {
                font-size: 12px !important;
                line-height: 1.8 !important;
                color: rgba(255,255,255,.56) !important;
                max-width: 320px !important;
                margin-top: 22px !important
            }

            html[data-cc-page="hotel-accommodation"] .footer h4 {
                font-size: 9px !important;
                letter-spacing: .18em !important;
                text-transform: uppercase !important;
                color: rgba(255,255,255,.45) !important;
                margin-bottom: 20px !important
            }

            html[data-cc-page="hotel-accommodation"] .footer .footer-links {
                display: grid !important;
                gap: 11px !important
            }

                html[data-cc-page="hotel-accommodation"] .footer .footer-links a, html[data-cc-page="hotel-accommodation"] .footer p {
                    font-size: 12px !important;
                    line-height: 1.65 !important;
                    color: rgba(255,255,255,.68) !important
                }

                    html[data-cc-page="hotel-accommodation"] .footer .footer-links a:hover {
                        color: #fff !important
                    }

            html[data-cc-page="hotel-accommodation"] .footer .footer-contact-card {
                display: flex !important;
                align-items: center !important;
                gap: 12px !important;
                border: 1px solid rgba(255,255,255,.14) !important;
                padding: 15px !important;
                margin-bottom: 10px !important;
                background: transparent !important
            }

                html[data-cc-page="hotel-accommodation"] .footer .footer-contact-card i {
                    color: var(--pink) !important
                }

            html[data-cc-page="hotel-accommodation"] .footer .newsletter {
                margin-top: 22px !important
            }

            html[data-cc-page="hotel-accommodation"] .footer .newsletter-form {
                display: flex !important;
                border: 1px solid rgba(255,255,255,.18) !important;
                min-height: 48px !important;
                background: transparent !important
            }

                html[data-cc-page="hotel-accommodation"] .footer .newsletter-form input {
                    flex: 1 !important;
                    min-width: 0 !important;
                    border: 0 !important;
                    background: transparent !important;
                    color: #fff !important;
                    padding: 0 14px !important;
                    outline: 0 !important
                }

                html[data-cc-page="hotel-accommodation"] .footer .newsletter-form button {
                    border: 0 !important;
                    background: var(--pink) !important;
                    color: #fff !important;
                    padding: 0 18px !important;
                    font-size: 9px !important;
                    font-weight: 700 !important;
                    text-transform: uppercase !important;
                    letter-spacing: .1em !important
                }

            html[data-cc-page="hotel-accommodation"] .footer .footer-social {
                display: flex !important;
                gap: 8px !important;
                margin-top: 20px !important
            }

                html[data-cc-page="hotel-accommodation"] .footer .footer-social a {
                    width: 37px !important;
                    height: 37px !important;
                    border: 1px solid rgba(255,255,255,.18) !important;
                    border-radius: 50% !important;
                    display: flex !important;
                    align-items: center !important;
                    justify-content: center !important;
                    color: #fff !important
                }

            html[data-cc-page="hotel-accommodation"] .footer .footer-bottom {
                border-top: 1px solid rgba(255,255,255,.1) !important;
                padding: 22px 0 26px !important;
                display: flex !important;
                justify-content: space-between !important;
                gap: 20px !important;
                flex-wrap: wrap !important;
                font-size: 10px !important;
                line-height: 1.5 !important;
                color: rgba(255,255,255,.52) !important;
                background: transparent !important
            }

                html[data-cc-page="hotel-accommodation"] .footer .footer-bottom nav {
                    display: flex !important;
                    gap: 18px !important;
                    flex-wrap: wrap !important
                }

                html[data-cc-page="hotel-accommodation"] .footer .footer-bottom a {
                    color: rgba(255,255,255,.62) !important
                }

                    html[data-cc-page="hotel-accommodation"] .footer .footer-bottom a:hover {
                        color: #fff !important
                    }

        @media(max-width:1050px) {
            html[data-cc-page="hotel-accommodation"] .footer .footer-main {
                grid-template-columns: 1fr 1fr !important;
                gap: 45px !important
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-accommodation"] .footer .footer-main {
                grid-template-columns: 1fr 1fr !important;
                gap: 38px 28px !important;
                padding-top: 55px !important
            }

            html[data-cc-page="hotel-accommodation"] .footer .footer-brand {
                grid-column: 1/3 !important
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-accommodation"] .footer .footer-main {
                grid-template-columns: 1fr !important
            }

            html[data-cc-page="hotel-accommodation"] .footer .footer-brand {
                grid-column: auto !important
            }

            html[data-cc-page="hotel-accommodation"] .footer .footer-bottom {
                display: block !important
            }

                html[data-cc-page="hotel-accommodation"] .footer .footer-bottom nav {
                    margin-top: 12px !important
                }
        }

/* ============================================================
   PAGE: hotel-contact   (Hotel_Contact.html)
   ============================================================ */
html[data-cc-page="hotel-contact"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="hotel-contact"], html[data-cc-page="hotel-contact"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="hotel-contact"]{scroll-behavior:smooth}html[data-cc-page="hotel-contact"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="hotel-contact"] a{text-decoration:none;color:inherit}html[data-cc-page="hotel-contact"] img, html[data-cc-page="hotel-contact"] video{display:block;width:100%}html[data-cc-page="hotel-contact"] button, html[data-cc-page="hotel-contact"] input, html[data-cc-page="hotel-contact"] textarea{font:inherit}html[data-cc-page="hotel-contact"] button{cursor:pointer}html[data-cc-page="hotel-contact"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="hotel-contact"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="hotel-contact"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-contact"] .in-view .section-rule, html[data-cc-page="hotel-contact"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="hotel-contact"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="hotel-contact"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="hotel-contact"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="hotel-contact"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="hotel-contact"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="hotel-contact"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="hotel-contact"] .btn-white{background:#fff;color:#111}html[data-cc-page="hotel-contact"] .btn-white::before{background:var(--pink)}html[data-cc-page="hotel-contact"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="hotel-contact"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-contact"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="hotel-contact"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="hotel-contact"] .header.sticky .topbar{display:none}html[data-cc-page="hotel-contact"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="hotel-contact"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="hotel-contact"] .header-main{height:102px}html[data-cc-page="hotel-contact"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="hotel-contact"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="hotel-contact"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="hotel-contact"] .brand-dark{display:none}html[data-cc-page="hotel-contact"] .header.sticky .brand-light{display:none}html[data-cc-page="hotel-contact"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="hotel-contact"] .header.sticky .brand{width:210px}html[data-cc-page="hotel-contact"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="hotel-contact"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="hotel-contact"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="hotel-contact"] .menu a:hover::after, html[data-cc-page="hotel-contact"] .menu a.active::after{right:0}html[data-cc-page="hotel-contact"] .header-book{margin-left:32px}html[data-cc-page="hotel-contact"] .lang{position:relative}html[data-cc-page="hotel-contact"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="hotel-contact"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-contact"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="hotel-contact"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-contact"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="hotel-contact"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="hotel-contact"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-contact"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="hotel-contact"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="hotel-contact"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="hotel-contact"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="hotel-contact"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="hotel-contact"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="hotel-contact"] .drawer.open{transform:none}html[data-cc-page="hotel-contact"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="hotel-contact"] .drawer-head img{width:150px}html[data-cc-page="hotel-contact"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="hotel-contact"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="hotel-contact"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="hotel-contact"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="hotel-contact"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="hotel-contact"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="hotel-contact"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="hotel-contact"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-contact"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="hotel-contact"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="hotel-contact"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_hotelcontact 9s ease-in-out both}html[data-cc-page="hotel-contact"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_hotelcontact{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="hotel-contact"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="hotel-contact"] .hero-copy{max-width:800px}html[data-cc-page="hotel-contact"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="hotel-contact"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="hotel-contact"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="hotel-contact"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="hotel-contact"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="hotel-contact"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="hotel-contact"] .reveal, html[data-cc-page="hotel-contact"] .reveal-left, html[data-cc-page="hotel-contact"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-contact"] .reveal{transform:translateY(44px)}html[data-cc-page="hotel-contact"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="hotel-contact"] .reveal-right{transform:translateX(60px)}html[data-cc-page="hotel-contact"] .reveal.in-view, html[data-cc-page="hotel-contact"] .reveal-left.in-view, html[data-cc-page="hotel-contact"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="hotel-contact"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-contact"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="hotel-contact"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="hotel-contact"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="hotel-contact"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="hotel-contact"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="hotel-contact"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="hotel-contact"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="hotel-contact"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="hotel-contact"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-contact"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="hotel-contact"] .intro-section{padding:150px 0}html[data-cc-page="hotel-contact"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="hotel-contact"] .intro-grid h2, html[data-cc-page="hotel-contact"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="hotel-contact"] .intro-grid p, html[data-cc-page="hotel-contact"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="hotel-contact"] .section-heading{margin-bottom:58px}html[data-cc-page="hotel-contact"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="hotel-contact"] .section-heading h2{max-width:850px}html[data-cc-page="hotel-contact"] .section-heading p{margin-top:20px}html[data-cc-page="hotel-contact"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="hotel-contact"] .footer{background:#111113;color:#fff}html[data-cc-page="hotel-contact"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="hotel-contact"] .footer-logo{width:170px}html[data-cc-page="hotel-contact"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="hotel-contact"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="hotel-contact"] .footer-links{display:grid;gap:11px}html[data-cc-page="hotel-contact"] .footer-links a, html[data-cc-page="hotel-contact"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="hotel-contact"] .footer-links a:hover{color:#fff}html[data-cc-page="hotel-contact"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="hotel-contact"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="hotel-contact"] .newsletter{margin-top:22px}html[data-cc-page="hotel-contact"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="hotel-contact"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="hotel-contact"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="hotel-contact"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="hotel-contact"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-contact"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="hotel-contact"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="hotel-contact"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="hotel-contact"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-contact"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="hotel-contact"] .container{width:calc(100% - 44px)}html[data-cc-page="hotel-contact"] .menu{gap:18px}html[data-cc-page="hotel-contact"] .menu a{font-size:10px}html[data-cc-page="hotel-contact"] .header-book{margin-left:20px}html[data-cc-page="hotel-contact"] .intro-grid{gap:65px}html[data-cc-page="hotel-contact"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="hotel-contact"] body{padding-bottom:68px}html[data-cc-page="hotel-contact"] .container{width:calc(100% - 30px)}html[data-cc-page="hotel-contact"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="hotel-contact"] .topbar, html[data-cc-page="hotel-contact"] .menu, html[data-cc-page="hotel-contact"] .header-book{display:none}html[data-cc-page="hotel-contact"] .header-main{height:72px}html[data-cc-page="hotel-contact"] .brand{width:180px}html[data-cc-page="hotel-contact"] .brand-light{display:none!important}html[data-cc-page="hotel-contact"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="hotel-contact"] .mobile-actions{display:flex}html[data-cc-page="hotel-contact"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="hotel-contact"] .hero-inner{padding-bottom:70px}html[data-cc-page="hotel-contact"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="hotel-contact"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="hotel-contact"] .hero-place{display:none}html[data-cc-page="hotel-contact"] .intro-section{padding:105px 0}html[data-cc-page="hotel-contact"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="hotel-contact"] .intro-grid h2, html[data-cc-page="hotel-contact"] .section-heading h2{font-size:48px}html[data-cc-page="hotel-contact"] .section-heading{margin-bottom:40px}html[data-cc-page="hotel-contact"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="hotel-contact"] .footer-brand{grid-column:1/3}html[data-cc-page="hotel-contact"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="hotel-contact"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="hotel-contact"] .hero{min-height:600px}html[data-cc-page="hotel-contact"] .hero h1{font-size:45px}html[data-cc-page="hotel-contact"] .hero-actions .btn{width:100%}html[data-cc-page="hotel-contact"] .intro-grid h2, html[data-cc-page="hotel-contact"] .section-heading h2{font-size:42px}html[data-cc-page="hotel-contact"] .footer-main{grid-template-columns:1fr}html[data-cc-page="hotel-contact"] .footer-brand{grid-column:auto}html[data-cc-page="hotel-contact"] .footer-bottom{display:block}html[data-cc-page="hotel-contact"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="hotel-contact"], html[data-cc-page="hotel-contact"] *{scroll-behavior:auto!important}html[data-cc-page="hotel-contact"] .reveal, html[data-cc-page="hotel-contact"] .reveal-left, html[data-cc-page="hotel-contact"] .reveal-right, html[data-cc-page="hotel-contact"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="hotel-contact"] .image-reveal::after{display:none}html[data-cc-page="hotel-contact"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="hotel-contact"] .contact-intro{padding:145px 0 115px}html[data-cc-page="hotel-contact"] .contact-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;align-items:start}html[data-cc-page="hotel-contact"] .contact-intro h2{font-family:var(--display);font-size:clamp(54px,5.4vw,82px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-contact"] .contact-intro p{font-size:14px;line-height:1.9;color:var(--muted);max-width:590px}html[data-cc-page="hotel-contact"] .contact-channels{padding-bottom:135px}html[data-cc-page="hotel-contact"] .channel-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}html[data-cc-page="hotel-contact"] .channel{padding:38px 32px;border-right:1px solid var(--line);transition:background .3s ease,transform .3s ease}html[data-cc-page="hotel-contact"] .channel:last-child{border-right:0}html[data-cc-page="hotel-contact"] .channel:hover{background:#faf7f9;transform:translateY(-5px)}html[data-cc-page="hotel-contact"] .channel i{font-size:20px;color:var(--pink);margin-bottom:28px}html[data-cc-page="hotel-contact"] .channel small{display:block;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#888;margin-bottom:9px}html[data-cc-page="hotel-contact"] .channel strong{font-family:var(--display);font-size:27px;font-weight:400}html[data-cc-page="hotel-contact"] .channel p{font-size:12px;line-height:1.65;color:var(--muted);margin-top:9px}html[data-cc-page="hotel-contact"] .contact-workspace{padding:145px 0;background:var(--paper)}html[data-cc-page="hotel-contact"] .workspace-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px;align-items:stretch}html[data-cc-page="hotel-contact"] .contact-form-panel, html[data-cc-page="hotel-contact"] .map-panel{background:#fff;min-height:720px}html[data-cc-page="hotel-contact"] .contact-form-panel{padding:58px}html[data-cc-page="hotel-contact"] .contact-form-panel h2{font-family:var(--display);font-size:52px;font-weight:400;line-height:1}html[data-cc-page="hotel-contact"] .contact-form-panel>p{font-size:13px;line-height:1.8;color:var(--muted);margin:18px 0 36px;max-width:520px}html[data-cc-page="hotel-contact"] .contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px 18px}html[data-cc-page="hotel-contact"] .form-field{position:relative}html[data-cc-page="hotel-contact"] .form-field.full{grid-column:1/3}html[data-cc-page="hotel-contact"] .form-field label{display:block;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:9px}html[data-cc-page="hotel-contact"] .form-field input, html[data-cc-page="hotel-contact"] .form-field textarea{width:100%;border:0;border-bottom:1px solid #cbc7c8;background:transparent;outline:0;padding:12px 0 13px;font-size:14px;color:#222;transition:border-color .25s ease}html[data-cc-page="hotel-contact"] .form-field textarea{min-height:120px;resize:vertical}html[data-cc-page="hotel-contact"] .form-field input:focus, html[data-cc-page="hotel-contact"] .form-field textarea:focus{border-color:var(--pink)}html[data-cc-page="hotel-contact"] .interest-label{font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}html[data-cc-page="hotel-contact"] .interest-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}html[data-cc-page="hotel-contact"] .interest-chips button{border:1px solid #d8d4d5;background:#fff;padding:10px 13px;font-size:10px;transition:.25s}html[data-cc-page="hotel-contact"] .interest-chips button.active, html[data-cc-page="hotel-contact"] .interest-chips button:hover{background:var(--pink);border-color:var(--pink);color:#fff}html[data-cc-page="hotel-contact"] .contact-form .submit-row{grid-column:1/3;margin-top:8px}html[data-cc-page="hotel-contact"] .map-panel{position:relative;overflow:hidden}html[data-cc-page="hotel-contact"] .map-panel iframe{width:100%;height:100%;min-height:720px;border:0}html[data-cc-page="hotel-contact"] .map-caption{position:absolute;left:28px;bottom:28px;background:#fff;padding:20px 24px;box-shadow:0 12px 36px rgba(0,0,0,.12);max-width:300px}html[data-cc-page="hotel-contact"] .map-caption small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="hotel-contact"] .map-caption strong{display:block;font-family:var(--display);font-size:25px;font-weight:400;margin-top:7px}html[data-cc-page="hotel-contact"] .arrival-note{padding:135px 0}html[data-cc-page="hotel-contact"] .arrival-note-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:end}html[data-cc-page="hotel-contact"] .arrival-note h2{font-family:var(--display);font-size:clamp(54px,5.3vw,78px);line-height:1;font-weight:400}html[data-cc-page="hotel-contact"] .arrival-note p{font-size:14px;line-height:1.9;color:var(--muted);max-width:560px}
@media(max-width:900px){html[data-cc-page="hotel-contact"] .contact-intro-grid, html[data-cc-page="hotel-contact"] .workspace-grid, html[data-cc-page="hotel-contact"] .arrival-note-inner{grid-template-columns:1fr;gap:32px}html[data-cc-page="hotel-contact"] .channel-grid{grid-template-columns:1fr}html[data-cc-page="hotel-contact"] .channel{border-right:0;border-bottom:1px solid var(--line)}html[data-cc-page="hotel-contact"] .channel:last-child{border-bottom:0}html[data-cc-page="hotel-contact"] .contact-form-panel{min-height:0}html[data-cc-page="hotel-contact"] .map-panel iframe{min-height:520px}html[data-cc-page="hotel-contact"] .contact-workspace{padding:105px 0}html[data-cc-page="hotel-contact"] .contact-intro{padding:105px 0 80px}}
@media(max-width:560px){html[data-cc-page="hotel-contact"] .contact-form-panel{padding:34px 22px}html[data-cc-page="hotel-contact"] .contact-form{grid-template-columns:1fr}html[data-cc-page="hotel-contact"] .form-field.full, html[data-cc-page="hotel-contact"] .contact-form .submit-row{grid-column:1}html[data-cc-page="hotel-contact"] .contact-form-panel h2{font-size:42px}html[data-cc-page="hotel-contact"] .map-panel iframe{min-height:430px}html[data-cc-page="hotel-contact"] .map-caption{left:16px;right:16px;bottom:16px}html[data-cc-page="hotel-contact"] .arrival-note{padding:100px 0}}

/* Final Demo v2 - hotel navigation clarity */
html[data-cc-page="hotel-contact"] .drawer-back-group{color:var(--pink)!important;font-weight:600!important;border-bottom:1px solid rgba(169,0,97,.18)!important;margin-bottom:5px}html[data-cc-page="hotel-contact"] .drawer-back-group i{font-size:11px;margin-right:8px}html[data-cc-page="hotel-contact"] .menu a.active, html[data-cc-page="hotel-contact"] .menu-link.active{color:var(--pink)}


/* FINAL DEMO V4 REVIEW FIXES */

html[data-cc-page="hotel-contact"] .arrival-note{background:#f7f5f5!important;color:#171717!important;border-top:1px solid #ece7e9}



/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="hotel-contact"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="hotel-contact"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="hotel-contact"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="hotel-contact"] .page-intro-grid>div, html[data-cc-page="hotel-contact"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="hotel-contact"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="hotel-contact"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="hotel-contact"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="hotel-contact"] .page-intro .reveal-left, html[data-cc-page="hotel-contact"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="hotel-contact"] .page-intro .reveal-left.in-view, html[data-cc-page="hotel-contact"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="hotel-contact"] .section-heading h2, html[data-cc-page="hotel-contact"] .rail-head h2, html[data-cc-page="hotel-contact"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="hotel-contact"] .section-heading p, html[data-cc-page="hotel-contact"] .rail-head p, html[data-cc-page="hotel-contact"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="hotel-contact"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="hotel-contact"] .page-intro-grid{padding:0 8px}html[data-cc-page="hotel-contact"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="hotel-contact"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="hotel-contact"] .page-intro h2{font-size:38px!important}html[data-cc-page="hotel-contact"] .page-intro p{font-size:13px!important}}

html[data-cc-page="hotel-contact"] .contact-intro{padding:92px 0 88px!important}
html[data-cc-page="hotel-contact"] .contact-intro-grid{display:grid!important;grid-template-columns:1fr!important;gap:22px!important;max-width:900px;margin:0 auto;text-align:center!important;align-items:center!important}
html[data-cc-page="hotel-contact"] .contact-intro-grid>div, html[data-cc-page="hotel-contact"] .contact-intro-grid>p{max-width:760px;margin-left:auto;margin-right:auto}
html[data-cc-page="hotel-contact"] .contact-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important}
html[data-cc-page="hotel-contact"] .contact-intro p{font-size:var(--inner-body)!important;line-height:1.82!important}
html[data-cc-page="hotel-contact"] .contact-intro .reveal-left, html[data-cc-page="hotel-contact"] .contact-intro .reveal-right{transform:translateY(22px)!important}html[data-cc-page="hotel-contact"] .contact-intro .in-view{transform:none!important}

/* V8 footer separation rule */
html[data-cc-page="hotel-contact"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="hotel-contact"] .header-main{height:92px!important}
html[data-cc-page="hotel-contact"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="hotel-contact"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="hotel-contact"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="hotel-contact"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="hotel-contact"] .menu{gap:26px!important}
html[data-cc-page="hotel-contact"] .brand img{max-height:66px!important}
html[data-cc-page="hotel-contact"] .hero .eyebrow, html[data-cc-page="hotel-contact"] .hero-kicker, html[data-cc-page="hotel-contact"] .hero-kicker.eyebrow, html[data-cc-page="hotel-contact"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="hotel-contact"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="hotel-contact"] .menu{gap:18px!important}html[data-cc-page="hotel-contact"] .menu>a, html[data-cc-page="hotel-contact"] .menu-link{font-size:10px!important}html[data-cc-page="hotel-contact"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="hotel-contact"] .header-main{height:72px!important}html[data-cc-page="hotel-contact"] .brand img{max-height:46px!important}html[data-cc-page="hotel-contact"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="hotel-contact"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-contact"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="hotel-contact"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-contact"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="hotel-contact"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="hotel-contact"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="hotel-contact"] .internal-banner .hero-inner, html[data-cc-page="hotel-contact"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-contact"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="hotel-contact"] .internal-banner .hero-copy, html[data-cc-page="hotel-contact"] .internal-banner .offers-page-hero-copy, html[data-cc-page="hotel-contact"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="hotel-contact"] .internal-banner .hero-kicker, html[data-cc-page="hotel-contact"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="hotel-contact"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="hotel-contact"] .internal-banner .cl7-kicker, html[data-cc-page="hotel-contact"] .internal-banner h1, html[data-cc-page="hotel-contact"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="hotel-contact"] .internal-banner .hero-kicker::before, html[data-cc-page="hotel-contact"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="hotel-contact"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="hotel-contact"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-contact"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="hotel-contact"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="hotel-contact"] .internal-banner .hero-inner, html[data-cc-page="hotel-contact"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-contact"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="hotel-contact"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-contact"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="hotel-contact"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="hotel-contact"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-contact"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="hotel-contact"] .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;
}
html[data-cc-page="hotel-contact"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="hotel-contact"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="hotel-contact"] .footer-reference::after{display:none!important;}
html[data-cc-page="hotel-contact"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="hotel-contact"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="hotel-contact"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="hotel-contact"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="hotel-contact"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="hotel-contact"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="hotel-contact"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="hotel-contact"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="hotel-contact"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="hotel-contact"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="hotel-contact"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="hotel-contact"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="hotel-contact"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="hotel-contact"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="hotel-contact"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="hotel-contact"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="hotel-contact"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="hotel-contact"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="hotel-contact"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="hotel-contact"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="hotel-contact"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="hotel-contact"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="hotel-contact"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="hotel-contact"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="hotel-contact"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="hotel-contact"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="hotel-contact"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="hotel-contact"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="hotel-contact"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="hotel-contact"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="hotel-contact"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="hotel-contact"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="hotel-contact"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="hotel-contact"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="hotel-contact"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="hotel-contact"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="hotel-contact"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="hotel-contact"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="hotel-contact"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="hotel-contact"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="hotel-contact"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="hotel-contact"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="hotel-contact"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="hotel-contact"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-contact"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="hotel-contact"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="hotel-contact"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-contact"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="hotel-contact"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="hotel-contact"] .footer-reference-brand, html[data-cc-page="hotel-contact"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-contact"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="hotel-contact"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="hotel-contact"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="hotel-contact"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-contact"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="hotel-contact"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="hotel-contact"] .footer-reference-brand, html[data-cc-page="hotel-contact"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="hotel-contact"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="hotel-contact"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="hotel-contact"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="hotel-contact"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="hotel-contact"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="hotel-contact"] .footer-reference-form button{min-height:52px;}
}


/* FINAL DEMO V11 - standard hotel footer from Hotel_Dining.html */
html[data-cc-page="hotel-contact"] .footer{background:#111113!important;color:#fff!important;position:relative!important}
html[data-cc-page="hotel-contact"] .footer .footer-main{padding:72px 0 58px!important;display:grid!important;grid-template-columns:1.1fr .7fr .85fr 1.2fr!important;gap:70px!important}
html[data-cc-page="hotel-contact"] .footer .footer-logo{width:170px!important;height:auto!important;object-fit:contain!important}
html[data-cc-page="hotel-contact"] .footer .footer-copy{font-size:12px!important;line-height:1.8!important;color:rgba(255,255,255,.56)!important;max-width:320px!important;margin-top:22px!important}
html[data-cc-page="hotel-contact"] .footer h4{font-size:9px!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:rgba(255,255,255,.45)!important;margin-bottom:20px!important}
html[data-cc-page="hotel-contact"] .footer .footer-links{display:grid!important;gap:11px!important}
html[data-cc-page="hotel-contact"] .footer .footer-links a, html[data-cc-page="hotel-contact"] .footer p{font-size:12px!important;line-height:1.65!important;color:rgba(255,255,255,.68)!important}
html[data-cc-page="hotel-contact"] .footer .footer-links a:hover{color:#fff!important}
html[data-cc-page="hotel-contact"] .footer .footer-contact-card{display:flex!important;align-items:center!important;gap:12px!important;border:1px solid rgba(255,255,255,.14)!important;padding:15px!important;margin-bottom:10px!important;background:transparent!important}
html[data-cc-page="hotel-contact"] .footer .footer-contact-card i{color:var(--pink)!important}
html[data-cc-page="hotel-contact"] .footer .newsletter{margin-top:22px!important}
html[data-cc-page="hotel-contact"] .footer .newsletter-form{display:flex!important;border:1px solid rgba(255,255,255,.18)!important;min-height:48px!important;background:transparent!important}
html[data-cc-page="hotel-contact"] .footer .newsletter-form input{flex:1!important;min-width:0!important;border:0!important;background:transparent!important;color:#fff!important;padding:0 14px!important;outline:0!important}
html[data-cc-page="hotel-contact"] .footer .newsletter-form button{border:0!important;background:var(--pink)!important;color:#fff!important;padding:0 18px!important;font-size:9px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important}
html[data-cc-page="hotel-contact"] .footer .footer-social{display:flex!important;gap:8px!important;margin-top:20px!important}
html[data-cc-page="hotel-contact"] .footer .footer-social a{width:37px!important;height:37px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important}
html[data-cc-page="hotel-contact"] .footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1)!important;padding:22px 0 26px!important;display:flex!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important;font-size:10px!important;line-height:1.5!important;color:rgba(255,255,255,.52)!important;background:transparent!important}
html[data-cc-page="hotel-contact"] .footer .footer-bottom nav{display:flex!important;gap:18px!important;flex-wrap:wrap!important}
html[data-cc-page="hotel-contact"] .footer .footer-bottom a{color:rgba(255,255,255,.62)!important}
html[data-cc-page="hotel-contact"] .footer .footer-bottom a:hover{color:#fff!important}
@media(max-width:1050px){html[data-cc-page="hotel-contact"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:45px!important}}
@media(max-width:820px){html[data-cc-page="hotel-contact"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:38px 28px!important;padding-top:55px!important}html[data-cc-page="hotel-contact"] .footer .footer-brand{grid-column:1/3!important}}
@media(max-width:560px){html[data-cc-page="hotel-contact"] .footer .footer-main{grid-template-columns:1fr!important}html[data-cc-page="hotel-contact"] .footer .footer-brand{grid-column:auto!important}html[data-cc-page="hotel-contact"] .footer .footer-bottom{display:block!important}html[data-cc-page="hotel-contact"] .footer .footer-bottom nav{margin-top:12px!important}}

/* ============================================================
   PAGE: hotel-dining   (Hotel_Dining.html)
   ============================================================ */
html[data-cc-page="hotel-dining"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="hotel-dining"], html[data-cc-page="hotel-dining"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="hotel-dining"]{scroll-behavior:smooth}html[data-cc-page="hotel-dining"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="hotel-dining"] a{text-decoration:none;color:inherit}html[data-cc-page="hotel-dining"] img, html[data-cc-page="hotel-dining"] video{display:block;width:100%}html[data-cc-page="hotel-dining"] button, html[data-cc-page="hotel-dining"] input, html[data-cc-page="hotel-dining"] textarea{font:inherit}html[data-cc-page="hotel-dining"] button{cursor:pointer}html[data-cc-page="hotel-dining"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="hotel-dining"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="hotel-dining"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .in-view .section-rule, html[data-cc-page="hotel-dining"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="hotel-dining"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="hotel-dining"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="hotel-dining"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="hotel-dining"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="hotel-dining"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="hotel-dining"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="hotel-dining"] .btn-white{background:#fff;color:#111}html[data-cc-page="hotel-dining"] .btn-white::before{background:var(--pink)}html[data-cc-page="hotel-dining"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="hotel-dining"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-dining"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="hotel-dining"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="hotel-dining"] .header.sticky .topbar{display:none}html[data-cc-page="hotel-dining"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="hotel-dining"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="hotel-dining"] .header-main{height:102px}html[data-cc-page="hotel-dining"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="hotel-dining"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="hotel-dining"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="hotel-dining"] .brand-dark{display:none}html[data-cc-page="hotel-dining"] .header.sticky .brand-light{display:none}html[data-cc-page="hotel-dining"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="hotel-dining"] .header.sticky .brand{width:210px}html[data-cc-page="hotel-dining"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="hotel-dining"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="hotel-dining"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="hotel-dining"] .menu a:hover::after, html[data-cc-page="hotel-dining"] .menu a.active::after{right:0}html[data-cc-page="hotel-dining"] .header-book{margin-left:32px}html[data-cc-page="hotel-dining"] .lang{position:relative}html[data-cc-page="hotel-dining"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="hotel-dining"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-dining"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="hotel-dining"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-dining"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="hotel-dining"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="hotel-dining"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-dining"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="hotel-dining"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="hotel-dining"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="hotel-dining"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="hotel-dining"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="hotel-dining"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="hotel-dining"] .drawer.open{transform:none}html[data-cc-page="hotel-dining"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="hotel-dining"] .drawer-head img{width:150px}html[data-cc-page="hotel-dining"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="hotel-dining"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="hotel-dining"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="hotel-dining"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="hotel-dining"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="hotel-dining"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="hotel-dining"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="hotel-dining"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-dining"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="hotel-dining"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="hotel-dining"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_hoteldining 9s ease-in-out both}html[data-cc-page="hotel-dining"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_hoteldining{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="hotel-dining"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="hotel-dining"] .hero-copy{max-width:800px}html[data-cc-page="hotel-dining"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="hotel-dining"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="hotel-dining"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="hotel-dining"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="hotel-dining"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="hotel-dining"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="hotel-dining"] .reveal, html[data-cc-page="hotel-dining"] .reveal-left, html[data-cc-page="hotel-dining"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .reveal{transform:translateY(44px)}html[data-cc-page="hotel-dining"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="hotel-dining"] .reveal-right{transform:translateX(60px)}html[data-cc-page="hotel-dining"] .reveal.in-view, html[data-cc-page="hotel-dining"] .reveal-left.in-view, html[data-cc-page="hotel-dining"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="hotel-dining"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="hotel-dining"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="hotel-dining"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="hotel-dining"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="hotel-dining"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="hotel-dining"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="hotel-dining"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="hotel-dining"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="hotel-dining"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="hotel-dining"] .intro-section{padding:150px 0}html[data-cc-page="hotel-dining"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="hotel-dining"] .intro-grid h2, html[data-cc-page="hotel-dining"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="hotel-dining"] .intro-grid p, html[data-cc-page="hotel-dining"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="hotel-dining"] .section-heading{margin-bottom:58px}html[data-cc-page="hotel-dining"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="hotel-dining"] .section-heading h2{max-width:850px}html[data-cc-page="hotel-dining"] .section-heading p{margin-top:20px}html[data-cc-page="hotel-dining"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="hotel-dining"] .footer{background:#111113;color:#fff}html[data-cc-page="hotel-dining"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="hotel-dining"] .footer-logo{width:170px}html[data-cc-page="hotel-dining"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="hotel-dining"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="hotel-dining"] .footer-links{display:grid;gap:11px}html[data-cc-page="hotel-dining"] .footer-links a, html[data-cc-page="hotel-dining"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="hotel-dining"] .footer-links a:hover{color:#fff}html[data-cc-page="hotel-dining"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="hotel-dining"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="hotel-dining"] .newsletter{margin-top:22px}html[data-cc-page="hotel-dining"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="hotel-dining"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="hotel-dining"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="hotel-dining"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="hotel-dining"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-dining"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="hotel-dining"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="hotel-dining"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="hotel-dining"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-dining"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="hotel-dining"] .container{width:calc(100% - 44px)}html[data-cc-page="hotel-dining"] .menu{gap:18px}html[data-cc-page="hotel-dining"] .menu a{font-size:10px}html[data-cc-page="hotel-dining"] .header-book{margin-left:20px}html[data-cc-page="hotel-dining"] .intro-grid{gap:65px}html[data-cc-page="hotel-dining"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="hotel-dining"] body{padding-bottom:68px}html[data-cc-page="hotel-dining"] .container{width:calc(100% - 30px)}html[data-cc-page="hotel-dining"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="hotel-dining"] .topbar, html[data-cc-page="hotel-dining"] .menu, html[data-cc-page="hotel-dining"] .header-book{display:none}html[data-cc-page="hotel-dining"] .header-main{height:72px}html[data-cc-page="hotel-dining"] .brand{width:180px}html[data-cc-page="hotel-dining"] .brand-light{display:none!important}html[data-cc-page="hotel-dining"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="hotel-dining"] .mobile-actions{display:flex}html[data-cc-page="hotel-dining"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="hotel-dining"] .hero-inner{padding-bottom:70px}html[data-cc-page="hotel-dining"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="hotel-dining"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="hotel-dining"] .hero-place{display:none}html[data-cc-page="hotel-dining"] .intro-section{padding:105px 0}html[data-cc-page="hotel-dining"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="hotel-dining"] .intro-grid h2, html[data-cc-page="hotel-dining"] .section-heading h2{font-size:48px}html[data-cc-page="hotel-dining"] .section-heading{margin-bottom:40px}html[data-cc-page="hotel-dining"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="hotel-dining"] .footer-brand{grid-column:1/3}html[data-cc-page="hotel-dining"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="hotel-dining"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="hotel-dining"] .hero{min-height:600px}html[data-cc-page="hotel-dining"] .hero h1{font-size:45px}html[data-cc-page="hotel-dining"] .hero-actions .btn{width:100%}html[data-cc-page="hotel-dining"] .intro-grid h2, html[data-cc-page="hotel-dining"] .section-heading h2{font-size:42px}html[data-cc-page="hotel-dining"] .footer-main{grid-template-columns:1fr}html[data-cc-page="hotel-dining"] .footer-brand{grid-column:auto}html[data-cc-page="hotel-dining"] .footer-bottom{display:block}html[data-cc-page="hotel-dining"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="hotel-dining"], html[data-cc-page="hotel-dining"] *{scroll-behavior:auto!important}html[data-cc-page="hotel-dining"] .reveal, html[data-cc-page="hotel-dining"] .reveal-left, html[data-cc-page="hotel-dining"] .reveal-right, html[data-cc-page="hotel-dining"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="hotel-dining"] .image-reveal::after{display:none}html[data-cc-page="hotel-dining"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="hotel-dining"] .page-intro{padding:155px 0 130px}html[data-cc-page="hotel-dining"] .page-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;align-items:start}html[data-cc-page="hotel-dining"] .page-intro h2{font-family:var(--display);font-size:clamp(56px,5.6vw,86px);line-height:.98;letter-spacing:-.045em;font-weight:400}html[data-cc-page="hotel-dining"] .page-intro p{font-size:15px;line-height:1.95;color:var(--muted);max-width:650px}html[data-cc-page="hotel-dining"] .big-space{padding:150px 0}html[data-cc-page="hotel-dining"] .soft-space{padding:150px 0;background:var(--paper)}
html[data-cc-page="hotel-dining"] .rail-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}html[data-cc-page="hotel-dining"] .rail-head h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-dining"] .rail-head p{font-size:14px;line-height:1.85;color:var(--muted);max-width:570px;margin-top:18px}html[data-cc-page="hotel-dining"] .rail-nav{display:flex;gap:8px}html[data-cc-page="hotel-dining"] .rail-nav button{width:48px;height:48px;border:1px solid #ccc;background:#fff;transition:.25s}html[data-cc-page="hotel-dining"] .rail-nav button:hover{background:var(--pink);border-color:var(--pink);color:#fff;transform:translateY(-2px)}
html[data-cc-page="hotel-dining"] .rail-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;scroll-snap-type:x mandatory;user-select:none}html[data-cc-page="hotel-dining"] .rail-viewport::-webkit-scrollbar{display:none}html[data-cc-page="hotel-dining"] .rail-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none}html[data-cc-page="hotel-dining"] .rail-track{display:flex;gap:24px;width:max-content;padding-bottom:4px}html[data-cc-page="hotel-dining"] .rail-card{width:min(500px,38vw);min-width:390px;scroll-snap-align:start;background:#fff;border:1px solid #ece8e9;transition:transform .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-dining"] .rail-card:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(0,0,0,.08)}html[data-cc-page="hotel-dining"] .rail-image{height:360px;overflow:hidden;background:#111}html[data-cc-page="hotel-dining"] .rail-image img{height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .rail-card:hover .rail-image img{transform:scale(1.045)}html[data-cc-page="hotel-dining"] .rail-copy{padding:30px 30px 34px}html[data-cc-page="hotel-dining"] .rail-meta{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8b8688;margin-bottom:14px}html[data-cc-page="hotel-dining"] .rail-meta span:first-child{color:var(--pink)}html[data-cc-page="hotel-dining"] .rail-copy h3{font-family:var(--display);font-size:36px;line-height:1.05;font-weight:400}html[data-cc-page="hotel-dining"] .rail-copy p{font-size:12px;line-height:1.8;color:var(--muted);margin:14px 0 22px;max-width:410px}html[data-cc-page="hotel-dining"] .text-link{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="hotel-dining"] .text-link i{transition:transform .25s}html[data-cc-page="hotel-dining"] .text-link:hover i{transform:translateX(5px)}
html[data-cc-page="hotel-dining"] .rail-progress{position:relative;height:20px;margin-top:25px;display:flex;align-items:center;cursor:pointer}html[data-cc-page="hotel-dining"] .rail-progress::before{content:"";position:absolute;left:0;right:0;height:2px;background:#dedadb}html[data-cc-page="hotel-dining"] .rail-progress span{position:absolute;left:0;height:4px;width:28%;background:var(--pink);transition:left .1s linear,width .2s ease;border-radius:5px}
html[data-cc-page="hotel-dining"] .editorial-split{display:grid;grid-template-columns:1.1fr .9fr;gap:25px;align-items:stretch}html[data-cc-page="hotel-dining"] .editorial-split.reverse{grid-template-columns:.9fr 1.1fr}html[data-cc-page="hotel-dining"] .editorial-split.reverse .split-visual{order:2}html[data-cc-page="hotel-dining"] .split-visual{min-height:650px}html[data-cc-page="hotel-dining"] .split-panel{padding:70px;display:flex;flex-direction:column;justify-content:center;background:#fff}html[data-cc-page="hotel-dining"] .split-panel h2{font-family:var(--display);font-size:clamp(50px,4.6vw,72px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-dining"] .split-panel p{font-size:14px;line-height:1.9;color:var(--muted);margin:24px 0 28px;max-width:560px}html[data-cc-page="hotel-dining"] .fact-row{display:flex;gap:32px;flex-wrap:wrap;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}html[data-cc-page="hotel-dining"] .fact-row strong{font-family:var(--display);font-size:28px;font-weight:400;color:var(--pink)}html[data-cc-page="hotel-dining"] .fact-row small{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#888;margin-top:4px}
html[data-cc-page="hotel-dining"] .object-motion{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .object-motion.in-view{opacity:1;transform:none}html[data-cc-page="hotel-dining"] .object-motion:nth-child(even){transform:translateY(34px) translateX(20px)}html[data-cc-page="hotel-dining"] .object-motion:nth-child(even).in-view{transform:none}
@media(max-width:900px){html[data-cc-page="hotel-dining"] .page-intro-grid, html[data-cc-page="hotel-dining"] .editorial-split, html[data-cc-page="hotel-dining"] .editorial-split.reverse{grid-template-columns:1fr;gap:28px}html[data-cc-page="hotel-dining"] .editorial-split.reverse .split-visual{order:0}html[data-cc-page="hotel-dining"] .page-intro{padding:110px 0 95px}html[data-cc-page="hotel-dining"] .big-space, html[data-cc-page="hotel-dining"] .soft-space{padding:105px 0}html[data-cc-page="hotel-dining"] .rail-head{display:block}html[data-cc-page="hotel-dining"] .rail-nav{margin-top:24px}html[data-cc-page="hotel-dining"] .rail-card{width:76vw;min-width:330px}html[data-cc-page="hotel-dining"] .split-visual{min-height:520px}html[data-cc-page="hotel-dining"] .split-panel{padding:48px 36px}}
@media(max-width:560px){html[data-cc-page="hotel-dining"] .rail-card{width:88vw;min-width:280px}html[data-cc-page="hotel-dining"] .rail-image{height:310px}html[data-cc-page="hotel-dining"] .rail-copy{padding:24px}html[data-cc-page="hotel-dining"] .split-panel{padding:36px 24px}html[data-cc-page="hotel-dining"] .split-visual{min-height:430px}html[data-cc-page="hotel-dining"] .page-intro h2{font-size:48px}html[data-cc-page="hotel-dining"] .rail-head h2{font-size:46px}}
html[data-cc-page="hotel-dining"] .dining-moment{padding:150px 0}html[data-cc-page="hotel-dining"] .dining-moment .split-panel{background:#111113;color:#fff}html[data-cc-page="hotel-dining"] .dining-moment .split-panel p{color:rgba(255,255,255,.62)}html[data-cc-page="hotel-dining"] .dining-moment .eyebrow{color:#fff}html[data-cc-page="hotel-dining"] .dining-moment .fact-row{border-color:rgba(255,255,255,.14)}
/* Final v2 - hotel navigation clarity */
html[data-cc-page="hotel-dining"] .drawer-back-group{color:var(--pink)!important;font-weight:600!important;border-bottom:1px solid rgba(169,0,97,.18)!important;margin-bottom:5px}html[data-cc-page="hotel-dining"] .drawer-back-group i{font-size:11px;margin-right:8px}html[data-cc-page="hotel-dining"] .menu a.active, html[data-cc-page="hotel-dining"] .menu-link.active{color:var(--pink)}


/* V7 - Detail pages use vertical editorial presentation, never horizontal rails */
html[data-cc-page="hotel-dining"] .detail-list{padding:20px 0 145px;background:#fff}
html[data-cc-page="hotel-dining"] .detail-list .container{display:flex;flex-direction:column;gap:0}
html[data-cc-page="hotel-dining"] .detail-row{display:grid;grid-template-columns:1.08fr .92fr;min-height:590px;border-top:1px solid #e7e2e4;align-items:stretch;background:#fff}
html[data-cc-page="hotel-dining"] .detail-row:last-child{border-bottom:1px solid #e7e2e4}
html[data-cc-page="hotel-dining"] .detail-row.reverse{grid-template-columns:.92fr 1.08fr}
html[data-cc-page="hotel-dining"] .detail-row.reverse .detail-media{order:2}
html[data-cc-page="hotel-dining"] .detail-row.reverse .detail-copy{order:1}
html[data-cc-page="hotel-dining"] .detail-media{position:relative;overflow:hidden;min-height:590px;background:#f2eff0}
html[data-cc-page="hotel-dining"] .detail-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="hotel-dining"] .detail-row:hover .detail-media img{transform:scale(1.025)}
html[data-cc-page="hotel-dining"] .detail-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(42px,5vw,82px)}
html[data-cc-page="hotel-dining"] .detail-meta{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:22px;font-size:10px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:#817b7e}
html[data-cc-page="hotel-dining"] .detail-meta span:first-child{color:var(--pink);font-weight:700}
html[data-cc-page="hotel-dining"] .detail-copy h3{font-family:var(--display);font-size:clamp(44px,4.3vw,68px);line-height:.98;letter-spacing:-.04em;font-weight:400;margin:0 0 24px}
html[data-cc-page="hotel-dining"] .detail-copy p{font-size:14px;line-height:1.9;color:var(--muted);max-width:560px;margin:0}
html[data-cc-page="hotel-dining"] .detail-copy .text-link{margin-top:30px}
html[data-cc-page="hotel-dining"] .detail-number{font-family:var(--display);font-size:18px;color:#b6afb2;margin-bottom:24px}
html[data-cc-page="hotel-dining"] .detail-page-intro{padding-bottom:105px}
html[data-cc-page="hotel-dining"] .detail-page-intro .page-intro-grid{align-items:end}
html[data-cc-page="hotel-dining"] .detail-page-intro .eyebrow{margin-bottom:18px}
html[data-cc-page="hotel-dining"] .gallery-grid-v7{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px 0 145px}
html[data-cc-page="hotel-dining"] .gallery-grid-v7 figure{margin:0;position:relative;overflow:hidden;aspect-ratio:4/3;background:#f2eff0}
html[data-cc-page="hotel-dining"] .gallery-grid-v7 figure:nth-child(3n+1){aspect-ratio:16/10}
html[data-cc-page="hotel-dining"] .gallery-grid-v7 img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="hotel-dining"] .gallery-grid-v7 figure:hover img{transform:scale(1.025)}
html[data-cc-page="hotel-dining"] .gallery-grid-v7 figcaption{position:absolute;left:22px;bottom:18px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.45)}
@media(max-width:900px){
 html[data-cc-page="hotel-dining"] .detail-list{padding-bottom:105px}html[data-cc-page="hotel-dining"] .detail-row, html[data-cc-page="hotel-dining"] .detail-row.reverse{grid-template-columns:1fr;min-height:0}html[data-cc-page="hotel-dining"] .detail-row.reverse .detail-media, html[data-cc-page="hotel-dining"] .detail-row.reverse .detail-copy{order:initial}html[data-cc-page="hotel-dining"] .detail-media{min-height:0;aspect-ratio:4/3}html[data-cc-page="hotel-dining"] .detail-copy{padding:54px 34px 64px}html[data-cc-page="hotel-dining"] .gallery-grid-v7{grid-template-columns:1fr;gap:16px;padding-bottom:105px}html[data-cc-page="hotel-dining"] .gallery-grid-v7 figure, html[data-cc-page="hotel-dining"] .gallery-grid-v7 figure:nth-child(3n+1){aspect-ratio:4/3}html[data-cc-page="hotel-dining"] .detail-page-intro{padding-bottom:75px}
}
@media(max-width:560px){html[data-cc-page="hotel-dining"] .detail-copy{padding:42px 22px 50px}html[data-cc-page="hotel-dining"] .detail-copy h3{font-size:42px}html[data-cc-page="hotel-dining"] .detail-meta{gap:8px 16px}html[data-cc-page="hotel-dining"] .detail-list{padding-top:0}html[data-cc-page="hotel-dining"] .gallery-grid-v7 figcaption{left:16px;bottom:14px}}


/* FINAL DEMO V4 REVIEW FIXES */

html[data-cc-page="hotel-dining"] .image-reveal, html[data-cc-page="hotel-dining"] .rail-image{background:#f2eff0}
html[data-cc-page="hotel-dining"] .dining-moment{background:#f7f5f5!important;border-top:1px solid #ece7e9}
html[data-cc-page="hotel-dining"] .dining-moment .split-panel{background:#fff!important;color:#171717!important}
html[data-cc-page="hotel-dining"] .dining-moment .split-panel p{color:#6f686c!important}



/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="hotel-dining"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="hotel-dining"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="hotel-dining"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="hotel-dining"] .page-intro-grid>div, html[data-cc-page="hotel-dining"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="hotel-dining"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="hotel-dining"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="hotel-dining"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="hotel-dining"] .page-intro .reveal-left, html[data-cc-page="hotel-dining"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="hotel-dining"] .page-intro .reveal-left.in-view, html[data-cc-page="hotel-dining"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="hotel-dining"] .section-heading h2, html[data-cc-page="hotel-dining"] .rail-head h2, html[data-cc-page="hotel-dining"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="hotel-dining"] .section-heading p, html[data-cc-page="hotel-dining"] .rail-head p, html[data-cc-page="hotel-dining"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="hotel-dining"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="hotel-dining"] .page-intro-grid{padding:0 8px}html[data-cc-page="hotel-dining"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="hotel-dining"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="hotel-dining"] .page-intro h2{font-size:38px!important}html[data-cc-page="hotel-dining"] .page-intro p{font-size:13px!important}}

/* V8 detail content: exact 6/6 image/text, clean zigzag, no overlap */
html[data-cc-page="hotel-dining"] .detail-list{padding-top:0!important}
html[data-cc-page="hotel-dining"] .detail-row, html[data-cc-page="hotel-dining"] .detail-row.reverse{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;min-height:520px!important;align-items:stretch!important;overflow:hidden!important}
html[data-cc-page="hotel-dining"] .detail-row.reverse .detail-media{order:2!important}html[data-cc-page="hotel-dining"] .detail-row.reverse .detail-copy{order:1!important}
html[data-cc-page="hotel-dining"] .detail-media{min-height:520px!important;margin:0!important;position:relative!important;inset:auto!important;z-index:1!important}
html[data-cc-page="hotel-dining"] .detail-media img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
html[data-cc-page="hotel-dining"] .detail-copy{min-width:0!important;margin:0!important;position:relative!important;inset:auto!important;z-index:2!important;padding:56px clamp(38px,4vw,64px)!important;background:#fff!important}
html[data-cc-page="hotel-dining"] .detail-copy h3{font-size:clamp(36px,3.6vw,50px)!important;line-height:1.02!important;letter-spacing:-.03em!important;margin-bottom:18px!important}
html[data-cc-page="hotel-dining"] .detail-copy p{font-size:13.5px!important;line-height:1.82!important;max-width:520px!important}
html[data-cc-page="hotel-dining"] .detail-number{font-size:15px!important;margin-bottom:18px!important}
html[data-cc-page="hotel-dining"] .detail-meta{margin-bottom:16px!important}
@media(max-width:900px){html[data-cc-page="hotel-dining"] .detail-row, html[data-cc-page="hotel-dining"] .detail-row.reverse{grid-template-columns:1fr!important;min-height:0!important}html[data-cc-page="hotel-dining"] .detail-row.reverse .detail-media, html[data-cc-page="hotel-dining"] .detail-row.reverse .detail-copy{order:initial!important}html[data-cc-page="hotel-dining"] .detail-media{min-height:0!important;aspect-ratio:16/10!important}html[data-cc-page="hotel-dining"] .detail-media img{position:absolute!important}html[data-cc-page="hotel-dining"] .detail-copy{padding:44px 30px 52px!important}}
@media(max-width:560px){html[data-cc-page="hotel-dining"] .detail-copy{padding:36px 22px 44px!important}html[data-cc-page="hotel-dining"] .detail-copy h3{font-size:36px!important}}

/* V8 footer separation rule */
html[data-cc-page="hotel-dining"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="hotel-dining"] .header-main{height:92px!important}
html[data-cc-page="hotel-dining"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="hotel-dining"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="hotel-dining"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="hotel-dining"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="hotel-dining"] .menu{gap:26px!important}
html[data-cc-page="hotel-dining"] .brand img{max-height:66px!important}
html[data-cc-page="hotel-dining"] .hero .eyebrow, html[data-cc-page="hotel-dining"] .hero-kicker, html[data-cc-page="hotel-dining"] .hero-kicker.eyebrow, html[data-cc-page="hotel-dining"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="hotel-dining"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="hotel-dining"] .menu{gap:18px!important}html[data-cc-page="hotel-dining"] .menu>a, html[data-cc-page="hotel-dining"] .menu-link{font-size:10px!important}html[data-cc-page="hotel-dining"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="hotel-dining"] .header-main{height:72px!important}html[data-cc-page="hotel-dining"] .brand img{max-height:46px!important}html[data-cc-page="hotel-dining"] .mobile-trigger{font-size:20px!important}}


/* V10 - Dining content: editorial inline facts, no nested cards, no horizontal rules */
html[data-cc-page="hotel-dining"] .venue-eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--pink);margin-bottom:13px}
html[data-cc-page="hotel-dining"] .venue-description{max-width:580px!important}
html[data-cc-page="hotel-dining"] .venue-highlights{display:flex;align-items:flex-start;flex-wrap:wrap;gap:20px 28px;margin-top:28px}
html[data-cc-page="hotel-dining"] .venue-highlight{display:flex;align-items:flex-start;gap:9px;max-width:220px;min-width:120px}
html[data-cc-page="hotel-dining"] .venue-highlight>i{font-size:14px;color:var(--pink);margin-top:2px;flex:0 0 auto}
html[data-cc-page="hotel-dining"] .venue-highlight-text{display:grid;gap:3px}
html[data-cc-page="hotel-dining"] .venue-highlight-text small, html[data-cc-page="hotel-dining"] .venue-hours small{font-size:8px;line-height:1;text-transform:uppercase;letter-spacing:.13em;color:#9a9497;font-weight:700}
html[data-cc-page="hotel-dining"] .venue-highlight-text strong, html[data-cc-page="hotel-dining"] .venue-hours strong{font-size:11.5px;line-height:1.45;font-weight:600;color:#2d292b}
html[data-cc-page="hotel-dining"] .venue-hours{display:flex;align-items:flex-start;gap:10px;margin-top:22px;color:#2d292b}
html[data-cc-page="hotel-dining"] .venue-hours>i{font-size:15px;color:var(--pink);margin-top:1px}
html[data-cc-page="hotel-dining"] .venue-hours>span{display:grid;gap:4px}
html[data-cc-page="hotel-dining"] .detail-copy .text-link{margin-top:25px!important}
/* last section before black footer must remain light */
html[data-cc-page="hotel-dining"] .dining-moment .split-panel{background:#f6f4f4!important;color:#171717!important}
html[data-cc-page="hotel-dining"] .dining-moment .split-panel p{color:var(--muted)!important}
html[data-cc-page="hotel-dining"] .dining-moment .eyebrow{color:var(--pink)!important}
html[data-cc-page="hotel-dining"] .dining-moment .fact-row{border-color:rgba(23,23,23,.12)!important}
@media(max-width:560px){html[data-cc-page="hotel-dining"] .venue-highlights{display:grid;grid-template-columns:1fr 1fr;gap:18px}html[data-cc-page="hotel-dining"] .venue-highlight{min-width:0}html[data-cc-page="hotel-dining"] .venue-highlight:nth-child(2){max-width:none}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="hotel-dining"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-dining"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="hotel-dining"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-dining"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="hotel-dining"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="hotel-dining"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="hotel-dining"] .internal-banner .hero-inner, html[data-cc-page="hotel-dining"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-dining"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="hotel-dining"] .internal-banner .hero-copy, html[data-cc-page="hotel-dining"] .internal-banner .offers-page-hero-copy, html[data-cc-page="hotel-dining"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="hotel-dining"] .internal-banner .hero-kicker, html[data-cc-page="hotel-dining"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="hotel-dining"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="hotel-dining"] .internal-banner .cl7-kicker, html[data-cc-page="hotel-dining"] .internal-banner h1, html[data-cc-page="hotel-dining"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="hotel-dining"] .internal-banner .hero-kicker::before, html[data-cc-page="hotel-dining"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="hotel-dining"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="hotel-dining"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-dining"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="hotel-dining"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="hotel-dining"] .internal-banner .hero-inner, html[data-cc-page="hotel-dining"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-dining"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="hotel-dining"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-dining"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="hotel-dining"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="hotel-dining"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-dining"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="hotel-dining"] .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;
}
html[data-cc-page="hotel-dining"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="hotel-dining"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="hotel-dining"] .footer-reference::after{display:none!important;}
html[data-cc-page="hotel-dining"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="hotel-dining"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="hotel-dining"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="hotel-dining"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="hotel-dining"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="hotel-dining"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="hotel-dining"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="hotel-dining"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="hotel-dining"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="hotel-dining"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="hotel-dining"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="hotel-dining"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="hotel-dining"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="hotel-dining"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="hotel-dining"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="hotel-dining"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="hotel-dining"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="hotel-dining"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="hotel-dining"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="hotel-dining"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="hotel-dining"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="hotel-dining"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="hotel-dining"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="hotel-dining"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="hotel-dining"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="hotel-dining"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="hotel-dining"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="hotel-dining"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="hotel-dining"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="hotel-dining"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="hotel-dining"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="hotel-dining"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="hotel-dining"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="hotel-dining"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="hotel-dining"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="hotel-dining"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="hotel-dining"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="hotel-dining"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="hotel-dining"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="hotel-dining"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="hotel-dining"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="hotel-dining"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="hotel-dining"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="hotel-dining"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-dining"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="hotel-dining"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="hotel-dining"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-dining"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="hotel-dining"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="hotel-dining"] .footer-reference-brand, html[data-cc-page="hotel-dining"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-dining"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="hotel-dining"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="hotel-dining"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="hotel-dining"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-dining"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="hotel-dining"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="hotel-dining"] .footer-reference-brand, html[data-cc-page="hotel-dining"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="hotel-dining"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="hotel-dining"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="hotel-dining"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="hotel-dining"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="hotel-dining"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="hotel-dining"] .footer-reference-form button{min-height:52px;}
}


/* FINAL DEMO V11 - standard hotel footer from Hotel_Dining.html */
html[data-cc-page="hotel-dining"] .footer{background:#111113!important;color:#fff!important;position:relative!important}
html[data-cc-page="hotel-dining"] .footer .footer-main{padding:72px 0 58px!important;display:grid!important;grid-template-columns:1.1fr .7fr .85fr 1.2fr!important;gap:70px!important}
html[data-cc-page="hotel-dining"] .footer .footer-logo{width:170px!important;height:auto!important;object-fit:contain!important}
html[data-cc-page="hotel-dining"] .footer .footer-copy{font-size:12px!important;line-height:1.8!important;color:rgba(255,255,255,.56)!important;max-width:320px!important;margin-top:22px!important}
html[data-cc-page="hotel-dining"] .footer h4{font-size:9px!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:rgba(255,255,255,.45)!important;margin-bottom:20px!important}
html[data-cc-page="hotel-dining"] .footer .footer-links{display:grid!important;gap:11px!important}
html[data-cc-page="hotel-dining"] .footer .footer-links a, html[data-cc-page="hotel-dining"] .footer p{font-size:12px!important;line-height:1.65!important;color:rgba(255,255,255,.68)!important}
html[data-cc-page="hotel-dining"] .footer .footer-links a:hover{color:#fff!important}
html[data-cc-page="hotel-dining"] .footer .footer-contact-card{display:flex!important;align-items:center!important;gap:12px!important;border:1px solid rgba(255,255,255,.14)!important;padding:15px!important;margin-bottom:10px!important;background:transparent!important}
html[data-cc-page="hotel-dining"] .footer .footer-contact-card i{color:var(--pink)!important}
html[data-cc-page="hotel-dining"] .footer .newsletter{margin-top:22px!important}
html[data-cc-page="hotel-dining"] .footer .newsletter-form{display:flex!important;border:1px solid rgba(255,255,255,.18)!important;min-height:48px!important;background:transparent!important}
html[data-cc-page="hotel-dining"] .footer .newsletter-form input{flex:1!important;min-width:0!important;border:0!important;background:transparent!important;color:#fff!important;padding:0 14px!important;outline:0!important}
html[data-cc-page="hotel-dining"] .footer .newsletter-form button{border:0!important;background:var(--pink)!important;color:#fff!important;padding:0 18px!important;font-size:9px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important}
html[data-cc-page="hotel-dining"] .footer .footer-social{display:flex!important;gap:8px!important;margin-top:20px!important}
html[data-cc-page="hotel-dining"] .footer .footer-social a{width:37px!important;height:37px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important}
html[data-cc-page="hotel-dining"] .footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1)!important;padding:22px 0 26px!important;display:flex!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important;font-size:10px!important;line-height:1.5!important;color:rgba(255,255,255,.52)!important;background:transparent!important}
html[data-cc-page="hotel-dining"] .footer .footer-bottom nav{display:flex!important;gap:18px!important;flex-wrap:wrap!important}
html[data-cc-page="hotel-dining"] .footer .footer-bottom a{color:rgba(255,255,255,.62)!important}
html[data-cc-page="hotel-dining"] .footer .footer-bottom a:hover{color:#fff!important}
@media(max-width:1050px){html[data-cc-page="hotel-dining"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:45px!important}}
@media(max-width:820px){html[data-cc-page="hotel-dining"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:38px 28px!important;padding-top:55px!important}html[data-cc-page="hotel-dining"] .footer .footer-brand{grid-column:1/3!important}}
@media(max-width:560px){html[data-cc-page="hotel-dining"] .footer .footer-main{grid-template-columns:1fr!important}html[data-cc-page="hotel-dining"] .footer .footer-brand{grid-column:auto!important}html[data-cc-page="hotel-dining"] .footer .footer-bottom{display:block!important}html[data-cc-page="hotel-dining"] .footer .footer-bottom nav{margin-top:12px!important}}


/* FINAL DEMO V11 - modern Dining */
html[data-cc-page="hotel-dining"] .dining-feature-v11{padding:120px 0 135px;background:#fff}html[data-cc-page="hotel-dining"] .dining-feature-grid-v11{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);align-items:center;gap:72px}html[data-cc-page="hotel-dining"] .dining-feature-media-v11{height:680px;overflow:hidden}html[data-cc-page="hotel-dining"] .dining-feature-media-v11 img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .dining-feature-media-v11:hover img{transform:scale(1.035)}html[data-cc-page="hotel-dining"] .dining-feature-copy-v11{position:relative;padding:40px 0}html[data-cc-page="hotel-dining"] .dining-number-v11{display:block;font-family:var(--display);font-size:72px;line-height:1;color:rgba(169,0,97,.14);margin:14px 0 -6px}html[data-cc-page="hotel-dining"] .dining-feature-copy-v11 h2, html[data-cc-page="hotel-dining"] .dining-section-head-v11 h2, html[data-cc-page="hotel-dining"] .dining-bars-break-copy-v11 h2, html[data-cc-page="hotel-dining"] .dining-bars-head-v11 h2{font-family:var(--display);font-weight:400;letter-spacing:-.035em}html[data-cc-page="hotel-dining"] .dining-feature-copy-v11 h2{font-size:clamp(52px,5vw,76px);line-height:.98}html[data-cc-page="hotel-dining"] .dining-feature-copy-v11 p{font-size:14px;line-height:1.9;color:var(--muted);max-width:470px;margin:25px 0}html[data-cc-page="hotel-dining"] .dining-meta-v11{display:flex;gap:20px;flex-wrap:wrap;margin:0 0 28px}html[data-cc-page="hotel-dining"] .dining-meta-v11 span{font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#706a6d}html[data-cc-page="hotel-dining"] .dining-restaurants-v11{padding:145px 0;background:#f7f5f5}html[data-cc-page="hotel-dining"] .dining-section-head-v11{max-width:760px;margin-bottom:80px}html[data-cc-page="hotel-dining"] .dining-section-head-v11 h2{font-size:clamp(50px,5vw,76px);line-height:1}html[data-cc-page="hotel-dining"] .dining-story-v11{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:70px;align-items:center;margin:0 0 110px}html[data-cc-page="hotel-dining"] .dining-story-v11.reverse{grid-template-columns:minmax(340px,.75fr) minmax(0,1.25fr)}html[data-cc-page="hotel-dining"] .dining-story-v11.reverse .dining-story-media-v11{order:2}html[data-cc-page="hotel-dining"] .dining-story-v11.reverse .dining-story-copy-v11{order:1}html[data-cc-page="hotel-dining"] .dining-story-media-v11{height:520px;overflow:hidden}html[data-cc-page="hotel-dining"] .dining-story-media-v11 img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .dining-story-v11:hover img{transform:scale(1.035)}html[data-cc-page="hotel-dining"] .dining-story-copy-v11 span{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="hotel-dining"] .dining-story-copy-v11 h3{font-family:var(--display);font-size:clamp(46px,4.2vw,68px);font-weight:400;line-height:1;margin:14px 0 20px}html[data-cc-page="hotel-dining"] .dining-story-copy-v11 p{font-size:13px;line-height:1.85;color:var(--muted);max-width:420px;margin-bottom:25px}html[data-cc-page="hotel-dining"] .dining-bars-break-v11{position:relative;height:72vh;min-height:580px;overflow:hidden;color:#fff}html[data-cc-page="hotel-dining"] .dining-bars-break-v11>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}html[data-cc-page="hotel-dining"] .dining-bars-break-overlay-v11{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.16) 72%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 55%)}html[data-cc-page="hotel-dining"] .dining-bars-break-copy-v11{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:76px}html[data-cc-page="hotel-dining"] .dining-bars-break-copy-v11 .eyebrow{color:#fff}html[data-cc-page="hotel-dining"] .dining-bars-break-copy-v11 h2{font-size:clamp(52px,5vw,78px);line-height:.98;max-width:830px}html[data-cc-page="hotel-dining"] .dining-bars-v11{padding:120px 0 135px;background:#111113;color:#fff;overflow:hidden}html[data-cc-page="hotel-dining"] .dining-bars-head-v11{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:52px}html[data-cc-page="hotel-dining"] .dining-bars-head-v11 .eyebrow{color:#dba1c2}html[data-cc-page="hotel-dining"] .dining-bars-head-v11 h2{font-size:clamp(48px,4.5vw,68px);line-height:1}html[data-cc-page="hotel-dining"] .dining-rail-controls-v11{display:flex;gap:9px}html[data-cc-page="hotel-dining"] .dining-rail-controls-v11 button{width:48px;height:48px;border:1px solid rgba(255,255,255,.24);background:transparent;color:#fff;transition:.25s}html[data-cc-page="hotel-dining"] .dining-rail-controls-v11 button:hover{background:var(--pink);border-color:var(--pink)}html[data-cc-page="hotel-dining"] .dining-bar-viewport-v11{overflow:visible}html[data-cc-page="hotel-dining"] .dining-bar-card-v11{width:min(460px,34vw)!important;min-width:360px!important;border:0!important;background:transparent!important;box-shadow:none!important}html[data-cc-page="hotel-dining"] .dining-bar-card-v11:hover{transform:none!important;box-shadow:none!important}html[data-cc-page="hotel-dining"] .dining-bar-image-v11{position:relative;height:560px;overflow:hidden}html[data-cc-page="hotel-dining"] .dining-bar-image-v11 img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-dining"] .dining-bar-card-v11:hover img{transform:scale(1.05)}html[data-cc-page="hotel-dining"] .dining-bar-overlay-v11{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 58%)}html[data-cc-page="hotel-dining"] .dining-bar-label-v11{position:absolute;left:28px;right:28px;bottom:28px;color:#fff}html[data-cc-page="hotel-dining"] .dining-bar-label-v11 span{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.72)}html[data-cc-page="hotel-dining"] .dining-bar-label-v11 h3{font-family:var(--display);font-size:38px;font-weight:400;line-height:1.05;margin:8px 0 14px}html[data-cc-page="hotel-dining"] .dining-bar-label-v11 i{font-size:14px;color:#fff}html[data-cc-page="hotel-dining"] .rail-progress-v11{height:2px;background:rgba(255,255,255,.17);position:relative;margin-top:38px}html[data-cc-page="hotel-dining"] .rail-progress-v11 span{position:absolute;top:0;left:0;height:100%;width:25%;background:var(--pink);transition:left .2s,width .2s}
@media(max-width:900px){html[data-cc-page="hotel-dining"] .dining-feature-grid-v11, html[data-cc-page="hotel-dining"] .dining-story-v11, html[data-cc-page="hotel-dining"] .dining-story-v11.reverse{grid-template-columns:1fr;gap:38px}html[data-cc-page="hotel-dining"] .dining-feature-media-v11{height:520px}html[data-cc-page="hotel-dining"] .dining-story-v11{margin-bottom:75px}html[data-cc-page="hotel-dining"] .dining-story-v11.reverse .dining-story-media-v11, html[data-cc-page="hotel-dining"] .dining-story-v11.reverse .dining-story-copy-v11{order:initial}html[data-cc-page="hotel-dining"] .dining-story-media-v11{height:480px}html[data-cc-page="hotel-dining"] .dining-bars-break-v11{height:62vh}html[data-cc-page="hotel-dining"] .dining-bar-card-v11{width:72vw!important;min-width:330px!important}}
@media(max-width:560px){html[data-cc-page="hotel-dining"] .dining-feature-v11, html[data-cc-page="hotel-dining"] .dining-restaurants-v11, html[data-cc-page="hotel-dining"] .dining-bars-v11{padding:85px 0}html[data-cc-page="hotel-dining"] .dining-feature-media-v11, html[data-cc-page="hotel-dining"] .dining-story-media-v11{height:380px}html[data-cc-page="hotel-dining"] .dining-feature-copy-v11 h2, html[data-cc-page="hotel-dining"] .dining-section-head-v11 h2, html[data-cc-page="hotel-dining"] .dining-bars-break-copy-v11 h2, html[data-cc-page="hotel-dining"] .dining-bars-head-v11 h2{font-size:44px}html[data-cc-page="hotel-dining"] .dining-bar-image-v11{height:480px}html[data-cc-page="hotel-dining"] .dining-bars-head-v11{align-items:flex-start}html[data-cc-page="hotel-dining"] .dining-rail-controls-v11{display:none}}


/* FINAL DEMO V12 - functional bars rail, no decorative line before footer */
html[data-cc-page="hotel-dining"] .dining-bar-viewport-v11{overflow-x:auto!important;overflow-y:hidden!important;scroll-behavior:smooth!important;scrollbar-width:none!important;cursor:grab!important}
html[data-cc-page="hotel-dining"] .dining-bar-viewport-v11::-webkit-scrollbar{display:none!important}
html[data-cc-page="hotel-dining"] .dining-bar-viewport-v11.is-dragging{cursor:grabbing!important;scroll-snap-type:none!important}
html[data-cc-page="hotel-dining"] .dining-bars-v11{padding-bottom:105px!important}

/* ============================================================
   PAGE: hotel-experiences   (Hotel_Experiences.html)
   ============================================================ */
html[data-cc-page="hotel-experiences"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="hotel-experiences"], html[data-cc-page="hotel-experiences"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="hotel-experiences"]{scroll-behavior:smooth}html[data-cc-page="hotel-experiences"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="hotel-experiences"] a{text-decoration:none;color:inherit}html[data-cc-page="hotel-experiences"] img, html[data-cc-page="hotel-experiences"] video{display:block;width:100%}html[data-cc-page="hotel-experiences"] button, html[data-cc-page="hotel-experiences"] input, html[data-cc-page="hotel-experiences"] textarea{font:inherit}html[data-cc-page="hotel-experiences"] button{cursor:pointer}html[data-cc-page="hotel-experiences"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="hotel-experiences"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="hotel-experiences"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .in-view .section-rule, html[data-cc-page="hotel-experiences"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="hotel-experiences"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="hotel-experiences"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="hotel-experiences"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="hotel-experiences"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="hotel-experiences"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="hotel-experiences"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="hotel-experiences"] .btn-white{background:#fff;color:#111}html[data-cc-page="hotel-experiences"] .btn-white::before{background:var(--pink)}html[data-cc-page="hotel-experiences"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="hotel-experiences"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-experiences"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="hotel-experiences"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="hotel-experiences"] .header.sticky .topbar{display:none}html[data-cc-page="hotel-experiences"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="hotel-experiences"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="hotel-experiences"] .header-main{height:102px}html[data-cc-page="hotel-experiences"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="hotel-experiences"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="hotel-experiences"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="hotel-experiences"] .brand-dark{display:none}html[data-cc-page="hotel-experiences"] .header.sticky .brand-light{display:none}html[data-cc-page="hotel-experiences"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="hotel-experiences"] .header.sticky .brand{width:210px}html[data-cc-page="hotel-experiences"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="hotel-experiences"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="hotel-experiences"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="hotel-experiences"] .menu a:hover::after, html[data-cc-page="hotel-experiences"] .menu a.active::after{right:0}html[data-cc-page="hotel-experiences"] .header-book{margin-left:32px}html[data-cc-page="hotel-experiences"] .lang{position:relative}html[data-cc-page="hotel-experiences"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="hotel-experiences"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-experiences"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="hotel-experiences"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-experiences"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="hotel-experiences"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="hotel-experiences"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-experiences"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="hotel-experiences"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="hotel-experiences"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="hotel-experiences"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="hotel-experiences"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="hotel-experiences"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="hotel-experiences"] .drawer.open{transform:none}html[data-cc-page="hotel-experiences"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="hotel-experiences"] .drawer-head img{width:150px}html[data-cc-page="hotel-experiences"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="hotel-experiences"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="hotel-experiences"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="hotel-experiences"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="hotel-experiences"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="hotel-experiences"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="hotel-experiences"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="hotel-experiences"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-experiences"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="hotel-experiences"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="hotel-experiences"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_hotelexperiences 9s ease-in-out both}html[data-cc-page="hotel-experiences"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_hotelexperiences{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="hotel-experiences"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="hotel-experiences"] .hero-copy{max-width:800px}html[data-cc-page="hotel-experiences"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="hotel-experiences"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="hotel-experiences"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="hotel-experiences"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="hotel-experiences"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="hotel-experiences"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="hotel-experiences"] .reveal, html[data-cc-page="hotel-experiences"] .reveal-left, html[data-cc-page="hotel-experiences"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .reveal{transform:translateY(44px)}html[data-cc-page="hotel-experiences"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="hotel-experiences"] .reveal-right{transform:translateX(60px)}html[data-cc-page="hotel-experiences"] .reveal.in-view, html[data-cc-page="hotel-experiences"] .reveal-left.in-view, html[data-cc-page="hotel-experiences"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="hotel-experiences"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="hotel-experiences"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="hotel-experiences"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="hotel-experiences"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="hotel-experiences"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="hotel-experiences"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="hotel-experiences"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="hotel-experiences"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="hotel-experiences"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="hotel-experiences"] .intro-section{padding:150px 0}html[data-cc-page="hotel-experiences"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="hotel-experiences"] .intro-grid h2, html[data-cc-page="hotel-experiences"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="hotel-experiences"] .intro-grid p, html[data-cc-page="hotel-experiences"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="hotel-experiences"] .section-heading{margin-bottom:58px}html[data-cc-page="hotel-experiences"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="hotel-experiences"] .section-heading h2{max-width:850px}html[data-cc-page="hotel-experiences"] .section-heading p{margin-top:20px}html[data-cc-page="hotel-experiences"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="hotel-experiences"] .footer{background:#111113;color:#fff}html[data-cc-page="hotel-experiences"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="hotel-experiences"] .footer-logo{width:170px}html[data-cc-page="hotel-experiences"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="hotel-experiences"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="hotel-experiences"] .footer-links{display:grid;gap:11px}html[data-cc-page="hotel-experiences"] .footer-links a, html[data-cc-page="hotel-experiences"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="hotel-experiences"] .footer-links a:hover{color:#fff}html[data-cc-page="hotel-experiences"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="hotel-experiences"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="hotel-experiences"] .newsletter{margin-top:22px}html[data-cc-page="hotel-experiences"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="hotel-experiences"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="hotel-experiences"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="hotel-experiences"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="hotel-experiences"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-experiences"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="hotel-experiences"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="hotel-experiences"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="hotel-experiences"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-experiences"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="hotel-experiences"] .container{width:calc(100% - 44px)}html[data-cc-page="hotel-experiences"] .menu{gap:18px}html[data-cc-page="hotel-experiences"] .menu a{font-size:10px}html[data-cc-page="hotel-experiences"] .header-book{margin-left:20px}html[data-cc-page="hotel-experiences"] .intro-grid{gap:65px}html[data-cc-page="hotel-experiences"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="hotel-experiences"] body{padding-bottom:68px}html[data-cc-page="hotel-experiences"] .container{width:calc(100% - 30px)}html[data-cc-page="hotel-experiences"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="hotel-experiences"] .topbar, html[data-cc-page="hotel-experiences"] .menu, html[data-cc-page="hotel-experiences"] .header-book{display:none}html[data-cc-page="hotel-experiences"] .header-main{height:72px}html[data-cc-page="hotel-experiences"] .brand{width:180px}html[data-cc-page="hotel-experiences"] .brand-light{display:none!important}html[data-cc-page="hotel-experiences"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="hotel-experiences"] .mobile-actions{display:flex}html[data-cc-page="hotel-experiences"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="hotel-experiences"] .hero-inner{padding-bottom:70px}html[data-cc-page="hotel-experiences"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="hotel-experiences"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="hotel-experiences"] .hero-place{display:none}html[data-cc-page="hotel-experiences"] .intro-section{padding:105px 0}html[data-cc-page="hotel-experiences"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="hotel-experiences"] .intro-grid h2, html[data-cc-page="hotel-experiences"] .section-heading h2{font-size:48px}html[data-cc-page="hotel-experiences"] .section-heading{margin-bottom:40px}html[data-cc-page="hotel-experiences"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="hotel-experiences"] .footer-brand{grid-column:1/3}html[data-cc-page="hotel-experiences"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="hotel-experiences"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="hotel-experiences"] .hero{min-height:600px}html[data-cc-page="hotel-experiences"] .hero h1{font-size:45px}html[data-cc-page="hotel-experiences"] .hero-actions .btn{width:100%}html[data-cc-page="hotel-experiences"] .intro-grid h2, html[data-cc-page="hotel-experiences"] .section-heading h2{font-size:42px}html[data-cc-page="hotel-experiences"] .footer-main{grid-template-columns:1fr}html[data-cc-page="hotel-experiences"] .footer-brand{grid-column:auto}html[data-cc-page="hotel-experiences"] .footer-bottom{display:block}html[data-cc-page="hotel-experiences"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="hotel-experiences"], html[data-cc-page="hotel-experiences"] *{scroll-behavior:auto!important}html[data-cc-page="hotel-experiences"] .reveal, html[data-cc-page="hotel-experiences"] .reveal-left, html[data-cc-page="hotel-experiences"] .reveal-right, html[data-cc-page="hotel-experiences"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="hotel-experiences"] .image-reveal::after{display:none}html[data-cc-page="hotel-experiences"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="hotel-experiences"] .page-intro{padding:155px 0 130px}html[data-cc-page="hotel-experiences"] .page-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;align-items:start}html[data-cc-page="hotel-experiences"] .page-intro h2{font-family:var(--display);font-size:clamp(56px,5.6vw,86px);line-height:.98;letter-spacing:-.045em;font-weight:400}html[data-cc-page="hotel-experiences"] .page-intro p{font-size:15px;line-height:1.95;color:var(--muted);max-width:650px}html[data-cc-page="hotel-experiences"] .big-space{padding:150px 0}html[data-cc-page="hotel-experiences"] .soft-space{padding:150px 0;background:var(--paper)}
html[data-cc-page="hotel-experiences"] .rail-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}html[data-cc-page="hotel-experiences"] .rail-head h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-experiences"] .rail-head p{font-size:14px;line-height:1.85;color:var(--muted);max-width:570px;margin-top:18px}html[data-cc-page="hotel-experiences"] .rail-nav{display:flex;gap:8px}html[data-cc-page="hotel-experiences"] .rail-nav button{width:48px;height:48px;border:1px solid #ccc;background:#fff;transition:.25s}html[data-cc-page="hotel-experiences"] .rail-nav button:hover{background:var(--pink);border-color:var(--pink);color:#fff;transform:translateY(-2px)}
html[data-cc-page="hotel-experiences"] .rail-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;scroll-snap-type:x mandatory;user-select:none}html[data-cc-page="hotel-experiences"] .rail-viewport::-webkit-scrollbar{display:none}html[data-cc-page="hotel-experiences"] .rail-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none}html[data-cc-page="hotel-experiences"] .rail-track{display:flex;gap:24px;width:max-content;padding-bottom:4px}html[data-cc-page="hotel-experiences"] .rail-card{width:min(500px,38vw);min-width:390px;scroll-snap-align:start;background:#fff;border:1px solid #ece8e9;transition:transform .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-experiences"] .rail-card:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(0,0,0,.08)}html[data-cc-page="hotel-experiences"] .rail-image{height:360px;overflow:hidden;background:#111}html[data-cc-page="hotel-experiences"] .rail-image img{height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .rail-card:hover .rail-image img{transform:scale(1.045)}html[data-cc-page="hotel-experiences"] .rail-copy{padding:30px 30px 34px}html[data-cc-page="hotel-experiences"] .rail-meta{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8b8688;margin-bottom:14px}html[data-cc-page="hotel-experiences"] .rail-meta span:first-child{color:var(--pink)}html[data-cc-page="hotel-experiences"] .rail-copy h3{font-family:var(--display);font-size:36px;line-height:1.05;font-weight:400}html[data-cc-page="hotel-experiences"] .rail-copy p{font-size:12px;line-height:1.8;color:var(--muted);margin:14px 0 22px;max-width:410px}html[data-cc-page="hotel-experiences"] .text-link{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="hotel-experiences"] .text-link i{transition:transform .25s}html[data-cc-page="hotel-experiences"] .text-link:hover i{transform:translateX(5px)}
html[data-cc-page="hotel-experiences"] .rail-progress{position:relative;height:20px;margin-top:25px;display:flex;align-items:center;cursor:pointer}html[data-cc-page="hotel-experiences"] .rail-progress::before{content:"";position:absolute;left:0;right:0;height:2px;background:#dedadb}html[data-cc-page="hotel-experiences"] .rail-progress span{position:absolute;left:0;height:4px;width:28%;background:var(--pink);transition:left .1s linear,width .2s ease;border-radius:5px}
html[data-cc-page="hotel-experiences"] .editorial-split{display:grid;grid-template-columns:1.1fr .9fr;gap:25px;align-items:stretch}html[data-cc-page="hotel-experiences"] .editorial-split.reverse{grid-template-columns:.9fr 1.1fr}html[data-cc-page="hotel-experiences"] .editorial-split.reverse .split-visual{order:2}html[data-cc-page="hotel-experiences"] .split-visual{min-height:650px}html[data-cc-page="hotel-experiences"] .split-panel{padding:70px;display:flex;flex-direction:column;justify-content:center;background:#fff}html[data-cc-page="hotel-experiences"] .split-panel h2{font-family:var(--display);font-size:clamp(50px,4.6vw,72px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-experiences"] .split-panel p{font-size:14px;line-height:1.9;color:var(--muted);margin:24px 0 28px;max-width:560px}html[data-cc-page="hotel-experiences"] .fact-row{display:flex;gap:32px;flex-wrap:wrap;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}html[data-cc-page="hotel-experiences"] .fact-row strong{font-family:var(--display);font-size:28px;font-weight:400;color:var(--pink)}html[data-cc-page="hotel-experiences"] .fact-row small{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#888;margin-top:4px}
html[data-cc-page="hotel-experiences"] .object-motion{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .object-motion.in-view{opacity:1;transform:none}html[data-cc-page="hotel-experiences"] .object-motion:nth-child(even){transform:translateY(34px) translateX(20px)}html[data-cc-page="hotel-experiences"] .object-motion:nth-child(even).in-view{transform:none}
@media(max-width:900px){html[data-cc-page="hotel-experiences"] .page-intro-grid, html[data-cc-page="hotel-experiences"] .editorial-split, html[data-cc-page="hotel-experiences"] .editorial-split.reverse{grid-template-columns:1fr;gap:28px}html[data-cc-page="hotel-experiences"] .editorial-split.reverse .split-visual{order:0}html[data-cc-page="hotel-experiences"] .page-intro{padding:110px 0 95px}html[data-cc-page="hotel-experiences"] .big-space, html[data-cc-page="hotel-experiences"] .soft-space{padding:105px 0}html[data-cc-page="hotel-experiences"] .rail-head{display:block}html[data-cc-page="hotel-experiences"] .rail-nav{margin-top:24px}html[data-cc-page="hotel-experiences"] .rail-card{width:76vw;min-width:330px}html[data-cc-page="hotel-experiences"] .split-visual{min-height:520px}html[data-cc-page="hotel-experiences"] .split-panel{padding:48px 36px}}
@media(max-width:560px){html[data-cc-page="hotel-experiences"] .rail-card{width:88vw;min-width:280px}html[data-cc-page="hotel-experiences"] .rail-image{height:310px}html[data-cc-page="hotel-experiences"] .rail-copy{padding:24px}html[data-cc-page="hotel-experiences"] .split-panel{padding:36px 24px}html[data-cc-page="hotel-experiences"] .split-visual{min-height:430px}html[data-cc-page="hotel-experiences"] .page-intro h2{font-size:48px}html[data-cc-page="hotel-experiences"] .rail-head h2{font-size:46px}}
html[data-cc-page="hotel-experiences"] .experience-break{min-height:660px;position:relative;display:flex;align-items:flex-end;color:#fff;overflow:hidden}html[data-cc-page="hotel-experiences"] .experience-break>img{position:absolute;inset:0;height:100%;object-fit:cover}html[data-cc-page="hotel-experiences"] .experience-break::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.78))}html[data-cc-page="hotel-experiences"] .experience-break .container{position:relative;z-index:2;padding-bottom:80px}html[data-cc-page="hotel-experiences"] .experience-break h2{font-family:var(--display);font-size:clamp(58px,6vw,90px);line-height:.95;font-weight:400;max-width:850px}html[data-cc-page="hotel-experiences"] .experience-break p{font-size:14px;line-height:1.85;color:rgba(255,255,255,.7);max-width:560px;margin-top:20px}
/* Final v2 - hotel navigation clarity */
html[data-cc-page="hotel-experiences"] .drawer-back-group{color:var(--pink)!important;font-weight:600!important;border-bottom:1px solid rgba(169,0,97,.18)!important;margin-bottom:5px}html[data-cc-page="hotel-experiences"] .drawer-back-group i{font-size:11px;margin-right:8px}html[data-cc-page="hotel-experiences"] .menu a.active, html[data-cc-page="hotel-experiences"] .menu-link.active{color:var(--pink)}


/* V7 - Detail pages use vertical editorial presentation, never horizontal rails */
html[data-cc-page="hotel-experiences"] .detail-list{padding:20px 0 145px;background:#fff}
html[data-cc-page="hotel-experiences"] .detail-list .container{display:flex;flex-direction:column;gap:0}
html[data-cc-page="hotel-experiences"] .detail-row{display:grid;grid-template-columns:1.08fr .92fr;min-height:590px;border-top:1px solid #e7e2e4;align-items:stretch;background:#fff}
html[data-cc-page="hotel-experiences"] .detail-row:last-child{border-bottom:1px solid #e7e2e4}
html[data-cc-page="hotel-experiences"] .detail-row.reverse{grid-template-columns:.92fr 1.08fr}
html[data-cc-page="hotel-experiences"] .detail-row.reverse .detail-media{order:2}
html[data-cc-page="hotel-experiences"] .detail-row.reverse .detail-copy{order:1}
html[data-cc-page="hotel-experiences"] .detail-media{position:relative;overflow:hidden;min-height:590px;background:#f2eff0}
html[data-cc-page="hotel-experiences"] .detail-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="hotel-experiences"] .detail-row:hover .detail-media img{transform:scale(1.025)}
html[data-cc-page="hotel-experiences"] .detail-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(42px,5vw,82px)}
html[data-cc-page="hotel-experiences"] .detail-meta{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:22px;font-size:10px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:#817b7e}
html[data-cc-page="hotel-experiences"] .detail-meta span:first-child{color:var(--pink);font-weight:700}
html[data-cc-page="hotel-experiences"] .detail-copy h3{font-family:var(--display);font-size:clamp(44px,4.3vw,68px);line-height:.98;letter-spacing:-.04em;font-weight:400;margin:0 0 24px}
html[data-cc-page="hotel-experiences"] .detail-copy p{font-size:14px;line-height:1.9;color:var(--muted);max-width:560px;margin:0}
html[data-cc-page="hotel-experiences"] .detail-copy .text-link{margin-top:30px}
html[data-cc-page="hotel-experiences"] .detail-number{font-family:var(--display);font-size:18px;color:#b6afb2;margin-bottom:24px}
html[data-cc-page="hotel-experiences"] .detail-page-intro{padding-bottom:105px}
html[data-cc-page="hotel-experiences"] .detail-page-intro .page-intro-grid{align-items:end}
html[data-cc-page="hotel-experiences"] .detail-page-intro .eyebrow{margin-bottom:18px}
html[data-cc-page="hotel-experiences"] .gallery-grid-v7{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px 0 145px}
html[data-cc-page="hotel-experiences"] .gallery-grid-v7 figure{margin:0;position:relative;overflow:hidden;aspect-ratio:4/3;background:#f2eff0}
html[data-cc-page="hotel-experiences"] .gallery-grid-v7 figure:nth-child(3n+1){aspect-ratio:16/10}
html[data-cc-page="hotel-experiences"] .gallery-grid-v7 img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="hotel-experiences"] .gallery-grid-v7 figure:hover img{transform:scale(1.025)}
html[data-cc-page="hotel-experiences"] .gallery-grid-v7 figcaption{position:absolute;left:22px;bottom:18px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.45)}
@media(max-width:900px){
 html[data-cc-page="hotel-experiences"] .detail-list{padding-bottom:105px}html[data-cc-page="hotel-experiences"] .detail-row, html[data-cc-page="hotel-experiences"] .detail-row.reverse{grid-template-columns:1fr;min-height:0}html[data-cc-page="hotel-experiences"] .detail-row.reverse .detail-media, html[data-cc-page="hotel-experiences"] .detail-row.reverse .detail-copy{order:initial}html[data-cc-page="hotel-experiences"] .detail-media{min-height:0;aspect-ratio:4/3}html[data-cc-page="hotel-experiences"] .detail-copy{padding:54px 34px 64px}html[data-cc-page="hotel-experiences"] .gallery-grid-v7{grid-template-columns:1fr;gap:16px;padding-bottom:105px}html[data-cc-page="hotel-experiences"] .gallery-grid-v7 figure, html[data-cc-page="hotel-experiences"] .gallery-grid-v7 figure:nth-child(3n+1){aspect-ratio:4/3}html[data-cc-page="hotel-experiences"] .detail-page-intro{padding-bottom:75px}
}
@media(max-width:560px){html[data-cc-page="hotel-experiences"] .detail-copy{padding:42px 22px 50px}html[data-cc-page="hotel-experiences"] .detail-copy h3{font-size:42px}html[data-cc-page="hotel-experiences"] .detail-meta{gap:8px 16px}html[data-cc-page="hotel-experiences"] .detail-list{padding-top:0}html[data-cc-page="hotel-experiences"] .gallery-grid-v7 figcaption{left:16px;bottom:14px}}


/* FINAL DEMO V4 REVIEW FIXES */

html[data-cc-page="hotel-experiences"] .image-reveal, html[data-cc-page="hotel-experiences"] .rail-image{background:#f2eff0}



/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="hotel-experiences"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="hotel-experiences"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="hotel-experiences"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="hotel-experiences"] .page-intro-grid>div, html[data-cc-page="hotel-experiences"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="hotel-experiences"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="hotel-experiences"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="hotel-experiences"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="hotel-experiences"] .page-intro .reveal-left, html[data-cc-page="hotel-experiences"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="hotel-experiences"] .page-intro .reveal-left.in-view, html[data-cc-page="hotel-experiences"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="hotel-experiences"] .section-heading h2, html[data-cc-page="hotel-experiences"] .rail-head h2, html[data-cc-page="hotel-experiences"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="hotel-experiences"] .section-heading p, html[data-cc-page="hotel-experiences"] .rail-head p, html[data-cc-page="hotel-experiences"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="hotel-experiences"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="hotel-experiences"] .page-intro-grid{padding:0 8px}html[data-cc-page="hotel-experiences"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="hotel-experiences"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="hotel-experiences"] .page-intro h2{font-size:38px!important}html[data-cc-page="hotel-experiences"] .page-intro p{font-size:13px!important}}

/* V8 detail content: exact 6/6 image/text, clean zigzag, no overlap */
html[data-cc-page="hotel-experiences"] .detail-list{padding-top:0!important}
html[data-cc-page="hotel-experiences"] .detail-row, html[data-cc-page="hotel-experiences"] .detail-row.reverse{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;min-height:520px!important;align-items:stretch!important;overflow:hidden!important}
html[data-cc-page="hotel-experiences"] .detail-row.reverse .detail-media{order:2!important}html[data-cc-page="hotel-experiences"] .detail-row.reverse .detail-copy{order:1!important}
html[data-cc-page="hotel-experiences"] .detail-media{min-height:520px!important;margin:0!important;position:relative!important;inset:auto!important;z-index:1!important}
html[data-cc-page="hotel-experiences"] .detail-media img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
html[data-cc-page="hotel-experiences"] .detail-copy{min-width:0!important;margin:0!important;position:relative!important;inset:auto!important;z-index:2!important;padding:56px clamp(38px,4vw,64px)!important;background:#fff!important}
html[data-cc-page="hotel-experiences"] .detail-copy h3{font-size:clamp(36px,3.6vw,50px)!important;line-height:1.02!important;letter-spacing:-.03em!important;margin-bottom:18px!important}
html[data-cc-page="hotel-experiences"] .detail-copy p{font-size:13.5px!important;line-height:1.82!important;max-width:520px!important}
html[data-cc-page="hotel-experiences"] .detail-number{font-size:15px!important;margin-bottom:18px!important}
html[data-cc-page="hotel-experiences"] .detail-meta{margin-bottom:16px!important}
@media(max-width:900px){html[data-cc-page="hotel-experiences"] .detail-row, html[data-cc-page="hotel-experiences"] .detail-row.reverse{grid-template-columns:1fr!important;min-height:0!important}html[data-cc-page="hotel-experiences"] .detail-row.reverse .detail-media, html[data-cc-page="hotel-experiences"] .detail-row.reverse .detail-copy{order:initial!important}html[data-cc-page="hotel-experiences"] .detail-media{min-height:0!important;aspect-ratio:16/10!important}html[data-cc-page="hotel-experiences"] .detail-media img{position:absolute!important}html[data-cc-page="hotel-experiences"] .detail-copy{padding:44px 30px 52px!important}}
@media(max-width:560px){html[data-cc-page="hotel-experiences"] .detail-copy{padding:36px 22px 44px!important}html[data-cc-page="hotel-experiences"] .detail-copy h3{font-size:36px!important}}

/* V8 footer separation rule */
html[data-cc-page="hotel-experiences"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="hotel-experiences"] .header-main{height:92px!important}
html[data-cc-page="hotel-experiences"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="hotel-experiences"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="hotel-experiences"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="hotel-experiences"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="hotel-experiences"] .menu{gap:26px!important}
html[data-cc-page="hotel-experiences"] .brand img{max-height:66px!important}
html[data-cc-page="hotel-experiences"] .hero .eyebrow, html[data-cc-page="hotel-experiences"] .hero-kicker, html[data-cc-page="hotel-experiences"] .hero-kicker.eyebrow, html[data-cc-page="hotel-experiences"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="hotel-experiences"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="hotel-experiences"] .menu{gap:18px!important}html[data-cc-page="hotel-experiences"] .menu>a, html[data-cc-page="hotel-experiences"] .menu-link{font-size:10px!important}html[data-cc-page="hotel-experiences"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="hotel-experiences"] .header-main{height:72px!important}html[data-cc-page="hotel-experiences"] .brand img{max-height:46px!important}html[data-cc-page="hotel-experiences"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="hotel-experiences"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-experiences"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-experiences"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="hotel-experiences"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="hotel-experiences"] .internal-banner .hero-inner, html[data-cc-page="hotel-experiences"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="hotel-experiences"] .internal-banner .hero-copy, html[data-cc-page="hotel-experiences"] .internal-banner .offers-page-hero-copy, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="hotel-experiences"] .internal-banner .hero-kicker, html[data-cc-page="hotel-experiences"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="hotel-experiences"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-kicker, html[data-cc-page="hotel-experiences"] .internal-banner h1, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="hotel-experiences"] .internal-banner .hero-kicker::before, html[data-cc-page="hotel-experiences"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="hotel-experiences"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="hotel-experiences"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="hotel-experiences"] .internal-banner .hero-inner, html[data-cc-page="hotel-experiences"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="hotel-experiences"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="hotel-experiences"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="hotel-experiences"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-experiences"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="hotel-experiences"] .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;
}
html[data-cc-page="hotel-experiences"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="hotel-experiences"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="hotel-experiences"] .footer-reference::after{display:none!important;}
html[data-cc-page="hotel-experiences"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="hotel-experiences"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="hotel-experiences"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="hotel-experiences"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="hotel-experiences"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="hotel-experiences"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="hotel-experiences"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="hotel-experiences"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="hotel-experiences"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="hotel-experiences"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="hotel-experiences"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="hotel-experiences"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="hotel-experiences"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="hotel-experiences"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="hotel-experiences"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="hotel-experiences"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="hotel-experiences"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="hotel-experiences"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="hotel-experiences"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="hotel-experiences"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="hotel-experiences"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="hotel-experiences"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="hotel-experiences"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="hotel-experiences"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="hotel-experiences"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="hotel-experiences"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="hotel-experiences"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="hotel-experiences"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="hotel-experiences"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="hotel-experiences"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="hotel-experiences"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="hotel-experiences"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="hotel-experiences"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="hotel-experiences"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="hotel-experiences"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="hotel-experiences"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="hotel-experiences"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="hotel-experiences"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-experiences"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="hotel-experiences"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="hotel-experiences"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-experiences"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="hotel-experiences"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="hotel-experiences"] .footer-reference-brand, html[data-cc-page="hotel-experiences"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-experiences"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="hotel-experiences"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="hotel-experiences"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="hotel-experiences"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-experiences"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="hotel-experiences"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="hotel-experiences"] .footer-reference-brand, html[data-cc-page="hotel-experiences"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="hotel-experiences"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="hotel-experiences"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="hotel-experiences"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="hotel-experiences"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="hotel-experiences"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="hotel-experiences"] .footer-reference-form button{min-height:52px;}
}


/* FINAL DEMO V11 - standard hotel footer from Hotel_Dining.html */
html[data-cc-page="hotel-experiences"] .footer{background:#111113!important;color:#fff!important;position:relative!important}
html[data-cc-page="hotel-experiences"] .footer .footer-main{padding:72px 0 58px!important;display:grid!important;grid-template-columns:1.1fr .7fr .85fr 1.2fr!important;gap:70px!important}
html[data-cc-page="hotel-experiences"] .footer .footer-logo{width:170px!important;height:auto!important;object-fit:contain!important}
html[data-cc-page="hotel-experiences"] .footer .footer-copy{font-size:12px!important;line-height:1.8!important;color:rgba(255,255,255,.56)!important;max-width:320px!important;margin-top:22px!important}
html[data-cc-page="hotel-experiences"] .footer h4{font-size:9px!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:rgba(255,255,255,.45)!important;margin-bottom:20px!important}
html[data-cc-page="hotel-experiences"] .footer .footer-links{display:grid!important;gap:11px!important}
html[data-cc-page="hotel-experiences"] .footer .footer-links a, html[data-cc-page="hotel-experiences"] .footer p{font-size:12px!important;line-height:1.65!important;color:rgba(255,255,255,.68)!important}
html[data-cc-page="hotel-experiences"] .footer .footer-links a:hover{color:#fff!important}
html[data-cc-page="hotel-experiences"] .footer .footer-contact-card{display:flex!important;align-items:center!important;gap:12px!important;border:1px solid rgba(255,255,255,.14)!important;padding:15px!important;margin-bottom:10px!important;background:transparent!important}
html[data-cc-page="hotel-experiences"] .footer .footer-contact-card i{color:var(--pink)!important}
html[data-cc-page="hotel-experiences"] .footer .newsletter{margin-top:22px!important}
html[data-cc-page="hotel-experiences"] .footer .newsletter-form{display:flex!important;border:1px solid rgba(255,255,255,.18)!important;min-height:48px!important;background:transparent!important}
html[data-cc-page="hotel-experiences"] .footer .newsletter-form input{flex:1!important;min-width:0!important;border:0!important;background:transparent!important;color:#fff!important;padding:0 14px!important;outline:0!important}
html[data-cc-page="hotel-experiences"] .footer .newsletter-form button{border:0!important;background:var(--pink)!important;color:#fff!important;padding:0 18px!important;font-size:9px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important}
html[data-cc-page="hotel-experiences"] .footer .footer-social{display:flex!important;gap:8px!important;margin-top:20px!important}
html[data-cc-page="hotel-experiences"] .footer .footer-social a{width:37px!important;height:37px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important}
html[data-cc-page="hotel-experiences"] .footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1)!important;padding:22px 0 26px!important;display:flex!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important;font-size:10px!important;line-height:1.5!important;color:rgba(255,255,255,.52)!important;background:transparent!important}
html[data-cc-page="hotel-experiences"] .footer .footer-bottom nav{display:flex!important;gap:18px!important;flex-wrap:wrap!important}
html[data-cc-page="hotel-experiences"] .footer .footer-bottom a{color:rgba(255,255,255,.62)!important}
html[data-cc-page="hotel-experiences"] .footer .footer-bottom a:hover{color:#fff!important}
@media(max-width:1050px){html[data-cc-page="hotel-experiences"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:45px!important}}
@media(max-width:820px){html[data-cc-page="hotel-experiences"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:38px 28px!important;padding-top:55px!important}html[data-cc-page="hotel-experiences"] .footer .footer-brand{grid-column:1/3!important}}
@media(max-width:560px){html[data-cc-page="hotel-experiences"] .footer .footer-main{grid-template-columns:1fr!important}html[data-cc-page="hotel-experiences"] .footer .footer-brand{grid-column:auto!important}html[data-cc-page="hotel-experiences"] .footer .footer-bottom{display:block!important}html[data-cc-page="hotel-experiences"] .footer .footer-bottom nav{margin-top:12px!important}}


/* FINAL DEMO V11 - editorial Experiences */
html[data-cc-page="hotel-experiences"] .exp-feature-v11{padding:120px 0 0;background:#fff}html[data-cc-page="hotel-experiences"] .exp-feature-head-v11{max-width:900px;margin-bottom:52px}html[data-cc-page="hotel-experiences"] .exp-feature-head-v11 h2, html[data-cc-page="hotel-experiences"] .exp-stories-head-v11 h2, html[data-cc-page="hotel-experiences"] .exp-film-head-v11 h2, html[data-cc-page="hotel-experiences"] .exp-quote-copy-v11 h2{font-family:var(--display);font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-experiences"] .exp-feature-head-v11 h2{font-size:clamp(52px,5.8vw,88px);line-height:.96}html[data-cc-page="hotel-experiences"] .exp-feature-media-v11{height:78vh;min-height:620px;position:relative;overflow:hidden}html[data-cc-page="hotel-experiences"] .exp-feature-media-v11>img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .exp-feature-media-v11:hover>img{transform:scale(1.025)}html[data-cc-page="hotel-experiences"] .exp-feature-overlay-v11{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 52%)}html[data-cc-page="hotel-experiences"] .exp-feature-caption-v11{position:absolute;z-index:2;left:50%;transform:translateX(-50%);bottom:58px;color:#fff}html[data-cc-page="hotel-experiences"] .exp-feature-caption-v11 span, html[data-cc-page="hotel-experiences"] .exp-story-copy-v11 span{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="hotel-experiences"] .exp-feature-caption-v11 span{color:#fff}html[data-cc-page="hotel-experiences"] .exp-feature-caption-v11 h3{font-family:var(--display);font-size:clamp(52px,5vw,78px);font-weight:400;line-height:1;margin:8px 0 16px}html[data-cc-page="hotel-experiences"] .exp-feature-caption-v11 .text-link{color:#fff}html[data-cc-page="hotel-experiences"] .exp-stories-v11{padding:145px 0;background:#f6f4f4}html[data-cc-page="hotel-experiences"] .exp-stories-head-v11{max-width:760px;margin-bottom:90px}html[data-cc-page="hotel-experiences"] .exp-stories-head-v11 h2{font-size:clamp(52px,5.4vw,82px);line-height:.98}html[data-cc-page="hotel-experiences"] .exp-story-v11{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:72px;align-items:center;margin-bottom:125px}html[data-cc-page="hotel-experiences"] .exp-story-v11.reverse{grid-template-columns:minmax(340px,.85fr) minmax(0,1.15fr)}html[data-cc-page="hotel-experiences"] .exp-story-v11.reverse .exp-story-image-v11{order:2}html[data-cc-page="hotel-experiences"] .exp-story-v11.reverse .exp-story-copy-v11{order:1}html[data-cc-page="hotel-experiences"] .exp-story-image-v11{height:590px;overflow:hidden}html[data-cc-page="hotel-experiences"] .exp-story-image-v11 img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .exp-story-v11:hover img{transform:scale(1.035)}html[data-cc-page="hotel-experiences"] .exp-story-copy-v11 h3{font-family:var(--display);font-size:clamp(50px,4.8vw,74px);font-weight:400;line-height:.98;margin:12px 0 22px}html[data-cc-page="hotel-experiences"] .exp-story-copy-v11 p{font-size:13px;line-height:1.9;color:var(--muted);max-width:440px;margin-bottom:25px}html[data-cc-page="hotel-experiences"] .exp-film-v11{padding:130px 0 145px;background:#fff}html[data-cc-page="hotel-experiences"] .exp-film-head-v11{margin-bottom:52px}html[data-cc-page="hotel-experiences"] .exp-film-head-v11 h2{font-size:clamp(50px,5vw,76px);line-height:1}html[data-cc-page="hotel-experiences"] .exp-film-grid-v11{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}html[data-cc-page="hotel-experiences"] .exp-film-card-v11{height:520px;position:relative;overflow:hidden;color:#fff}html[data-cc-page="hotel-experiences"] .exp-film-card-v11.tall{height:690px}html[data-cc-page="hotel-experiences"] .exp-film-card-v11 img{width:100%;height:100%;object-fit:cover;transition:transform .95s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-experiences"] .exp-film-card-v11:hover img{transform:scale(1.045)}html[data-cc-page="hotel-experiences"] .exp-film-shade-v11{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.76),transparent 58%)}html[data-cc-page="hotel-experiences"] .exp-film-copy-v11{position:absolute;left:30px;right:30px;bottom:30px}html[data-cc-page="hotel-experiences"] .exp-film-copy-v11 span{font-size:10px;font-weight:700;letter-spacing:.14em}html[data-cc-page="hotel-experiences"] .exp-film-copy-v11 h3{font-family:var(--display);font-size:42px;font-weight:400;line-height:1.05;margin:6px 0}html[data-cc-page="hotel-experiences"] .exp-film-copy-v11 p{font-size:12px;line-height:1.7;color:rgba(255,255,255,.75);max-width:340px}html[data-cc-page="hotel-experiences"] .exp-quote-v11{height:72vh;min-height:580px;position:relative;color:#fff;overflow:hidden}html[data-cc-page="hotel-experiences"] .exp-quote-v11>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}html[data-cc-page="hotel-experiences"] .exp-quote-overlay-v11{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.12) 70%)}html[data-cc-page="hotel-experiences"] .exp-quote-copy-v11{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:70px}html[data-cc-page="hotel-experiences"] .exp-quote-copy-v11 .eyebrow{color:#fff}html[data-cc-page="hotel-experiences"] .exp-quote-copy-v11 h2{font-size:clamp(52px,5.2vw,80px);line-height:.98;max-width:850px}
@media(max-width:900px){html[data-cc-page="hotel-experiences"] .exp-story-v11, html[data-cc-page="hotel-experiences"] .exp-story-v11.reverse, html[data-cc-page="hotel-experiences"] .exp-film-grid-v11{grid-template-columns:1fr;gap:38px}html[data-cc-page="hotel-experiences"] .exp-story-v11.reverse .exp-story-image-v11, html[data-cc-page="hotel-experiences"] .exp-story-v11.reverse .exp-story-copy-v11{order:initial}html[data-cc-page="hotel-experiences"] .exp-story-image-v11{height:500px}html[data-cc-page="hotel-experiences"] .exp-film-card-v11, html[data-cc-page="hotel-experiences"] .exp-film-card-v11.tall{height:560px}html[data-cc-page="hotel-experiences"] .exp-feature-media-v11{min-height:560px;height:68vh}}
@media(max-width:560px){html[data-cc-page="hotel-experiences"] .exp-feature-v11, html[data-cc-page="hotel-experiences"] .exp-stories-v11, html[data-cc-page="hotel-experiences"] .exp-film-v11{padding-top:85px}html[data-cc-page="hotel-experiences"] .exp-feature-head-v11 h2, html[data-cc-page="hotel-experiences"] .exp-stories-head-v11 h2, html[data-cc-page="hotel-experiences"] .exp-film-head-v11 h2, html[data-cc-page="hotel-experiences"] .exp-quote-copy-v11 h2{font-size:44px}html[data-cc-page="hotel-experiences"] .exp-feature-media-v11{height:62vh;min-height:500px}html[data-cc-page="hotel-experiences"] .exp-feature-caption-v11{bottom:35px}html[data-cc-page="hotel-experiences"] .exp-story-v11{margin-bottom:80px}html[data-cc-page="hotel-experiences"] .exp-story-image-v11{height:390px}html[data-cc-page="hotel-experiences"] .exp-film-card-v11, html[data-cc-page="hotel-experiences"] .exp-film-card-v11.tall{height:500px}html[data-cc-page="hotel-experiences"] .exp-quote-v11{height:62vh;min-height:520px}}


/* FINAL DEMO V12 - every experience has equal visual importance */
html[data-cc-page="hotel-experiences"] .experiences-equal-v12{padding:125px 0 145px;background:#f7f5f5}
html[data-cc-page="hotel-experiences"] .experiences-equal-head-v12{max-width:820px;margin:0 auto 68px;text-align:center}
html[data-cc-page="hotel-experiences"] .experiences-equal-head-v12 h2{font-family:var(--display);font-size:clamp(52px,5.4vw,82px);font-weight:400;line-height:.98;letter-spacing:-.04em;margin-top:14px}
html[data-cc-page="hotel-experiences"] .experiences-equal-head-v12 p{max-width:610px;margin:22px auto 0;font-size:13px;line-height:1.85;color:var(--muted)}
html[data-cc-page="hotel-experiences"] .experiences-equal-grid-v12{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
html[data-cc-page="hotel-experiences"] .experience-tile-v12{position:relative;height:560px;overflow:hidden;color:#fff;background:#111;display:block}
html[data-cc-page="hotel-experiences"] .experience-tile-v12 img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="hotel-experiences"] .experience-tile-v12:hover img{transform:scale(1.045)}
html[data-cc-page="hotel-experiences"] .experience-shade-v12{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 28%,rgba(0,0,0,.76) 100%);transition:background .35s ease}
html[data-cc-page="hotel-experiences"] .experience-tile-v12:hover .experience-shade-v12{background:linear-gradient(180deg,rgba(0,0,0,.03) 18%,rgba(0,0,0,.82) 100%)}
html[data-cc-page="hotel-experiences"] .experience-copy-v12{position:absolute;left:34px;right:34px;bottom:32px;display:flex;flex-direction:column;align-items:flex-start}
html[data-cc-page="hotel-experiences"] .experience-copy-v12 small{font-size:9px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.75)}
html[data-cc-page="hotel-experiences"] .experience-copy-v12 strong{font-family:var(--display);font-size:clamp(38px,3.3vw,54px);font-weight:400;line-height:1.02;margin-top:7px}
html[data-cc-page="hotel-experiences"] .experience-copy-v12 em{font-style:normal;font-size:12px;line-height:1.7;color:rgba(255,255,255,.76);max-width:430px;margin-top:10px}
html[data-cc-page="hotel-experiences"] .experience-copy-v12 b{font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin-top:18px;display:flex;align-items:center;gap:10px}
html[data-cc-page="hotel-experiences"] .experience-copy-v12 b i{transition:transform .25s}html[data-cc-page="hotel-experiences"] .experience-tile-v12:hover .experience-copy-v12 b i{transform:translateX(5px)}
@media(max-width:850px){html[data-cc-page="hotel-experiences"] .experiences-equal-grid-v12{grid-template-columns:1fr}html[data-cc-page="hotel-experiences"] .experience-tile-v12{height:520px}}
@media(max-width:560px){html[data-cc-page="hotel-experiences"] .experiences-equal-v12{padding:85px 0 100px}html[data-cc-page="hotel-experiences"] .experiences-equal-head-v12{margin-bottom:45px}html[data-cc-page="hotel-experiences"] .experience-tile-v12{height:455px}html[data-cc-page="hotel-experiences"] .experience-copy-v12{left:24px;right:24px;bottom:24px}html[data-cc-page="hotel-experiences"] .experience-copy-v12 strong{font-size:40px}}

/* ============================================================
   PAGE: hotel-gallery   (Hotel_Gallery.html)
   ============================================================ */
html[data-cc-page="hotel-gallery"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="hotel-gallery"], html[data-cc-page="hotel-gallery"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="hotel-gallery"]{scroll-behavior:smooth}html[data-cc-page="hotel-gallery"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="hotel-gallery"] a{text-decoration:none;color:inherit}html[data-cc-page="hotel-gallery"] img, html[data-cc-page="hotel-gallery"] video{display:block;width:100%}html[data-cc-page="hotel-gallery"] button, html[data-cc-page="hotel-gallery"] input, html[data-cc-page="hotel-gallery"] textarea{font:inherit}html[data-cc-page="hotel-gallery"] button{cursor:pointer}html[data-cc-page="hotel-gallery"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="hotel-gallery"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="hotel-gallery"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-gallery"] .in-view .section-rule, html[data-cc-page="hotel-gallery"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="hotel-gallery"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="hotel-gallery"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="hotel-gallery"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="hotel-gallery"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="hotel-gallery"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="hotel-gallery"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="hotel-gallery"] .btn-white{background:#fff;color:#111}html[data-cc-page="hotel-gallery"] .btn-white::before{background:var(--pink)}html[data-cc-page="hotel-gallery"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="hotel-gallery"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-gallery"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="hotel-gallery"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="hotel-gallery"] .header.sticky .topbar{display:none}html[data-cc-page="hotel-gallery"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="hotel-gallery"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="hotel-gallery"] .header-main{height:102px}html[data-cc-page="hotel-gallery"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="hotel-gallery"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="hotel-gallery"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="hotel-gallery"] .brand-dark{display:none}html[data-cc-page="hotel-gallery"] .header.sticky .brand-light{display:none}html[data-cc-page="hotel-gallery"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="hotel-gallery"] .header.sticky .brand{width:210px}html[data-cc-page="hotel-gallery"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="hotel-gallery"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="hotel-gallery"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="hotel-gallery"] .menu a:hover::after, html[data-cc-page="hotel-gallery"] .menu a.active::after{right:0}html[data-cc-page="hotel-gallery"] .header-book{margin-left:32px}html[data-cc-page="hotel-gallery"] .lang{position:relative}html[data-cc-page="hotel-gallery"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="hotel-gallery"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-gallery"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="hotel-gallery"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-gallery"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="hotel-gallery"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="hotel-gallery"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-gallery"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="hotel-gallery"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="hotel-gallery"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="hotel-gallery"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="hotel-gallery"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="hotel-gallery"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="hotel-gallery"] .drawer.open{transform:none}html[data-cc-page="hotel-gallery"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="hotel-gallery"] .drawer-head img{width:150px}html[data-cc-page="hotel-gallery"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="hotel-gallery"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="hotel-gallery"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="hotel-gallery"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="hotel-gallery"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="hotel-gallery"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="hotel-gallery"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="hotel-gallery"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-gallery"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="hotel-gallery"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="hotel-gallery"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_hotelgallery 9s ease-in-out both}html[data-cc-page="hotel-gallery"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_hotelgallery{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="hotel-gallery"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="hotel-gallery"] .hero-copy{max-width:800px}html[data-cc-page="hotel-gallery"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="hotel-gallery"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="hotel-gallery"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="hotel-gallery"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="hotel-gallery"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="hotel-gallery"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="hotel-gallery"] .reveal, html[data-cc-page="hotel-gallery"] .reveal-left, html[data-cc-page="hotel-gallery"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-gallery"] .reveal{transform:translateY(44px)}html[data-cc-page="hotel-gallery"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="hotel-gallery"] .reveal-right{transform:translateX(60px)}html[data-cc-page="hotel-gallery"] .reveal.in-view, html[data-cc-page="hotel-gallery"] .reveal-left.in-view, html[data-cc-page="hotel-gallery"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="hotel-gallery"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-gallery"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="hotel-gallery"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="hotel-gallery"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="hotel-gallery"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="hotel-gallery"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="hotel-gallery"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="hotel-gallery"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="hotel-gallery"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="hotel-gallery"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-gallery"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="hotel-gallery"] .intro-section{padding:150px 0}html[data-cc-page="hotel-gallery"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="hotel-gallery"] .intro-grid h2, html[data-cc-page="hotel-gallery"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="hotel-gallery"] .intro-grid p, html[data-cc-page="hotel-gallery"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="hotel-gallery"] .section-heading{margin-bottom:58px}html[data-cc-page="hotel-gallery"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="hotel-gallery"] .section-heading h2{max-width:850px}html[data-cc-page="hotel-gallery"] .section-heading p{margin-top:20px}html[data-cc-page="hotel-gallery"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="hotel-gallery"] .footer{background:#111113;color:#fff}html[data-cc-page="hotel-gallery"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="hotel-gallery"] .footer-logo{width:170px}html[data-cc-page="hotel-gallery"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="hotel-gallery"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="hotel-gallery"] .footer-links{display:grid;gap:11px}html[data-cc-page="hotel-gallery"] .footer-links a, html[data-cc-page="hotel-gallery"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="hotel-gallery"] .footer-links a:hover{color:#fff}html[data-cc-page="hotel-gallery"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="hotel-gallery"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="hotel-gallery"] .newsletter{margin-top:22px}html[data-cc-page="hotel-gallery"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="hotel-gallery"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="hotel-gallery"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="hotel-gallery"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="hotel-gallery"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-gallery"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="hotel-gallery"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="hotel-gallery"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="hotel-gallery"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-gallery"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="hotel-gallery"] .container{width:calc(100% - 44px)}html[data-cc-page="hotel-gallery"] .menu{gap:18px}html[data-cc-page="hotel-gallery"] .menu a{font-size:10px}html[data-cc-page="hotel-gallery"] .header-book{margin-left:20px}html[data-cc-page="hotel-gallery"] .intro-grid{gap:65px}html[data-cc-page="hotel-gallery"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="hotel-gallery"] body{padding-bottom:68px}html[data-cc-page="hotel-gallery"] .container{width:calc(100% - 30px)}html[data-cc-page="hotel-gallery"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="hotel-gallery"] .topbar, html[data-cc-page="hotel-gallery"] .menu, html[data-cc-page="hotel-gallery"] .header-book{display:none}html[data-cc-page="hotel-gallery"] .header-main{height:72px}html[data-cc-page="hotel-gallery"] .brand{width:180px}html[data-cc-page="hotel-gallery"] .brand-light{display:none!important}html[data-cc-page="hotel-gallery"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="hotel-gallery"] .mobile-actions{display:flex}html[data-cc-page="hotel-gallery"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="hotel-gallery"] .hero-inner{padding-bottom:70px}html[data-cc-page="hotel-gallery"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="hotel-gallery"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="hotel-gallery"] .hero-place{display:none}html[data-cc-page="hotel-gallery"] .intro-section{padding:105px 0}html[data-cc-page="hotel-gallery"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="hotel-gallery"] .intro-grid h2, html[data-cc-page="hotel-gallery"] .section-heading h2{font-size:48px}html[data-cc-page="hotel-gallery"] .section-heading{margin-bottom:40px}html[data-cc-page="hotel-gallery"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="hotel-gallery"] .footer-brand{grid-column:1/3}html[data-cc-page="hotel-gallery"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="hotel-gallery"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="hotel-gallery"] .hero{min-height:600px}html[data-cc-page="hotel-gallery"] .hero h1{font-size:45px}html[data-cc-page="hotel-gallery"] .hero-actions .btn{width:100%}html[data-cc-page="hotel-gallery"] .intro-grid h2, html[data-cc-page="hotel-gallery"] .section-heading h2{font-size:42px}html[data-cc-page="hotel-gallery"] .footer-main{grid-template-columns:1fr}html[data-cc-page="hotel-gallery"] .footer-brand{grid-column:auto}html[data-cc-page="hotel-gallery"] .footer-bottom{display:block}html[data-cc-page="hotel-gallery"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="hotel-gallery"], html[data-cc-page="hotel-gallery"] *{scroll-behavior:auto!important}html[data-cc-page="hotel-gallery"] .reveal, html[data-cc-page="hotel-gallery"] .reveal-left, html[data-cc-page="hotel-gallery"] .reveal-right, html[data-cc-page="hotel-gallery"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="hotel-gallery"] .image-reveal::after{display:none}html[data-cc-page="hotel-gallery"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="hotel-gallery"] .page-intro{padding:155px 0 130px}html[data-cc-page="hotel-gallery"] .page-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;align-items:start}html[data-cc-page="hotel-gallery"] .page-intro h2{font-family:var(--display);font-size:clamp(56px,5.6vw,86px);line-height:.98;letter-spacing:-.045em;font-weight:400}html[data-cc-page="hotel-gallery"] .page-intro p{font-size:15px;line-height:1.95;color:var(--muted);max-width:650px}html[data-cc-page="hotel-gallery"] .big-space{padding:150px 0}html[data-cc-page="hotel-gallery"] .soft-space{padding:150px 0;background:var(--paper)}
html[data-cc-page="hotel-gallery"] .rail-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}html[data-cc-page="hotel-gallery"] .rail-head h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-gallery"] .rail-head p{font-size:14px;line-height:1.85;color:var(--muted);max-width:570px;margin-top:18px}html[data-cc-page="hotel-gallery"] .rail-nav{display:flex;gap:8px}html[data-cc-page="hotel-gallery"] .rail-nav button{width:48px;height:48px;border:1px solid #ccc;background:#fff;transition:.25s}html[data-cc-page="hotel-gallery"] .rail-nav button:hover{background:var(--pink);border-color:var(--pink);color:#fff;transform:translateY(-2px)}
html[data-cc-page="hotel-gallery"] .rail-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;scroll-snap-type:x mandatory;user-select:none}html[data-cc-page="hotel-gallery"] .rail-viewport::-webkit-scrollbar{display:none}html[data-cc-page="hotel-gallery"] .rail-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none}html[data-cc-page="hotel-gallery"] .rail-track{display:flex;gap:24px;width:max-content;padding-bottom:4px}html[data-cc-page="hotel-gallery"] .rail-card{width:min(500px,38vw);min-width:390px;scroll-snap-align:start;background:#fff;border:1px solid #ece8e9;transition:transform .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-gallery"] .rail-card:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(0,0,0,.08)}html[data-cc-page="hotel-gallery"] .rail-image{height:360px;overflow:hidden;background:#111}html[data-cc-page="hotel-gallery"] .rail-image img{height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-gallery"] .rail-card:hover .rail-image img{transform:scale(1.045)}html[data-cc-page="hotel-gallery"] .rail-copy{padding:30px 30px 34px}html[data-cc-page="hotel-gallery"] .rail-meta{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8b8688;margin-bottom:14px}html[data-cc-page="hotel-gallery"] .rail-meta span:first-child{color:var(--pink)}html[data-cc-page="hotel-gallery"] .rail-copy h3{font-family:var(--display);font-size:36px;line-height:1.05;font-weight:400}html[data-cc-page="hotel-gallery"] .rail-copy p{font-size:12px;line-height:1.8;color:var(--muted);margin:14px 0 22px;max-width:410px}html[data-cc-page="hotel-gallery"] .text-link{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="hotel-gallery"] .text-link i{transition:transform .25s}html[data-cc-page="hotel-gallery"] .text-link:hover i{transform:translateX(5px)}
html[data-cc-page="hotel-gallery"] .rail-progress{position:relative;height:20px;margin-top:25px;display:flex;align-items:center;cursor:pointer}html[data-cc-page="hotel-gallery"] .rail-progress::before{content:"";position:absolute;left:0;right:0;height:2px;background:#dedadb}html[data-cc-page="hotel-gallery"] .rail-progress span{position:absolute;left:0;height:4px;width:28%;background:var(--pink);transition:left .1s linear,width .2s ease;border-radius:5px}
html[data-cc-page="hotel-gallery"] .editorial-split{display:grid;grid-template-columns:1.1fr .9fr;gap:25px;align-items:stretch}html[data-cc-page="hotel-gallery"] .editorial-split.reverse{grid-template-columns:.9fr 1.1fr}html[data-cc-page="hotel-gallery"] .editorial-split.reverse .split-visual{order:2}html[data-cc-page="hotel-gallery"] .split-visual{min-height:650px}html[data-cc-page="hotel-gallery"] .split-panel{padding:70px;display:flex;flex-direction:column;justify-content:center;background:#fff}html[data-cc-page="hotel-gallery"] .split-panel h2{font-family:var(--display);font-size:clamp(50px,4.6vw,72px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-gallery"] .split-panel p{font-size:14px;line-height:1.9;color:var(--muted);margin:24px 0 28px;max-width:560px}html[data-cc-page="hotel-gallery"] .fact-row{display:flex;gap:32px;flex-wrap:wrap;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}html[data-cc-page="hotel-gallery"] .fact-row strong{font-family:var(--display);font-size:28px;font-weight:400;color:var(--pink)}html[data-cc-page="hotel-gallery"] .fact-row small{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#888;margin-top:4px}
html[data-cc-page="hotel-gallery"] .object-motion{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-gallery"] .object-motion.in-view{opacity:1;transform:none}html[data-cc-page="hotel-gallery"] .object-motion:nth-child(even){transform:translateY(34px) translateX(20px)}html[data-cc-page="hotel-gallery"] .object-motion:nth-child(even).in-view{transform:none}
@media(max-width:900px){html[data-cc-page="hotel-gallery"] .page-intro-grid, html[data-cc-page="hotel-gallery"] .editorial-split, html[data-cc-page="hotel-gallery"] .editorial-split.reverse{grid-template-columns:1fr;gap:28px}html[data-cc-page="hotel-gallery"] .editorial-split.reverse .split-visual{order:0}html[data-cc-page="hotel-gallery"] .page-intro{padding:110px 0 95px}html[data-cc-page="hotel-gallery"] .big-space, html[data-cc-page="hotel-gallery"] .soft-space{padding:105px 0}html[data-cc-page="hotel-gallery"] .rail-head{display:block}html[data-cc-page="hotel-gallery"] .rail-nav{margin-top:24px}html[data-cc-page="hotel-gallery"] .rail-card{width:76vw;min-width:330px}html[data-cc-page="hotel-gallery"] .split-visual{min-height:520px}html[data-cc-page="hotel-gallery"] .split-panel{padding:48px 36px}}
@media(max-width:560px){html[data-cc-page="hotel-gallery"] .rail-card{width:88vw;min-width:280px}html[data-cc-page="hotel-gallery"] .rail-image{height:310px}html[data-cc-page="hotel-gallery"] .rail-copy{padding:24px}html[data-cc-page="hotel-gallery"] .split-panel{padding:36px 24px}html[data-cc-page="hotel-gallery"] .split-visual{min-height:430px}html[data-cc-page="hotel-gallery"] .page-intro h2{font-size:48px}html[data-cc-page="hotel-gallery"] .rail-head h2{font-size:46px}}
html[data-cc-page="hotel-gallery"] .gallery-section{padding:145px 0}html[data-cc-page="hotel-gallery"] .gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:120px;gap:16px}html[data-cc-page="hotel-gallery"] .gallery-item{position:relative;overflow:hidden;background:#111;cursor:pointer}html[data-cc-page="hotel-gallery"] .gallery-item img{height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-gallery"] .gallery-item:hover img{transform:scale(1.05)}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(1){grid-column:span 7;grid-row:span 4}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(2){grid-column:span 5;grid-row:span 3}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(3){grid-column:span 5;grid-row:span 3}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(4){grid-column:span 4;grid-row:span 3}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(5){grid-column:span 4;grid-row:span 3}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(6){grid-column:span 4;grid-row:span 3}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(7){grid-column:span 6;grid-row:span 4}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(8){grid-column:span 6;grid-row:span 4}html[data-cc-page="hotel-gallery"] .gallery-item::after{content:"\f00e";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;right:18px;top:18px;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;color:#111;opacity:0;transform:translateY(-5px);transition:.3s}html[data-cc-page="hotel-gallery"] .gallery-item:hover::after{opacity:1;transform:none}html[data-cc-page="hotel-gallery"] .lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:1200;display:none;align-items:center;justify-content:center;padding:40px}html[data-cc-page="hotel-gallery"] .lightbox.open{display:flex}html[data-cc-page="hotel-gallery"] .lightbox img{max-width:min(1200px,92vw);max-height:86vh;width:auto}html[data-cc-page="hotel-gallery"] .lightbox button{position:absolute;right:25px;top:25px;width:48px;height:48px;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;border-radius:50%;font-size:18px}@media(max-width:800px){html[data-cc-page="hotel-gallery"] .gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:190px}html[data-cc-page="hotel-gallery"] .gallery-item{grid-column:auto!important;grid-row:auto!important}html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(1), html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(7){grid-column:1/3!important;grid-row:span 2!important}}@media(max-width:520px){html[data-cc-page="hotel-gallery"] .gallery-grid{grid-template-columns:1fr}html[data-cc-page="hotel-gallery"] .gallery-item, html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(1), html[data-cc-page="hotel-gallery"] .gallery-item:nth-child(7){grid-column:1!important;grid-row:auto!important;height:300px}}
/* Final Demo v2 - hotel navigation clarity */
html[data-cc-page="hotel-gallery"] .drawer-back-group{color:var(--pink)!important;font-weight:600!important;border-bottom:1px solid rgba(169,0,97,.18)!important;margin-bottom:5px}html[data-cc-page="hotel-gallery"] .drawer-back-group i{font-size:11px;margin-right:8px}html[data-cc-page="hotel-gallery"] .menu a.active, html[data-cc-page="hotel-gallery"] .menu-link.active{color:var(--pink)}


/* V7 - Detail pages use vertical editorial presentation, never horizontal rails */
html[data-cc-page="hotel-gallery"] .detail-list{padding:20px 0 145px;background:#fff}
html[data-cc-page="hotel-gallery"] .detail-list .container{display:flex;flex-direction:column;gap:0}
html[data-cc-page="hotel-gallery"] .detail-row{display:grid;grid-template-columns:1.08fr .92fr;min-height:590px;border-top:1px solid #e7e2e4;align-items:stretch;background:#fff}
html[data-cc-page="hotel-gallery"] .detail-row:last-child{border-bottom:1px solid #e7e2e4}
html[data-cc-page="hotel-gallery"] .detail-row.reverse{grid-template-columns:.92fr 1.08fr}
html[data-cc-page="hotel-gallery"] .detail-row.reverse .detail-media{order:2}
html[data-cc-page="hotel-gallery"] .detail-row.reverse .detail-copy{order:1}
html[data-cc-page="hotel-gallery"] .detail-media{position:relative;overflow:hidden;min-height:590px;background:#f2eff0}
html[data-cc-page="hotel-gallery"] .detail-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="hotel-gallery"] .detail-row:hover .detail-media img{transform:scale(1.025)}
html[data-cc-page="hotel-gallery"] .detail-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(42px,5vw,82px)}
html[data-cc-page="hotel-gallery"] .detail-meta{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:22px;font-size:10px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:#817b7e}
html[data-cc-page="hotel-gallery"] .detail-meta span:first-child{color:var(--pink);font-weight:700}
html[data-cc-page="hotel-gallery"] .detail-copy h3{font-family:var(--display);font-size:clamp(44px,4.3vw,68px);line-height:.98;letter-spacing:-.04em;font-weight:400;margin:0 0 24px}
html[data-cc-page="hotel-gallery"] .detail-copy p{font-size:14px;line-height:1.9;color:var(--muted);max-width:560px;margin:0}
html[data-cc-page="hotel-gallery"] .detail-copy .text-link{margin-top:30px}
html[data-cc-page="hotel-gallery"] .detail-number{font-family:var(--display);font-size:18px;color:#b6afb2;margin-bottom:24px}
html[data-cc-page="hotel-gallery"] .detail-page-intro{padding-bottom:105px}
html[data-cc-page="hotel-gallery"] .detail-page-intro .page-intro-grid{align-items:end}
html[data-cc-page="hotel-gallery"] .detail-page-intro .eyebrow{margin-bottom:18px}
html[data-cc-page="hotel-gallery"] .gallery-grid-v7{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px 0 145px}
html[data-cc-page="hotel-gallery"] .gallery-grid-v7 figure{margin:0;position:relative;overflow:hidden;aspect-ratio:4/3;background:#f2eff0}
html[data-cc-page="hotel-gallery"] .gallery-grid-v7 figure:nth-child(3n+1){aspect-ratio:16/10}
html[data-cc-page="hotel-gallery"] .gallery-grid-v7 img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="hotel-gallery"] .gallery-grid-v7 figure:hover img{transform:scale(1.025)}
html[data-cc-page="hotel-gallery"] .gallery-grid-v7 figcaption{position:absolute;left:22px;bottom:18px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.45)}
@media(max-width:900px){
 html[data-cc-page="hotel-gallery"] .detail-list{padding-bottom:105px}html[data-cc-page="hotel-gallery"] .detail-row, html[data-cc-page="hotel-gallery"] .detail-row.reverse{grid-template-columns:1fr;min-height:0}html[data-cc-page="hotel-gallery"] .detail-row.reverse .detail-media, html[data-cc-page="hotel-gallery"] .detail-row.reverse .detail-copy{order:initial}html[data-cc-page="hotel-gallery"] .detail-media{min-height:0;aspect-ratio:4/3}html[data-cc-page="hotel-gallery"] .detail-copy{padding:54px 34px 64px}html[data-cc-page="hotel-gallery"] .gallery-grid-v7{grid-template-columns:1fr;gap:16px;padding-bottom:105px}html[data-cc-page="hotel-gallery"] .gallery-grid-v7 figure, html[data-cc-page="hotel-gallery"] .gallery-grid-v7 figure:nth-child(3n+1){aspect-ratio:4/3}html[data-cc-page="hotel-gallery"] .detail-page-intro{padding-bottom:75px}
}
@media(max-width:560px){html[data-cc-page="hotel-gallery"] .detail-copy{padding:42px 22px 50px}html[data-cc-page="hotel-gallery"] .detail-copy h3{font-size:42px}html[data-cc-page="hotel-gallery"] .detail-meta{gap:8px 16px}html[data-cc-page="hotel-gallery"] .detail-list{padding-top:0}html[data-cc-page="hotel-gallery"] .gallery-grid-v7 figcaption{left:16px;bottom:14px}}


/* FINAL DEMO V4 REVIEW FIXES */
html[data-cc-page="hotel-gallery"] .gallery-item{background:#f2eff0!important}


/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="hotel-gallery"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="hotel-gallery"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="hotel-gallery"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="hotel-gallery"] .page-intro-grid>div, html[data-cc-page="hotel-gallery"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="hotel-gallery"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="hotel-gallery"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="hotel-gallery"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="hotel-gallery"] .page-intro .reveal-left, html[data-cc-page="hotel-gallery"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="hotel-gallery"] .page-intro .reveal-left.in-view, html[data-cc-page="hotel-gallery"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="hotel-gallery"] .section-heading h2, html[data-cc-page="hotel-gallery"] .rail-head h2, html[data-cc-page="hotel-gallery"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="hotel-gallery"] .section-heading p, html[data-cc-page="hotel-gallery"] .rail-head p, html[data-cc-page="hotel-gallery"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="hotel-gallery"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="hotel-gallery"] .page-intro-grid{padding:0 8px}html[data-cc-page="hotel-gallery"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="hotel-gallery"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="hotel-gallery"] .page-intro h2{font-size:38px!important}html[data-cc-page="hotel-gallery"] .page-intro p{font-size:13px!important}}

/* V8 footer separation rule */
html[data-cc-page="hotel-gallery"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* V9 - filterable gallery + full lightbox */
html[data-cc-page="hotel-gallery"] .gallery-section{padding:0 0 115px;background:#fff}
html[data-cc-page="hotel-gallery"] .gallery-filters{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:0 auto 38px}
html[data-cc-page="hotel-gallery"] .gallery-filter{min-height:40px;padding:0 17px;border:1px solid #ded7da;background:#fff;color:#433f41;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:.25s}
html[data-cc-page="hotel-gallery"] .gallery-filter:hover, html[data-cc-page="hotel-gallery"] .gallery-filter.active{background:var(--pink);border-color:var(--pink);color:#fff;transform:translateY(-2px)}
html[data-cc-page="hotel-gallery"] .gallery-grid-v9{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
html[data-cc-page="hotel-gallery"] .gallery-card{position:relative;aspect-ratio:4/3;overflow:hidden;background:#f2eff0;cursor:zoom-in;transition:opacity .32s ease,transform .32s ease}
html[data-cc-page="hotel-gallery"] .gallery-card.is-hidden{display:none}
html[data-cc-page="hotel-gallery"] .gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.22,1,.36,1),filter .35s ease}
html[data-cc-page="hotel-gallery"] .gallery-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.58));opacity:.65;transition:opacity .3s ease}
html[data-cc-page="hotel-gallery"] .gallery-card:hover img{transform:scale(1.045)}html[data-cc-page="hotel-gallery"] .gallery-card:hover::after{opacity:.85}
html[data-cc-page="hotel-gallery"] .gallery-card figcaption{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;color:#fff;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;display:flex;justify-content:space-between;gap:12px}html[data-cc-page="hotel-gallery"] .gallery-card figcaption i{font-size:12px}
html[data-cc-page="hotel-gallery"] .gallery-lightbox{position:fixed;inset:0;background:rgba(8,8,9,.96);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease;padding:72px 86px}
html[data-cc-page="hotel-gallery"] .gallery-lightbox.open{opacity:1;visibility:visible}html[data-cc-page="hotel-gallery"] .gallery-lightbox-stage{position:relative;width:min(1200px,100%);height:min(78vh,820px);display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-gallery"] .gallery-lightbox img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 25px 80px rgba(0,0,0,.35)}
html[data-cc-page="hotel-gallery"] .gallery-lightbox-close, html[data-cc-page="hotel-gallery"] .gallery-lightbox-nav{position:absolute;border:0;color:#fff;background:rgba(255,255,255,.09);display:grid;place-items:center;transition:.25s;z-index:3}html[data-cc-page="hotel-gallery"] .gallery-lightbox-close:hover, html[data-cc-page="hotel-gallery"] .gallery-lightbox-nav:hover{background:var(--pink)}
html[data-cc-page="hotel-gallery"] .gallery-lightbox-close{right:24px;top:22px;width:46px;height:46px;border-radius:50%;font-size:19px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-nav{top:50%;transform:translateY(-50%);width:50px;height:62px;font-size:17px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-prev{left:24px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-next{right:24px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-meta{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);color:#fff;font-size:10px;letter-spacing:.13em;text-transform:uppercase;background:rgba(0,0,0,.35);padding:10px 14px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-caption{margin-right:18px;color:rgba(255,255,255,.78)}
@media(max-width:900px){html[data-cc-page="hotel-gallery"] .gallery-grid-v9{grid-template-columns:repeat(2,1fr)}html[data-cc-page="hotel-gallery"] .gallery-lightbox{padding:70px 24px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-nav{width:44px;height:54px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-prev{left:8px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-next{right:8px}}
@media(max-width:560px){html[data-cc-page="hotel-gallery"] .gallery-grid-v9{grid-template-columns:1fr;gap:10px}html[data-cc-page="hotel-gallery"] .gallery-filters{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px;scrollbar-width:none}html[data-cc-page="hotel-gallery"] .gallery-filters::-webkit-scrollbar{display:none}html[data-cc-page="hotel-gallery"] .gallery-filter{flex:0 0 auto}html[data-cc-page="hotel-gallery"] .gallery-lightbox{padding:64px 10px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-close{right:10px;top:10px}html[data-cc-page="hotel-gallery"] .gallery-lightbox-meta{bottom:12px;white-space:nowrap}html[data-cc-page="hotel-gallery"] .gallery-lightbox-caption{display:none}}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="hotel-gallery"] .header-main{height:92px!important}
html[data-cc-page="hotel-gallery"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="hotel-gallery"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="hotel-gallery"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="hotel-gallery"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="hotel-gallery"] .menu{gap:26px!important}
html[data-cc-page="hotel-gallery"] .brand img{max-height:66px!important}
html[data-cc-page="hotel-gallery"] .hero .eyebrow, html[data-cc-page="hotel-gallery"] .hero-kicker, html[data-cc-page="hotel-gallery"] .hero-kicker.eyebrow, html[data-cc-page="hotel-gallery"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="hotel-gallery"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="hotel-gallery"] .menu{gap:18px!important}html[data-cc-page="hotel-gallery"] .menu>a, html[data-cc-page="hotel-gallery"] .menu-link{font-size:10px!important}html[data-cc-page="hotel-gallery"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="hotel-gallery"] .header-main{height:72px!important}html[data-cc-page="hotel-gallery"] .brand img{max-height:46px!important}html[data-cc-page="hotel-gallery"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="hotel-gallery"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-gallery"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-gallery"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="hotel-gallery"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="hotel-gallery"] .internal-banner .hero-inner, html[data-cc-page="hotel-gallery"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="hotel-gallery"] .internal-banner .hero-copy, html[data-cc-page="hotel-gallery"] .internal-banner .offers-page-hero-copy, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="hotel-gallery"] .internal-banner .hero-kicker, html[data-cc-page="hotel-gallery"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="hotel-gallery"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-kicker, html[data-cc-page="hotel-gallery"] .internal-banner h1, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="hotel-gallery"] .internal-banner .hero-kicker::before, html[data-cc-page="hotel-gallery"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="hotel-gallery"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="hotel-gallery"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="hotel-gallery"] .internal-banner .hero-inner, html[data-cc-page="hotel-gallery"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="hotel-gallery"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="hotel-gallery"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="hotel-gallery"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-gallery"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="hotel-gallery"] .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;
}
html[data-cc-page="hotel-gallery"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="hotel-gallery"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="hotel-gallery"] .footer-reference::after{display:none!important;}
html[data-cc-page="hotel-gallery"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="hotel-gallery"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="hotel-gallery"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="hotel-gallery"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="hotel-gallery"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="hotel-gallery"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="hotel-gallery"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="hotel-gallery"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="hotel-gallery"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="hotel-gallery"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="hotel-gallery"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="hotel-gallery"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="hotel-gallery"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="hotel-gallery"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="hotel-gallery"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="hotel-gallery"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="hotel-gallery"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="hotel-gallery"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="hotel-gallery"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="hotel-gallery"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="hotel-gallery"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="hotel-gallery"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="hotel-gallery"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="hotel-gallery"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="hotel-gallery"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="hotel-gallery"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="hotel-gallery"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="hotel-gallery"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="hotel-gallery"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="hotel-gallery"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="hotel-gallery"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="hotel-gallery"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="hotel-gallery"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="hotel-gallery"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="hotel-gallery"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="hotel-gallery"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="hotel-gallery"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="hotel-gallery"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-gallery"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="hotel-gallery"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="hotel-gallery"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-gallery"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="hotel-gallery"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="hotel-gallery"] .footer-reference-brand, html[data-cc-page="hotel-gallery"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-gallery"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="hotel-gallery"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="hotel-gallery"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="hotel-gallery"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-gallery"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="hotel-gallery"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="hotel-gallery"] .footer-reference-brand, html[data-cc-page="hotel-gallery"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="hotel-gallery"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="hotel-gallery"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="hotel-gallery"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="hotel-gallery"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="hotel-gallery"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="hotel-gallery"] .footer-reference-form button{min-height:52px;}
}


/* FINAL DEMO V11 - standard hotel footer from Hotel_Dining.html */
html[data-cc-page="hotel-gallery"] .footer{background:#111113!important;color:#fff!important;position:relative!important}
html[data-cc-page="hotel-gallery"] .footer .footer-main{padding:72px 0 58px!important;display:grid!important;grid-template-columns:1.1fr .7fr .85fr 1.2fr!important;gap:70px!important}
html[data-cc-page="hotel-gallery"] .footer .footer-logo{width:170px!important;height:auto!important;object-fit:contain!important}
html[data-cc-page="hotel-gallery"] .footer .footer-copy{font-size:12px!important;line-height:1.8!important;color:rgba(255,255,255,.56)!important;max-width:320px!important;margin-top:22px!important}
html[data-cc-page="hotel-gallery"] .footer h4{font-size:9px!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:rgba(255,255,255,.45)!important;margin-bottom:20px!important}
html[data-cc-page="hotel-gallery"] .footer .footer-links{display:grid!important;gap:11px!important}
html[data-cc-page="hotel-gallery"] .footer .footer-links a, html[data-cc-page="hotel-gallery"] .footer p{font-size:12px!important;line-height:1.65!important;color:rgba(255,255,255,.68)!important}
html[data-cc-page="hotel-gallery"] .footer .footer-links a:hover{color:#fff!important}
html[data-cc-page="hotel-gallery"] .footer .footer-contact-card{display:flex!important;align-items:center!important;gap:12px!important;border:1px solid rgba(255,255,255,.14)!important;padding:15px!important;margin-bottom:10px!important;background:transparent!important}
html[data-cc-page="hotel-gallery"] .footer .footer-contact-card i{color:var(--pink)!important}
html[data-cc-page="hotel-gallery"] .footer .newsletter{margin-top:22px!important}
html[data-cc-page="hotel-gallery"] .footer .newsletter-form{display:flex!important;border:1px solid rgba(255,255,255,.18)!important;min-height:48px!important;background:transparent!important}
html[data-cc-page="hotel-gallery"] .footer .newsletter-form input{flex:1!important;min-width:0!important;border:0!important;background:transparent!important;color:#fff!important;padding:0 14px!important;outline:0!important}
html[data-cc-page="hotel-gallery"] .footer .newsletter-form button{border:0!important;background:var(--pink)!important;color:#fff!important;padding:0 18px!important;font-size:9px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important}
html[data-cc-page="hotel-gallery"] .footer .footer-social{display:flex!important;gap:8px!important;margin-top:20px!important}
html[data-cc-page="hotel-gallery"] .footer .footer-social a{width:37px!important;height:37px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important}
html[data-cc-page="hotel-gallery"] .footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1)!important;padding:22px 0 26px!important;display:flex!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important;font-size:10px!important;line-height:1.5!important;color:rgba(255,255,255,.52)!important;background:transparent!important}
html[data-cc-page="hotel-gallery"] .footer .footer-bottom nav{display:flex!important;gap:18px!important;flex-wrap:wrap!important}
html[data-cc-page="hotel-gallery"] .footer .footer-bottom a{color:rgba(255,255,255,.62)!important}
html[data-cc-page="hotel-gallery"] .footer .footer-bottom a:hover{color:#fff!important}
@media(max-width:1050px){html[data-cc-page="hotel-gallery"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:45px!important}}
@media(max-width:820px){html[data-cc-page="hotel-gallery"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:38px 28px!important;padding-top:55px!important}html[data-cc-page="hotel-gallery"] .footer .footer-brand{grid-column:1/3!important}}
@media(max-width:560px){html[data-cc-page="hotel-gallery"] .footer .footer-main{grid-template-columns:1fr!important}html[data-cc-page="hotel-gallery"] .footer .footer-brand{grid-column:auto!important}html[data-cc-page="hotel-gallery"] .footer .footer-bottom{display:block!important}html[data-cc-page="hotel-gallery"] .footer .footer-bottom nav{margin-top:12px!important}}

/* ============================================================
   PAGE: hotel-index   (Hotel_Index.html)
   ============================================================ */
html[data-cc-page="hotel-index"] {
            --pink: #A90061;
            --pink-dark: #6F0037;
            --ink: #171717;
            --muted: #6d6d6d;
            --paper: #f7f5f4;
            --soft: #efefed;
            --white: #fff;
            --line: rgba(23,23,23,.14);
            --display: "Playfair Display",serif;
            --body: "Inter",sans-serif;
        }

        html[data-cc-page="hotel-index"], html[data-cc-page="hotel-index"] * {
            box-sizing: border-box;
            margin: 0;
            padding: 0
        }

        html[data-cc-page="hotel-index"] {
            scroll-behavior: smooth
        }

        html[data-cc-page="hotel-index"] body {
            font-family: var(--body);
            color: var(--ink);
            background: #fff;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased
        }

        html[data-cc-page="hotel-index"] a {
            text-decoration: none;
            color: inherit
        }

        html[data-cc-page="hotel-index"] img, html[data-cc-page="hotel-index"] video {
            display: block;
            width: 100%
        }

        html[data-cc-page="hotel-index"] button, html[data-cc-page="hotel-index"] input, html[data-cc-page="hotel-index"] select {
            font: inherit
        }

        html[data-cc-page="hotel-index"] button {
            cursor: pointer
        }

        html[data-cc-page="hotel-index"] .container {
            width: min(1420px,calc(100% - 80px));
            margin-inline: auto
        }

        html[data-cc-page="hotel-index"] .eyebrow {
            font-size: 11px;
            letter-spacing: .22em;
            text-transform: uppercase;
            font-weight: 600
        }

        html[data-cc-page="hotel-index"] .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            min-height: 50px;
            padding: 0 28px;
            border: 1px solid transparent;
            border-radius: 2px;
            font-size: 13px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease
        }

            html[data-cc-page="hotel-index"] .btn:hover {
                transform: translateY(-2px)
            }

        html[data-cc-page="hotel-index"] .btn-pink {
            background: var(--pink);
            color: #fff
        }

            html[data-cc-page="hotel-index"] .btn-pink:hover {
                background: var(--pink-dark)
            }

        html[data-cc-page="hotel-index"] .btn-white {
            background: #fff;
            color: #111
        }

            html[data-cc-page="hotel-index"] .btn-white:hover {
                background: var(--pink);
                color: #fff
            }

        html[data-cc-page="hotel-index"] .btn-outline {
            border-color: currentColor;
            background: transparent
        }

        /* HEADER */
        html[data-cc-page="hotel-index"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="hotel-index"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_hotelindex .35s ease both
            }

        @keyframes drop_cc_hotelindex {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="hotel-index"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="hotel-index"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="hotel-index"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="hotel-index"] .header-main {
            height: 102px
        }

            html[data-cc-page="hotel-index"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="hotel-index"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="hotel-index"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="hotel-index"] .brand-dark {
            display: none
        }

        html[data-cc-page="hotel-index"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="hotel-index"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="hotel-index"] .header-main {
            position: relative
        }

        html[data-cc-page="hotel-index"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="hotel-index"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="hotel-index"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="hotel-index"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="hotel-index"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="hotel-index"] .menu-item:hover > .menu-link::after, html[data-cc-page="hotel-index"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="hotel-index"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="hotel-index"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="hotel-index"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="hotel-index"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="hotel-index"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="hotel-index"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="hotel-index"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="hotel-index"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="hotel-index"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="hotel-index"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="hotel-index"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="hotel-index"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="hotel-index"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="hotel-index"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="hotel-index"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="hotel-index"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="hotel-index"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="hotel-index"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-index"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="hotel-index"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="hotel-index"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="hotel-index"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="hotel-index"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="hotel-index"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="hotel-index"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="hotel-index"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="hotel-index"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="hotel-index"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="hotel-index"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="hotel-index"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="hotel-index"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="hotel-index"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="hotel-index"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="hotel-index"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="hotel-index"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="hotel-index"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="hotel-index"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="hotel-index"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="hotel-index"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="hotel-index"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="hotel-index"] .drawer.open {
                transform: none
            }

        html[data-cc-page="hotel-index"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="hotel-index"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="hotel-index"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="hotel-index"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="hotel-index"] .drawer-nav > a, html[data-cc-page="hotel-index"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="hotel-index"] .drawer-nav > a:hover, html[data-cc-page="hotel-index"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="hotel-index"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="hotel-index"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="hotel-index"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="hotel-index"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="hotel-index"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="hotel-index"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="hotel-index"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="hotel-index"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="hotel-index"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="hotel-index"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="hotel-index"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="hotel-index"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="hotel-index"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }

        /* HERO */
        html[data-cc-page="hotel-index"] .hero {
            position: relative;
            height: 100svh;
            min-height: 760px;
            background: #111;
            overflow: hidden;
            color: #fff
        }

        html[data-cc-page="hotel-index"] .hero-slides {
            position: absolute;
            inset: 0
        }

        html[data-cc-page="hotel-index"] .hero-slide {
            position: absolute;
            inset: 0;
            opacity: 0;
            visibility: hidden;
            transition: opacity 1.15s ease,visibility 1.15s ease
        }

            html[data-cc-page="hotel-index"] .hero-slide.active {
                opacity: 1;
                visibility: visible;
                z-index: 2
            }

            html[data-cc-page="hotel-index"] .hero-slide img {
                height: 100%;
                object-fit: cover;
                transform: scale(1.035);
                will-change: transform;
                transform-origin: center center
            }

            html[data-cc-page="hotel-index"] .hero-slide.active img {
                animation: heroKenBurnsA_cc_hotelindex 7.2s ease-in-out both
            }

            html[data-cc-page="hotel-index"] .hero-slide:nth-child(even).active img {
                animation-name: heroKenBurnsB_cc_hotelindex
            }

            html[data-cc-page="hotel-index"] .hero-slide:nth-child(3).active img {
                animation-name: heroKenBurnsC_cc_hotelindex
            }

        @keyframes heroKenBurnsA_cc_hotelindex {
            0% {
                transform: scale(1.035) translate3d(0,0,0)
            }

            100% {
                transform: scale(1.14) translate3d(-1.4%,-1.1%,0)
            }
        }

        @keyframes heroKenBurnsB_cc_hotelindex {
            0% {
                transform: scale(1.04) translate3d(-1.2%,0,0)
            }

            100% {
                transform: scale(1.145) translate3d(1.2%,-1%,0)
            }
        }

        @keyframes heroKenBurnsC_cc_hotelindex {
            0% {
                transform: scale(1.04) translate3d(0,-.5%,0)
            }

            100% {
                transform: scale(1.15) translate3d(-.8%,1%,0)
            }
        }

        html[data-cc-page="hotel-index"] .hero::after {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 3;
            background: linear-gradient(180deg,rgba(0,0,0,.64) 0%,rgba(0,0,0,.16) 38%,rgba(0,0,0,.06) 58%,rgba(0,0,0,.62) 100%),linear-gradient(90deg,rgba(0,0,0,.35),transparent 48%);
            pointer-events: none
        }

        html[data-cc-page="hotel-index"] .hero-content {
            position: relative;
            z-index: 4;
            height: 100%;
            display: flex;
            align-items: flex-end;
            padding-bottom: 125px
        }

        html[data-cc-page="hotel-index"] .hero-copy {
            max-width: 680px;
            color: #fff
        }

        html[data-cc-page="hotel-index"] .hero-kicker {
            display: flex;
            align-items: center;
            gap: 13px;
            margin-bottom: 17px;
            opacity: .9
        }

            html[data-cc-page="hotel-index"] .hero-kicker::before {
                content: "";
                width: 44px;
                height: 2px;
                background: var(--pink)
            }

        html[data-cc-page="hotel-index"] .hero-title {
            font-family: var(--display);
            font-size: clamp(52px,5.6vw,92px);
            line-height: .96;
            font-weight: 400;
            letter-spacing: -.035em;
            max-width: 760px
        }

        html[data-cc-page="hotel-index"] .hero-subtitle {
            font-size: 15px;
            line-height: 1.7;
            margin-top: 19px;
            max-width: 480px;
            color: rgba(255,255,255,.9)
        }

        html[data-cc-page="hotel-index"] .hero-actions {
            display: flex;
            align-items: center;
            gap: 14px;
            margin-top: 28px
        }

        html[data-cc-page="hotel-index"] .hero-copy.animate .hero-kicker, html[data-cc-page="hotel-index"] .hero-copy.animate .hero-title, html[data-cc-page="hotel-index"] .hero-copy.animate .hero-subtitle, html[data-cc-page="hotel-index"] .hero-copy.animate .hero-actions {
            animation: heroUp_cc_hotelindex .9s cubic-bezier(.22,1,.36,1) both
        }

        html[data-cc-page="hotel-index"] .hero-copy.animate .hero-title {
            animation-delay: .08s
        }

        html[data-cc-page="hotel-index"] .hero-copy.animate .hero-subtitle {
            animation-delay: .17s
        }

        html[data-cc-page="hotel-index"] .hero-copy.animate .hero-actions {
            animation-delay: .26s
        }

        @keyframes heroUp_cc_hotelindex {
            from {
                opacity: 0;
                transform: translateY(45px)
            }

            to {
                opacity: 1;
                transform: none
            }
        }

        html[data-cc-page="hotel-index"] .hero-control {
            position: absolute;
            z-index: 26;
            right: 42px;
            bottom: 112px;
            display: flex;
            align-items: center;
            gap: 10px
        }

        html[data-cc-page="hotel-index"] .hero-arrow {
            width: 52px;
            height: 52px;
            border: 1px solid rgba(255,255,255,.55);
            background: rgba(0,0,0,.16);
            color: #fff;
            transition: .25s
        }

            html[data-cc-page="hotel-index"] .hero-arrow:hover {
                background: var(--pink);
                border-color: var(--pink)
            }

        html[data-cc-page="hotel-index"] .hero-count {
            position: absolute;
            z-index: 6;
            right: 46px;
            top: 50%;
            transform: translateY(-50%);
            display: grid;
            gap: 13px
        }

            html[data-cc-page="hotel-index"] .hero-count button {
                width: 32px;
                height: 32px;
                border: 0;
                background: transparent;
                color: rgba(255,255,255,.6);
                font-size: 11px;
                position: relative
            }

                html[data-cc-page="hotel-index"] .hero-count button::after {
                    content: "";
                    position: absolute;
                    right: -14px;
                    top: 50%;
                    width: 0;
                    height: 1px;
                    background: #fff;
                    transition: .3s
                }

                html[data-cc-page="hotel-index"] .hero-count button.active {
                    color: #fff
                }

                    html[data-cc-page="hotel-index"] .hero-count button.active::after {
                        width: 22px
                    }

        /* BOOKING DOCK */
        html[data-cc-page="hotel-index"] .booking-shell {
            position: relative;
            z-index: 30;
            margin-top: -62px
        }

        html[data-cc-page="hotel-index"] .booking-card {
            background: #fff;
            box-shadow: 0 20px 55px rgba(0,0,0,.14);
            padding: 18px 20px;
            border-radius: 2px;
            position: relative
        }

        html[data-cc-page="hotel-index"] .booking-form {
            display: grid;
            grid-template-columns: 1.25fr 1fr 1fr 1.35fr .82fr auto;
            gap: 10px;
            align-items: end
        }

        html[data-cc-page="hotel-index"] .field {
            position: relative;
            min-width: 0
        }

            html[data-cc-page="hotel-index"] .field label {
                display: block;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                margin-bottom: 7px;
                color: #777
            }

        html[data-cc-page="hotel-index"] .control {
            height: 50px;
            border: 1px solid #e0e0e0;
            display: flex;
            align-items: center;
            position: relative;
            background: #fafafa;
            transition: .25s;
            width: 100%
        }

            html[data-cc-page="hotel-index"] .control:focus-within, html[data-cc-page="hotel-index"] .control.is-open {
                border-color: var(--pink);
                background: #fff;
                box-shadow: 0 0 0 3px rgba(169,0,97,.07)
            }

            html[data-cc-page="hotel-index"] .control > i {
                position: absolute;
                left: 14px;
                color: var(--pink);
                font-size: 13px;
                z-index: 2;
                pointer-events: none
            }

            html[data-cc-page="hotel-index"] .control input, html[data-cc-page="hotel-index"] .control select {
                height: 100%;
                width: 100%;
                padding: 0 38px 0 38px;
                border: 0;
                background: transparent;
                outline: 0;
                appearance: none;
                -webkit-appearance: none;
                font-size: 12px;
                color: #222;
                min-width: 0
            }

            html[data-cc-page="hotel-index"] .control .down {
                position: absolute;
                right: 13px;
                top: 50%;
                transform: translateY(-50%);
                width: 20px;
                height: 20px;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #777;
                font-size: 10px;
                pointer-events: none;
                z-index: 3
            }

                html[data-cc-page="hotel-index"] .control .down i {
                    position: static !important;
                    left: auto !important;
                    color: inherit !important;
                    font-size: 10px !important;
                    pointer-events: none !important
                }

        html[data-cc-page="hotel-index"] .guest-trigger {
            border: 1px solid #e0e0e0;
            background: #fafafa;
            border-radius: 0;
            text-align: left;
            cursor: pointer;
            padding: 0 40px 0 40px;
            font-size: 12px;
            color: #222;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis
        }

            html[data-cc-page="hotel-index"] .guest-trigger .guest-summary {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                width: 100%
            }

        html[data-cc-page="hotel-index"] .guest-popover {
            position: absolute;
            left: 0;
            top: calc(100% + 12px);
            width: 390px;
            max-width: min(390px,calc(100vw - 40px));
            background: #fff;
            border: 1px solid #e8e8e8;
            box-shadow: 0 22px 55px rgba(0,0,0,.18);
            padding: 20px;
            z-index: 120;
            opacity: 0;
            visibility: hidden;
            transform: translateY(8px);
            transition: .22s ease
        }

            html[data-cc-page="hotel-index"] .guest-popover.open {
                opacity: 1;
                visibility: visible;
                transform: none
            }

            html[data-cc-page="hotel-index"] .guest-popover::before {
                content: "";
                position: absolute;
                top: -7px;
                left: 28px;
                width: 12px;
                height: 12px;
                background: #fff;
                border-left: 1px solid #e8e8e8;
                border-top: 1px solid #e8e8e8;
                transform: rotate(45deg)
            }

        html[data-cc-page="hotel-index"] .guest-popover-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 18px;
            padding-bottom: 15px;
            margin-bottom: 4px;
            border-bottom: 1px solid #eee
        }

            html[data-cc-page="hotel-index"] .guest-popover-head strong {
                display: block;
                font-family: var(--display);
                font-size: 24px;
                line-height: 1;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="hotel-index"] .guest-popover-head span {
                display: block;
                font-size: 10px;
                line-height: 1.55;
                color: #888;
                margin-top: 6px
            }

        html[data-cc-page="hotel-index"] .guest-close {
            width: 30px;
            height: 30px;
            border: 0;
            background: #f4f4f4;
            color: #444;
            border-radius: 50%
        }

        html[data-cc-page="hotel-index"] .rooms-container {
            max-height: 360px;
            overflow: auto;
            padding-right: 3px
        }

        html[data-cc-page="hotel-index"] .room-block {
            padding: 17px 0;
            border-bottom: 1px solid #ededed
        }

        html[data-cc-page="hotel-index"] .room-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 13px
        }

            html[data-cc-page="hotel-index"] .room-head strong {
                font-size: 11px;
                letter-spacing: .1em;
                text-transform: uppercase
            }

        html[data-cc-page="hotel-index"] .remove-room {
            border: 0;
            background: transparent;
            color: #9a9a9a;
            font-size: 10px;
            text-decoration: underline
        }

            html[data-cc-page="hotel-index"] .remove-room:hover {
                color: var(--pink)
            }

        html[data-cc-page="hotel-index"] .guest-row {
            display: grid;
            grid-template-columns: 1fr auto;
            align-items: center;
            gap: 16px;
            margin: 10px 0
        }

        html[data-cc-page="hotel-index"] .guest-row-label strong {
            display: block;
            font-size: 12px;
            font-weight: 500;
            color: #242424
        }

        html[data-cc-page="hotel-index"] .guest-row-label span {
            display: block;
            font-size: 9px;
            color: #929292;
            margin-top: 1px
        }

        html[data-cc-page="hotel-index"] .stepper {
            display: flex;
            align-items: center;
            gap: 12px
        }

            html[data-cc-page="hotel-index"] .stepper button {
                width: 30px;
                height: 30px;
                border: 1px solid #ddd;
                background: #fff;
                color: #222;
                border-radius: 50%;
                font-size: 12px;
                transition: .2s
            }

                html[data-cc-page="hotel-index"] .stepper button:hover:not(:disabled) {
                    border-color: var(--pink);
                    color: var(--pink)
                }

                html[data-cc-page="hotel-index"] .stepper button:disabled {
                    opacity: .35;
                    cursor: not-allowed
                }

            html[data-cc-page="hotel-index"] .stepper output {
                min-width: 18px;
                text-align: center;
                font-size: 12px;
                color: #222
            }

        html[data-cc-page="hotel-index"] .child-ages {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 8px;
            margin-top: 12px
        }

        html[data-cc-page="hotel-index"] .child-age label {
            font-size: 8px;
            margin-bottom: 5px;
            color: #8a8a8a
        }

        html[data-cc-page="hotel-index"] .child-age select {
            width: 100%;
            height: 38px;
            border: 1px solid #ddd;
            background: #fafafa;
            padding: 0 28px 0 10px;
            font-size: 10px;
            outline: 0;
            appearance: none;
            -webkit-appearance: none
        }

        html[data-cc-page="hotel-index"] .child-age {
            position: relative
        }

            html[data-cc-page="hotel-index"] .child-age::after {
                content: "\f107";
                font-family: "Font Awesome 6 Free";
                font-weight: 900;
                position: absolute;
                right: 10px;
                bottom: 12px;
                font-size: 9px;
                color: #777;
                pointer-events: none
            }

        html[data-cc-page="hotel-index"] .guest-actions {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            padding-top: 16px
        }

        html[data-cc-page="hotel-index"] .add-room {
            border: 0;
            background: transparent;
            color: var(--pink);
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase
        }

            html[data-cc-page="hotel-index"] .add-room:disabled {
                opacity: .4;
                cursor: not-allowed
            }

        html[data-cc-page="hotel-index"] .guest-done {
            height: 38px;
            border: 0;
            background: #171717;
            color: #fff;
            padding: 0 20px;
            font-size: 9px;
            font-weight: 600;
            letter-spacing: .1em;
            text-transform: uppercase
        }

            html[data-cc-page="hotel-index"] .guest-done:hover {
                background: var(--pink)
            }

        html[data-cc-page="hotel-index"] .booking-submit {
            height: 50px;
            border: 0;
            background: var(--pink);
            color: #fff;
            padding: 0 24px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .1em;
            text-transform: uppercase;
            white-space: nowrap;
            transition: .3s
        }

            html[data-cc-page="hotel-index"] .booking-submit:hover {
                background: var(--pink-dark)
            }

        /* MOTION */
        html[data-cc-page="hotel-index"] .reveal {
            opacity: 0;
            transform: translateY(58px) scale(.985);
            filter: blur(7px);
            transition: opacity 1s cubic-bezier(.22,1,.36,1),transform 1.05s cubic-bezier(.22,1,.36,1),filter .9s ease;
            transition-delay: var(--delay,0ms)
        }

        html[data-cc-page="hotel-index"] .reveal-left {
            opacity: 0;
            transform: translateX(-72px);
            filter: blur(6px);
            transition: opacity 1.05s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .9s ease;
            transition-delay: var(--delay,0ms)
        }

        html[data-cc-page="hotel-index"] .reveal-right {
            opacity: 0;
            transform: translateX(72px);
            filter: blur(6px);
            transition: opacity 1.05s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .9s ease;
            transition-delay: var(--delay,0ms)
        }

            html[data-cc-page="hotel-index"] .reveal.in-view, html[data-cc-page="hotel-index"] .reveal-left.in-view, html[data-cc-page="hotel-index"] .reveal-right.in-view {
                opacity: 1;
                transform: none;
                filter: blur(0)
            }

            html[data-cc-page="hotel-index"] .reveal img, html[data-cc-page="hotel-index"] .reveal-left img, html[data-cc-page="hotel-index"] .reveal-right img {
                transition: transform 1.35s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-index"] .reveal:not(.in-view) > img, html[data-cc-page="hotel-index"] .reveal-left:not(.in-view) > img, html[data-cc-page="hotel-index"] .reveal-right:not(.in-view) > img {
                transform: scale(1.045)
            }

            html[data-cc-page="hotel-index"] .reveal.in-view > img, html[data-cc-page="hotel-index"] .reveal-left.in-view > img, html[data-cc-page="hotel-index"] .reveal-right.in-view > img {
                transform: scale(1)
            }

        /* BRAND STORY / COLLECTION INTRO */
        html[data-cc-page="hotel-index"] .brand-story {
            padding: 145px 0 155px;
            background: #fff;
            position: relative;
            overflow: hidden
        }

            html[data-cc-page="hotel-index"] .brand-story::before {
                content: "04";
                position: absolute;
                left: -18px;
                top: 28px;
                font-family: var(--display);
                font-size: clamp(190px,23vw,360px);
                line-height: .82;
                letter-spacing: -.09em;
                color: #f3f0f1;
                z-index: 0;
                pointer-events: none
            }

        html[data-cc-page="hotel-index"] .brand-story-grid {
            position: relative;
            z-index: 2;
            display: grid;
            grid-template-columns: .9fr 1.15fr;
            gap: 100px;
            align-items: center
        }

        html[data-cc-page="hotel-index"] .brand-story-copy {
            padding-left: 55px
        }

            html[data-cc-page="hotel-index"] .brand-story-copy .eyebrow {
                color: var(--pink);
                margin-bottom: 22px
            }

            html[data-cc-page="hotel-index"] .brand-story-copy h2 {
                font-family: var(--display);
                font-size: clamp(55px,5.8vw,88px);
                line-height: .98;
                font-weight: 400;
                letter-spacing: -.045em;
                max-width: 690px
            }

                html[data-cc-page="hotel-index"] .brand-story-copy h2 em {
                    font-style: italic;
                    color: var(--pink)
                }

            html[data-cc-page="hotel-index"] .brand-story-copy p {
                font-size: 14px;
                line-height: 1.9;
                color: var(--muted);
                max-width: 510px;
                margin-top: 28px
            }

        html[data-cc-page="hotel-index"] .brand-story-visual {
            position: relative;
            min-height: 610px
        }

        html[data-cc-page="hotel-index"] .brand-story-main-image {
            position: absolute;
            right: 0;
            top: 0;
            width: 92%;
            height: 560px;
            overflow: hidden;
            background: #111
        }

            html[data-cc-page="hotel-index"] .brand-story-main-image::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,transparent 48%,rgba(25,0,15,.44) 100%);
                pointer-events: none
            }

            html[data-cc-page="hotel-index"] .brand-story-main-image img {
                height: 100%;
                object-fit: cover;
                transform: scale(1.04);
                transition: transform 1.8s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-index"] .brand-story-main-image.in-view img {
                transform: scale(1)
            }

        html[data-cc-page="hotel-index"] .brand-story-note {
            position: absolute;
            left: 8%;
            bottom: 50px;
            width: min(620px,72%);
            color: #fff;
            padding: 30px 46px 30px 30px;
            z-index: 3;
            background: linear-gradient(90deg,rgba(169,0,97,.96) 0%,rgba(169,0,97,.72) 58%,rgba(169,0,97,0) 100%)
        }

            html[data-cc-page="hotel-index"] .brand-story-note strong {
                display: block;
                font-family: var(--display);
                font-size: 36px;
                line-height: 1;
                font-weight: 400;
                margin-bottom: 11px
            }

            html[data-cc-page="hotel-index"] .brand-story-note p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.82);
                max-width: 430px
            }

            html[data-cc-page="hotel-index"] .brand-story-note span {
                display: block;
                margin-top: 18px;
                color: #fff;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .15em;
                text-transform: uppercase
            }

        html[data-cc-page="hotel-index"] .brand-story-stamp {
            position: absolute;
            right: 22px;
            bottom: 20px;
            width: 118px;
            height: 118px;
            border-radius: 50%;
            background: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            box-shadow: 0 15px 35px rgba(0,0,0,.12);
            z-index: 4
        }

            html[data-cc-page="hotel-index"] .brand-story-stamp strong {
                font-family: var(--display);
                font-size: 38px;
                line-height: .8;
                font-weight: 400;
                color: var(--pink)
            }

            html[data-cc-page="hotel-index"] .brand-story-stamp small {
                display: block;
                font-size: 8px;
                line-height: 1.35;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #555;
                margin-top: 7px
            }

        /* RESORT STORIES */
        html[data-cc-page="hotel-index"] .resorts {
            padding: 0 0 150px;
            background: var(--paper);
            overflow: hidden
        }

        html[data-cc-page="hotel-index"] .resort-head {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            padding: 110px 0 52px
        }

            html[data-cc-page="hotel-index"] .resort-head .small-title {
                font-family: var(--display);
                font-size: 48px;
                font-weight: 400;
                line-height: 1.1
            }

                html[data-cc-page="hotel-index"] .resort-head .small-title span {
                    display: block;
                    font-family: var(--body);
                    font-size: 11px;
                    letter-spacing: .18em;
                    text-transform: uppercase;
                    color: var(--pink);
                    margin-bottom: 12px
                }

        html[data-cc-page="hotel-index"] .resort-nav {
            display: flex;
            gap: 8px
        }

            html[data-cc-page="hotel-index"] .resort-nav button {
                width: 48px;
                height: 48px;
                border: 1px solid #ccc;
                background: transparent
            }

                html[data-cc-page="hotel-index"] .resort-nav button:hover {
                    border-color: var(--pink);
                    color: var(--pink)
                }

        html[data-cc-page="hotel-index"] .resort-viewport {
            overflow: hidden;
            cursor: grab;
            touch-action: pan-y;
            user-select: none;
            -webkit-user-select: none
        }

            html[data-cc-page="hotel-index"] .resort-viewport.is-dragging {
                cursor: grabbing
            }

        html[data-cc-page="hotel-index"] .resort-track {
            display: flex;
            gap: 24px;
            transition: transform .7s cubic-bezier(.22,1,.36,1);
            will-change: transform
        }

            html[data-cc-page="hotel-index"] .resort-track.is-dragging {
                transition: none
            }

        html[data-cc-page="hotel-index"] .resort-story {
            flex: 0 0 min(1040px,76vw);
            height: 565px;
            position: relative;
            overflow: hidden;
            background: #111;
            color: #fff
        }

            html[data-cc-page="hotel-index"] .resort-story img {
                height: 100%;
                object-fit: cover;
                transition: transform 1.6s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-index"] .resort-story:hover img {
                transform: scale(1.035)
            }

            html[data-cc-page="hotel-index"] .resort-story::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,transparent 28%,rgba(0,0,0,.08) 48%,rgba(0,0,0,.72) 100%)
            }

        html[data-cc-page="hotel-index"] .story-index {
            position: absolute;
            z-index: 2;
            top: 32px;
            left: 34px;
            font-size: 10px;
            letter-spacing: .16em;
            text-transform: uppercase;
            background: rgba(0,0,0,.28);
            backdrop-filter: blur(8px);
            padding: 9px 12px
        }

        html[data-cc-page="hotel-index"] .story-copy {
            position: absolute;
            z-index: 2;
            left: 46px;
            right: 46px;
            bottom: 42px;
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 30px
        }

            html[data-cc-page="hotel-index"] .story-copy h3 {
                font-family: var(--display);
                font-size: clamp(45px,4.4vw,72px);
                line-height: 1;
                font-weight: 400;
                max-width: 700px;
                letter-spacing: -.03em
            }

            html[data-cc-page="hotel-index"] .story-copy p {
                font-size: 13px;
                line-height: 1.7;
                max-width: 330px;
                color: rgba(255,255,255,.84);
                margin-bottom: 5px
            }

        html[data-cc-page="hotel-index"] .story-link {
            position: absolute;
            right: 38px;
            top: 34px;
            z-index: 2;
            width: 54px;
            height: 54px;
            border-radius: 50%;
            border: 1px solid rgba(255,255,255,.65);
            display: flex;
            align-items: center;
            justify-content: center;
            transition: .3s
        }

            html[data-cc-page="hotel-index"] .story-link:hover {
                background: #fff;
                color: var(--pink);
                transform: rotate(-35deg)
            }

        html[data-cc-page="hotel-index"] .resort-controls-bottom {
            display: grid;
            grid-template-columns: auto 1fr auto;
            align-items: center;
            gap: 22px;
            margin-top: 28px
        }

        html[data-cc-page="hotel-index"] .resort-drag-hint {
            font-size: 9px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #8b8b8b;
            white-space: nowrap
        }

        html[data-cc-page="hotel-index"] .resort-progress {
            height: 18px;
            position: relative;
            cursor: pointer;
            display: flex;
            align-items: center;
            touch-action: none
        }

            html[data-cc-page="hotel-index"] .resort-progress::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                height: 2px;
                background: #d6d3d4
            }

            html[data-cc-page="hotel-index"] .resort-progress span {
                position: absolute;
                left: 0;
                height: 4px;
                width: 25%;
                background: var(--pink);
                transition: transform .55s cubic-bezier(.22,1,.36,1);
                z-index: 2
            }

            html[data-cc-page="hotel-index"] .resort-progress:hover span {
                height: 6px
            }

        html[data-cc-page="hotel-index"] .resort-bottom-nav {
            display: flex;
            gap: 7px
        }

            html[data-cc-page="hotel-index"] .resort-bottom-nav button {
                width: 44px;
                height: 44px;
                border: 1px solid #c8c5c6;
                background: transparent;
                transition: .25s
            }

                html[data-cc-page="hotel-index"] .resort-bottom-nav button:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff
                }

        /* LOYALTY CHAPTER */
        html[data-cc-page="hotel-index"] .loyalty {
            min-height: 740px;
            position: relative;
            background-color: #090909;
            background-image: url("../images/Loyalty-Section-Background.jpg"),url("https://charmillionresorts.com/images/uploads/Charmillion-Club-Resort-lobby.jpg");
            background-position: center,center;
            background-size: cover,cover;
            background-repeat: no-repeat,no-repeat;
            background-attachment: fixed,fixed;
            color: #fff;
            display: flex;
            align-items: center;
            overflow: hidden
        }

            html[data-cc-page="hotel-index"] .loyalty::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.58) 48%,rgba(0,0,0,.08) 100%)
            }

            html[data-cc-page="hotel-index"] .loyalty .container {
                position: relative;
                z-index: 2
            }

        html[data-cc-page="hotel-index"] .loyalty-copy {
            max-width: 710px
        }

            html[data-cc-page="hotel-index"] .loyalty-copy .eyebrow {
                color: #fff;
                margin-bottom: 25px
            }

            html[data-cc-page="hotel-index"] .loyalty-copy h2 {
                font-family: var(--display);
                font-size: clamp(54px,6vw,86px);
                font-weight: 400;
                line-height: 1.02;
                letter-spacing: -.04em
            }

            html[data-cc-page="hotel-index"] .loyalty-copy p {
                font-size: 15px;
                line-height: 1.8;
                color: rgba(255,255,255,.8);
                max-width: 480px;
                margin: 24px 0 30px
            }

        html[data-cc-page="hotel-index"] .loyalty-ring {
            position: absolute;
            right: -80px;
            top: 50%;
            width: 420px;
            height: 420px;
            border: 1px solid rgba(255,255,255,.16);
            border-radius: 50%;
            transform: translateY(-50%)
        }

            html[data-cc-page="hotel-index"] .loyalty-ring::before, html[data-cc-page="hotel-index"] .loyalty-ring::after {
                content: "";
                position: absolute;
                border: 1px solid rgba(255,255,255,.11);
                border-radius: 50%;
                inset: 55px
            }

            html[data-cc-page="hotel-index"] .loyalty-ring::after {
                inset: 110px
            }

        /* OFFERS MOSAIC */
        html[data-cc-page="hotel-index"] .offers {
            padding: 150px 0;
            background: #fff
        }

        html[data-cc-page="hotel-index"] .offers-intro {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 90px;
            align-items: end;
            margin-bottom: 62px
        }

            html[data-cc-page="hotel-index"] .offers-intro h2 {
                font-family: var(--display);
                font-size: clamp(50px,5vw,76px);
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.035em
            }

        html[data-cc-page="hotel-index"] .offers-intro-copy {
            max-width: 510px;
            margin-left: auto
        }

            html[data-cc-page="hotel-index"] .offers-intro-copy .eyebrow {
                color: var(--pink);
                margin-bottom: 18px
            }

            html[data-cc-page="hotel-index"] .offers-intro-copy p {
                font-size: 14px;
                line-height: 1.8;
                color: var(--muted)
            }

        html[data-cc-page="hotel-index"] .offer-mosaic {
            display: grid;
            grid-template-columns: 1.25fr .75fr;
            grid-template-rows: 310px 310px;
            gap: 22px
        }

        html[data-cc-page="hotel-index"] .offer-tile {
            position: relative;
            overflow: hidden;
            background: #111;
            color: #fff
        }

            html[data-cc-page="hotel-index"] .offer-tile.featured {
                grid-row: 1/3
            }

            html[data-cc-page="hotel-index"] .offer-tile img {
                height: 100%;
                object-fit: cover;
                transition: transform .8s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-index"] .offer-tile:hover img {
                transform: scale(1.045)
            }

            html[data-cc-page="hotel-index"] .offer-tile::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,transparent 30%,rgba(0,0,0,.72) 100%)
            }

        html[data-cc-page="hotel-index"] .offer-content {
            position: absolute;
            z-index: 2;
            left: 30px;
            right: 30px;
            bottom: 28px
        }

            html[data-cc-page="hotel-index"] .offer-content span {
                font-size: 9px;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: rgba(255,255,255,.72)
            }

            html[data-cc-page="hotel-index"] .offer-content h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.05;
                font-weight: 400;
                margin-top: 6px
            }

        html[data-cc-page="hotel-index"] .featured .offer-content h3 {
            font-size: 58px
        }

        html[data-cc-page="hotel-index"] .offer-arrow {
            position: absolute;
            z-index: 2;
            right: 25px;
            top: 25px;
            width: 44px;
            height: 44px;
            border: 1px solid rgba(255,255,255,.65);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: .3s
        }

        html[data-cc-page="hotel-index"] .offer-tile:hover .offer-arrow {
            background: #fff;
            color: var(--pink);
            transform: rotate(-35deg)
        }

        html[data-cc-page="hotel-index"] .offer-strip {
            display: grid;
            grid-template-columns: repeat(2,1fr);
            gap: 22px;
            margin-top: 22px
        }

            html[data-cc-page="hotel-index"] .offer-strip .offer-tile {
                height: 280px
            }

        html[data-cc-page="hotel-index"] .offers-bottom {
            display: flex;
            justify-content: flex-end;
            margin-top: 32px
        }

        /* MEET / CELEBRATE - expanded destination chapter */
        html[data-cc-page="hotel-index"] .gather {
            background: var(--paper);
            padding: 155px 0 165px;
            overflow: hidden
        }

        html[data-cc-page="hotel-index"] .gather-head {
            display: grid;
            grid-template-columns: 1.05fr .95fr;
            gap: 90px;
            align-items: end;
            margin-bottom: 58px
        }

            html[data-cc-page="hotel-index"] .gather-head h2 {
                font-family: var(--display);
                font-size: clamp(54px,5.7vw,84px);
                font-weight: 400;
                line-height: .98;
                letter-spacing: -.045em;
                max-width: 760px
            }

        html[data-cc-page="hotel-index"] .gather-head-copy {
            max-width: 530px;
            margin-left: auto
        }

            html[data-cc-page="hotel-index"] .gather-head-copy .eyebrow {
                color: var(--pink);
                margin-bottom: 18px
            }

            html[data-cc-page="hotel-index"] .gather-head-copy p {
                font-size: 14px;
                line-height: 1.85;
                color: var(--muted)
            }

        html[data-cc-page="hotel-index"] .gather-scenes {
            display: grid;
            grid-template-columns: 1.08fr .92fr;
            gap: 24px
        }

        html[data-cc-page="hotel-index"] .gather-scene {
            position: relative;
            min-height: 650px;
            overflow: hidden;
            background: #111;
            color: #fff
        }

            html[data-cc-page="hotel-index"] .gather-scene.secondary {
                min-height: 650px
            }

            html[data-cc-page="hotel-index"] .gather-scene img {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                transition: transform 1.25s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-index"] .gather-scene:hover img {
                transform: scale(1.045)
            }

            html[data-cc-page="hotel-index"] .gather-scene::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.08) 18%,rgba(0,0,0,.18) 45%,rgba(0,0,0,.82) 100%)
            }

        html[data-cc-page="hotel-index"] .gather-scene-content {
            position: absolute;
            z-index: 2;
            left: 42px;
            right: 42px;
            bottom: 40px
        }

        html[data-cc-page="hotel-index"] .gather-scene-index {
            position: absolute;
            z-index: 2;
            top: 28px;
            left: 30px;
            font-size: 10px;
            letter-spacing: .18em;
            text-transform: uppercase;
            background: rgba(0,0,0,.28);
            backdrop-filter: blur(8px);
            padding: 9px 12px
        }

        html[data-cc-page="hotel-index"] .gather-scene-content .eyebrow {
            color: rgba(255,255,255,.72);
            margin-bottom: 12px
        }

        html[data-cc-page="hotel-index"] .gather-scene-content h3 {
            font-family: var(--display);
            font-size: clamp(44px,4.5vw,68px);
            line-height: 1;
            font-weight: 400;
            letter-spacing: -.035em;
            max-width: 600px
        }

        html[data-cc-page="hotel-index"] .gather-scene-content p {
            font-size: 13px;
            line-height: 1.8;
            color: rgba(255,255,255,.78);
            max-width: 520px;
            margin: 17px 0 24px
        }

        html[data-cc-page="hotel-index"] .gather-scene-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            color: #fff;
            font-size: 11px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: .12em;
            border-bottom: 1px solid rgba(255,255,255,.65);
            padding-bottom: 5px;
            transition: .25s
        }

            html[data-cc-page="hotel-index"] .gather-scene-link:hover {
                color: #fff;
                border-color: #fff;
                gap: 16px
            }

        html[data-cc-page="hotel-index"] .gather-footer {
            margin-top: 24px;
            background: #181818;
            color: #fff;
            padding: 34px 42px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 30px
        }

        html[data-cc-page="hotel-index"] .gather-footer-copy {
            display: flex;
            align-items: center;
            gap: 34px
        }

        html[data-cc-page="hotel-index"] .gather-footer strong {
            font-family: var(--display);
            font-size: 30px;
            font-weight: 400;
            line-height: 1.1
        }

        html[data-cc-page="hotel-index"] .gather-footer span {
            font-size: 12px;
            line-height: 1.7;
            color: rgba(255,255,255,.62);
            max-width: 500px
        }

        html[data-cc-page="hotel-index"] .gather-footer .btn {
            flex: 0 0 auto
        }

        /* SEEN AT CHARMILLION - draggable media collection */
        html[data-cc-page="hotel-index"] .social {
            padding: 120px 0 125px;
            background: #0f0f0f;
            color: #fff;
            overflow: hidden
        }

        html[data-cc-page="hotel-index"] .social-head {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            margin-bottom: 42px
        }

            html[data-cc-page="hotel-index"] .social-head h2 {
                font-family: var(--display);
                font-size: clamp(48px,5vw,74px);
                font-weight: 400;
                line-height: 1.02
            }

        html[data-cc-page="hotel-index"] .social-head-right {
            display: flex;
            align-items: flex-end;
            gap: 30px
        }

        html[data-cc-page="hotel-index"] .social-head p {
            font-size: 12px;
            color: rgba(255,255,255,.6);
            max-width: 320px;
            line-height: 1.7;
            text-align: right
        }

        html[data-cc-page="hotel-index"] .media-nav {
            display: flex;
            gap: 7px
        }

            html[data-cc-page="hotel-index"] .media-nav button {
                width: 46px;
                height: 46px;
                border: 1px solid rgba(255,255,255,.32);
                background: transparent;
                color: #fff;
                transition: .25s
            }

                html[data-cc-page="hotel-index"] .media-nav button:hover {
                    background: var(--pink);
                    border-color: var(--pink)
                }

        html[data-cc-page="hotel-index"] .social-viewport {
            overflow-x: auto;
            overflow-y: hidden;
            scrollbar-width: none;
            cursor: grab;
            touch-action: pan-y;
            scroll-behavior: smooth;
            scroll-snap-type: x proximity;
            padding: 0 max(40px,calc((100vw - 1420px)/2));
            user-select: none;
            -webkit-user-select: none
        }

            html[data-cc-page="hotel-index"] .social-viewport::-webkit-scrollbar {
                display: none
            }

            html[data-cc-page="hotel-index"] .social-viewport.is-dragging {
                cursor: grabbing;
                scroll-behavior: auto
            }

        html[data-cc-page="hotel-index"] .social-track {
            display: flex;
            gap: 18px;
            width: max-content;
            padding-right: 40px
        }

        html[data-cc-page="hotel-index"] .social-card {
            width: 300px;
            height: 390px;
            flex: 0 0 auto;
            position: relative;
            overflow: hidden;
            background: #222;
            scroll-snap-align: start
        }

            html[data-cc-page="hotel-index"] .social-card.wide {
                width: 450px
            }

            html[data-cc-page="hotel-index"] .social-card.short {
                height: 330px;
                margin-top: 30px
            }

            html[data-cc-page="hotel-index"] .social-card img, html[data-cc-page="hotel-index"] .social-card video {
                height: 100%;
                object-fit: cover;
                transition: transform .7s ease
            }

            html[data-cc-page="hotel-index"] .social-card:hover img, html[data-cc-page="hotel-index"] .social-card:hover video {
                transform: scale(1.04)
            }

            html[data-cc-page="hotel-index"] .social-card::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,transparent 60%,rgba(0,0,0,.64) 100%)
            }

            html[data-cc-page="hotel-index"] .social-card span {
                position: absolute;
                z-index: 2;
                left: 18px;
                bottom: 16px;
                font-size: 10px;
                letter-spacing: .08em
            }

        html[data-cc-page="hotel-index"] .social-controls {
            display: grid;
            grid-template-columns: auto 1fr;
            gap: 24px;
            align-items: center;
            margin-top: 28px
        }

        html[data-cc-page="hotel-index"] .social-drag-hint {
            font-size: 9px;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: rgba(255,255,255,.5);
            white-space: nowrap
        }

        html[data-cc-page="hotel-index"] .social-progress {
            height: 2px;
            background: rgba(255,255,255,.18);
            position: relative;
            overflow: hidden
        }

            html[data-cc-page="hotel-index"] .social-progress span {
                position: absolute;
                left: 0;
                top: 0;
                bottom: 0;
                width: 22%;
                background: var(--pink);
                transform: translateX(0);
                transition: transform .15s linear
            }

        /* NEWS & EVENTS - image first cards */
        html[data-cc-page="hotel-index"] .newsroom {
            padding: 125px 0 135px;
            background: #f4f2f2;
            overflow: hidden
        }

        html[data-cc-page="hotel-index"] .newsroom-head {
            display: grid;
            grid-template-columns: 1fr .85fr;
            gap: 80px;
            align-items: end;
            margin-bottom: 48px
        }

            html[data-cc-page="hotel-index"] .newsroom-head .eyebrow {
                color: var(--pink);
                margin-bottom: 18px
            }

            html[data-cc-page="hotel-index"] .newsroom-head h2 {
                font-family: var(--display);
                font-size: clamp(54px,5.5vw,82px);
                font-weight: 400;
                line-height: .98;
                letter-spacing: -.04em
            }

            html[data-cc-page="hotel-index"] .newsroom-head p {
                font-size: 13px;
                line-height: 1.85;
                color: var(--muted);
                max-width: 480px;
                margin-left: auto
            }

        html[data-cc-page="hotel-index"] .newsroom-head-actions {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 24px;
            margin-top: 20px
        }

        html[data-cc-page="hotel-index"] .newsroom-viewall {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            font-size: 9px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: var(--pink)
        }

            html[data-cc-page="hotel-index"] .newsroom-viewall i {
                transition: .25s
            }

            html[data-cc-page="hotel-index"] .newsroom-viewall:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="hotel-index"] .news-viewport {
            overflow-x: auto;
            overflow-y: hidden;
            scrollbar-width: none;
            cursor: grab;
            touch-action: pan-y;
            scroll-behavior: smooth;
            scroll-snap-type: x mandatory;
            user-select: none;
            -webkit-user-select: none;
            padding-bottom: 4px
        }

            html[data-cc-page="hotel-index"] .news-viewport::-webkit-scrollbar {
                display: none
            }

            html[data-cc-page="hotel-index"] .news-viewport.is-dragging {
                cursor: grabbing;
                scroll-behavior: auto
            }

        html[data-cc-page="hotel-index"] .news-track {
            display: flex;
            gap: 22px;
            width: max-content
        }

        html[data-cc-page="hotel-index"] .news-card {
            width: min(400px,31vw);
            min-width: 330px;
            background: #fff;
            scroll-snap-align: start;
            display: flex;
            flex-direction: column;
            transition: transform .35s ease,box-shadow .35s ease
        }

            html[data-cc-page="hotel-index"] .news-card:hover {
                transform: translateY(-5px);
                box-shadow: 0 18px 50px rgba(0,0,0,.08)
            }

        html[data-cc-page="hotel-index"] .news-card-image {
            height: 265px;
            overflow: hidden;
            background: #ddd
        }

            html[data-cc-page="hotel-index"] .news-card-image img {
                height: 100%;
                object-fit: cover;
                transition: transform .8s cubic-bezier(.22,1,.36,1)
            }

        html[data-cc-page="hotel-index"] .news-card:hover .news-card-image img {
            transform: scale(1.045)
        }

        html[data-cc-page="hotel-index"] .news-card-body {
            padding: 26px 27px 29px;
            display: flex;
            flex-direction: column;
            flex: 1
        }

        html[data-cc-page="hotel-index"] .news-meta {
            display: flex;
            align-items: center;
            gap: 12px;
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .15em;
            text-transform: uppercase;
            color: #8b8b8b;
            margin-bottom: 17px
        }

            html[data-cc-page="hotel-index"] .news-meta .type {
                color: var(--pink);
                background: rgba(169,0,97,.07);
                padding: 6px 8px
            }

        html[data-cc-page="hotel-index"] .news-card h3 {
            font-family: var(--display);
            font-size: 32px;
            line-height: 1.08;
            font-weight: 400;
            letter-spacing: -.025em;
            color: #222
        }

        html[data-cc-page="hotel-index"] .news-card p {
            font-size: 11px;
            line-height: 1.75;
            color: #777;
            margin-top: 13px;
            max-width: 350px
        }

        html[data-cc-page="hotel-index"] .news-link {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            margin-top: auto;
            padding-top: 24px;
            font-size: 9px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: var(--pink)
        }

            html[data-cc-page="hotel-index"] .news-link i {
                transition: .25s
            }

            html[data-cc-page="hotel-index"] .news-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="hotel-index"] .news-controls {
            display: grid;
            grid-template-columns: auto 1fr auto;
            gap: 22px;
            align-items: center;
            margin-top: 28px
        }

        html[data-cc-page="hotel-index"] .news-drag-hint {
            font-size: 9px;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #8b8b8b;
            white-space: nowrap
        }

        html[data-cc-page="hotel-index"] .news-progress {
            height: 2px;
            background: #d6d3d4;
            position: relative;
            overflow: hidden
        }

            html[data-cc-page="hotel-index"] .news-progress span {
                position: absolute;
                left: 0;
                top: 0;
                bottom: 0;
                width: 28%;
                background: var(--pink);
                transition: transform .15s linear
            }

        html[data-cc-page="hotel-index"] .news-bottom-nav {
            display: flex;
            gap: 7px
        }

            html[data-cc-page="hotel-index"] .news-bottom-nav button {
                width: 44px;
                height: 44px;
                border: 1px solid #c8c5c6;
                background: transparent;
                transition: .25s
            }

                html[data-cc-page="hotel-index"] .news-bottom-nav button:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff
                }

        /* MODERN FOOTER */
        html[data-cc-page="hotel-index"] .footer {
            position: relative;
            background: #0a0a0b;
            color: #fff;
            padding: 0 0 24px;
            overflow: hidden
        }

            html[data-cc-page="hotel-index"] .footer::before {
                content: "";
                position: absolute;
                right: -190px;
                top: 130px;
                width: 520px;
                height: 520px;
                border: 1px solid rgba(169,0,97,.18);
                border-radius: 50%;
                pointer-events: none
            }

            html[data-cc-page="hotel-index"] .footer::after {
                content: "";
                position: absolute;
                right: -95px;
                top: 225px;
                width: 330px;
                height: 330px;
                border: 1px solid rgba(169,0,97,.12);
                border-radius: 50%;
                pointer-events: none
            }

            html[data-cc-page="hotel-index"] .footer .container {
                position: relative;
                z-index: 2
            }

        html[data-cc-page="hotel-index"] .footer-newsletter {
            transform: translateY(-1px);
            background: linear-gradient(115deg,var(--pink) 0%,var(--pink-dark) 72%);
            display: grid;
            grid-template-columns: .9fr 1.1fr;
            gap: 70px;
            align-items: center;
            padding: 48px 54px;
            margin-bottom: 68px
        }

            html[data-cc-page="hotel-index"] .footer-newsletter .eyebrow {
                color: rgba(255,255,255,.72);
                margin-bottom: 12px
            }

            html[data-cc-page="hotel-index"] .footer-newsletter h2 {
                font-family: var(--display);
                font-size: clamp(38px,4.2vw,60px);
                line-height: 1;
                font-weight: 400;
                letter-spacing: -.03em
            }

        html[data-cc-page="hotel-index"] .newsletter-copy p {
            font-size: 12px;
            line-height: 1.75;
            color: rgba(255,255,255,.76);
            margin-top: 14px;
            max-width: 500px
        }

        html[data-cc-page="hotel-index"] .newsletter-form {
            display: flex;
            align-items: stretch;
            border-bottom: 1px solid rgba(255,255,255,.65);
            min-height: 58px
        }

            html[data-cc-page="hotel-index"] .newsletter-form input {
                flex: 1;
                min-width: 0;
                border: 0;
                background: transparent;
                color: #fff;
                outline: 0;
                font-size: 13px;
                padding: 0 8px
            }

                html[data-cc-page="hotel-index"] .newsletter-form input::placeholder {
                    color: rgba(255,255,255,.62)
                }

            html[data-cc-page="hotel-index"] .newsletter-form button {
                border: 0;
                background: #fff;
                color: #171717;
                padding: 0 24px;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .14em;
                text-transform: uppercase;
                transition: .25s
            }

                html[data-cc-page="hotel-index"] .newsletter-form button:hover {
                    background: #171717;
                    color: #fff
                }

        html[data-cc-page="hotel-index"] .newsletter-note {
            font-size: 9px !important;
            color: rgba(255,255,255,.58) !important;
            margin-top: 11px !important
        }

        html[data-cc-page="hotel-index"] .footer-grid {
            display: grid;
            grid-template-columns: 1.35fr .72fr .82fr 1fr;
            gap: 72px;
            padding-bottom: 58px
        }

        html[data-cc-page="hotel-index"] .footer-brand-copy {
            font-size: 12px;
            line-height: 1.8;
            color: rgba(255,255,255,.58);
            max-width: 290px;
            margin-top: 22px
        }

        html[data-cc-page="hotel-index"] .footer-logo {
            width: 154px
        }

        html[data-cc-page="hotel-index"] .footer h4 {
            font-size: 9px;
            text-transform: uppercase;
            letter-spacing: .19em;
            color: rgba(255,255,255,.46);
            margin-bottom: 22px
        }

        html[data-cc-page="hotel-index"] .footer-links {
            display: grid;
            gap: 12px
        }

            html[data-cc-page="hotel-index"] .footer-links a, html[data-cc-page="hotel-index"] .footer p, html[data-cc-page="hotel-index"] .footer a.contact {
                font-size: 12px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                transition: .25s
            }

                html[data-cc-page="hotel-index"] .footer-links a:hover, html[data-cc-page="hotel-index"] .footer a.contact:hover {
                    color: #fff;
                    transform: translateX(3px)
                }

        html[data-cc-page="hotel-index"] .footer-contact {
            display: grid;
            gap: 7px
        }

        html[data-cc-page="hotel-index"] .footer-location {
            margin-top: 22px !important
        }

        html[data-cc-page="hotel-index"] .social-icons {
            display: flex;
            gap: 10px;
            margin-top: 24px
        }

            html[data-cc-page="hotel-index"] .social-icons a {
                width: 40px;
                height: 40px;
                border: 1px solid rgba(255,255,255,.22);
                display: flex;
                align-items: center;
                justify-content: center;
                border-radius: 50%;
                font-size: 13px;
                transition: .3s
            }

                html[data-cc-page="hotel-index"] .social-icons a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    transform: translateY(-3px)
                }

        html[data-cc-page="hotel-index"] .green-star {
            width: 92px;
            margin-top: 24px
        }

        html[data-cc-page="hotel-index"] .footer-bottom {
            border-top: 1px solid rgba(255,255,255,.12);
            padding-top: 22px;
            display: flex;
            justify-content: space-between;
            gap: 20px;
            flex-wrap: wrap;
            font-size: 9px;
            letter-spacing: .03em;
            color: rgba(255,255,255,.4)
        }

            html[data-cc-page="hotel-index"] .footer-bottom nav {
                display: flex;
                gap: 22px;
                flex-wrap: wrap
            }

            html[data-cc-page="hotel-index"] .footer-bottom a:hover {
                color: #fff
            }

        html[data-cc-page="hotel-index"] .scrolltop {
            position: fixed;
            right: 22px;
            bottom: 22px;
            z-index: 80;
            width: 42px;
            height: 42px;
            border: 0;
            border-radius: 50%;
            background: var(--pink);
            color: #fff;
            opacity: 0;
            visibility: hidden;
            transform: translateY(12px);
            transition: .3s
        }

            html[data-cc-page="hotel-index"] .scrolltop.show {
                opacity: 1;
                visibility: visible;
                transform: none
            }

        html[data-cc-page="hotel-index"] .mobile-book {
            display: none
        }

        @media(max-width:1100px) {
            html[data-cc-page="hotel-index"] .container {
                width: min(100% - 44px,1420px)
            }

            html[data-cc-page="hotel-index"] .menu {
                gap: 18px
            }

            html[data-cc-page="hotel-index"] .menu-link {
                font-size: 11px
            }

            html[data-cc-page="hotel-index"] .header-book {
                margin-left: 20px
            }

            html[data-cc-page="hotel-index"] .booking-form {
                grid-template-columns: repeat(3,1fr)
            }

            html[data-cc-page="hotel-index"] .booking-submit {
                width: 100%
            }

            html[data-cc-page="hotel-index"] .guest-popover {
                width: 430px
            }

            html[data-cc-page="hotel-index"] .brand-story-grid {
                gap: 60px
            }

            html[data-cc-page="hotel-index"] .brand-story-copy {
                padding-left: 20px
            }

            html[data-cc-page="hotel-index"] .brand-story-visual {
                min-height: 560px
            }

            html[data-cc-page="hotel-index"] .brand-story-main-image {
                height: 510px
            }

            html[data-cc-page="hotel-index"] .news-card {
                width: 360px
            }

            html[data-cc-page="hotel-index"] .footer-newsletter {
                gap: 42px;
                padding: 42px
            }

            html[data-cc-page="hotel-index"] .footer-grid {
                gap: 45px
            }

            html[data-cc-page="hotel-index"] .manifesto-grid {
                gap: 70px
            }

            html[data-cc-page="hotel-index"] .resort-story {
                height: 535px;
                flex-basis: 80vw
            }

            html[data-cc-page="hotel-index"] .offer-mosaic {
                grid-template-rows: 270px 270px
            }

            html[data-cc-page="hotel-index"] .gather-scenes {
                gap: 20px
            }

            html[data-cc-page="hotel-index"] .gather-scene, html[data-cc-page="hotel-index"] .gather-scene.secondary {
                min-height: 590px
            }

            html[data-cc-page="hotel-index"] .gather-scene-content {
                left: 32px;
                right: 32px;
                bottom: 32px
            }

            html[data-cc-page="hotel-index"] .gather-footer {
                padding: 30px 32px
            }

            html[data-cc-page="hotel-index"] .footer-grid {
                grid-template-columns: 1.15fr 1fr 1fr;
                gap: 45px
            }

                html[data-cc-page="hotel-index"] .footer-grid > div:last-child {
                    grid-column: 2/4
                }

            html[data-cc-page="hotel-index"] .footer-newsletter {
                grid-template-columns: 1fr 1fr
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-index"] body {
                padding-bottom: 56px
            }

            html[data-cc-page="hotel-index"] .container {
                width: calc(100% - 30px)
            }

            html[data-cc-page="hotel-index"] .header {
                position: absolute;
                background: rgba(255,255,255,.97);
                color: #111
            }

            html[data-cc-page="hotel-index"] .header-top, html[data-cc-page="hotel-index"] .menu, html[data-cc-page="hotel-index"] .header-book {
                display: none
            }

            html[data-cc-page="hotel-index"] .header-main {
                height: 72px
            }

            html[data-cc-page="hotel-index"] .brand-light {
                display: none !important
            }

            html[data-cc-page="hotel-index"] .brand-dark {
                display: block !important
            }

            html[data-cc-page="hotel-index"] .brand img {
                width: 125px;
                max-height: 52px
            }

            html[data-cc-page="hotel-index"] .mobile-trigger {
                display: block
            }

            html[data-cc-page="hotel-index"] .hero {
                height: 700px;
                min-height: 700px;
                padding-top: 72px
            }

            html[data-cc-page="hotel-index"] .hero-content {
                padding-bottom: 92px
            }

            html[data-cc-page="hotel-index"] .hero-copy {
                max-width: 90%
            }

            html[data-cc-page="hotel-index"] .hero-title {
                font-size: 52px
            }

            html[data-cc-page="hotel-index"] .hero-subtitle {
                font-size: 13px;
                max-width: 360px
            }

            html[data-cc-page="hotel-index"] .hero-count {
                display: none
            }

            html[data-cc-page="hotel-index"] .hero-control {
                right: 15px;
                bottom: 18px
            }

            html[data-cc-page="hotel-index"] .hero-arrow {
                width: 44px;
                height: 44px
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                display: none
            }

            html[data-cc-page="hotel-index"] .brand-story {
                padding: 105px 0 110px
            }

                html[data-cc-page="hotel-index"] .brand-story::before {
                    font-size: 230px;
                    top: 55px
                }

            html[data-cc-page="hotel-index"] .brand-story-grid {
                grid-template-columns: 1fr;
                gap: 55px
            }

            html[data-cc-page="hotel-index"] .brand-story-copy {
                padding-left: 0
            }

                html[data-cc-page="hotel-index"] .brand-story-copy h2 {
                    font-size: 58px
                }

            html[data-cc-page="hotel-index"] .brand-story-visual {
                min-height: 540px
            }

            html[data-cc-page="hotel-index"] .brand-story-main-image {
                width: 94%;
                height: 500px
            }

            html[data-cc-page="hotel-index"] .brand-story-note {
                left: 6%;
                bottom: 34px;
                width: 76%
            }

            html[data-cc-page="hotel-index"] .newsroom {
                padding: 100px 0 110px
            }

            html[data-cc-page="hotel-index"] .newsroom-head {
                grid-template-columns: 1fr;
                gap: 25px
            }

                html[data-cc-page="hotel-index"] .newsroom-head p {
                    margin: 0
                }

            html[data-cc-page="hotel-index"] .newsroom-head-actions {
                justify-content: flex-start
            }

            html[data-cc-page="hotel-index"] .news-card {
                width: 360px;
                min-width: 360px
            }

            html[data-cc-page="hotel-index"] .resorts {
                padding-bottom: 100px
            }

            html[data-cc-page="hotel-index"] .resort-head {
                padding: 85px 0 40px
            }

                html[data-cc-page="hotel-index"] .resort-head .small-title {
                    font-size: 40px
                }

            html[data-cc-page="hotel-index"] .resort-story {
                height: 505px;
                flex-basis: 88vw
            }

            html[data-cc-page="hotel-index"] .resort-drag-hint {
                display: none
            }

            html[data-cc-page="hotel-index"] .story-copy {
                left: 28px;
                right: 28px;
                bottom: 28px;
                display: block
            }

                html[data-cc-page="hotel-index"] .story-copy h3 {
                    font-size: 48px
                }

                html[data-cc-page="hotel-index"] .story-copy p {
                    margin-top: 14px
                }

            html[data-cc-page="hotel-index"] .story-link {
                top: 20px;
                right: 20px
            }

            html[data-cc-page="hotel-index"] .story-index {
                top: 20px;
                left: 20px
            }

            html[data-cc-page="hotel-index"] .loyalty {
                min-height: 620px;
                background-attachment: scroll
            }

            html[data-cc-page="hotel-index"] .loyalty-ring {
                display: none
            }

            html[data-cc-page="hotel-index"] .loyalty-copy h2 {
                font-size: 56px
            }

            html[data-cc-page="hotel-index"] .offers {
                padding: 105px 0
            }

            html[data-cc-page="hotel-index"] .offers-intro {
                grid-template-columns: 1fr;
                gap: 30px;
                margin-bottom: 42px
            }

                html[data-cc-page="hotel-index"] .offers-intro h2 {
                    font-size: 54px
                }

            html[data-cc-page="hotel-index"] .offers-intro-copy {
                margin: 0
            }

            html[data-cc-page="hotel-index"] .offer-mosaic {
                grid-template-columns: 1fr;
                grid-template-rows: none
            }

            html[data-cc-page="hotel-index"] .offer-tile, html[data-cc-page="hotel-index"] .offer-tile.featured {
                grid-row: auto;
                height: 430px
            }

            html[data-cc-page="hotel-index"] .featured .offer-content h3, html[data-cc-page="hotel-index"] .offer-content h3 {
                font-size: 42px
            }

            html[data-cc-page="hotel-index"] .offer-strip {
                grid-template-columns: 1fr 1fr
            }

                html[data-cc-page="hotel-index"] .offer-strip .offer-tile {
                    height: 280px
                }

            html[data-cc-page="hotel-index"] .gather {
                padding: 105px 0
            }

            html[data-cc-page="hotel-index"] .gather-head {
                grid-template-columns: 1fr;
                gap: 26px;
                margin-bottom: 40px
            }

                html[data-cc-page="hotel-index"] .gather-head h2 {
                    font-size: 56px
                }

            html[data-cc-page="hotel-index"] .gather-head-copy {
                margin: 0
            }

            html[data-cc-page="hotel-index"] .gather-scenes {
                grid-template-columns: 1fr
            }

            html[data-cc-page="hotel-index"] .gather-scene, html[data-cc-page="hotel-index"] .gather-scene.secondary {
                min-height: 520px
            }

            html[data-cc-page="hotel-index"] .gather-scene-content {
                left: 28px;
                right: 28px;
                bottom: 28px
            }

            html[data-cc-page="hotel-index"] .gather-footer {
                align-items: flex-start;
                flex-direction: column
            }

            html[data-cc-page="hotel-index"] .gather-footer-copy {
                align-items: flex-start;
                flex-direction: column;
                gap: 10px
            }

            html[data-cc-page="hotel-index"] .social {
                padding: 95px 0 100px
            }

            html[data-cc-page="hotel-index"] .social-head {
                display: block
            }

                html[data-cc-page="hotel-index"] .social-head h2 {
                    font-size: 52px
                }

            html[data-cc-page="hotel-index"] .social-head-right {
                margin-top: 22px;
                justify-content: space-between;
                align-items: center
            }

            html[data-cc-page="hotel-index"] .social-head p {
                text-align: left;
                margin: 0
            }

            html[data-cc-page="hotel-index"] .social-viewport {
                padding-left: 15px;
                padding-right: 15px
            }

            html[data-cc-page="hotel-index"] .social-card {
                width: 260px;
                height: 350px
            }

                html[data-cc-page="hotel-index"] .social-card.wide {
                    width: 390px
                }

                html[data-cc-page="hotel-index"] .social-card.short {
                    height: 290px;
                    margin-top: 30px
                }

            html[data-cc-page="hotel-index"] .social-drag-hint {
                display: none
            }

            html[data-cc-page="hotel-index"] .footer-newsletter {
                grid-template-columns: 1fr;
                gap: 28px;
                padding: 36px 32px;
                margin-bottom: 55px
            }

            html[data-cc-page="hotel-index"] .footer-grid {
                grid-template-columns: 1fr 1fr
            }

                html[data-cc-page="hotel-index"] .footer-grid > div:last-child {
                    grid-column: auto
                }

            html[data-cc-page="hotel-index"] .mobile-book {
                position: fixed;
                left: 0;
                right: 0;
                bottom: 0;
                height: 56px;
                z-index: 400;
                background: var(--pink);
                color: #fff;
                display: flex;
                align-items: center;
                justify-content: center;
                border: 0;
                font-size: 12px;
                font-weight: 600;
                text-transform: uppercase;
                letter-spacing: .12em
            }

            html[data-cc-page="hotel-index"] .scrolltop {
                bottom: 70px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-index"] .hero {
                height: 640px;
                min-height: 640px
            }

            html[data-cc-page="hotel-index"] .hero-content {
                padding-bottom: 82px
            }

            html[data-cc-page="hotel-index"] .hero-title {
                font-size: 43px
            }

            html[data-cc-page="hotel-index"] .hero-copy {
                max-width: 100%
            }

            html[data-cc-page="hotel-index"] .hero-kicker {
                font-size: 9px
            }

            html[data-cc-page="hotel-index"] .hero-subtitle {
                font-size: 12px;
                line-height: 1.6
            }

            html[data-cc-page="hotel-index"] .hero-actions .btn {
                min-height: 44px;
                padding: 0 18px;
                font-size: 10px
            }

            html[data-cc-page="hotel-index"] .brand-story::before {
                font-size: 170px
            }

            html[data-cc-page="hotel-index"] .brand-story-copy h2 {
                font-size: 46px
            }

            html[data-cc-page="hotel-index"] .brand-story-copy p {
                font-size: 13px
            }

            html[data-cc-page="hotel-index"] .brand-story-visual {
                min-height: 455px
            }

            html[data-cc-page="hotel-index"] .brand-story-main-image {
                width: 100%;
                height: 420px
            }

            html[data-cc-page="hotel-index"] .brand-story-note {
                left: 0;
                bottom: 25px;
                width: 88%;
                min-width: 0;
                padding: 24px 34px 24px 22px
            }

                html[data-cc-page="hotel-index"] .brand-story-note strong {
                    font-size: 29px
                }

            html[data-cc-page="hotel-index"] .brand-story-stamp {
                width: 94px;
                height: 94px;
                right: 8px
            }

                html[data-cc-page="hotel-index"] .brand-story-stamp strong {
                    font-size: 31px
                }

            html[data-cc-page="hotel-index"] .newsroom-head h2 {
                font-size: 46px
            }

            html[data-cc-page="hotel-index"] .news-card {
                width: 84vw;
                min-width: 280px
            }

            html[data-cc-page="hotel-index"] .news-card-image {
                height: 230px
            }

            html[data-cc-page="hotel-index"] .news-card-body {
                padding: 23px
            }

            html[data-cc-page="hotel-index"] .news-card h3 {
                font-size: 29px
            }

            html[data-cc-page="hotel-index"] .news-drag-hint {
                display: none
            }

            html[data-cc-page="hotel-index"] .resort-head {
                align-items: flex-end
            }

                html[data-cc-page="hotel-index"] .resort-head .small-title {
                    font-size: 34px
                }

            html[data-cc-page="hotel-index"] .resort-nav button {
                width: 42px;
                height: 42px
            }

            html[data-cc-page="hotel-index"] .resort-story {
                height: 470px;
                flex-basis: 92vw
            }

            html[data-cc-page="hotel-index"] .resort-controls-bottom {
                grid-template-columns: 1fr auto
            }

            html[data-cc-page="hotel-index"] .resort-drag-hint {
                display: none
            }

            html[data-cc-page="hotel-index"] .story-copy h3 {
                font-size: 40px
            }

            html[data-cc-page="hotel-index"] .story-copy p {
                font-size: 11px;
                max-width: 270px
            }

            html[data-cc-page="hotel-index"] .story-link {
                width: 46px;
                height: 46px
            }

            html[data-cc-page="hotel-index"] .loyalty {
                min-height: 560px
            }

            html[data-cc-page="hotel-index"] .loyalty-copy h2 {
                font-size: 46px
            }

            html[data-cc-page="hotel-index"] .loyalty-copy p {
                font-size: 13px
            }

            html[data-cc-page="hotel-index"] .offers-intro h2 {
                font-size: 44px
            }

            html[data-cc-page="hotel-index"] .offer-tile, html[data-cc-page="hotel-index"] .offer-tile.featured {
                height: 390px
            }

            html[data-cc-page="hotel-index"] .offer-strip {
                grid-template-columns: 1fr
            }

                html[data-cc-page="hotel-index"] .offer-strip .offer-tile {
                    height: 330px
                }

            html[data-cc-page="hotel-index"] .offer-content h3, html[data-cc-page="hotel-index"] .featured .offer-content h3 {
                font-size: 38px
            }

            html[data-cc-page="hotel-index"] .gather-head h2 {
                font-size: 46px
            }

            html[data-cc-page="hotel-index"] .gather-scene, html[data-cc-page="hotel-index"] .gather-scene.secondary {
                min-height: 460px
            }

            html[data-cc-page="hotel-index"] .gather-scene-content {
                left: 22px;
                right: 22px;
                bottom: 24px
            }

                html[data-cc-page="hotel-index"] .gather-scene-content h3 {
                    font-size: 40px
                }

            html[data-cc-page="hotel-index"] .gather-footer {
                padding: 26px 22px
            }

                html[data-cc-page="hotel-index"] .gather-footer strong {
                    font-size: 27px
                }

            html[data-cc-page="hotel-index"] .social-head h2 {
                font-size: 44px
            }

            html[data-cc-page="hotel-index"] .social-head-right {
                align-items: flex-start
            }

                html[data-cc-page="hotel-index"] .social-head-right .media-nav {
                    flex: 0 0 auto
                }

            html[data-cc-page="hotel-index"] .social-card {
                width: 230px;
                height: 320px
            }

                html[data-cc-page="hotel-index"] .social-card.wide {
                    width: 330px
                }

            html[data-cc-page="hotel-index"] .social-controls {
                grid-template-columns: 1fr
            }

            html[data-cc-page="hotel-index"] .social-drag-hint {
                display: none
            }

            html[data-cc-page="hotel-index"] .footer-newsletter {
                margin-inline: -15px;
                padding: 34px 22px
            }

                html[data-cc-page="hotel-index"] .footer-newsletter h2 {
                    font-size: 38px
                }

            html[data-cc-page="hotel-index"] .newsletter-form {
                min-height: 54px
            }

                html[data-cc-page="hotel-index"] .newsletter-form button {
                    padding: 0 16px
                }

            html[data-cc-page="hotel-index"] .footer-grid {
                grid-template-columns: 1fr;
                gap: 36px
            }

            html[data-cc-page="hotel-index"] .footer {
                padding-top: 0
            }

            html[data-cc-page="hotel-index"] .footer-bottom {
                display: block
            }

                html[data-cc-page="hotel-index"] .footer-bottom nav {
                    margin-top: 12px;
                    gap: 13px
                }
        }

        @media(prefers-reduced-motion:reduce) {
            html[data-cc-page="hotel-index"], html[data-cc-page="hotel-index"] * {
                scroll-behavior: auto !important
            }

            html[data-cc-page="hotel-index"] .reveal, html[data-cc-page="hotel-index"] .reveal-left, html[data-cc-page="hotel-index"] .reveal-right {
                opacity: 1 !important;
                transform: none !important;
                filter: none !important;
                transition: none !important
            }

            html[data-cc-page="hotel-index"] .hero-slide img {
                animation: none !important;
                transition: none !important
            }

            html[data-cc-page="hotel-index"] .hero-copy * {
                animation: none !important
            }

            html[data-cc-page="hotel-index"] .brand-story-main-image img {
                transform: none !important
            }
        }

        /* =====================================================
           Image Asset Safety
        ===================================================== */
        html[data-cc-page="hotel-index"] img[data-asset-fallback-used="true"] {
            opacity: 1 !important;
            visibility: visible !important;
        }


        /* =====================================================
           V8 REVIEW CHANGES
        ===================================================== */

        /* Premium refill hover: lift + animated fill + brightness */
        html[data-cc-page="hotel-index"] .btn, html[data-cc-page="hotel-index"] .booking-submit, html[data-cc-page="hotel-index"] .guest-done, html[data-cc-page="hotel-index"] .newsletter-form button, html[data-cc-page="hotel-index"] .hero-arrow, html[data-cc-page="hotel-index"] .resort-nav button, html[data-cc-page="hotel-index"] .resort-bottom-nav button, html[data-cc-page="hotel-index"] .media-nav button, html[data-cc-page="hotel-index"] .news-bottom-nav button {
            transition: background-size .42s cubic-bezier(.22,1,.36,1),color .28s ease,border-color .28s ease,transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease !important
        }

        html[data-cc-page="hotel-index"] .btn-pink, html[data-cc-page="hotel-index"] .booking-submit {
            background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
            background-repeat: no-repeat;
            background-position: left top;
            background-size: 0 100%;
            background-color: var(--pink) !important
        }

        html[data-cc-page="hotel-index"] .btn-white {
            background-image: linear-gradient(90deg,var(--pink),var(--pink));
            background-repeat: no-repeat;
            background-position: left top;
            background-size: 0 100%;
            background-color: #fff !important;
            color: #111
        }

        html[data-cc-page="hotel-index"] .btn-outline {
            background-image: linear-gradient(90deg,var(--pink),var(--pink));
            background-repeat: no-repeat;
            background-position: left top;
            background-size: 0 100%
        }

        html[data-cc-page="hotel-index"] .btn:hover, html[data-cc-page="hotel-index"] .booking-submit:hover, html[data-cc-page="hotel-index"] .guest-done:hover, html[data-cc-page="hotel-index"] .newsletter-form button:hover, html[data-cc-page="hotel-index"] .hero-arrow:hover, html[data-cc-page="hotel-index"] .resort-nav button:hover, html[data-cc-page="hotel-index"] .resort-bottom-nav button:hover, html[data-cc-page="hotel-index"] .media-nav button:hover, html[data-cc-page="hotel-index"] .news-bottom-nav button:hover {
            transform: translateY(-3px);
            filter: brightness(1.08);
            box-shadow: 0 12px 28px rgba(0,0,0,.13)
        }

        html[data-cc-page="hotel-index"] .btn-pink:hover, html[data-cc-page="hotel-index"] .booking-submit:hover, html[data-cc-page="hotel-index"] .btn-white:hover, html[data-cc-page="hotel-index"] .btn-outline:hover {
            background-size: 100% 100% !important
        }

        html[data-cc-page="hotel-index"] .btn-white:hover, html[data-cc-page="hotel-index"] .btn-outline:hover {
            color: #fff !important;
            border-color: var(--pink) !important
        }

        /* Sticky horizontal logo */
        html[data-cc-page="hotel-index"] .header.sticky .brand {
            width: 205px
        }

        html[data-cc-page="hotel-index"] .header.sticky .brand-dark {
            width: 190px;
            max-height: 46px;
            object-fit: contain;
            object-position: left center
        }

        /* Booking dock - visible above the fold and remains available while browsing */
        html[data-cc-page="hotel-index"] .booking-shell {
            position: sticky;
            top: 102px;
            z-index: 92;
            margin-top: -62px
        }

        html[data-cc-page="hotel-index"] .booking-card {
            transition: box-shadow .3s ease,transform .3s ease
        }

        html[data-cc-page="hotel-index"] .booking-shell.is-stuck .booking-card {
            box-shadow: 0 14px 38px rgba(0,0,0,.16)
        }

        /* Offers - black stage with cinematic image reveal every time the tile re-enters view */
        html[data-cc-page="hotel-index"] .offer-tile {
            background: #090909;
            isolation: isolate
        }

            html[data-cc-page="hotel-index"] .offer-tile img {
                clip-path: inset(0 100% 0 0);
                transform: scale(1.08);
                transition: clip-path 1.12s cubic-bezier(.77,0,.18,1),transform 1.45s cubic-bezier(.22,1,.36,1) !important;
                will-change: clip-path,transform
            }

            html[data-cc-page="hotel-index"] .offer-tile:nth-child(even) img, html[data-cc-page="hotel-index"] .offer-strip .offer-tile:nth-child(odd) img {
                clip-path: inset(0 0 0 100%)
            }

            html[data-cc-page="hotel-index"] .offer-tile.in-view img {
                clip-path: inset(0 0 0 0);
                transform: scale(1)
            }

            html[data-cc-page="hotel-index"] .offer-tile::before {
                content: "";
                position: absolute;
                inset: 0;
                background: #090909;
                z-index: 1;
                transform: scaleX(1);
                transform-origin: right center;
                transition: transform 1.08s cubic-bezier(.77,0,.18,1);
                pointer-events: none
            }

            html[data-cc-page="hotel-index"] .offer-tile:nth-child(even)::before, html[data-cc-page="hotel-index"] .offer-strip .offer-tile:nth-child(odd)::before {
                transform-origin: left center
            }

            html[data-cc-page="hotel-index"] .offer-tile.in-view::before {
                transform: scaleX(0)
            }

            html[data-cc-page="hotel-index"] .offer-tile::after, html[data-cc-page="hotel-index"] .offer-content, html[data-cc-page="hotel-index"] .offer-arrow {
                z-index: 2
            }

            html[data-cc-page="hotel-index"] .offer-tile:hover img {
                transform: scale(1.035)
            }

        /* Drag rails: disable native image/link drag and make the navigation line a real control */
        html[data-cc-page="hotel-index"] .social-card, html[data-cc-page="hotel-index"] .news-card {
            cursor: grab
        }

        html[data-cc-page="hotel-index"] .social-viewport.is-dragging, html[data-cc-page="hotel-index"] .news-viewport.is-dragging, html[data-cc-page="hotel-index"] .social-viewport.is-dragging .social-card, html[data-cc-page="hotel-index"] .news-viewport.is-dragging .news-card {
            cursor: grabbing;
            scroll-snap-type: none !important
        }

        html[data-cc-page="hotel-index"] .social-card img, html[data-cc-page="hotel-index"] .social-card video, html[data-cc-page="hotel-index"] .news-card img {
            pointer-events: none;
            -webkit-user-drag: none;
            user-select: none
        }

        html[data-cc-page="hotel-index"] .social-controls {
            display: block;
            margin-top: 28px
        }

        html[data-cc-page="hotel-index"] .social-progress, html[data-cc-page="hotel-index"] .news-progress {
            height: 22px;
            background: transparent;
            position: relative;
            overflow: visible;
            cursor: pointer;
            touch-action: none;
            display: flex;
            align-items: center
        }

            html[data-cc-page="hotel-index"] .social-progress::before, html[data-cc-page="hotel-index"] .news-progress::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                height: 2px;
                background: rgba(255,255,255,.20)
            }

            html[data-cc-page="hotel-index"] .news-progress::before {
                background: #d6d3d4
            }

            html[data-cc-page="hotel-index"] .social-progress span, html[data-cc-page="hotel-index"] .news-progress span {
                position: absolute;
                left: 0;
                top: 50%;
                height: 4px;
                transform: translateY(-50%);
                background: var(--pink);
                transition: left .08s linear,width .18s ease,transform .08s linear;
                border-radius: 10px
            }

            html[data-cc-page="hotel-index"] .social-progress:hover span, html[data-cc-page="hotel-index"] .news-progress:hover span {
                height: 6px
            }

        html[data-cc-page="hotel-index"] .news-controls {
            grid-template-columns: 1fr auto;
            gap: 22px
        }

        html[data-cc-page="hotel-index"] .resort-controls-bottom {
            grid-template-columns: 1fr auto
        }

        /* Footer - restrained editorial layout, no floating/gradient card */
        html[data-cc-page="hotel-index"] .footer {
            background: #0d0d0e;
            padding: 0 0 26px
        }

            html[data-cc-page="hotel-index"] .footer::before, html[data-cc-page="hotel-index"] .footer::after {
                display: none
            }

        html[data-cc-page="hotel-index"] .footer-newsletter {
            transform: none;
            background: transparent;
            display: grid;
            grid-template-columns: .8fr 1.2fr;
            gap: 90px;
            align-items: end;
            padding: 62px 0 52px;
            margin: 0;
            border-top: 1px solid rgba(255,255,255,.13);
            border-bottom: 1px solid rgba(255,255,255,.13)
        }

            html[data-cc-page="hotel-index"] .footer-newsletter .eyebrow {
                color: var(--pink);
                margin-bottom: 15px
            }

            html[data-cc-page="hotel-index"] .footer-newsletter h2 {
                font-size: clamp(38px,4vw,58px);
                line-height: 1.02
            }

        html[data-cc-page="hotel-index"] .newsletter-side {
            display: grid;
            grid-template-columns: minmax(190px,.72fr) minmax(360px,1.28fr);
            column-gap: 40px;
            align-items: end
        }

            html[data-cc-page="hotel-index"] .newsletter-side > p {
                font-size: 12px;
                line-height: 1.75;
                color: rgba(255,255,255,.56);
                margin: 0 0 8px;
                max-width: 340px
            }

        html[data-cc-page="hotel-index"] .newsletter-form {
            min-height: 52px;
            border: 1px solid rgba(255,255,255,.24);
            background: transparent;
            padding-left: 4px
        }

            html[data-cc-page="hotel-index"] .newsletter-form:focus-within {
                border-color: rgba(255,255,255,.55)
            }

            html[data-cc-page="hotel-index"] .newsletter-form input {
                padding: 0 16px;
                color: #fff
            }

            html[data-cc-page="hotel-index"] .newsletter-form button {
                background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                background-repeat: no-repeat;
                background-position: left top;
                background-size: 0 100%;
                background-color: var(--pink);
                color: #fff;
                min-width: 142px
            }

                html[data-cc-page="hotel-index"] .newsletter-form button:hover {
                    background-size: 100% 100%;
                    color: #fff
                }

        html[data-cc-page="hotel-index"] .newsletter-note {
            grid-column: 2;
            font-size: 9px !important;
            color: rgba(255,255,255,.38) !important;
            margin: 9px 0 0 !important
        }

        html[data-cc-page="hotel-index"] .footer-main {
            display: grid;
            grid-template-columns: 1.05fr 1.8fr;
            gap: 100px;
            padding: 64px 0 58px
        }

        html[data-cc-page="hotel-index"] .footer-identity {
            max-width: 330px
        }

        html[data-cc-page="hotel-index"] .footer-logo {
            width: 165px
        }

        html[data-cc-page="hotel-index"] .footer-brand-copy {
            margin-top: 24px;
            max-width: 310px
        }

        html[data-cc-page="hotel-index"] .footer-grid {
            display: grid;
            grid-template-columns: repeat(3,1fr);
            gap: 60px;
            padding: 0
        }

            html[data-cc-page="hotel-index"] .footer-grid > div:last-child {
                grid-column: auto
            }

        html[data-cc-page="hotel-index"] .footer h4 {
            margin-bottom: 20px
        }

        html[data-cc-page="hotel-index"] .footer-location {
            margin-top: 0 !important
        }

        html[data-cc-page="hotel-index"] .green-star {
            width: 78px;
            margin-top: 20px
        }

        html[data-cc-page="hotel-index"] .social-icons {
            margin-top: 28px
        }

            html[data-cc-page="hotel-index"] .social-icons a {
                width: 38px;
                height: 38px
            }

        html[data-cc-page="hotel-index"] .footer-bottom {
            padding-top: 22px
        }

        /* Replayed motion remains visible and resets each time elements leave the viewport */
        html[data-cc-page="hotel-index"] .reveal, html[data-cc-page="hotel-index"] .reveal-left, html[data-cc-page="hotel-index"] .reveal-right {
            transition-duration: 1.05s,1.15s,.95s
        }

            html[data-cc-page="hotel-index"] .reveal:not(.in-view), html[data-cc-page="hotel-index"] .reveal-left:not(.in-view), html[data-cc-page="hotel-index"] .reveal-right:not(.in-view) {
                will-change: opacity,transform,filter
            }

        @media(max-width:1100px) {
            html[data-cc-page="hotel-index"] .header.sticky .brand {
                width: 180px
            }

            html[data-cc-page="hotel-index"] .header.sticky .brand-dark {
                width: 168px
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                top: 102px;
                margin-top: -62px
            }

            html[data-cc-page="hotel-index"] .booking-form {
                grid-template-columns: 1.1fr 1fr 1fr 1.25fr;
                gap: 9px
            }

                html[data-cc-page="hotel-index"] .booking-form > .field:nth-of-type(5) {
                    grid-column: 1/3
                }

            html[data-cc-page="hotel-index"] .booking-submit {
                grid-column: 3/5
            }

            html[data-cc-page="hotel-index"] .footer-newsletter {
                gap: 55px
            }

            html[data-cc-page="hotel-index"] .newsletter-side {
                grid-template-columns: 1fr
            }

            html[data-cc-page="hotel-index"] .newsletter-note {
                grid-column: 1
            }

            html[data-cc-page="hotel-index"] .footer-main {
                gap: 60px
            }

            html[data-cc-page="hotel-index"] .footer-grid {
                gap: 38px
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-index"] body {
                padding-bottom: 0
            }

            html[data-cc-page="hotel-index"] .header.sticky .brand, html[data-cc-page="hotel-index"] .brand {
                width: 175px
            }

            html[data-cc-page="hotel-index"] .header.sticky .brand-dark, html[data-cc-page="hotel-index"] .brand-dark {
                width: 165px !important;
                max-height: 42px !important
            }

            html[data-cc-page="hotel-index"] .hero {
                height: 760px;
                min-height: 760px
            }

            html[data-cc-page="hotel-index"] .hero-content {
                padding-bottom: 300px
            }

            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 255px
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                display: block !important;
                position: sticky;
                top: 72px;
                z-index: 94;
                margin-top: -238px;
                margin-bottom: 34px
            }

            html[data-cc-page="hotel-index"] .booking-card {
                padding: 13px;
                border-radius: 0;
                box-shadow: 0 16px 38px rgba(0,0,0,.18)
            }

            html[data-cc-page="hotel-index"] .booking-form {
                grid-template-columns: 1fr 1fr;
                gap: 8px
            }

                html[data-cc-page="hotel-index"] .booking-form > .field:nth-of-type(1), html[data-cc-page="hotel-index"] .booking-form > .field:nth-of-type(4) {
                    grid-column: 1/3
                }

                html[data-cc-page="hotel-index"] .booking-form > .field:nth-of-type(5) {
                    grid-column: 1/2
                }

            html[data-cc-page="hotel-index"] .booking-submit {
                grid-column: 2/3;
                height: 48px;
                align-self: end
            }

            html[data-cc-page="hotel-index"] .field label {
                font-size: 8px;
                margin-bottom: 5px
            }

            html[data-cc-page="hotel-index"] .control, html[data-cc-page="hotel-index"] .guest-trigger {
                height: 46px
            }

            html[data-cc-page="hotel-index"] .booking-submit {
                height: 46px
            }

            html[data-cc-page="hotel-index"] .guest-popover {
                position: fixed;
                left: 15px;
                right: 15px;
                top: auto;
                bottom: 18px;
                width: auto;
                max-width: none;
                max-height: 72vh;
                overflow: auto;
                z-index: 520
            }

                html[data-cc-page="hotel-index"] .guest-popover::before {
                    display: none
                }

            html[data-cc-page="hotel-index"] .rooms-container {
                max-height: 46vh
            }

            html[data-cc-page="hotel-index"] .mobile-book {
                display: none !important
            }

            html[data-cc-page="hotel-index"] .social-controls {
                margin-top: 20px
            }

            html[data-cc-page="hotel-index"] .news-controls {
                grid-template-columns: 1fr auto
            }

            html[data-cc-page="hotel-index"] .footer-newsletter {
                grid-template-columns: 1fr;
                gap: 25px;
                padding: 48px 0 42px
            }

            html[data-cc-page="hotel-index"] .newsletter-side {
                grid-template-columns: 1fr;
                gap: 18px
            }

            html[data-cc-page="hotel-index"] .newsletter-note {
                grid-column: 1
            }

            html[data-cc-page="hotel-index"] .footer-main {
                grid-template-columns: 1fr;
                gap: 48px;
                padding: 50px 0
            }

            html[data-cc-page="hotel-index"] .footer-grid {
                grid-template-columns: repeat(3,1fr);
                gap: 28px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-index"] .header.sticky .brand, html[data-cc-page="hotel-index"] .brand {
                width: 160px
            }

            html[data-cc-page="hotel-index"] .header.sticky .brand-dark, html[data-cc-page="hotel-index"] .brand-dark {
                width: 150px !important
            }

            html[data-cc-page="hotel-index"] .hero {
                height: 790px;
                min-height: 790px
            }

            html[data-cc-page="hotel-index"] .hero-content {
                padding-bottom: 335px
            }

            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 290px
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                top: 72px;
                margin-top: -280px;
                margin-bottom: 30px
            }

            html[data-cc-page="hotel-index"] .booking-card {
                padding: 11px
            }

            html[data-cc-page="hotel-index"] .booking-form {
                grid-template-columns: 1fr 1fr;
                gap: 7px
            }

                html[data-cc-page="hotel-index"] .booking-form > .field:nth-of-type(1), html[data-cc-page="hotel-index"] .booking-form > .field:nth-of-type(4) {
                    grid-column: 1/3
                }

                html[data-cc-page="hotel-index"] .booking-form > .field:nth-of-type(5) {
                    grid-column: 1/2
                }

            html[data-cc-page="hotel-index"] .booking-submit {
                grid-column: 2/3;
                padding: 0 10px;
                font-size: 9px
            }

            html[data-cc-page="hotel-index"] .control input, html[data-cc-page="hotel-index"] .control select {
                font-size: 10px;
                padding-left: 34px
            }

            html[data-cc-page="hotel-index"] .guest-trigger {
                font-size: 10px;
                padding-left: 34px
            }

            html[data-cc-page="hotel-index"] .control > i {
                left: 11px
            }

            html[data-cc-page="hotel-index"] .control .down {
                right: 8px
            }

            html[data-cc-page="hotel-index"] .footer-newsletter h2 {
                font-size: 40px
            }

            html[data-cc-page="hotel-index"] .newsletter-form {
                min-height: 50px
            }

                html[data-cc-page="hotel-index"] .newsletter-form button {
                    min-width: 118px;
                    padding: 0 12px
                }

            html[data-cc-page="hotel-index"] .footer-grid {
                grid-template-columns: 1fr 1fr;
                gap: 36px 28px
            }

                html[data-cc-page="hotel-index"] .footer-grid > div:last-child {
                    grid-column: 1/3
                }

            html[data-cc-page="hotel-index"] .footer-main {
                padding-bottom: 44px
            }
        }


        /* =====================================================
           V9 BOOKING POSITION FIX - ABOVE THE FOLD, NEVER STICKY
           ===================================================== */
        html[data-cc-page="hotel-index"] .booking-shell {
            position: relative !important;
            top: auto !important;
            z-index: 30 !important;
            margin-top: -102px !important;
            margin-bottom: 48px !important;
        }

            html[data-cc-page="hotel-index"] .booking-shell .booking-card, html[data-cc-page="hotel-index"] .booking-shell .booking-card.reveal {
                opacity: 1 !important;
                transform: none !important;
                filter: none !important;
                visibility: visible !important;
            }

            html[data-cc-page="hotel-index"] .booking-shell.is-stuck .booking-card {
                box-shadow: 0 20px 55px rgba(0,0,0,.14) !important
            }

        @media(max-width:1100px) {
            html[data-cc-page="hotel-index"] .booking-shell {
                position: relative !important;
                top: auto !important;
                margin-top: -154px !important;
                margin-bottom: 46px !important;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-index"] .hero {
                height: 100svh !important;
                min-height: 700px !important
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                display: block !important;
                position: relative !important;
                top: auto !important;
                margin-top: -238px !important;
                margin-bottom: 42px !important;
                z-index: 30 !important;
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-index"] .hero {
                height: 100svh !important;
                min-height: 680px !important
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                position: relative !important;
                top: auto !important;
                margin-top: -270px !important;
                margin-bottom: 38px !important;
            }
        }



        /* V10 - True mouse drag for Seen at Charmillion + News */
        html[data-cc-page="hotel-index"] .social-viewport, html[data-cc-page="hotel-index"] .news-viewport {
            cursor: grab;
            user-select: none;
            -webkit-user-select: none;
            overscroll-behavior-x: contain;
        }

            html[data-cc-page="hotel-index"] .social-viewport.is-dragging, html[data-cc-page="hotel-index"] .news-viewport.is-dragging {
                cursor: grabbing !important;
                scroll-behavior: auto !important;
                scroll-snap-type: none !important;
            }

        html[data-cc-page="hotel-index"] .social-track, html[data-cc-page="hotel-index"] .news-track {
            user-select: none;
            -webkit-user-select: none
        }

        html[data-cc-page="hotel-index"] .social-card, html[data-cc-page="hotel-index"] .news-card, html[data-cc-page="hotel-index"] .social-card img, html[data-cc-page="hotel-index"] .social-card video, html[data-cc-page="hotel-index"] .news-card img {
            -webkit-user-drag: none;
            user-drag: none;
        }

        html[data-cc-page="hotel-index"] .social-progress, html[data-cc-page="hotel-index"] .news-progress {
            height: 20px;
            background: transparent;
            overflow: visible;
            display: flex;
            align-items: center;
            cursor: pointer;
            touch-action: none;
            position: relative;
        }

            html[data-cc-page="hotel-index"] .social-progress::before, html[data-cc-page="hotel-index"] .news-progress::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                height: 2px;
                background: rgba(255,255,255,.18);
            }

            html[data-cc-page="hotel-index"] .news-progress::before {
                background: #d6d3d4
            }

            html[data-cc-page="hotel-index"] .social-progress span, html[data-cc-page="hotel-index"] .news-progress span {
                top: auto;
                bottom: auto;
                height: 4px;
                min-width: 42px;
                background: var(--pink);
                transition: left .12s linear,width .2s ease,height .2s ease;
                z-index: 2;
            }

            html[data-cc-page="hotel-index"] .social-progress:hover span, html[data-cc-page="hotel-index"] .news-progress:hover span {
                height: 6px
            }

        /* V10 - New clean footer */
        html[data-cc-page="hotel-index"] .footer {
            background: #111113;
            color: #fff;
            padding: 0;
            overflow: hidden
        }

            html[data-cc-page="hotel-index"] .footer::before, html[data-cc-page="hotel-index"] .footer::after {
                display: none !important
            }

            html[data-cc-page="hotel-index"] .footer > .container {
                width: auto;
                max-width: none
            }

        html[data-cc-page="hotel-index"] .footer-newsletter-clean {
            background: #fff;
            color: #1d1d1f;
            border-top: 1px solid #ece9ea
        }

        html[data-cc-page="hotel-index"] .footer-newsletter-inner {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 100px;
            align-items: end;
            padding-top: 72px;
            padding-bottom: 72px
        }

        html[data-cc-page="hotel-index"] .footer-newsletter-heading .eyebrow {
            color: var(--pink);
            margin-bottom: 16px
        }

        html[data-cc-page="hotel-index"] .footer-newsletter-heading h2 {
            font-family: var(--display);
            font-size: clamp(44px,4.8vw,68px);
            font-weight: 400;
            line-height: .98;
            letter-spacing: -.035em
        }

        html[data-cc-page="hotel-index"] .footer-newsletter-action {
            max-width: 590px;
            margin-left: auto;
            width: 100%
        }

            html[data-cc-page="hotel-index"] .footer-newsletter-action > p {
                font-size: 13px;
                line-height: 1.8;
                color: #666;
                max-width: 510px;
                margin-bottom: 24px
            }

        html[data-cc-page="hotel-index"] .newsletter-form-clean {
            display: flex;
            align-items: stretch;
            border-bottom: 1px solid #bdb8ba;
            min-height: 58px
        }

            html[data-cc-page="hotel-index"] .newsletter-form-clean input {
                flex: 1;
                min-width: 0;
                border: 0;
                background: transparent;
                outline: 0;
                padding: 0 14px 0 0;
                font: inherit;
                font-size: 13px;
                color: #222
            }

                html[data-cc-page="hotel-index"] .newsletter-form-clean input::placeholder {
                    color: #989395
                }

            html[data-cc-page="hotel-index"] .newsletter-form-clean button {
                position: relative;
                overflow: hidden;
                isolation: isolate;
                border: 0;
                background: var(--pink);
                color: #fff;
                min-width: 150px;
                padding: 0 22px;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .14em;
                text-transform: uppercase;
                transition: transform .3s ease,filter .3s ease
            }

                html[data-cc-page="hotel-index"] .newsletter-form-clean button::before {
                    content: "";
                    position: absolute;
                    inset: 0;
                    background: var(--pink-dark);
                    transform: scaleX(0);
                    transform-origin: left;
                    transition: transform .38s cubic-bezier(.22,1,.36,1);
                    z-index: -1
                }

                html[data-cc-page="hotel-index"] .newsletter-form-clean button:hover {
                    transform: translateY(-2px);
                    filter: brightness(1.08)
                }

                    html[data-cc-page="hotel-index"] .newsletter-form-clean button:hover::before {
                        transform: scaleX(1)
                    }

        html[data-cc-page="hotel-index"] .footer-newsletter-action small {
            display: block;
            margin-top: 11px;
            font-size: 9px;
            color: #9b9698
        }

        html[data-cc-page="hotel-index"] .footer-core {
            background: #111113
        }

            html[data-cc-page="hotel-index"] .footer-core > .container {
                padding-top: 66px
            }

        html[data-cc-page="hotel-index"] .footer-topline {
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 80px;
            align-items: start;
            padding-bottom: 50px;
            border-bottom: 1px solid rgba(255,255,255,.12)
        }

        html[data-cc-page="hotel-index"] .footer-identity {
            max-width: 430px
        }

        html[data-cc-page="hotel-index"] .footer-logo {
            width: 176px;
            height: auto
        }

        html[data-cc-page="hotel-index"] .footer-identity p {
            font-size: 12px;
            line-height: 1.8;
            color: rgba(255,255,255,.55);
            margin-top: 22px;
            max-width: 390px
        }

        html[data-cc-page="hotel-index"] .footer-primary-contact {
            display: grid;
            justify-items: end;
            gap: 6px;
            text-align: right
        }

            html[data-cc-page="hotel-index"] .footer-primary-contact span, html[data-cc-page="hotel-index"] .footer h4 {
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .17em;
                text-transform: uppercase;
                color: rgba(255,255,255,.42)
            }

            html[data-cc-page="hotel-index"] .footer-primary-contact a {
                font-family: var(--display);
                font-size: 21px;
                line-height: 1.25;
                color: #fff;
                transition: color .25s ease
            }

                html[data-cc-page="hotel-index"] .footer-primary-contact a:hover {
                    color: var(--pink)
                }

        html[data-cc-page="hotel-index"] .footer-navigation {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr 1.05fr;
            gap: 70px;
            padding: 52px 0 58px
        }

        html[data-cc-page="hotel-index"] .footer h4 {
            margin-bottom: 20px
        }

        html[data-cc-page="hotel-index"] .footer-links {
            display: grid;
            gap: 11px
        }

            html[data-cc-page="hotel-index"] .footer-links a, html[data-cc-page="hotel-index"] .footer-place {
                font-size: 12px;
                line-height: 1.7;
                color: rgba(255,255,255,.67);
                transition: color .25s ease,transform .25s ease
            }

                html[data-cc-page="hotel-index"] .footer-links a:hover {
                    color: #fff;
                    transform: translateX(3px)
                }

        html[data-cc-page="hotel-index"] .footer-place {
            max-width: 190px
        }

        html[data-cc-page="hotel-index"] .footer-community .social-icons {
            display: flex;
            gap: 9px;
            margin: 0 0 26px
        }

        html[data-cc-page="hotel-index"] .social-icons a {
            width: 39px;
            height: 39px;
            border: 1px solid rgba(255,255,255,.20);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 12px;
            transition: transform .28s ease,background .28s ease,border-color .28s ease
        }

            html[data-cc-page="hotel-index"] .social-icons a:hover {
                background: var(--pink);
                border-color: var(--pink);
                transform: translateY(-3px)
            }

        html[data-cc-page="hotel-index"] .green-star {
            width: 78px;
            height: auto;
            margin: 0
        }

        html[data-cc-page="hotel-index"] .footer-bottom {
            border-top: 1px solid rgba(255,255,255,.11);
            padding: 22px 0 26px;
            display: flex;
            justify-content: space-between;
            gap: 20px;
            flex-wrap: wrap;
            font-size: 9px;
            color: rgba(255,255,255,.38)
        }

            html[data-cc-page="hotel-index"] .footer-bottom nav {
                display: flex;
                gap: 22px;
                flex-wrap: wrap
            }

            html[data-cc-page="hotel-index"] .footer-bottom a {
                transition: color .25s
            }

                html[data-cc-page="hotel-index"] .footer-bottom a:hover {
                    color: #fff
                }

        html[data-cc-page="hotel-index"] .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
        }

        @media(max-width:900px) {
            html[data-cc-page="hotel-index"] .footer-newsletter-inner {
                grid-template-columns: 1fr;
                gap: 32px;
                padding-top: 58px;
                padding-bottom: 58px
            }

            html[data-cc-page="hotel-index"] .footer-newsletter-action {
                margin: 0;
                max-width: none
            }

            html[data-cc-page="hotel-index"] .footer-topline {
                grid-template-columns: 1fr;
                gap: 35px
            }

            html[data-cc-page="hotel-index"] .footer-primary-contact {
                justify-items: start;
                text-align: left
            }

            html[data-cc-page="hotel-index"] .footer-navigation {
                grid-template-columns: 1fr 1fr;
                gap: 42px 32px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-index"] .footer-newsletter-inner {
                padding-top: 48px;
                padding-bottom: 48px
            }

            html[data-cc-page="hotel-index"] .footer-newsletter-heading h2 {
                font-size: 42px
            }

            html[data-cc-page="hotel-index"] .newsletter-form-clean {
                min-height: 54px
            }

                html[data-cc-page="hotel-index"] .newsletter-form-clean button {
                    min-width: 122px;
                    padding: 0 14px
                }

            html[data-cc-page="hotel-index"] .footer-core > .container {
                padding-top: 50px
            }

            html[data-cc-page="hotel-index"] .footer-primary-contact a {
                font-size: 18px
            }

            html[data-cc-page="hotel-index"] .footer-navigation {
                grid-template-columns: 1fr 1fr;
                gap: 38px 24px;
                padding: 42px 0 48px
            }

            html[data-cc-page="hotel-index"] .footer-community {
                grid-column: 1/3
            }

            html[data-cc-page="hotel-index"] .footer-bottom {
                display: block
            }

                html[data-cc-page="hotel-index"] .footer-bottom nav {
                    margin-top: 13px;
                    gap: 13px
                }
        }



        /* =====================================================
           V11 MOBILE BOOKING - FIXED BOOK NOW + BOTTOM SHEET
           ===================================================== */
        html[data-cc-page="hotel-index"] .mobile-booking-modal {
            display: none
        }

        @media(max-width:767px) {
            html[data-cc-page="hotel-index"] body {
                padding-bottom: calc(66px + env(safe-area-inset-bottom,0px)) !important
            }

            html[data-cc-page="hotel-index"] .hero {
                height: 100svh !important;
                min-height: 660px !important
            }

            html[data-cc-page="hotel-index"] .hero-content {
                padding-bottom: 112px !important
            }

            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 84px !important
            }

            /* The full booking dock is desktop/tablet only on phone screens. */
            html[data-cc-page="hotel-index"] .booking-shell {
                display: none !important
            }

            /* Persistent mobile reservation CTA. */
            html[data-cc-page="hotel-index"] .mobile-book {
                display: flex !important;
                position: fixed !important;
                left: 12px !important;
                right: 12px !important;
                bottom: calc(10px + env(safe-area-inset-bottom,0px)) !important;
                width: auto !important;
                height: 56px !important;
                z-index: 990 !important;
                border: 0 !important;
                border-radius: 2px !important;
                background: var(--pink) !important;
                color: #fff !important;
                align-items: center !important;
                justify-content: center !important;
                gap: 11px !important;
                box-shadow: 0 14px 34px rgba(45,0,27,.28) !important;
                font-size: 11px !important;
                font-weight: 700 !important;
                letter-spacing: .15em !important;
                text-transform: uppercase !important;
            }

                html[data-cc-page="hotel-index"] .mobile-book::after {
                    content: "\f061";
                    font-family: "Font Awesome 6 Free";
                    font-weight: 900;
                    font-size: 11px
                }

                html[data-cc-page="hotel-index"] .mobile-book:hover, html[data-cc-page="hotel-index"] .mobile-book:focus-visible {
                    transform: translateY(-2px);
                    filter: brightness(1.06)
                }

            html[data-cc-page="hotel-index"] .scrolltop {
                bottom: calc(82px + env(safe-area-inset-bottom,0px)) !important
            }

            html[data-cc-page="hotel-index"] .mobile-booking-modal {
                position: fixed;
                inset: 0;
                z-index: 1100;
                display: block;
                visibility: hidden;
                opacity: 0;
                pointer-events: none;
                transition: opacity .28s ease,visibility .28s ease;
            }

                html[data-cc-page="hotel-index"] .mobile-booking-modal.open {
                    visibility: visible;
                    opacity: 1;
                    pointer-events: auto
                }

            html[data-cc-page="hotel-index"] .mobile-booking-backdrop {
                position: absolute;
                inset: 0;
                border: 0;
                background: rgba(8,5,7,.58);
                backdrop-filter: blur(3px);
                -webkit-backdrop-filter: blur(3px)
            }

            html[data-cc-page="hotel-index"] .mobile-booking-sheet {
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                max-height: min(91svh,820px);
                overflow: auto;
                overscroll-behavior: contain;
                background: #fff;
                box-shadow: 0 -24px 60px rgba(0,0,0,.23);
                transform: translateY(102%);
                transition: transform .42s cubic-bezier(.22,1,.36,1);
                padding-bottom: calc(18px + env(safe-area-inset-bottom,0px));
            }

            html[data-cc-page="hotel-index"] .mobile-booking-modal.open .mobile-booking-sheet {
                transform: none
            }

            html[data-cc-page="hotel-index"] .mobile-booking-head {
                position: sticky;
                top: 0;
                z-index: 8;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 20px;
                padding: 20px 20px 17px;
                background: rgba(255,255,255,.97);
                border-bottom: 1px solid #ece8ea;
                backdrop-filter: blur(12px);
                -webkit-backdrop-filter: blur(12px)
            }

                html[data-cc-page="hotel-index"] .mobile-booking-head span {
                    display: block;
                    margin-bottom: 4px;
                    color: var(--pink);
                    font-size: 8px;
                    font-weight: 700;
                    letter-spacing: .18em;
                    text-transform: uppercase
                }

                html[data-cc-page="hotel-index"] .mobile-booking-head h3 {
                    font-family: var(--display);
                    font-size: 31px;
                    line-height: 1;
                    font-weight: 400;
                    letter-spacing: -.025em;
                    color: #171317
                }

            html[data-cc-page="hotel-index"] .mobile-booking-close {
                flex: 0 0 auto;
                width: 42px;
                height: 42px;
                border: 1px solid #e7e1e4;
                border-radius: 50%;
                background: #fff;
                color: #211b1f;
                font-size: 15px
            }

            html[data-cc-page="hotel-index"] .mobile-booking-body {
                padding: 18px 16px 4px
            }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-card, html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-card.reveal {
                opacity: 1 !important;
                visibility: visible !important;
                transform: none !important;
                filter: none !important;
                box-shadow: none !important;
                padding: 0 !important;
                border-radius: 0 !important;
                background: #fff !important;
            }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-form {
                display: grid !important;
                grid-template-columns: 1fr 1fr !important;
                gap: 12px !important;
                align-items: end !important
            }

                html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-form > .field {
                    grid-column: auto !important
                }

                    html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-form > .field:nth-of-type(1), html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-form > .field:nth-of-type(4), html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-form > .field:nth-of-type(5) {
                        grid-column: 1/-1 !important
                    }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-submit {
                grid-column: 1/-1 !important;
                width: 100% !important;
                height: 54px !important;
                margin-top: 2px !important;
                font-size: 10px !important
            }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .field label {
                font-size: 8px !important;
                margin-bottom: 6px !important
            }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .control, html[data-cc-page="hotel-index"] .mobile-booking-modal .guest-trigger {
                height: 50px !important
            }

                html[data-cc-page="hotel-index"] .mobile-booking-modal .control input, html[data-cc-page="hotel-index"] .mobile-booking-modal .control select, html[data-cc-page="hotel-index"] .mobile-booking-modal .guest-trigger {
                    font-size: 11px !important
                }

            /* Rooms & Guests opens above the booking sheet and stays usable. */
            html[data-cc-page="hotel-index"] .mobile-booking-modal .guest-popover {
                position: fixed !important;
                left: 12px !important;
                right: 12px !important;
                top: auto !important;
                bottom: calc(12px + env(safe-area-inset-bottom,0px)) !important;
                width: auto !important;
                max-width: none !important;
                max-height: 78svh !important;
                overflow: auto !important;
                z-index: 1160 !important;
                padding: 18px !important;
                border-radius: 2px !important;
                box-shadow: 0 24px 65px rgba(0,0,0,.27) !important;
            }

                html[data-cc-page="hotel-index"] .mobile-booking-modal .guest-popover::before {
                    display: none !important
                }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .rooms-container {
                max-height: 50svh !important
            }

            html[data-cc-page="hotel-index"] body.booking-modal-open {
                overflow: hidden !important
            }

                html[data-cc-page="hotel-index"] body.booking-modal-open .mobile-book {
                    opacity: 0;
                    pointer-events: none;
                    transform: translateY(12px)
                }
        }

        @media(max-width:420px) {
            html[data-cc-page="hotel-index"] .mobile-booking-body {
                padding-left: 13px;
                padding-right: 13px
            }

            html[data-cc-page="hotel-index"] .mobile-booking-head {
                padding-left: 16px;
                padding-right: 16px
            }

                html[data-cc-page="hotel-index"] .mobile-booking-head h3 {
                    font-size: 28px
                }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .booking-form {
                gap: 10px !important
            }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .control input, html[data-cc-page="hotel-index"] .mobile-booking-modal .control select {
                padding-left: 34px !important;
                padding-right: 31px !important
            }

            html[data-cc-page="hotel-index"] .mobile-booking-modal .guest-trigger {
                padding-left: 34px !important;
                padding-right: 31px !important
            }
        }

        /* =====================================================
                   V12 REVIEW FIXES
                   1) Booking fully visible above the fold on desktop/tablet
                   2) Hero white CTA keeps readable text through refill hover
                   3) Offers use a deliberate black curtain reveal, not clip refresh
                   ===================================================== */

        /* 1. BOOKING - fully visible inside the first viewport */
        @media(min-width:1101px) {
            html[data-cc-page="hotel-index"] .hero-content {
                padding-bottom: 220px !important;
            }

            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 192px !important;
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                position: relative !important;
                top: auto !important;
                margin-top: -188px !important;
                margin-bottom: 58px !important;
                z-index: 32 !important;
            }
        }

        @media(min-width:821px) and (max-width:1100px) {
            html[data-cc-page="hotel-index"] .hero-content {
                padding-bottom: 270px !important;
            }

            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 224px !important;
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                position: relative !important;
                top: auto !important;
                margin-top: -226px !important;
                margin-bottom: 54px !important;
                z-index: 32 !important;
            }
        }

        @media(min-width:768px) and (max-width:820px) {
            html[data-cc-page="hotel-index"] .hero-content {
                padding-bottom: 315px !important;
            }

            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 272px !important;
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                display: block !important;
                position: relative !important;
                top: auto !important;
                margin-top: -280px !important;
                margin-bottom: 48px !important;
                z-index: 32 !important;
            }
        }

        /* 2. HERO CTA - robust refill with readable text from start to finish */
        html[data-cc-page="hotel-index"] .hero-actions .btn-white {
            position: relative;
            overflow: hidden;
            background-color: #fff !important;
            background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
            background-repeat: no-repeat !important;
            background-position: left center !important;
            background-size: 0 100% !important;
            color: #111 !important;
            border-color: #fff !important;
            transition: background-size .46s cubic-bezier(.22,1,.36,1), color .22s ease, border-color .22s ease, transform .28s cubic-bezier(.22,1,.36,1), filter .28s ease, box-shadow .28s ease !important;
        }

            html[data-cc-page="hotel-index"] .hero-actions .btn-white:hover, html[data-cc-page="hotel-index"] .hero-actions .btn-white:focus-visible {
                background-color: #fff !important;
                background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                background-repeat: no-repeat !important;
                background-position: left center !important;
                background-size: 100% 100% !important;
                color: #fff !important;
                border-color: var(--pink) !important;
                transform: translateY(-3px);
                filter: brightness(1.06);
                box-shadow: 0 12px 28px rgba(0,0,0,.18);
            }

            html[data-cc-page="hotel-index"] .hero-actions .btn-white i {
                color: currentColor !important;
            }

        /* 3. OFFERS - clear cinematic black curtain reveal */
        html[data-cc-page="hotel-index"] .offer-tile.reveal, html[data-cc-page="hotel-index"] .offer-tile.reveal-left, html[data-cc-page="hotel-index"] .offer-tile.reveal-right {
            opacity: 1 !important;
            transform: none !important;
            filter: none !important;
            visibility: visible !important;
            background: #080808 !important;
        }

        html[data-cc-page="hotel-index"] .offer-tile img {
            clip-path: none !important;
            opacity: 1 !important;
            transform: scale(1.085) !important;
            transition: transform 1.65s cubic-bezier(.22,1,.36,1) !important;
            will-change: transform;
        }

        html[data-cc-page="hotel-index"] .offer-tile.in-view img {
            clip-path: none !important;
            transform: scale(1) !important;
        }

        html[data-cc-page="hotel-index"] .offer-tile::before {
            content: "" !important;
            display: block !important;
            position: absolute !important;
            inset: 0 !important;
            z-index: 3 !important;
            background: #080808 !important;
            transform: scaleX(1) !important;
            transform-origin: right center !important;
            transition: transform 1.38s cubic-bezier(.77,0,.18,1) .10s !important;
            pointer-events: none !important;
            will-change: transform;
        }

        html[data-cc-page="hotel-index"] .offer-tile:nth-child(even)::before, html[data-cc-page="hotel-index"] .offer-strip .offer-tile:nth-child(even)::before {
            transform-origin: left center !important;
        }

        html[data-cc-page="hotel-index"] .offer-tile.in-view::before {
            transform: scaleX(0) !important;
        }

        /* Keep the content hidden for a fraction of a second while the curtain starts moving,
                   then bring it in deliberately instead of flashing with the image. */
        html[data-cc-page="hotel-index"] .offer-tile .offer-content, html[data-cc-page="hotel-index"] .offer-tile .offer-arrow {
            opacity: 0;
            transform: translateY(12px);
            transition: opacity .55s ease .62s,transform .65s cubic-bezier(.22,1,.36,1) .62s !important;
            z-index: 5 !important;
        }

        html[data-cc-page="hotel-index"] .offer-tile .offer-arrow {
            transform: translateY(-8px);
        }

        html[data-cc-page="hotel-index"] .offer-tile.in-view .offer-content, html[data-cc-page="hotel-index"] .offer-tile.in-view .offer-arrow {
            opacity: 1;
            transform: none;
        }

        html[data-cc-page="hotel-index"] .offer-tile::after {
            z-index: 4 !important;
        }

        html[data-cc-page="hotel-index"] .offer-tile:hover img {
            transform: scale(1.035) !important;
        }

        @media(prefers-reduced-motion:reduce) {
            html[data-cc-page="hotel-index"] .offer-tile::before {
                transform: scaleX(0) !important;
                transition: none !important;
            }

            html[data-cc-page="hotel-index"] .offer-tile img, html[data-cc-page="hotel-index"] .offer-tile .offer-content, html[data-cc-page="hotel-index"] .offer-tile .offer-arrow {
                opacity: 1 !important;
                transform: none !important;
                transition: none !important;
            }
        }


        /* =====================================================
                   V13 HERO SAFE AREA + FROSTED BOOKING DOCK
                   1) Compact hero typography keeps copy clear of header/logo
                   2) Booking becomes a light glass panel so the hero remains visible
                   ===================================================== */

        /* HERO COPY - keep a deliberate safe area below the header without
                   pushing the CTA into the booking dock. Wider copy means long hero
                   headlines use fewer lines and sit naturally lower in the image. */
        @media(min-width:1101px) {
            html[data-cc-page="hotel-index"] .hero-copy {
                max-width: 880px !important;
            }

            html[data-cc-page="hotel-index"] .hero-title {
                max-width: 860px !important;
                font-size: clamp(64px,4.8vw,82px) !important;
                line-height: .94 !important;
                letter-spacing: -.038em !important;
            }

            html[data-cc-page="hotel-index"] .hero-kicker {
                margin-bottom: 14px !important;
            }

            html[data-cc-page="hotel-index"] .hero-subtitle {
                max-width: 540px !important;
                margin-top: 16px !important;
            }

            html[data-cc-page="hotel-index"] .hero-actions {
                margin-top: 23px !important;
            }
        }

        @media(min-width:821px) and (max-width:1100px) {
            html[data-cc-page="hotel-index"] .hero-copy {
                max-width: 720px !important;
            }

            html[data-cc-page="hotel-index"] .hero-title {
                max-width: 710px !important;
                font-size: clamp(56px,6.2vw,68px) !important;
                line-height: .95 !important;
            }
        }

        @media(min-width:768px) and (max-width:820px) {
            html[data-cc-page="hotel-index"] .hero-copy {
                max-width: 620px !important;
            }

            html[data-cc-page="hotel-index"] .hero-title {
                max-width: 610px !important;
                font-size: 54px !important;
                line-height: .96 !important;
            }
        }

        /* BOOKING - light frosted glass instead of a solid white slab. */
        @media(min-width:768px) {
            html[data-cc-page="hotel-index"] .booking-card {
                background: rgba(255,255,255,.76) !important;
                border: 1px solid rgba(255,255,255,.72) !important;
                box-shadow: 0 20px 52px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.62) !important;
                backdrop-filter: blur(18px) saturate(128%) !important;
                -webkit-backdrop-filter: blur(18px) saturate(128%) !important;
            }

                html[data-cc-page="hotel-index"] .booking-card::before {
                    content: "";
                    position: absolute;
                    inset: 0;
                    border: 1px solid rgba(255,255,255,.34);
                    pointer-events: none;
                }

                html[data-cc-page="hotel-index"] .booking-card .field label {
                    color: rgba(35,27,31,.66) !important;
                }

                html[data-cc-page="hotel-index"] .booking-card .control, html[data-cc-page="hotel-index"] .booking-card .guest-trigger {
                    background: rgba(255,255,255,.62) !important;
                    border-color: rgba(58,45,51,.16) !important;
                    box-shadow: inset 0 1px 0 rgba(255,255,255,.58) !important;
                }

                    html[data-cc-page="hotel-index"] .booking-card .control:focus-within, html[data-cc-page="hotel-index"] .booking-card .control.is-open, html[data-cc-page="hotel-index"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.90) !important;
                        border-color: rgba(169,0,97,.52) !important;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.08), inset 0 1px 0 rgba(255,255,255,.72) !important;
                    }

                    html[data-cc-page="hotel-index"] .booking-card .control input, html[data-cc-page="hotel-index"] .booking-card .control select, html[data-cc-page="hotel-index"] .booking-card .guest-trigger {
                        color: #272126 !important;
                    }

                        html[data-cc-page="hotel-index"] .booking-card .control input::placeholder {
                            color: rgba(39,33,38,.55) !important;
                        }
        }



        /* =====================================================
                   V14 CLEAR BOOKING PANEL + TRUE PINK REFILL
                   - No blur / no haze: hero image remains clearly visible
                   - Pink CTAs keep their refill animation on hover
                   ===================================================== */

        /* Booking panel: lower white opacity with ZERO blur/haze. */
        @media(min-width:768px) {
            html[data-cc-page="hotel-index"] .booking-card {
                background: rgba(255,255,255,.46) !important;
                border: 1px solid rgba(255,255,255,.64) !important;
                box-shadow: 0 18px 44px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.36) !important;
                backdrop-filter: none !important;
                -webkit-backdrop-filter: none !important;
            }

                html[data-cc-page="hotel-index"] .booking-card::before {
                    border-color: rgba(255,255,255,.24) !important;
                }

                html[data-cc-page="hotel-index"] .booking-card .field label {
                    color: rgba(29,23,27,.72) !important;
                }

                html[data-cc-page="hotel-index"] .booking-card .control, html[data-cc-page="hotel-index"] .booking-card .guest-trigger {
                    background: rgba(255,255,255,.72) !important;
                    border-color: rgba(49,39,44,.18) !important;
                    box-shadow: none !important;
                }

                    html[data-cc-page="hotel-index"] .booking-card .control:focus-within, html[data-cc-page="hotel-index"] .booking-card .control.is-open, html[data-cc-page="hotel-index"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.90) !important;
                        border-color: rgba(169,0,97,.58) !important;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.08) !important;
                    }
        }

        /* True refill for buttons that start pink. The explicit hover
                   background-image prevents older background shorthands from
                   cancelling the animation. */
        html[data-cc-page="hotel-index"] .btn-pink, html[data-cc-page="hotel-index"] .booking-submit {
            position: relative;
            overflow: hidden;
            background-color: var(--pink) !important;
            background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
            background-repeat: no-repeat !important;
            background-position: left top !important;
            background-size: 0 100% !important;
            color: #fff !important;
            transition: background-size .46s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease,border-color .28s ease !important;
        }

            html[data-cc-page="hotel-index"] .btn-pink:hover, html[data-cc-page="hotel-index"] .btn-pink:focus-visible, html[data-cc-page="hotel-index"] .booking-submit:hover, html[data-cc-page="hotel-index"] .booking-submit:focus-visible {
                background-color: var(--pink) !important;
                background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                background-size: 100% 100% !important;
                color: #fff !important;
                transform: translateY(-3px) !important;
                filter: brightness(1.08) !important;
                box-shadow: 0 12px 28px rgba(91,0,52,.22) !important;
            }

        /* Mobile persistent Book Now gets the same refill behavior. */
        @media(max-width:767px) {
            html[data-cc-page="hotel-index"] .mobile-book {
                background-color: var(--pink) !important;
                background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                background-repeat: no-repeat !important;
                background-position: left top !important;
                background-size: 0 100% !important;
                transition: background-size .46s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease !important;
            }

                html[data-cc-page="hotel-index"] .mobile-book:hover, html[data-cc-page="hotel-index"] .mobile-book:focus-visible {
                    background-color: var(--pink) !important;
                    background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                }
        }



        /* =====================================================
                   V15 NEWSLETTER FIELD + BORDERLESS BOOKING + SPACING
                   - Newsletter uses a calm tinted field instead of an underline-only input
                   - Booking card/controls are borderless while keeping the clear hero image visible
                   - Booking dock sits slightly lower with more breathing room from hero navigation
                   ===================================================== */

        /* 1) NEWSLETTER - soft brand-tinted field, no underline treatment */
        html[data-cc-page="hotel-index"] .newsletter-form-clean {
            display: grid !important;
            grid-template-columns: minmax(0,1fr) auto !important;
            gap: 10px !important;
            align-items: stretch !important;
            min-height: 58px !important;
            border: 0 !important;
            background: transparent !important;
        }

            html[data-cc-page="hotel-index"] .newsletter-form-clean input {
                width: 100% !important;
                min-width: 0 !important;
                height: 58px !important;
                padding: 0 20px !important;
                border: 0 !important;
                outline: 0 !important;
                background: #f3eff1 !important;
                color: #211d20 !important;
                box-shadow: inset 0 0 0 1px rgba(73,55,65,.05) !important;
                transition: background .25s ease,box-shadow .25s ease !important;
            }

                html[data-cc-page="hotel-index"] .newsletter-form-clean input::placeholder {
                    color: #8f858b !important;
                }

                html[data-cc-page="hotel-index"] .newsletter-form-clean input:focus {
                    background: #eee7eb !important;
                    box-shadow: inset 0 0 0 1px rgba(169,0,97,.22) !important;
                }

            html[data-cc-page="hotel-index"] .newsletter-form-clean button {
                min-width: 154px !important;
                height: 58px !important;
                border: 0 !important;
                background-color: #171717 !important;
                background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                background-repeat: no-repeat !important;
                background-position: left top !important;
                background-size: 0 100% !important;
                color: #fff !important;
                transition: background-size .44s cubic-bezier(.22,1,.36,1),transform .28s ease,filter .28s ease,box-shadow .28s ease !important;
            }

                html[data-cc-page="hotel-index"] .newsletter-form-clean button:hover, html[data-cc-page="hotel-index"] .newsletter-form-clean button:focus-visible {
                    background-color: #171717 !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                    transform: translateY(-2px) !important;
                    filter: brightness(1.05) !important;
                    box-shadow: 0 10px 24px rgba(0,0,0,.12) !important;
                }

        /* 2) BOOKING - keep the approved transparent background, remove visible borders */
        @media(min-width:768px) {
            html[data-cc-page="hotel-index"] .booking-card {
                background: rgba(255,255,255,.46) !important;
                border: 0 !important;
                box-shadow: 0 18px 44px rgba(0,0,0,.13) !important;
            }

                html[data-cc-page="hotel-index"] .booking-card::before {
                    display: none !important;
                    content: none !important;
                }

                html[data-cc-page="hotel-index"] .booking-card .control, html[data-cc-page="hotel-index"] .booking-card .guest-trigger {
                    background: rgba(255,255,255,.76) !important;
                    border: 0 !important;
                    box-shadow: 0 1px 0 rgba(255,255,255,.56),0 5px 16px rgba(24,14,20,.045) !important;
                }

                    html[data-cc-page="hotel-index"] .booking-card .control:focus-within, html[data-cc-page="hotel-index"] .booking-card .control.is-open, html[data-cc-page="hotel-index"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.93) !important;
                        border: 0 !important;
                        box-shadow: 0 0 0 2px rgba(169,0,97,.20),0 6px 18px rgba(24,14,20,.06) !important;
                    }
        }

        /* 3) BOOKING POSITION - slightly lower, arrows slightly higher for clear separation */
        @media(min-width:1101px) {
            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 204px !important;
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                margin-top: -172px !important;
                margin-bottom: 58px !important;
            }
        }

        @media(min-width:821px) and (max-width:1100px) {
            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 236px !important;
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                margin-top: -210px !important;
                margin-bottom: 54px !important;
            }
        }

        @media(min-width:768px) and (max-width:820px) {
            html[data-cc-page="hotel-index"] .hero-control {
                bottom: 285px !important;
            }

            html[data-cc-page="hotel-index"] .booking-shell {
                margin-top: -265px !important;
                margin-bottom: 48px !important;
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-index"] .newsletter-form-clean {
                grid-template-columns: 1fr !important;
                gap: 9px !important;
            }

                html[data-cc-page="hotel-index"] .newsletter-form-clean input, html[data-cc-page="hotel-index"] .newsletter-form-clean button {
                    width: 100% !important;
                    height: 54px !important;
                }
        }


        /* =====================================================
                   V16 SECOND NEWSLETTER CONCEPT - CENTERED / STACKED
                   Added below the current newsletter for direct visual comparison.
                   ===================================================== */
        html[data-cc-page="hotel-index"] .footer-newsletter-centered {
            background: #f7f5f4;
            color: #1c191b;
            border-top: 1px solid #ebe6e8;
            border-bottom: 1px solid #ebe6e8;
        }

        html[data-cc-page="hotel-index"] .footer-newsletter-centered-inner {
            width: min(760px,calc(100% - 40px));
            margin-inline: auto;
            padding: 76px 0 82px;
            text-align: center;
        }

        html[data-cc-page="hotel-index"] .footer-newsletter-centered .eyebrow {
            color: var(--pink);
            margin-bottom: 16px;
        }

        html[data-cc-page="hotel-index"] .footer-newsletter-centered h2 {
            font-family: var(--display);
            font-size: clamp(42px,4.6vw,66px);
            line-height: 1.02;
            font-weight: 400;
            letter-spacing: -.035em;
            max-width: 720px;
            margin-inline: auto;
        }

        html[data-cc-page="hotel-index"] .footer-newsletter-centered p {
            max-width: 560px;
            margin: 20px auto 30px;
            font-size: 13px;
            line-height: 1.8;
            color: #6f686c;
        }

        html[data-cc-page="hotel-index"] .newsletter-form-centered {
            width: min(620px,100%);
            margin-inline: auto;
            display: grid;
            grid-template-columns: minmax(0,1fr) auto;
            gap: 10px;
            align-items: stretch;
        }

            html[data-cc-page="hotel-index"] .newsletter-form-centered input {
                width: 100%;
                min-width: 0;
                height: 58px;
                border: 1px solid #d8d1d4;
                background: #fff;
                color: #211d20;
                outline: 0;
                padding: 0 20px;
                font-size: 13px;
                transition: border-color .25s ease,box-shadow .25s ease,background .25s ease;
            }

                html[data-cc-page="hotel-index"] .newsletter-form-centered input::placeholder {
                    color: #968d92;
                }

                html[data-cc-page="hotel-index"] .newsletter-form-centered input:focus {
                    border-color: rgba(169,0,97,.46);
                    box-shadow: 0 0 0 3px rgba(169,0,97,.07);
                }

            html[data-cc-page="hotel-index"] .newsletter-form-centered button {
                min-width: 154px;
                height: 58px;
                border: 0;
                background-color: var(--pink);
                background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                background-repeat: no-repeat;
                background-position: left top;
                background-size: 0 100%;
                color: #fff;
                padding: 0 24px;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .14em;
                text-transform: uppercase;
                transition: background-size .44s cubic-bezier(.22,1,.36,1),transform .28s ease,filter .28s ease,box-shadow .28s ease;
            }

                html[data-cc-page="hotel-index"] .newsletter-form-centered button:hover, html[data-cc-page="hotel-index"] .newsletter-form-centered button:focus-visible {
                    background-size: 100% 100%;
                    transform: translateY(-2px);
                    filter: brightness(1.06);
                    box-shadow: 0 10px 24px rgba(91,0,52,.18);
                }

        html[data-cc-page="hotel-index"] .footer-newsletter-centered small {
            display: block;
            margin-top: 12px;
            font-size: 9px;
            color: #9a9296;
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-index"] .footer-newsletter-centered-inner {
                width: calc(100% - 30px);
                padding: 58px 0 62px;
            }

            html[data-cc-page="hotel-index"] .footer-newsletter-centered h2 {
                font-size: 40px;
            }

            html[data-cc-page="hotel-index"] .newsletter-form-centered {
                grid-template-columns: 1fr;
                gap: 9px;
            }

                html[data-cc-page="hotel-index"] .newsletter-form-centered input, html[data-cc-page="hotel-index"] .newsletter-form-centered button {
                    width: 100%;
                    height: 54px;
                }
        }



        /* =====================================================
                   V17 PINK DATE PICKER + CUSTOM RESORT SELECT + REFERENCE FOOTER
                   ===================================================== */

        /* Flatpickr - replace browser/library blue with Charmillion pink. */
        html[data-cc-page="hotel-index"] .flatpickr-calendar {
            font-family: var(--body) !important;
            border: 0 !important;
            border-radius: 2px !important;
            box-shadow: 0 18px 50px rgba(24,16,20,.18) !important;
            overflow: hidden;
        }

        html[data-cc-page="hotel-index"] .flatpickr-months {
            padding: 7px 5px 3px;
            background: #fff;
        }

            html[data-cc-page="hotel-index"] .flatpickr-months .flatpickr-month, html[data-cc-page="hotel-index"] .flatpickr-current-month .flatpickr-monthDropdown-months, html[data-cc-page="hotel-index"] .flatpickr-current-month input.cur-year {
                color: #211b1f !important;
                fill: #211b1f !important;
                font-weight: 600 !important;
            }

            html[data-cc-page="hotel-index"] .flatpickr-months .flatpickr-prev-month svg, html[data-cc-page="hotel-index"] .flatpickr-months .flatpickr-next-month svg {
                fill: #60575c !important;
            }

            html[data-cc-page="hotel-index"] .flatpickr-months .flatpickr-prev-month:hover svg, html[data-cc-page="hotel-index"] .flatpickr-months .flatpickr-next-month:hover svg {
                fill: var(--pink) !important;
            }

        html[data-cc-page="hotel-index"] span.flatpickr-weekday {
            color: #83777e !important;
            font-size: 10px !important;
            font-weight: 600 !important;
        }

        html[data-cc-page="hotel-index"] .flatpickr-day {
            border-radius: 50% !important;
            color: #2a2428 !important;
            transition: background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease !important;
        }

            html[data-cc-page="hotel-index"] .flatpickr-day:hover, html[data-cc-page="hotel-index"] .flatpickr-day:focus {
                background: rgba(169,0,97,.10) !important;
                border-color: rgba(169,0,97,.10) !important;
                color: var(--pink) !important;
                transform: translateY(-1px);
            }

            html[data-cc-page="hotel-index"] .flatpickr-day.today {
                border-color: var(--pink) !important;
                color: var(--pink) !important;
                font-weight: 700 !important;
            }

                html[data-cc-page="hotel-index"] .flatpickr-day.today:hover, html[data-cc-page="hotel-index"] .flatpickr-day.today:focus {
                    background: var(--pink) !important;
                    border-color: var(--pink) !important;
                    color: #fff !important;
                }

            html[data-cc-page="hotel-index"] .flatpickr-day.selected, html[data-cc-page="hotel-index"] .flatpickr-day.startRange, html[data-cc-page="hotel-index"] .flatpickr-day.endRange, html[data-cc-page="hotel-index"] .flatpickr-day.selected:hover, html[data-cc-page="hotel-index"] .flatpickr-day.startRange:hover, html[data-cc-page="hotel-index"] .flatpickr-day.endRange:hover, html[data-cc-page="hotel-index"] .flatpickr-day.selected:focus, html[data-cc-page="hotel-index"] .flatpickr-day.startRange:focus, html[data-cc-page="hotel-index"] .flatpickr-day.endRange:focus {
                background: var(--pink) !important;
                border-color: var(--pink) !important;
                color: #fff !important;
                box-shadow: none !important;
            }

            html[data-cc-page="hotel-index"] .flatpickr-day.inRange, html[data-cc-page="hotel-index"] .flatpickr-day.prevMonthDay.inRange, html[data-cc-page="hotel-index"] .flatpickr-day.nextMonthDay.inRange {
                background: rgba(169,0,97,.08) !important;
                border-color: transparent !important;
                box-shadow: -5px 0 0 rgba(169,0,97,.08),5px 0 0 rgba(169,0,97,.08) !important;
            }

        /* Resort selector - custom UI so selected/hover state is always brand pink. */
        html[data-cc-page="hotel-index"] .resort-select-field {
            z-index: 145;
        }

        html[data-cc-page="hotel-index"] .custom-resort-control {
            overflow: visible !important;
        }

        html[data-cc-page="hotel-index"] .resort-select-trigger {
            width: 100%;
            height: 100%;
            border: 0;
            outline: 0;
            background: transparent;
            color: #272126;
            text-align: left;
            padding: 0 39px 0 39px;
            font-size: 12px;
            cursor: pointer;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        html[data-cc-page="hotel-index"] .custom-resort-control.open {
            background: rgba(255,255,255,.90) !important;
            box-shadow: 0 0 0 3px rgba(169,0,97,.08) !important;
        }

            html[data-cc-page="hotel-index"] .custom-resort-control.open .down {
                color: var(--pink) !important;
                transform: translateY(-50%) rotate(180deg);
            }

        html[data-cc-page="hotel-index"] .resort-select-menu {
            position: absolute;
            left: 0;
            top: calc(100% + 10px);
            width: max(310px,100%);
            padding: 8px;
            background: #fff;
            box-shadow: 0 20px 52px rgba(28,18,23,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .2s ease;
            z-index: 250;
        }

            html[data-cc-page="hotel-index"] .resort-select-menu.open {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
                transform: none;
            }

            html[data-cc-page="hotel-index"] .resort-select-menu button {
                width: 100%;
                display: grid;
                gap: 3px;
                padding: 12px 13px;
                border: 0;
                border-bottom: 1px solid #eee9ec;
                background: #fff;
                color: #272126;
                text-align: left;
                transition: background .2s ease,color .2s ease,padding-left .2s ease;
            }

                html[data-cc-page="hotel-index"] .resort-select-menu button:last-child {
                    border-bottom: 0;
                }

                html[data-cc-page="hotel-index"] .resort-select-menu button span {
                    font-size: 11px;
                    font-weight: 600;
                }

                html[data-cc-page="hotel-index"] .resort-select-menu button small {
                    font-size: 8px;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    color: #91858c;
                }

                html[data-cc-page="hotel-index"] .resort-select-menu button:hover, html[data-cc-page="hotel-index"] .resort-select-menu button:focus-visible, html[data-cc-page="hotel-index"] .resort-select-menu button.selected {
                    background: rgba(169,0,97,.075);
                    color: var(--pink);
                    padding-left: 18px;
                    outline: 0;
                }

                    html[data-cc-page="hotel-index"] .resort-select-menu button.selected::after {
                        content: "\f00c";
                        font-family: "Font Awesome 6 Free";
                        font-weight: 900;
                        position: absolute;
                        right: 18px;
                        top: 50%;
                        transform: translateY(-50%);
                        color: var(--pink);
                    }

            html[data-cc-page="hotel-index"] .resort-select-menu button {
                position: relative;
            }

        /* One footer only - reference-inspired, more polished than the screenshot. */
        html[data-cc-page="hotel-index"] .footer-reference {
            background: #121214 !important;
            color: #fff;
            padding: 0 !important;
            position: relative;
            overflow: hidden;
        }

            html[data-cc-page="hotel-index"] .footer-reference::before {
                content: "" !important;
                display: block !important;
                position: absolute;
                left: -180px;
                bottom: -220px;
                width: 620px;
                height: 620px;
                background: radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
                pointer-events: none;
            }

            html[data-cc-page="hotel-index"] .footer-reference::after {
                display: none !important;
            }

        html[data-cc-page="hotel-index"] .footer-reference-main {
            position: relative;
            z-index: 2;
            display: grid;
            grid-template-columns: 1.05fr .72fr .95fr 1.55fr;
            gap: clamp(38px,4.8vw,78px);
            padding-top: 72px;
            padding-bottom: 70px;
        }

        html[data-cc-page="hotel-index"] .footer-reference-logo {
            display: inline-block;
        }

            html[data-cc-page="hotel-index"] .footer-reference-logo img {
                width: 190px;
                height: auto;
            }

        html[data-cc-page="hotel-index"] .footer-reference-brand > p {
            margin-top: 28px;
            max-width: 310px;
            font-size: 14px;
            line-height: 1.95;
            color: rgba(255,255,255,.72);
        }

        html[data-cc-page="hotel-index"] .footer-destination-line {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 20px;
            font-size: 8px;
            font-weight: 700;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: rgba(255,255,255,.82);
        }

            html[data-cc-page="hotel-index"] .footer-destination-line b {
                width: 3px;
                height: 3px;
                border-radius: 50%;
                background: var(--pink);
            }

        html[data-cc-page="hotel-index"] .footer-follow-label {
            margin-top: 32px;
            font-size: 8px;
            font-weight: 700;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.48);
        }

        html[data-cc-page="hotel-index"] .footer-reference-socials {
            display: flex;
            gap: 9px;
            margin-top: 14px;
        }

            html[data-cc-page="hotel-index"] .footer-reference-socials a {
                width: 39px;
                height: 39px;
                display: flex;
                align-items: center;
                justify-content: center;
                border-radius: 50%;
                border: 1px solid rgba(255,255,255,.17);
                color: #fff;
                font-size: 12px;
                transition: background .28s ease,border-color .28s ease,transform .28s ease;
            }

                html[data-cc-page="hotel-index"] .footer-reference-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    transform: translateY(-3px);
                }

        html[data-cc-page="hotel-index"] .footer-reference h4 {
            margin: 0 0 24px !important;
            font-size: 10px !important;
            font-weight: 700 !important;
            letter-spacing: .2em !important;
            text-transform: uppercase !important;
            color: #fff !important;
        }

        html[data-cc-page="hotel-index"] .footer-reference-column nav {
            display: grid;
            gap: 16px;
        }

            html[data-cc-page="hotel-index"] .footer-reference-column nav a {
                width: fit-content;
                font-size: 13px;
                line-height: 1.45;
                color: rgba(255,255,255,.72);
                transition: color .22s ease,transform .22s ease;
            }

                html[data-cc-page="hotel-index"] .footer-reference-column nav a:hover {
                    color: #fff;
                    transform: translateX(4px);
                }

        html[data-cc-page="hotel-index"] .footer-contact-cards {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 10px;
        }

        html[data-cc-page="hotel-index"] .footer-contact-card {
            min-width: 0;
            min-height: 76px;
            padding: 14px;
            display: grid;
            grid-template-columns: 38px minmax(0,1fr);
            gap: 12px;
            align-items: center;
            border: 1px solid rgba(255,255,255,.12);
            background: rgba(255,255,255,.025);
            transition: border-color .25s ease,background .25s ease,transform .25s ease;
        }

            html[data-cc-page="hotel-index"] .footer-contact-card:hover {
                border-color: rgba(169,0,97,.62);
                background: rgba(169,0,97,.06);
                transform: translateY(-2px);
            }

        html[data-cc-page="hotel-index"] .footer-contact-icon {
            width: 38px;
            height: 38px;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 1px solid rgba(169,0,97,.58);
            color: var(--pink);
        }

        html[data-cc-page="hotel-index"] .footer-contact-card small {
            display: block;
            margin-bottom: 4px;
            font-size: 7px;
            font-weight: 700;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: rgba(255,255,255,.48);
        }

        html[data-cc-page="hotel-index"] .footer-contact-card strong {
            display: block;
            overflow-wrap: anywhere;
            font-size: 10px;
            line-height: 1.45;
            color: #fff;
            font-weight: 600;
        }

        html[data-cc-page="hotel-index"] .footer-reference-newsletter {
            margin-top: 30px;
        }

            html[data-cc-page="hotel-index"] .footer-reference-newsletter h4 {
                margin-bottom: 16px !important;
            }

            html[data-cc-page="hotel-index"] .footer-reference-newsletter > p {
                margin: 0 0 14px;
                font-size: 13px;
                line-height: 1.65;
                color: rgba(255,255,255,.68);
            }

        html[data-cc-page="hotel-index"] .footer-reference-form {
            display: grid;
            grid-template-columns: minmax(0,1fr) auto;
            min-height: 52px;
            border: 1px solid rgba(255,255,255,.15);
            background: rgba(255,255,255,.025);
        }

            html[data-cc-page="hotel-index"] .footer-reference-form:focus-within {
                border-color: rgba(169,0,97,.72);
            }

            html[data-cc-page="hotel-index"] .footer-reference-form input {
                min-width: 0;
                border: 0;
                outline: 0;
                background: transparent;
                color: #fff;
                padding: 0 16px;
                font-size: 12px;
            }

                html[data-cc-page="hotel-index"] .footer-reference-form input::placeholder {
                    color: rgba(255,255,255,.45);
                }

            html[data-cc-page="hotel-index"] .footer-reference-form button {
                position: relative;
                overflow: hidden;
                isolation: isolate;
                min-width: 142px;
                border: 0;
                background: var(--pink);
                color: #fff;
                padding: 0 18px;
                font-size: 9px;
                font-weight: 700;
                letter-spacing: .13em;
                text-transform: uppercase;
                transition: transform .25s ease,filter .25s ease;
            }

                html[data-cc-page="hotel-index"] .footer-reference-form button::before {
                    content: "";
                    position: absolute;
                    inset: 0;
                    z-index: -1;
                    background: var(--pink-dark);
                    transform: scaleX(0);
                    transform-origin: left;
                    transition: transform .4s cubic-bezier(.22,1,.36,1);
                }

                html[data-cc-page="hotel-index"] .footer-reference-form button:hover {
                    transform: translateY(-2px);
                    filter: brightness(1.06);
                }

                    html[data-cc-page="hotel-index"] .footer-reference-form button:hover::before {
                        transform: scaleX(1);
                    }

        html[data-cc-page="hotel-index"] .footer-reference-newsletter > small {
            display: block;
            margin-top: 9px;
            font-size: 8px;
            color: rgba(255,255,255,.38);
        }

            html[data-cc-page="hotel-index"] .footer-reference-newsletter > small a {
                color: rgba(255,255,255,.72);
                text-decoration: underline;
            }

        html[data-cc-page="hotel-index"] .footer-reference-bottom {
            position: relative;
            z-index: 2;
            background: #0c0c0d;
            border-top: 1px solid rgba(255,255,255,.06);
        }

            html[data-cc-page="hotel-index"] .footer-reference-bottom .container {
                min-height: 88px;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 28px;
                color: rgba(255,255,255,.56);
                font-size: 9px;
            }

                html[data-cc-page="hotel-index"] .footer-reference-bottom .container > div {
                    display: grid;
                    gap: 5px;
                }

        html[data-cc-page="hotel-index"] .footer-powered {
            font-size: 8px;
        }

        html[data-cc-page="hotel-index"] .footer-reference-bottom a {
            color: rgba(255,255,255,.82);
            transition: color .2s ease;
        }

            html[data-cc-page="hotel-index"] .footer-reference-bottom a:hover {
                color: var(--pink);
            }

        html[data-cc-page="hotel-index"] .footer-reference-bottom nav {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: 28px;
            font-size: 8px;
            font-weight: 700;
            letter-spacing: .08em;
            text-transform: uppercase;
        }

        @media(max-width:1180px) {
            html[data-cc-page="hotel-index"] .footer-reference-main {
                grid-template-columns: 1fr 1fr 1fr;
            }

            html[data-cc-page="hotel-index"] .footer-reference-reservations {
                grid-column: 1/-1;
            }

            html[data-cc-page="hotel-index"] .footer-contact-cards {
                grid-template-columns: 1fr 1fr;
            }

            html[data-cc-page="hotel-index"] .footer-reference-newsletter {
                max-width: 720px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-index"] .resort-select-menu {
                width: 100%;
                min-width: 280px;
            }

            html[data-cc-page="hotel-index"] .footer-reference-main {
                grid-template-columns: 1fr 1fr;
                gap: 46px 30px;
                padding-top: 58px;
                padding-bottom: 56px;
            }

            html[data-cc-page="hotel-index"] .footer-reference-brand, html[data-cc-page="hotel-index"] .footer-reference-reservations {
                grid-column: 1/-1;
            }

                html[data-cc-page="hotel-index"] .footer-reference-brand > p {
                    max-width: 500px;
                }

            html[data-cc-page="hotel-index"] .footer-reference-bottom .container {
                align-items: flex-start;
                flex-direction: column;
                justify-content: center;
                padding-top: 22px;
                padding-bottom: 22px;
            }

            html[data-cc-page="hotel-index"] .footer-reference-bottom nav {
                justify-content: flex-start;
                gap: 18px;
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="hotel-index"] .resort-select-menu {
                left: 0;
                right: 0;
                width: auto;
                min-width: 0;
            }

            html[data-cc-page="hotel-index"] .footer-reference-main {
                grid-template-columns: 1fr;
                gap: 38px;
                padding-top: 50px;
                padding-bottom: 48px;
            }

            html[data-cc-page="hotel-index"] .footer-reference-brand, html[data-cc-page="hotel-index"] .footer-reference-reservations {
                grid-column: auto;
            }

            html[data-cc-page="hotel-index"] .footer-reference-logo img {
                width: 172px;
            }

            html[data-cc-page="hotel-index"] .footer-reference-column nav {
                gap: 13px;
            }

            html[data-cc-page="hotel-index"] .footer-contact-cards {
                grid-template-columns: 1fr;
            }

            html[data-cc-page="hotel-index"] .footer-reference-form {
                grid-template-columns: 1fr;
                gap: 8px;
                border: 0;
                background: transparent;
            }

                html[data-cc-page="hotel-index"] .footer-reference-form input {
                    height: 52px;
                    border: 1px solid rgba(255,255,255,.15);
                    background: rgba(255,255,255,.025);
                }

                html[data-cc-page="hotel-index"] .footer-reference-form button {
                    min-height: 52px;
                }
        }



        /* =====================================================
                   V18 DATE LIMITS + FOOTER CONTAINER ALIGNMENT
                   ===================================================== */

        /* Past dates: visually and functionally disabled. */
        html[data-cc-page="hotel-index"] .flatpickr-day.flatpickr-disabled, html[data-cc-page="hotel-index"] .flatpickr-day.flatpickr-disabled:hover, html[data-cc-page="hotel-index"] .flatpickr-day.prevMonthDay.flatpickr-disabled, html[data-cc-page="hotel-index"] .flatpickr-day.nextMonthDay.flatpickr-disabled, html[data-cc-page="hotel-index"] .flatpickr-day.notAllowed, html[data-cc-page="hotel-index"] .flatpickr-day.notAllowed:hover {
            color: #c9c3c6 !important;
            background: transparent !important;
            border-color: transparent !important;
            box-shadow: none !important;
            cursor: not-allowed !important;
            transform: none !important;
            opacity: .48 !important;
            pointer-events: none !important;
        }

        html[data-cc-page="hotel-index"] .flatpickr-prev-month.flatpickr-disabled, html[data-cc-page="hotel-index"] .flatpickr-next-month.flatpickr-disabled {
            opacity: .22 !important;
            cursor: default !important;
            pointer-events: none !important;
        }

        /* Keep the whole footer on exactly the same left/right rails as the copyright bar. */
        html[data-cc-page="hotel-index"] .footer-reference > .container.footer-reference-main {
            width: min(1420px,calc(100% - 80px)) !important;
            max-width: 1420px !important;
            margin-left: auto !important;
            margin-right: auto !important;
            padding-left: 0 !important;
            padding-right: 0 !important;
        }

        html[data-cc-page="hotel-index"] .footer-reference-bottom > .container {
            width: min(1420px,calc(100% - 80px)) !important;
            max-width: 1420px !important;
            margin-left: auto !important;
            margin-right: auto !important;
        }

        @media(max-width:1100px) {
            html[data-cc-page="hotel-index"] .footer-reference > .container.footer-reference-main, html[data-cc-page="hotel-index"] .footer-reference-bottom > .container {
                width: min(100% - 44px,1420px) !important;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-index"] .footer-reference > .container.footer-reference-main, html[data-cc-page="hotel-index"] .footer-reference-bottom > .container {
                width: calc(100% - 30px) !important;
            }
        }



        /* =====================================================
                   V19 STICKY LOGO + CLEAR BOOKING LABELS
                   ===================================================== */

        /* Larger horizontal logo in the desktop sticky header. */
        @media(min-width:1251px) {
            html[data-cc-page="hotel-index"] .header.sticky .brand {
                width: 250px !important;
                flex: 0 0 250px !important;
            }

            html[data-cc-page="hotel-index"] .header.sticky .brand-dark {
                width: 230px !important;
                max-height: 64px !important;
                object-fit: contain !important;
                object-position: left center !important;
            }
        }

        /* Keep the larger logo balanced on medium desktop widths. */
        @media(min-width:1101px) and (max-width:1250px) {
            html[data-cc-page="hotel-index"] .header.sticky .brand {
                width: 205px !important;
                flex: 0 0 205px !important;
            }

            html[data-cc-page="hotel-index"] .header.sticky .brand-dark {
                width: 192px !important;
                max-height: 54px !important;
            }
        }

        /* Booking labels: stronger contrast and easier scanning over the transparent panel. */
        html[data-cc-page="hotel-index"] .booking-card .field > label {
            color: #2b2428 !important;
            font-size: 10px !important;
            font-weight: 700 !important;
            letter-spacing: .135em !important;
            line-height: 1.2 !important;
            margin-bottom: 8px !important;
            opacity: 1 !important;
        }

        @media(max-width:767px) {
            html[data-cc-page="hotel-index"] .mobile-booking-modal .field > label {
                color: #2b2428 !important;
                font-size: 9px !important;
                font-weight: 700 !important;
                letter-spacing: .12em !important;
                margin-bottom: 7px !important;
                opacity: 1 !important;
            }
        }


        /* =====================================================
                   V20 MOBILE REVIEW - RESORT CARD / LOYALTY / OFFERS
                   Mobile only. Desktop and tablet remain unchanged.
                   ===================================================== */
        @media(max-width:767px) {
            /* 1) Resort cards occupy the full phone viewport width. */
            html[data-cc-page="hotel-index"] .resort-viewport {
                width: calc(100% + 30px) !important;
                margin-left: -15px !important;
                margin-right: -15px !important;
                overflow: hidden !important;
            }

            html[data-cc-page="hotel-index"] .resort-track {
                gap: 0 !important;
            }

            html[data-cc-page="hotel-index"] .resort-story {
                flex: 0 0 100vw !important;
                width: 100vw !important;
                max-width: 100vw !important;
            }

                /* Keep card content comfortably inside the full-width image. */
                html[data-cc-page="hotel-index"] .resort-story .story-copy {
                    left: 24px !important;
                    right: 24px !important;
                }

                html[data-cc-page="hotel-index"] .resort-story .story-index {
                    left: 20px !important;
                }

                html[data-cc-page="hotel-index"] .resort-story .story-link {
                    right: 20px !important;
                }

            /* 2) Loyalty: mobile-specific image treatment + centered content. */
            html[data-cc-page="hotel-index"] .loyalty {
                min-height: 590px !important;
                background-image: url("../images/Charmillion-Sea-Life-Hero-Banner.jpg"), url("https://charmillionresorts.com/images/uploads/Charmillion-Sea-Life-Resort-Lobby.jpg") !important;
                background-position: center center, center center !important;
                background-size: cover, cover !important;
                background-repeat: no-repeat, no-repeat !important;
                background-attachment: scroll, scroll !important;
                align-items: center !important;
            }

                html[data-cc-page="hotel-index"] .loyalty::after {
                    background: linear-gradient(180deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.56) 48%,rgba(0,0,0,.68) 100%) !important;
                }

                html[data-cc-page="hotel-index"] .loyalty .container {
                    display: flex !important;
                    justify-content: center !important;
                    align-items: center !important;
                }

            html[data-cc-page="hotel-index"] .loyalty-copy {
                width: min(100%,430px) !important;
                max-width: 430px !important;
                margin: 0 auto !important;
                text-align: center !important;
            }

                html[data-cc-page="hotel-index"] .loyalty-copy .eyebrow {
                    text-align: center !important;
                }

                html[data-cc-page="hotel-index"] .loyalty-copy h2 {
                    margin-left: auto !important;
                    margin-right: auto !important;
                }

                html[data-cc-page="hotel-index"] .loyalty-copy p {
                    margin-left: auto !important;
                    margin-right: auto !important;
                    max-width: 360px !important;
                }

                html[data-cc-page="hotel-index"] .loyalty-copy .btn {
                    margin-left: auto !important;
                    margin-right: auto !important;
                }

            /* 3) View All Offers centered on phone screens. */
            html[data-cc-page="hotel-index"] .offers-bottom {
                justify-content: center !important;
            }
        }


        /* =====================================================
                   V21 MOBILE RESORT CAROUSEL - EXACTLY ONE CARD PER VIEW
                   Mobile only: no previous/next card peeking at rest.
                   ===================================================== */
        @media(max-width:767px) {
            html[data-cc-page="hotel-index"] .resort-viewport {
                width: 100vw !important;
                max-width: 100vw !important;
                margin-left: calc(50% - 50vw) !important;
                margin-right: calc(50% - 50vw) !important;
                overflow: hidden !important;
                padding: 0 !important;
            }

            html[data-cc-page="hotel-index"] .resort-track {
                width: 100% !important;
                gap: 0 !important;
                padding: 0 !important;
            }

            html[data-cc-page="hotel-index"] .resort-story {
                flex: 0 0 100% !important;
                width: 100% !important;
                min-width: 100% !important;
                max-width: 100% !important;
                margin: 0 !important;
            }
        }



        /* =====================================================
                   V23 LANGUAGE DROPDOWN - DESKTOP + MOBILE
                   ===================================================== */
        html[data-cc-page="hotel-index"] .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="hotel-index"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="hotel-index"] .language-trigger:hover, html[data-cc-page="hotel-index"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="hotel-index"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="hotel-index"] .header.sticky .language-trigger:hover, html[data-cc-page="hotel-index"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="hotel-index"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="hotel-index"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="hotel-index"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="hotel-index"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="hotel-index"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="hotel-index"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="hotel-index"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="hotel-index"] .language-menu a:hover, html[data-cc-page="hotel-index"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="hotel-index"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="hotel-index"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="hotel-index"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="hotel-index"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="hotel-index"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="hotel-index"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="hotel-index"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="hotel-index"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="hotel-index"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="hotel-index"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="hotel-index"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-index"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="hotel-index"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="hotel-index"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="hotel-index"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="hotel-index"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="hotel-index"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="hotel-index"] .topbar-language .language-trigger:hover, html[data-cc-page="hotel-index"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="hotel-index"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="hotel-index"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="hotel-index"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="hotel-index"] .topbar-language .language-menu a:hover, html[data-cc-page="hotel-index"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="hotel-index"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="hotel-index"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="hotel-index"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="hotel-index"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="hotel-index"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="hotel-index"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="hotel-index"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="hotel-index"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="hotel-index"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="hotel-index"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="hotel-index"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="hotel-index"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="hotel-index"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="hotel-index"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="hotel-index"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="hotel-index"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="hotel-index"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="hotel-index"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-index"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="hotel-index"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="hotel-index"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="hotel-index"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="hotel-index"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="hotel-index"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="hotel-index"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="hotel-index"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="hotel-index"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="hotel-index"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="hotel-index"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="hotel-index"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="hotel-index"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="hotel-index"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="hotel-index"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="hotel-index"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="hotel-index"] .mobile-language-menu a:hover, html[data-cc-page="hotel-index"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="hotel-index"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="hotel-index"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="hotel-index"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="hotel-index"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="hotel-index"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="hotel-index"] .mobile-language-trigger, html[data-cc-page="hotel-index"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="hotel-index"] .mobile-language-menu {
                right: -43px;
            }
        }
    

        html[data-cc-page="hotel-index"] {
            --hotel-soft: #f6f4f3;
            --hotel-dark: #111112;
            --hotel-line: rgba(23,23,23,.12)
        }

        html[data-cc-page="hotel-index"] .hotel-back-link {
            margin-right: auto !important;
            display: inline-flex;
            align-items: center;
            gap: 8px
        }

        html[data-cc-page="hotel-index"] .header-top .container {
            justify-content: flex-end
        }

        html[data-cc-page="hotel-index"] .header-top .hotel-back-link {
            margin-right: auto !important
        }

        html[data-cc-page="hotel-index"] .header .menu {
            gap: 25px
        }

        html[data-cc-page="hotel-index"] .header .menu-link {
            font-size: 11px
        }

        html[data-cc-page="hotel-index"] .header .header-book {
            margin-left: 24px
        }

        html[data-cc-page="hotel-index"] .hotel-main {
            background: #fff
        }

        html[data-cc-page="hotel-index"] .section-space {
            padding: 130px 0
        }

        html[data-cc-page="hotel-index"] .hotel-main .eyebrow {
            color: var(--pink)
        }

        html[data-cc-page="hotel-index"] .motion-copy > * {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity .72s ease,transform .82s cubic-bezier(.22,1,.36,1)
        }

        html[data-cc-page="hotel-index"] .motion-copy.in-view > * {
            opacity: 1;
            transform: none
        }

        html[data-cc-page="hotel-index"] .motion-copy > *:nth-child(2) {
            transition-delay: .07s
        }

        html[data-cc-page="hotel-index"] .motion-copy > *:nth-child(3) {
            transition-delay: .14s
        }

        html[data-cc-page="hotel-index"] .motion-copy > *:nth-child(4) {
            transition-delay: .2s
        }

        html[data-cc-page="hotel-index"] .motion-copy > *:nth-child(5) {
            transition-delay: .26s
        }

        html[data-cc-page="hotel-index"] .motion-object {
            opacity: 0;
            transform: translateY(40px) scale(.985);
            transition: opacity .8s ease,transform .95s cubic-bezier(.22,1,.36,1)
        }

            html[data-cc-page="hotel-index"] .motion-object.in-view {
                opacity: 1;
                transform: none
            }

        html[data-cc-page="hotel-index"] .mask-reveal {
            position: relative;
            overflow: hidden;
            background: #161616
        }

            html[data-cc-page="hotel-index"] .mask-reveal:after {
                content: "";
                position: absolute;
                inset: 0;
                background: #151515;
                transform: scaleX(1);
                transform-origin: right;
                transition: transform 1s cubic-bezier(.77,0,.18,1);
                z-index: 2
            }

            html[data-cc-page="hotel-index"] .mask-reveal.in-view:after, html[data-cc-page="hotel-index"] .motion-object.in-view .mask-reveal:after {
                transform: scaleX(0)
            }

            html[data-cc-page="hotel-index"] .mask-reveal img {
                height: 100%;
                object-fit: cover;
                transform: scale(1.045);
                transition: transform 1.3s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="hotel-index"] .mask-reveal.in-view img, html[data-cc-page="hotel-index"] .motion-object.in-view .mask-reveal img {
                transform: scale(1)
            }

        html[data-cc-page="hotel-index"] .hotel-link {
            display: inline-flex;
            align-items: center;
            gap: 11px;
            margin-top: 25px;
            padding-bottom: 5px;
            border-bottom: 1px solid currentColor;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .13em;
            text-transform: uppercase;
            color: var(--pink);
            transition: gap .25s ease
        }

            html[data-cc-page="hotel-index"] .hotel-link:hover {
                gap: 17px
            }

        html[data-cc-page="hotel-index"] .intro-grid {
            display: grid;
            grid-template-columns: .84fr 1.16fr;
            gap: 110px;
            align-items: center
        }

        html[data-cc-page="hotel-index"] .intro-copy h2, html[data-cc-page="hotel-index"] .hotel-section-head h2, html[data-cc-page="hotel-index"] .facilities-intro h2, html[data-cc-page="hotel-index"] .location-copy h2 {
            font-family: var(--display);
            font-weight: 400;
            letter-spacing: -.045em;
            line-height: .98
        }

        html[data-cc-page="hotel-index"] .intro-copy h2 {
            font-size: clamp(52px,5vw,76px);
            margin-top: 18px
        }

        html[data-cc-page="hotel-index"] .intro-copy p {
            font-size: 14px;
            line-height: 1.85;
            color: #6f6f6f;
            max-width: 570px;
            margin-top: 20px
        }

        html[data-cc-page="hotel-index"] .intro-actions {
            display: flex;
            align-items: center;
            gap: 25px;
            margin-top: 30px
        }

            html[data-cc-page="hotel-index"] .intro-actions .hotel-link {
                margin-top: 0
            }

        html[data-cc-page="hotel-index"] .intro-visual {
            position: relative;
            min-height: 600px
        }

        html[data-cc-page="hotel-index"] .intro-main {
            position: absolute;
            right: 0;
            top: 0;
            width: 86%;
            height: 530px
        }

        html[data-cc-page="hotel-index"] .intro-mini {
            position: absolute;
            left: 0;
            bottom: 0;
            width: 38%;
            height: 250px;
            border: 12px solid #fff;
            z-index: 3
        }

        html[data-cc-page="hotel-index"] .intro-stat {
            position: absolute;
            right: 0;
            bottom: 10px;
            background: var(--pink);
            color: #fff;
            padding: 24px 32px;
            z-index: 4
        }

            html[data-cc-page="hotel-index"] .intro-stat strong {
                display: block;
                font-family: var(--display);
                font-size: 42px;
                font-weight: 400;
                line-height: .9
            }

            html[data-cc-page="hotel-index"] .intro-stat span {
                display: block;
                font-size: 9px;
                letter-spacing: .14em;
                text-transform: uppercase;
                margin-top: 8px
            }

        html[data-cc-page="hotel-index"] .hotel-carousel-section {
            padding: 120px 0;
            overflow: hidden
        }

        html[data-cc-page="hotel-index"] .rooms-zone, html[data-cc-page="hotel-index"] .offers-zone {
            background: var(--hotel-soft)
        }

        html[data-cc-page="hotel-index"] .hotel-section-head {
            max-width: 760px;
            margin-bottom: 50px
        }

            html[data-cc-page="hotel-index"] .hotel-section-head h2 {
                font-size: clamp(48px,4.5vw,70px);
                margin: 16px 0 17px
            }

            html[data-cc-page="hotel-index"] .hotel-section-head p {
                font-size: 13px;
                line-height: 1.8;
                color: #737373;
                max-width: 650px
            }

        html[data-cc-page="hotel-index"] .carousel-viewport {
            overflow-x: auto;
            overflow-y: hidden;
            scrollbar-width: none;
            cursor: grab;
            user-select: none;
            scroll-behavior: smooth;
            scroll-snap-type: x mandatory
        }

            html[data-cc-page="hotel-index"] .carousel-viewport::-webkit-scrollbar {
                display: none
            }

            html[data-cc-page="hotel-index"] .carousel-viewport.is-dragging {
                cursor: grabbing;
                scroll-behavior: auto;
                scroll-snap-type: none
            }

        html[data-cc-page="hotel-index"] .carousel-track {
            display: flex;
            width: max-content
        }

        html[data-cc-page="hotel-index"] .carousel-card {
            scroll-snap-align: start
        }

            html[data-cc-page="hotel-index"] .carousel-card img {
                pointer-events: none;
                -webkit-user-drag: none;
                user-select: none
            }

        html[data-cc-page="hotel-index"] .stage-track {
            gap: 24px
        }

        html[data-cc-page="hotel-index"] .room-stage {
            width: min(1180px,88vw);
            min-height: 520px;
            display: grid;
            grid-template-columns: 1.22fr .78fr;
            background: #fff;
            border: 1px solid var(--hotel-line)
        }

        html[data-cc-page="hotel-index"] .room-stage-image {
            min-height: 520px
        }

        html[data-cc-page="hotel-index"] .room-stage-copy {
            padding: 55px 48px;
            display: flex;
            flex-direction: column;
            justify-content: center
        }

        html[data-cc-page="hotel-index"] .slide-no {
            font-size: 9px;
            letter-spacing: .18em;
            color: #999;
            margin-bottom: 30px
        }

        html[data-cc-page="hotel-index"] .room-stage-copy h3, html[data-cc-page="hotel-index"] .experience-card h3, html[data-cc-page="hotel-index"] .offer-card h3 {
            font-family: var(--display);
            font-weight: 400;
            letter-spacing: -.025em
        }

        html[data-cc-page="hotel-index"] .room-stage-copy h3 {
            font-size: 48px;
            line-height: 1;
            margin: 8px 0 18px
        }

        html[data-cc-page="hotel-index"] .room-stage-copy p {
            font-size: 13px;
            line-height: 1.75;
            color: #777
        }

        html[data-cc-page="hotel-index"] .room-facts {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 18px 20px;
            margin-top: 28px;
            padding-top: 24px;
            border-top: 1px solid #e5e2e3
        }

            html[data-cc-page="hotel-index"] .room-facts span {
                font-size: 9px;
                line-height: 1.5;
                color: #888
            }

            html[data-cc-page="hotel-index"] .room-facts b {
                display: block;
                font-size: 11px;
                color: #222;
                margin-bottom: 3px
            }

        html[data-cc-page="hotel-index"] .carousel-controls {
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 25px;
            align-items: center;
            margin-top: 26px
        }

        html[data-cc-page="hotel-index"] .carousel-progress {
            height: 20px;
            position: relative;
            display: flex;
            align-items: center;
            cursor: pointer;
            touch-action: none
        }

            html[data-cc-page="hotel-index"] .carousel-progress:before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                height: 2px;
                background: #d9d5d7
            }

            html[data-cc-page="hotel-index"] .carousel-progress span {
                position: absolute;
                left: 0;
                height: 4px;
                background: var(--pink);
                min-width: 44px;
                transition: left .12s linear,width .25s ease
            }

        html[data-cc-page="hotel-index"] .carousel-arrows {
            display: flex;
            gap: 8px
        }

            html[data-cc-page="hotel-index"] .carousel-arrows button {
                width: 44px;
                height: 44px;
                border: 1px solid #cbc7c8;
                background: #fff;
                transition: .25s
            }

                html[data-cc-page="hotel-index"] .carousel-arrows button:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px)
                }

        html[data-cc-page="hotel-index"] .hotel-numbers {
            background: #111112;
            color: #fff;
            padding: 105px 0
        }

        html[data-cc-page="hotel-index"] .numbers-head {
            text-align: center;
            margin-bottom: 52px
        }

            html[data-cc-page="hotel-index"] .numbers-head .eyebrow {
                color: #d78ab6
            }

            html[data-cc-page="hotel-index"] .numbers-head h2 {
                font-family: var(--display);
                font-size: clamp(42px,4vw,64px);
                font-weight: 400;
                line-height: 1.02
            }

        html[data-cc-page="hotel-index"] .numbers-grid {
            display: grid;
            grid-template-columns: repeat(4,1fr);
            border-top: 1px solid rgba(255,255,255,.16);
            border-bottom: 1px solid rgba(255,255,255,.16)
        }

        html[data-cc-page="hotel-index"] .number-item {
            padding: 36px 24px;
            text-align: center;
            border-right: 1px solid rgba(255,255,255,.13)
        }

            html[data-cc-page="hotel-index"] .number-item:last-child {
                border-right: 0
            }

            html[data-cc-page="hotel-index"] .number-item strong {
                display: block;
                font-family: var(--display);
                font-size: 46px;
                font-weight: 400
            }

            html[data-cc-page="hotel-index"] .number-item small {
                display: block;
                margin-top: 7px;
                font-size: 9px;
                letter-spacing: .14em;
                text-transform: uppercase;
                color: rgba(255,255,255,.5)
            }

        html[data-cc-page="hotel-index"] .card-track {
            gap: 20px
        }

        html[data-cc-page="hotel-index"] .experience-card, html[data-cc-page="hotel-index"] .offer-card {
            width: min(390px,30vw);
            min-width: 320px;
            background: #fff;
            border: 1px solid #e6e2e4;
            transition: transform .35s ease,box-shadow .35s ease
        }

            html[data-cc-page="hotel-index"] .experience-card:hover, html[data-cc-page="hotel-index"] .offer-card:hover {
                transform: translateY(-6px);
                box-shadow: 0 20px 55px rgba(0,0,0,.08)
            }

        html[data-cc-page="hotel-index"] .card-media {
            height: 270px
        }

        html[data-cc-page="hotel-index"] .card-copy {
            padding: 25px 26px 28px
        }

            html[data-cc-page="hotel-index"] .card-copy h3 {
                font-size: 31px;
                line-height: 1.05;
                margin: 8px 0 12px
            }

            html[data-cc-page="hotel-index"] .card-copy p {
                font-size: 11px;
                line-height: 1.72;
                color: #777;
                min-height: 58px
            }

        html[data-cc-page="hotel-index"] .offers-zone .offer-card {
            background: #fff
        }

        html[data-cc-page="hotel-index"] .offers-zone .card-media {
            height: 250px
        }

        html[data-cc-page="hotel-index"] .hotel-facilities {
            padding: 125px 0;
            background: #fff
        }

        html[data-cc-page="hotel-index"] .facilities-grid {
            display: grid;
            grid-template-columns: .8fr 1.2fr;
            gap: 105px
        }

        html[data-cc-page="hotel-index"] .facilities-intro {
            position: sticky;
            top: 135px;
            align-self: start
        }

            html[data-cc-page="hotel-index"] .facilities-intro h2 {
                font-size: clamp(48px,4.8vw,72px);
                margin: 16px 0 20px
            }

            html[data-cc-page="hotel-index"] .facilities-intro p {
                font-size: 13px;
                line-height: 1.8;
                color: #777;
                max-width: 460px
            }

        html[data-cc-page="hotel-index"] .facilities-list {
            border-top: 1px solid #d9d6d7
        }

        html[data-cc-page="hotel-index"] .facility-row {
            display: grid;
            grid-template-columns: 55px 1fr;
            gap: 25px;
            padding: 28px 0;
            border-bottom: 1px solid #d9d6d7
        }

            html[data-cc-page="hotel-index"] .facility-row > span {
                font-size: 9px;
                color: var(--pink);
                letter-spacing: .12em
            }

            html[data-cc-page="hotel-index"] .facility-row h3 {
                font-family: var(--display);
                font-size: 29px;
                font-weight: 400;
                margin-bottom: 7px
            }

            html[data-cc-page="hotel-index"] .facility-row p {
                font-size: 11px;
                line-height: 1.7;
                color: #777
            }

        html[data-cc-page="hotel-index"] .hotel-location {
            padding: 125px 0;
            background: var(--hotel-soft)
        }

        html[data-cc-page="hotel-index"] .location-grid {
            display: grid;
            grid-template-columns: .75fr 1.25fr;
            gap: 80px;
            align-items: center
        }

        html[data-cc-page="hotel-index"] .location-copy h2 {
            font-size: clamp(50px,4.6vw,72px);
            margin: 16px 0 20px
        }

        html[data-cc-page="hotel-index"] .location-copy p {
            font-size: 13px;
            line-height: 1.8;
            color: #777;
            max-width: 480px
        }

        html[data-cc-page="hotel-index"] .location-facts {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 18px;
            margin: 28px 0
        }

            html[data-cc-page="hotel-index"] .location-facts span {
                font-size: 9px;
                color: #888
            }

            html[data-cc-page="hotel-index"] .location-facts b {
                display: block;
                font-size: 11px;
                color: #222;
                margin-bottom: 4px
            }

        html[data-cc-page="hotel-index"] .map-shell {
            height: 500px;
            background: #ddd;
            overflow: hidden
        }

            html[data-cc-page="hotel-index"] .map-shell iframe {
                width: 100%;
                height: 100%;
                border: 0;
                filter: saturate(.82) contrast(.96)
            }
        /* Exact master hero/booking remain dominant; only hotel-specific spacing tweaks. */
        html[data-cc-page="hotel-index"] .hero-copy {
            max-width: 760px
        }

        html[data-cc-page="hotel-index"] .hero-title {
            font-size: clamp(52px,5.25vw,86px)
        }

        @media(max-width:1250px) {
            html[data-cc-page="hotel-index"] .header .menu {
                gap: 16px
            }

            html[data-cc-page="hotel-index"] .header .menu-link {
                font-size: 10px
            }

            html[data-cc-page="hotel-index"] .header-book {
                margin-left: 16px
            }

            html[data-cc-page="hotel-index"] .intro-grid {
                gap: 65px
            }

            html[data-cc-page="hotel-index"] .facilities-grid {
                gap: 65px
            }
        }

        @media(max-width:900px) {
            html[data-cc-page="hotel-index"] .section-space, html[data-cc-page="hotel-index"] .hotel-carousel-section, html[data-cc-page="hotel-index"] .hotel-facilities, html[data-cc-page="hotel-index"] .hotel-location {
                padding: 90px 0
            }

            html[data-cc-page="hotel-index"] .intro-grid, html[data-cc-page="hotel-index"] .facilities-grid, html[data-cc-page="hotel-index"] .location-grid {
                grid-template-columns: 1fr;
                gap: 45px
            }

            html[data-cc-page="hotel-index"] .intro-visual {
                min-height: 500px
            }

            html[data-cc-page="hotel-index"] .intro-main {
                height: 450px
            }

            html[data-cc-page="hotel-index"] .facilities-intro {
                position: static
            }

            html[data-cc-page="hotel-index"] .room-stage {
                width: 88vw;
                grid-template-columns: 1fr;
                min-height: 0
            }

            html[data-cc-page="hotel-index"] .room-stage-image {
                height: 380px;
                min-height: 0
            }

            html[data-cc-page="hotel-index"] .room-stage-copy {
                padding: 35px
            }

            html[data-cc-page="hotel-index"] .numbers-grid {
                grid-template-columns: 1fr 1fr
            }

            html[data-cc-page="hotel-index"] .number-item:nth-child(2) {
                border-right: 0
            }

            html[data-cc-page="hotel-index"] .number-item:nth-child(-n+2) {
                border-bottom: 1px solid rgba(255,255,255,.13)
            }

            html[data-cc-page="hotel-index"] .experience-card, html[data-cc-page="hotel-index"] .offer-card {
                width: 360px;
                min-width: 360px
            }

            html[data-cc-page="hotel-index"] .map-shell {
                height: 420px
            }
        }

        @media(max-width:767px) {
            html[data-cc-page="hotel-index"] .header-top {
                display: none !important
            }

            html[data-cc-page="hotel-index"] .hotel-main {
                padding-bottom: 70px
            }

            html[data-cc-page="hotel-index"] .hero-title {
                font-size: 43px !important;
                line-height: 1 !important
            }

            html[data-cc-page="hotel-index"] .hero-subtitle {
                max-width: 330px
            }

            html[data-cc-page="hotel-index"] .hotel-back-link {
                display: none
            }

            html[data-cc-page="hotel-index"] .section-space, html[data-cc-page="hotel-index"] .hotel-carousel-section, html[data-cc-page="hotel-index"] .hotel-facilities, html[data-cc-page="hotel-index"] .hotel-location {
                padding: 72px 0
            }

            html[data-cc-page="hotel-index"] .intro-copy h2, html[data-cc-page="hotel-index"] .hotel-section-head h2, html[data-cc-page="hotel-index"] .facilities-intro h2, html[data-cc-page="hotel-index"] .location-copy h2 {
                font-size: 43px
            }

            html[data-cc-page="hotel-index"] .intro-copy p, html[data-cc-page="hotel-index"] .hotel-section-head p, html[data-cc-page="hotel-index"] .facilities-intro p, html[data-cc-page="hotel-index"] .location-copy p {
                font-size: 12px
            }

            html[data-cc-page="hotel-index"] .intro-actions {
                flex-wrap: wrap
            }

            html[data-cc-page="hotel-index"] .intro-visual {
                min-height: 420px
            }

            html[data-cc-page="hotel-index"] .intro-main {
                width: 100%;
                height: 375px
            }

            html[data-cc-page="hotel-index"] .intro-mini {
                display: none
            }

            html[data-cc-page="hotel-index"] .intro-stat {
                right: 10px;
                bottom: 0
            }

            html[data-cc-page="hotel-index"] .stage-carousel, html[data-cc-page="hotel-index"] .card-carousel {
                margin-left: -15px;
                margin-right: -15px
            }

            html[data-cc-page="hotel-index"] .carousel-viewport {
                padding-left: 15px;
                padding-right: 15px
            }

            html[data-cc-page="hotel-index"] .room-stage {
                width: calc(100vw - 30px);
                min-width: calc(100vw - 30px);
                grid-template-columns: 1fr
            }

            html[data-cc-page="hotel-index"] .room-stage-image {
                height: 300px
            }

            html[data-cc-page="hotel-index"] .room-stage-copy {
                padding: 28px 24px
            }

                html[data-cc-page="hotel-index"] .room-stage-copy h3 {
                    font-size: 36px
                }

            html[data-cc-page="hotel-index"] .room-facts {
                gap: 14px
            }

            html[data-cc-page="hotel-index"] .experience-card, html[data-cc-page="hotel-index"] .offer-card {
                width: 82vw;
                min-width: 82vw
            }

            html[data-cc-page="hotel-index"] .card-media {
                height: 245px
            }

            html[data-cc-page="hotel-index"] .numbers-grid {
                grid-template-columns: 1fr 1fr
            }

            html[data-cc-page="hotel-index"] .number-item {
                padding: 28px 12px
            }

                html[data-cc-page="hotel-index"] .number-item strong {
                    font-size: 36px
                }

            html[data-cc-page="hotel-index"] .facilities-list {
                margin-top: 5px
            }

            html[data-cc-page="hotel-index"] .facility-row {
                grid-template-columns: 35px 1fr;
                gap: 15px;
                padding: 22px 0
            }

                html[data-cc-page="hotel-index"] .facility-row h3 {
                    font-size: 25px
                }

            html[data-cc-page="hotel-index"] .map-shell {
                height: 360px
            }

            html[data-cc-page="hotel-index"] .location-facts {
                grid-template-columns: 1fr
            }

            html[data-cc-page="hotel-index"] .footer {
                margin-bottom: 0
            }

            html[data-cc-page="hotel-index"] .carousel-controls {
                gap: 15px
            }

            html[data-cc-page="hotel-index"] .carousel-arrows button {
                width: 42px;
                height: 42px
            }
        }

        @media(max-width:420px) {
            html[data-cc-page="hotel-index"] .experience-card, html[data-cc-page="hotel-index"] .offer-card {
                width: 86vw;
                min-width: 86vw
            }

            html[data-cc-page="hotel-index"] .room-stage-copy {
                padding: 25px 21px
            }

                html[data-cc-page="hotel-index"] .room-stage-copy h3 {
                    font-size: 33px
                }

            html[data-cc-page="hotel-index"] .number-item strong {
                font-size: 32px
            }
        }
    
/* Final v2 - hotel navigation clarity */
html[data-cc-page="hotel-index"] .drawer-back-group{color:var(--pink)!important;font-weight:600!important;border-bottom:1px solid rgba(169,0,97,.18)!important;margin-bottom:5px}html[data-cc-page="hotel-index"] .drawer-back-group i{font-size:11px;margin-right:8px}html[data-cc-page="hotel-index"] .menu a.active, html[data-cc-page="hotel-index"] .menu-link.active{color:var(--pink)}


/* FINAL DEMO V4 REVIEW FIXES */

html[data-cc-page="hotel-index"] .card-media, html[data-cc-page="hotel-index"] .mask-reveal, html[data-cc-page="hotel-index"] .brand-story-main-image{background:#f2eff0!important}
html[data-cc-page="hotel-index"] .hotel-numbers{background:#f7f5f5!important;color:#171717!important;border-top:1px solid #ece7e9;border-bottom:1px solid #ece7e9}
html[data-cc-page="hotel-index"] .hotel-number-item{border-color:#ded7da!important}html[data-cc-page="hotel-index"] .hotel-number-item small, html[data-cc-page="hotel-index"] .hotel-numbers p{color:#777074!important}



/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="hotel-index"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="hotel-index"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="hotel-index"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="hotel-index"] .page-intro-grid>div, html[data-cc-page="hotel-index"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="hotel-index"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="hotel-index"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="hotel-index"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="hotel-index"] .page-intro .reveal-left, html[data-cc-page="hotel-index"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="hotel-index"] .page-intro .reveal-left.in-view, html[data-cc-page="hotel-index"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="hotel-index"] .section-heading h2, html[data-cc-page="hotel-index"] .rail-head h2, html[data-cc-page="hotel-index"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="hotel-index"] .section-heading p, html[data-cc-page="hotel-index"] .rail-head p, html[data-cc-page="hotel-index"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="hotel-index"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="hotel-index"] .page-intro-grid{padding:0 8px}html[data-cc-page="hotel-index"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="hotel-index"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="hotel-index"] .page-intro h2{font-size:38px!important}html[data-cc-page="hotel-index"] .page-intro p{font-size:13px!important}}

/* Hotel overview intro follows the same centered hierarchy */
html[data-cc-page="hotel-index"] .hotel-intro{padding:92px 0 100px!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-grid{display:grid!important;grid-template-columns:1fr!important;gap:48px!important;max-width:1120px;margin:0 auto!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-copy{max-width:820px!important;margin:0 auto!important;text-align:center!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-copy h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-copy p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin-left:auto!important;margin-right:auto!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-actions{justify-content:center!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-visual{max-width:980px!important;width:100%!important;margin:0 auto!important}
html[data-cc-page="hotel-index"] .hotel-section-head{max-width:820px!important;text-align:center!important;margin-left:auto!important;margin-right:auto!important}
html[data-cc-page="hotel-index"] .hotel-section-head p{margin-left:auto!important;margin-right:auto!important}

/* V8 footer separation rule */
html[data-cc-page="hotel-index"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="hotel-index"] .header-main{height:92px!important}
html[data-cc-page="hotel-index"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="hotel-index"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="hotel-index"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="hotel-index"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="hotel-index"] .menu{gap:26px!important}
html[data-cc-page="hotel-index"] .brand img{max-height:66px!important}
html[data-cc-page="hotel-index"] .hero .eyebrow, html[data-cc-page="hotel-index"] .hero-kicker, html[data-cc-page="hotel-index"] .hero-kicker.eyebrow, html[data-cc-page="hotel-index"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="hotel-index"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="hotel-index"] .menu{gap:18px!important}html[data-cc-page="hotel-index"] .menu>a, html[data-cc-page="hotel-index"] .menu-link{font-size:10px!important}html[data-cc-page="hotel-index"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="hotel-index"] .header-main{height:72px!important}html[data-cc-page="hotel-index"] .brand img{max-height:46px!important}html[data-cc-page="hotel-index"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="hotel-index"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-index"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="hotel-index"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-index"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="hotel-index"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="hotel-index"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="hotel-index"] .internal-banner .hero-inner, html[data-cc-page="hotel-index"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-index"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="hotel-index"] .internal-banner .hero-copy, html[data-cc-page="hotel-index"] .internal-banner .offers-page-hero-copy, html[data-cc-page="hotel-index"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="hotel-index"] .internal-banner .hero-kicker, html[data-cc-page="hotel-index"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="hotel-index"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="hotel-index"] .internal-banner .cl7-kicker, html[data-cc-page="hotel-index"] .internal-banner h1, html[data-cc-page="hotel-index"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="hotel-index"] .internal-banner .hero-kicker::before, html[data-cc-page="hotel-index"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="hotel-index"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="hotel-index"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-index"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="hotel-index"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="hotel-index"] .internal-banner .hero-inner, html[data-cc-page="hotel-index"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-index"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="hotel-index"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-index"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="hotel-index"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="hotel-index"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-index"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="hotel-index"] .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;
}
html[data-cc-page="hotel-index"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="hotel-index"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="hotel-index"] .footer-reference::after{display:none!important;}
html[data-cc-page="hotel-index"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="hotel-index"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="hotel-index"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="hotel-index"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="hotel-index"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="hotel-index"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="hotel-index"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="hotel-index"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="hotel-index"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="hotel-index"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="hotel-index"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="hotel-index"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="hotel-index"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="hotel-index"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="hotel-index"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="hotel-index"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="hotel-index"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="hotel-index"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="hotel-index"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="hotel-index"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="hotel-index"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="hotel-index"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="hotel-index"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="hotel-index"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="hotel-index"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="hotel-index"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="hotel-index"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="hotel-index"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="hotel-index"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="hotel-index"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="hotel-index"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="hotel-index"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="hotel-index"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="hotel-index"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="hotel-index"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="hotel-index"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="hotel-index"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="hotel-index"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="hotel-index"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="hotel-index"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="hotel-index"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="hotel-index"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="hotel-index"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="hotel-index"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-index"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="hotel-index"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="hotel-index"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-index"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="hotel-index"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="hotel-index"] .footer-reference-brand, html[data-cc-page="hotel-index"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-index"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="hotel-index"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="hotel-index"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="hotel-index"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-index"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="hotel-index"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="hotel-index"] .footer-reference-brand, html[data-cc-page="hotel-index"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="hotel-index"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="hotel-index"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="hotel-index"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="hotel-index"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="hotel-index"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="hotel-index"] .footer-reference-form button{min-height:52px;}
}


/* FINAL DEMO V11 - standard hotel footer from Hotel_Dining.html */
html[data-cc-page="hotel-index"] .footer{background:#111113!important;color:#fff!important;position:relative!important}
html[data-cc-page="hotel-index"] .footer .footer-main{padding:72px 0 58px!important;display:grid!important;grid-template-columns:1.1fr .7fr .85fr 1.2fr!important;gap:70px!important}
html[data-cc-page="hotel-index"] .footer .footer-logo{width:170px!important;height:auto!important;object-fit:contain!important}
html[data-cc-page="hotel-index"] .footer .footer-copy{font-size:12px!important;line-height:1.8!important;color:rgba(255,255,255,.56)!important;max-width:320px!important;margin-top:22px!important}
html[data-cc-page="hotel-index"] .footer h4{font-size:9px!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:rgba(255,255,255,.45)!important;margin-bottom:20px!important}
html[data-cc-page="hotel-index"] .footer .footer-links{display:grid!important;gap:11px!important}
html[data-cc-page="hotel-index"] .footer .footer-links a, html[data-cc-page="hotel-index"] .footer p{font-size:12px!important;line-height:1.65!important;color:rgba(255,255,255,.68)!important}
html[data-cc-page="hotel-index"] .footer .footer-links a:hover{color:#fff!important}
html[data-cc-page="hotel-index"] .footer .footer-contact-card{display:flex!important;align-items:center!important;gap:12px!important;border:1px solid rgba(255,255,255,.14)!important;padding:15px!important;margin-bottom:10px!important;background:transparent!important}
html[data-cc-page="hotel-index"] .footer .footer-contact-card i{color:var(--pink)!important}
html[data-cc-page="hotel-index"] .footer .newsletter{margin-top:22px!important}
html[data-cc-page="hotel-index"] .footer .newsletter-form{display:flex!important;border:1px solid rgba(255,255,255,.18)!important;min-height:48px!important;background:transparent!important}
html[data-cc-page="hotel-index"] .footer .newsletter-form input{flex:1!important;min-width:0!important;border:0!important;background:transparent!important;color:#fff!important;padding:0 14px!important;outline:0!important}
html[data-cc-page="hotel-index"] .footer .newsletter-form button{border:0!important;background:var(--pink)!important;color:#fff!important;padding:0 18px!important;font-size:9px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important}
html[data-cc-page="hotel-index"] .footer .footer-social{display:flex!important;gap:8px!important;margin-top:20px!important}
html[data-cc-page="hotel-index"] .footer .footer-social a{width:37px!important;height:37px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important}
html[data-cc-page="hotel-index"] .footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1)!important;padding:22px 0 26px!important;display:flex!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important;font-size:10px!important;line-height:1.5!important;color:rgba(255,255,255,.52)!important;background:transparent!important}
html[data-cc-page="hotel-index"] .footer .footer-bottom nav{display:flex!important;gap:18px!important;flex-wrap:wrap!important}
html[data-cc-page="hotel-index"] .footer .footer-bottom a{color:rgba(255,255,255,.62)!important}
html[data-cc-page="hotel-index"] .footer .footer-bottom a:hover{color:#fff!important}
@media(max-width:1050px){html[data-cc-page="hotel-index"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:45px!important}}
@media(max-width:820px){html[data-cc-page="hotel-index"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:38px 28px!important;padding-top:55px!important}html[data-cc-page="hotel-index"] .footer .footer-brand{grid-column:1/3!important}}
@media(max-width:560px){html[data-cc-page="hotel-index"] .footer .footer-main{grid-template-columns:1fr!important}html[data-cc-page="hotel-index"] .footer .footer-brand{grid-column:auto!important}html[data-cc-page="hotel-index"] .footer .footer-bottom{display:block!important}html[data-cc-page="hotel-index"] .footer .footer-bottom nav{margin-top:12px!important}}


/* FINAL DEMO V12 - overview clarity and editorial dining */
html[data-cc-page="hotel-index"] .hotel-numbers .number-item{padding:38px 24px 42px!important}html[data-cc-page="hotel-index"] .number-icon-v12{display:block;font-size:24px;color:#d78ab6;margin-bottom:17px}html[data-cc-page="hotel-index"] .hotel-numbers .number-item strong{font-size:50px!important;line-height:1!important;color:#fff!important}html[data-cc-page="hotel-index"] .hotel-numbers .number-item small{font-size:11px!important;line-height:1.35!important;letter-spacing:.11em!important;font-weight:600!important;color:rgba(255,255,255,.82)!important;margin-top:11px!important}
html[data-cc-page="hotel-index"] .hotel-dining-story-v12{padding:135px 0;background:#f7f5f5}html[data-cc-page="hotel-index"] .hotel-dining-story-grid-v12{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);gap:72px;align-items:center}html[data-cc-page="hotel-index"] .hotel-dining-story-image-v12{height:650px;overflow:hidden}html[data-cc-page="hotel-index"] .hotel-dining-story-image-v12 img{width:100%;height:100%;object-fit:cover}html[data-cc-page="hotel-index"] .hotel-dining-story-copy-v12 h2{font-family:var(--display);font-size:clamp(52px,5vw,76px);font-weight:400;line-height:.98;letter-spacing:-.04em;margin:14px 0 24px}html[data-cc-page="hotel-index"] .hotel-dining-story-copy-v12 p{font-size:14px;line-height:1.9;color:var(--muted);max-width:500px;margin-bottom:30px}html[data-cc-page="hotel-index"] .location-nearby-v12{display:grid;gap:0;margin:30px 0 32px}html[data-cc-page="hotel-index"] .location-nearby-v12 span{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(23,23,23,.12)}html[data-cc-page="hotel-index"] .location-nearby-v12 span:first-child{border-top:1px solid rgba(23,23,23,.12)}html[data-cc-page="hotel-index"] .location-nearby-v12 i{color:var(--pink);font-size:14px}html[data-cc-page="hotel-index"] .location-nearby-v12 b{font-size:12px;font-weight:600;color:#2b2829}html[data-cc-page="hotel-index"] .location-nearby-v12 strong{font-family:var(--display);font-size:21px;font-weight:400;color:var(--pink);white-space:nowrap}html[data-cc-page="hotel-index"] .footer .reveal, html[data-cc-page="hotel-index"] .footer .reveal-left, html[data-cc-page="hotel-index"] .footer .reveal-right{filter:none!important}
@media(max-width:900px){html[data-cc-page="hotel-index"] .hotel-dining-story-grid-v12{grid-template-columns:1fr;gap:42px}html[data-cc-page="hotel-index"] .hotel-dining-story-image-v12{height:520px}}
@media(max-width:620px){html[data-cc-page="hotel-index"] .hotel-numbers .numbers-grid{grid-template-columns:1fr 1fr!important}html[data-cc-page="hotel-index"] .hotel-numbers .number-item{border-bottom:1px solid rgba(255,255,255,.13)!important}html[data-cc-page="hotel-index"] .hotel-dining-story-v12{padding:90px 0}html[data-cc-page="hotel-index"] .hotel-dining-story-image-v12{height:420px}html[data-cc-page="hotel-index"] .hotel-dining-story-copy-v12 h2{font-size:46px}html[data-cc-page="hotel-index"] .location-nearby-v12 b{font-size:11px}html[data-cc-page="hotel-index"] .location-nearby-v12 strong{font-size:19px}}


/* FINAL DEMO V13 - Hotel Overview polish */

/* 1) Give each section its own visual rhythm - no flat same-background flow. */
html[data-cc-page="hotel-index"] .hotel-intro{background:#fff!important;padding:110px 0 118px!important}
html[data-cc-page="hotel-index"] .rooms-zone{background:#f5f2f3!important;padding-top:118px!important;padding-bottom:122px!important}
html[data-cc-page="hotel-index"] .hotel-numbers{background:#161416!important;color:#fff!important;border:0!important;padding:102px 0 108px!important}
html[data-cc-page="hotel-index"] .experiences-zone{background:#fff!important;padding-top:118px!important;padding-bottom:122px!important}
html[data-cc-page="hotel-index"] .offers-zone{background:#f6f2f4!important;padding-top:118px!important;padding-bottom:122px!important}
html[data-cc-page="hotel-index"] .hotel-location{background:#fbf9f8!important;padding-top:118px!important;padding-bottom:122px!important}
html[data-cc-page="hotel-index"] body>section:last-of-type{border-bottom:0!important}

/* 2) Overview intro - copy and imagery live on the same horizontal plane. */
html[data-cc-page="hotel-index"] .hotel-intro .intro-grid{
    display:grid!important;
    grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr)!important;
    gap:78px!important;
    align-items:center!important;
    max-width:1420px!important;
    margin:0 auto!important;
}
html[data-cc-page="hotel-index"] .hotel-intro .intro-copy{
    max-width:590px!important;
    margin:0!important;
    text-align:left!important;
    padding-left:2px!important;
}
html[data-cc-page="hotel-index"] .hotel-intro .intro-copy h2{
    font-size:clamp(48px,4.25vw,68px)!important;
    line-height:.98!important;
    margin:16px 0 22px!important;
}
html[data-cc-page="hotel-index"] .hotel-intro .intro-copy p{
    font-size:15px!important;
    line-height:1.82!important;
    max-width:555px!important;
    margin:0 0 13px!important;
    color:#666064!important;
}
html[data-cc-page="hotel-index"] .hotel-intro .intro-actions{justify-content:flex-start!important;margin-top:28px!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-visual{
    min-height:560px!important;
    max-width:none!important;
    width:100%!important;
    margin:0!important;
}
html[data-cc-page="hotel-index"] .hotel-intro .intro-main{width:86%!important;height:500px!important;right:0!important;top:0!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-mini{width:35%!important;height:215px!important;left:0!important;bottom:0!important;border:10px solid #fff!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-stat{right:0!important;bottom:8px!important;padding:23px 30px!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-stat strong{font-size:42px!important}
html[data-cc-page="hotel-index"] .hotel-intro .intro-stat span{font-size:10px!important;letter-spacing:.12em!important}

/* 3) Room card readability + commercial price hierarchy. */
html[data-cc-page="hotel-index"] .room-stage-copy{padding:50px 50px 46px!important}
html[data-cc-page="hotel-index"] .room-stage-copy h3{font-size:50px!important;margin:8px 0 18px!important}
html[data-cc-page="hotel-index"] .room-stage-copy p{font-size:15px!important;line-height:1.76!important;color:#696366!important}
html[data-cc-page="hotel-index"] .room-facts{gap:20px 24px!important;margin-top:24px!important;padding-top:22px!important}
html[data-cc-page="hotel-index"] .room-facts span{font-size:11px!important;line-height:1.5!important;color:#777174!important}
html[data-cc-page="hotel-index"] .room-facts b{font-size:13px!important;margin-bottom:4px!important;color:#201e1f!important}
html[data-cc-page="hotel-index"] .room-price-v13{
    display:flex;
    align-items:baseline;
    gap:8px;
    margin:24px 0 2px;
    color:#1c191b;
}
html[data-cc-page="hotel-index"] .room-price-v13 span, html[data-cc-page="hotel-index"] .room-price-v13 small{
    font-size:10px;
    font-weight:600;
    letter-spacing:.11em;
    text-transform:uppercase;
    color:#8b8286;
}
html[data-cc-page="hotel-index"] .room-price-v13 strong{
    font-family:var(--display);
    font-size:30px;
    line-height:1;
    font-weight:400;
    color:var(--pink);
}

/* 4) At a glance - high contrast, larger labels, more refined icon treatment. */
html[data-cc-page="hotel-index"] .hotel-numbers .numbers-head{margin-bottom:48px!important}
html[data-cc-page="hotel-index"] .hotel-numbers .numbers-head .eyebrow{color:#d990b9!important}
html[data-cc-page="hotel-index"] .hotel-numbers .numbers-head h2{color:#fff!important}
html[data-cc-page="hotel-index"] .hotel-numbers .numbers-grid{
    border-top:1px solid rgba(255,255,255,.14)!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
}
html[data-cc-page="hotel-index"] .hotel-numbers .number-item{
    min-height:230px!important;
    padding:34px 22px 38px!important;
    border-color:rgba(255,255,255,.12)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
}
html[data-cc-page="hotel-index"] .hotel-numbers .number-icon-v12{
    width:54px!important;
    height:54px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:18px!important;
    color:#fff!important;
    margin:0 0 17px!important;
    background:rgba(255,255,255,.035)!important;
}
html[data-cc-page="hotel-index"] .hotel-numbers .number-item strong{
    color:#fff!important;
    font-size:48px!important;
    line-height:.95!important;
    letter-spacing:-.02em!important;
}
html[data-cc-page="hotel-index"] .hotel-numbers .number-item small{
    color:rgba(255,255,255,.84)!important;
    font-size:12px!important;
    line-height:1.4!important;
    font-weight:600!important;
    letter-spacing:.09em!important;
    margin-top:12px!important;
}

/* 5) Dining - lighter, editorial and less blocky than the previous huge image. */
html[data-cc-page="hotel-index"] .hotel-dining-story-v13{background:#efe8e3;padding:118px 0 122px;overflow:hidden}
html[data-cc-page="hotel-index"] .hotel-dining-story-grid-v13{
    display:grid;
    grid-template-columns:minmax(520px,1.18fr) minmax(330px,.82fr);
    gap:86px;
    align-items:center;
}
html[data-cc-page="hotel-index"] .hotel-dining-visual-v13{position:relative;min-height:570px}
html[data-cc-page="hotel-index"] .hotel-dining-main-v13{position:absolute;left:0;top:0;width:88%;height:505px;overflow:hidden}
html[data-cc-page="hotel-index"] .hotel-dining-main-v13 img, html[data-cc-page="hotel-index"] .hotel-dining-inset-v13 img{width:100%;height:100%;object-fit:cover}
html[data-cc-page="hotel-index"] .hotel-dining-inset-v13{
    position:absolute;
    right:0;
    bottom:0;
    width:36%;
    height:235px;
    border:10px solid #efe8e3;
    overflow:hidden;
}
html[data-cc-page="hotel-index"] .hotel-dining-copy-v13{max-width:450px;padding-right:10px}
html[data-cc-page="hotel-index"] .hotel-dining-copy-v13 h2{
    font-family:var(--display);
    font-size:clamp(48px,4.4vw,68px);
    font-weight:400;
    line-height:.98;
    letter-spacing:-.04em;
    margin:15px 0 22px;
}
html[data-cc-page="hotel-index"] .hotel-dining-copy-v13 p{
    max-width:410px;
    font-size:15px;
    line-height:1.82;
    color:#655e61;
    margin:0 0 29px;
}

/* 6) Footer - enforce the same centered content rails used by the rest of the site. */
html[data-cc-page="hotel-index"] .footer>.container.footer-main, html[data-cc-page="hotel-index"] .footer>.container.footer-bottom{
    width:min(100% - 96px,1420px)!important;
    max-width:1420px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}
html[data-cc-page="hotel-index"] .footer .footer-main{padding-left:0!important;padding-right:0!important}
html[data-cc-page="hotel-index"] .footer .footer-bottom{padding-left:0!important;padding-right:0!important}

@media(max-width:1100px){
    html[data-cc-page="hotel-index"] .hotel-intro .intro-grid{grid-template-columns:.9fr 1.1fr!important;gap:50px!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-visual{min-height:500px!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-main{height:450px!important}
    html[data-cc-page="hotel-index"] .hotel-dining-story-grid-v13{grid-template-columns:1.08fr .92fr;gap:52px}
    html[data-cc-page="hotel-index"] .hotel-dining-visual-v13{min-height:500px}
    html[data-cc-page="hotel-index"] .hotel-dining-main-v13{height:445px}
}
@media(max-width:900px){
    html[data-cc-page="hotel-index"] .hotel-intro .intro-grid{grid-template-columns:1fr!important;gap:52px!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-copy{text-align:center!important;margin:0 auto!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-copy p{margin-left:auto!important;margin-right:auto!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-actions{justify-content:center!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-visual{max-width:760px!important;margin:0 auto!important}
    html[data-cc-page="hotel-index"] .hotel-dining-story-grid-v13{grid-template-columns:1fr;gap:48px}
    html[data-cc-page="hotel-index"] .hotel-dining-visual-v13{min-height:520px;max-width:760px;width:100%;margin:0 auto}
    html[data-cc-page="hotel-index"] .hotel-dining-main-v13{height:470px}
    html[data-cc-page="hotel-index"] .hotel-dining-copy-v13{max-width:620px;text-align:center;margin:0 auto;padding-right:0}
    html[data-cc-page="hotel-index"] .hotel-dining-copy-v13 p{margin-left:auto;margin-right:auto}
    html[data-cc-page="hotel-index"] .footer>.container.footer-main, html[data-cc-page="hotel-index"] .footer>.container.footer-bottom{width:min(100% - 54px,1420px)!important}
}
@media(max-width:620px){
    html[data-cc-page="hotel-index"] .hotel-intro{padding:78px 0 86px!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-copy{text-align:left!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-actions{justify-content:flex-start!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-visual{min-height:390px!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-main{width:100%!important;height:360px!important}
    html[data-cc-page="hotel-index"] .hotel-intro .intro-mini{display:none!important}
    html[data-cc-page="hotel-index"] .room-stage-copy{padding:30px 24px 32px!important}
    html[data-cc-page="hotel-index"] .room-stage-copy h3{font-size:38px!important}
    html[data-cc-page="hotel-index"] .room-stage-copy p{font-size:14px!important}
    html[data-cc-page="hotel-index"] .room-price-v13 strong{font-size:27px}
    html[data-cc-page="hotel-index"] .hotel-numbers{padding:78px 0 82px!important}
    html[data-cc-page="hotel-index"] .hotel-numbers .number-item{min-height:195px!important;padding:26px 10px 30px!important}
    html[data-cc-page="hotel-index"] .hotel-numbers .number-icon-v12{width:46px!important;height:46px!important;font-size:16px!important}
    html[data-cc-page="hotel-index"] .hotel-numbers .number-item strong{font-size:38px!important}
    html[data-cc-page="hotel-index"] .hotel-numbers .number-item small{font-size:10px!important;letter-spacing:.07em!important}
    html[data-cc-page="hotel-index"] .hotel-dining-story-v13{padding:82px 0 88px}
    html[data-cc-page="hotel-index"] .hotel-dining-visual-v13{min-height:390px}
    html[data-cc-page="hotel-index"] .hotel-dining-main-v13{width:100%;height:350px}
    html[data-cc-page="hotel-index"] .hotel-dining-inset-v13{width:38%;height:155px;border-width:7px}
    html[data-cc-page="hotel-index"] .hotel-dining-copy-v13{text-align:left}
    html[data-cc-page="hotel-index"] .hotel-dining-copy-v13 h2{font-size:44px}
    html[data-cc-page="hotel-index"] .hotel-dining-copy-v13 p{font-size:14px;margin-left:0;margin-right:0}
    html[data-cc-page="hotel-index"] .footer>.container.footer-main, html[data-cc-page="hotel-index"] .footer>.container.footer-bottom{width:calc(100% - 30px)!important}
}

/* ============================================================
   PAGE: hotel-meetings-events   (Hotel_Meetings_Events.html)
   ============================================================ */
html[data-cc-page="hotel-meetings-events"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="hotel-meetings-events"], html[data-cc-page="hotel-meetings-events"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="hotel-meetings-events"]{scroll-behavior:smooth}html[data-cc-page="hotel-meetings-events"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="hotel-meetings-events"] a{text-decoration:none;color:inherit}html[data-cc-page="hotel-meetings-events"] img, html[data-cc-page="hotel-meetings-events"] video{display:block;width:100%}html[data-cc-page="hotel-meetings-events"] button, html[data-cc-page="hotel-meetings-events"] input, html[data-cc-page="hotel-meetings-events"] textarea{font:inherit}html[data-cc-page="hotel-meetings-events"] button{cursor:pointer}html[data-cc-page="hotel-meetings-events"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="hotel-meetings-events"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-meetings-events"] .in-view .section-rule, html[data-cc-page="hotel-meetings-events"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="hotel-meetings-events"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="hotel-meetings-events"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="hotel-meetings-events"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="hotel-meetings-events"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="hotel-meetings-events"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="hotel-meetings-events"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="hotel-meetings-events"] .btn-white{background:#fff;color:#111}html[data-cc-page="hotel-meetings-events"] .btn-white::before{background:var(--pink)}html[data-cc-page="hotel-meetings-events"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="hotel-meetings-events"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-meetings-events"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="hotel-meetings-events"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="hotel-meetings-events"] .header.sticky .topbar{display:none}html[data-cc-page="hotel-meetings-events"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="hotel-meetings-events"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="hotel-meetings-events"] .header-main{height:102px}html[data-cc-page="hotel-meetings-events"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="hotel-meetings-events"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="hotel-meetings-events"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="hotel-meetings-events"] .brand-dark{display:none}html[data-cc-page="hotel-meetings-events"] .header.sticky .brand-light{display:none}html[data-cc-page="hotel-meetings-events"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="hotel-meetings-events"] .header.sticky .brand{width:210px}html[data-cc-page="hotel-meetings-events"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="hotel-meetings-events"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="hotel-meetings-events"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="hotel-meetings-events"] .menu a:hover::after, html[data-cc-page="hotel-meetings-events"] .menu a.active::after{right:0}html[data-cc-page="hotel-meetings-events"] .header-book{margin-left:32px}html[data-cc-page="hotel-meetings-events"] .lang{position:relative}html[data-cc-page="hotel-meetings-events"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="hotel-meetings-events"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-meetings-events"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="hotel-meetings-events"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-meetings-events"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="hotel-meetings-events"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="hotel-meetings-events"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="hotel-meetings-events"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="hotel-meetings-events"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="hotel-meetings-events"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="hotel-meetings-events"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="hotel-meetings-events"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="hotel-meetings-events"] .drawer.open{transform:none}html[data-cc-page="hotel-meetings-events"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="hotel-meetings-events"] .drawer-head img{width:150px}html[data-cc-page="hotel-meetings-events"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="hotel-meetings-events"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="hotel-meetings-events"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="hotel-meetings-events"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="hotel-meetings-events"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="hotel-meetings-events"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="hotel-meetings-events"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-meetings-events"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="hotel-meetings-events"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="hotel-meetings-events"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_hotelmeetingsevents 9s ease-in-out both}html[data-cc-page="hotel-meetings-events"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_hotelmeetingsevents{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="hotel-meetings-events"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="hotel-meetings-events"] .hero-copy{max-width:800px}html[data-cc-page="hotel-meetings-events"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="hotel-meetings-events"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="hotel-meetings-events"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="hotel-meetings-events"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="hotel-meetings-events"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="hotel-meetings-events"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="hotel-meetings-events"] .reveal, html[data-cc-page="hotel-meetings-events"] .reveal-left, html[data-cc-page="hotel-meetings-events"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-meetings-events"] .reveal{transform:translateY(44px)}html[data-cc-page="hotel-meetings-events"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="hotel-meetings-events"] .reveal-right{transform:translateX(60px)}html[data-cc-page="hotel-meetings-events"] .reveal.in-view, html[data-cc-page="hotel-meetings-events"] .reveal-left.in-view, html[data-cc-page="hotel-meetings-events"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="hotel-meetings-events"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-meetings-events"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="hotel-meetings-events"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="hotel-meetings-events"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="hotel-meetings-events"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="hotel-meetings-events"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="hotel-meetings-events"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="hotel-meetings-events"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="hotel-meetings-events"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="hotel-meetings-events"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-meetings-events"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="hotel-meetings-events"] .intro-section{padding:150px 0}html[data-cc-page="hotel-meetings-events"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="hotel-meetings-events"] .intro-grid h2, html[data-cc-page="hotel-meetings-events"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="hotel-meetings-events"] .intro-grid p, html[data-cc-page="hotel-meetings-events"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="hotel-meetings-events"] .section-heading{margin-bottom:58px}html[data-cc-page="hotel-meetings-events"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="hotel-meetings-events"] .section-heading h2{max-width:850px}html[data-cc-page="hotel-meetings-events"] .section-heading p{margin-top:20px}html[data-cc-page="hotel-meetings-events"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="hotel-meetings-events"] .footer{background:#111113;color:#fff}html[data-cc-page="hotel-meetings-events"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="hotel-meetings-events"] .footer-logo{width:170px}html[data-cc-page="hotel-meetings-events"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="hotel-meetings-events"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="hotel-meetings-events"] .footer-links{display:grid;gap:11px}html[data-cc-page="hotel-meetings-events"] .footer-links a, html[data-cc-page="hotel-meetings-events"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="hotel-meetings-events"] .footer-links a:hover{color:#fff}html[data-cc-page="hotel-meetings-events"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="hotel-meetings-events"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .newsletter{margin-top:22px}html[data-cc-page="hotel-meetings-events"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="hotel-meetings-events"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="hotel-meetings-events"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="hotel-meetings-events"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="hotel-meetings-events"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="hotel-meetings-events"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="hotel-meetings-events"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="hotel-meetings-events"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="hotel-meetings-events"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="hotel-meetings-events"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="hotel-meetings-events"] .container{width:calc(100% - 44px)}html[data-cc-page="hotel-meetings-events"] .menu{gap:18px}html[data-cc-page="hotel-meetings-events"] .menu a{font-size:10px}html[data-cc-page="hotel-meetings-events"] .header-book{margin-left:20px}html[data-cc-page="hotel-meetings-events"] .intro-grid{gap:65px}html[data-cc-page="hotel-meetings-events"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="hotel-meetings-events"] body{padding-bottom:68px}html[data-cc-page="hotel-meetings-events"] .container{width:calc(100% - 30px)}html[data-cc-page="hotel-meetings-events"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="hotel-meetings-events"] .topbar, html[data-cc-page="hotel-meetings-events"] .menu, html[data-cc-page="hotel-meetings-events"] .header-book{display:none}html[data-cc-page="hotel-meetings-events"] .header-main{height:72px}html[data-cc-page="hotel-meetings-events"] .brand{width:180px}html[data-cc-page="hotel-meetings-events"] .brand-light{display:none!important}html[data-cc-page="hotel-meetings-events"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="hotel-meetings-events"] .mobile-actions{display:flex}html[data-cc-page="hotel-meetings-events"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="hotel-meetings-events"] .hero-inner{padding-bottom:70px}html[data-cc-page="hotel-meetings-events"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="hotel-meetings-events"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="hotel-meetings-events"] .hero-place{display:none}html[data-cc-page="hotel-meetings-events"] .intro-section{padding:105px 0}html[data-cc-page="hotel-meetings-events"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="hotel-meetings-events"] .intro-grid h2, html[data-cc-page="hotel-meetings-events"] .section-heading h2{font-size:48px}html[data-cc-page="hotel-meetings-events"] .section-heading{margin-bottom:40px}html[data-cc-page="hotel-meetings-events"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="hotel-meetings-events"] .footer-brand{grid-column:1/3}html[data-cc-page="hotel-meetings-events"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="hotel-meetings-events"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="hotel-meetings-events"] .hero{min-height:600px}html[data-cc-page="hotel-meetings-events"] .hero h1{font-size:45px}html[data-cc-page="hotel-meetings-events"] .hero-actions .btn{width:100%}html[data-cc-page="hotel-meetings-events"] .intro-grid h2, html[data-cc-page="hotel-meetings-events"] .section-heading h2{font-size:42px}html[data-cc-page="hotel-meetings-events"] .footer-main{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .footer-brand{grid-column:auto}html[data-cc-page="hotel-meetings-events"] .footer-bottom{display:block}html[data-cc-page="hotel-meetings-events"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="hotel-meetings-events"], html[data-cc-page="hotel-meetings-events"] *{scroll-behavior:auto!important}html[data-cc-page="hotel-meetings-events"] .reveal, html[data-cc-page="hotel-meetings-events"] .reveal-left, html[data-cc-page="hotel-meetings-events"] .reveal-right, html[data-cc-page="hotel-meetings-events"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="hotel-meetings-events"] .image-reveal::after{display:none}html[data-cc-page="hotel-meetings-events"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="hotel-meetings-events"] .page-intro{padding:155px 0 130px}html[data-cc-page="hotel-meetings-events"] .page-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;align-items:start}html[data-cc-page="hotel-meetings-events"] .page-intro h2{font-family:var(--display);font-size:clamp(56px,5.6vw,86px);line-height:.98;letter-spacing:-.045em;font-weight:400}html[data-cc-page="hotel-meetings-events"] .page-intro p{font-size:15px;line-height:1.95;color:var(--muted);max-width:650px}html[data-cc-page="hotel-meetings-events"] .big-space{padding:150px 0}html[data-cc-page="hotel-meetings-events"] .soft-space{padding:150px 0;background:var(--paper)}
html[data-cc-page="hotel-meetings-events"] .rail-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}html[data-cc-page="hotel-meetings-events"] .rail-head h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-meetings-events"] .rail-head p{font-size:14px;line-height:1.85;color:var(--muted);max-width:570px;margin-top:18px}html[data-cc-page="hotel-meetings-events"] .rail-nav{display:flex;gap:8px}html[data-cc-page="hotel-meetings-events"] .rail-nav button{width:48px;height:48px;border:1px solid #ccc;background:#fff;transition:.25s}html[data-cc-page="hotel-meetings-events"] .rail-nav button:hover{background:var(--pink);border-color:var(--pink);color:#fff;transform:translateY(-2px)}
html[data-cc-page="hotel-meetings-events"] .rail-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;scroll-snap-type:x mandatory;user-select:none}html[data-cc-page="hotel-meetings-events"] .rail-viewport::-webkit-scrollbar{display:none}html[data-cc-page="hotel-meetings-events"] .rail-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none}html[data-cc-page="hotel-meetings-events"] .rail-track{display:flex;gap:24px;width:max-content;padding-bottom:4px}html[data-cc-page="hotel-meetings-events"] .rail-card{width:min(500px,38vw);min-width:390px;scroll-snap-align:start;background:#fff;border:1px solid #ece8e9;transition:transform .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-meetings-events"] .rail-card:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(0,0,0,.08)}html[data-cc-page="hotel-meetings-events"] .rail-image{height:360px;overflow:hidden;background:#111}html[data-cc-page="hotel-meetings-events"] .rail-image img{height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-meetings-events"] .rail-card:hover .rail-image img{transform:scale(1.045)}html[data-cc-page="hotel-meetings-events"] .rail-copy{padding:30px 30px 34px}html[data-cc-page="hotel-meetings-events"] .rail-meta{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8b8688;margin-bottom:14px}html[data-cc-page="hotel-meetings-events"] .rail-meta span:first-child{color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .rail-copy h3{font-family:var(--display);font-size:36px;line-height:1.05;font-weight:400}html[data-cc-page="hotel-meetings-events"] .rail-copy p{font-size:12px;line-height:1.8;color:var(--muted);margin:14px 0 22px;max-width:410px}html[data-cc-page="hotel-meetings-events"] .text-link{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .text-link i{transition:transform .25s}html[data-cc-page="hotel-meetings-events"] .text-link:hover i{transform:translateX(5px)}
html[data-cc-page="hotel-meetings-events"] .rail-progress{position:relative;height:20px;margin-top:25px;display:flex;align-items:center;cursor:pointer}html[data-cc-page="hotel-meetings-events"] .rail-progress::before{content:"";position:absolute;left:0;right:0;height:2px;background:#dedadb}html[data-cc-page="hotel-meetings-events"] .rail-progress span{position:absolute;left:0;height:4px;width:28%;background:var(--pink);transition:left .1s linear,width .2s ease;border-radius:5px}
html[data-cc-page="hotel-meetings-events"] .editorial-split{display:grid;grid-template-columns:1.1fr .9fr;gap:25px;align-items:stretch}html[data-cc-page="hotel-meetings-events"] .editorial-split.reverse{grid-template-columns:.9fr 1.1fr}html[data-cc-page="hotel-meetings-events"] .editorial-split.reverse .split-visual{order:2}html[data-cc-page="hotel-meetings-events"] .split-visual{min-height:650px}html[data-cc-page="hotel-meetings-events"] .split-panel{padding:70px;display:flex;flex-direction:column;justify-content:center;background:#fff}html[data-cc-page="hotel-meetings-events"] .split-panel h2{font-family:var(--display);font-size:clamp(50px,4.6vw,72px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="hotel-meetings-events"] .split-panel p{font-size:14px;line-height:1.9;color:var(--muted);margin:24px 0 28px;max-width:560px}html[data-cc-page="hotel-meetings-events"] .fact-row{display:flex;gap:32px;flex-wrap:wrap;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}html[data-cc-page="hotel-meetings-events"] .fact-row strong{font-family:var(--display);font-size:28px;font-weight:400;color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .fact-row small{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#888;margin-top:4px}
html[data-cc-page="hotel-meetings-events"] .object-motion{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-meetings-events"] .object-motion.in-view{opacity:1;transform:none}html[data-cc-page="hotel-meetings-events"] .object-motion:nth-child(even){transform:translateY(34px) translateX(20px)}html[data-cc-page="hotel-meetings-events"] .object-motion:nth-child(even).in-view{transform:none}
@media(max-width:900px){html[data-cc-page="hotel-meetings-events"] .page-intro-grid, html[data-cc-page="hotel-meetings-events"] .editorial-split, html[data-cc-page="hotel-meetings-events"] .editorial-split.reverse{grid-template-columns:1fr;gap:28px}html[data-cc-page="hotel-meetings-events"] .editorial-split.reverse .split-visual{order:0}html[data-cc-page="hotel-meetings-events"] .page-intro{padding:110px 0 95px}html[data-cc-page="hotel-meetings-events"] .big-space, html[data-cc-page="hotel-meetings-events"] .soft-space{padding:105px 0}html[data-cc-page="hotel-meetings-events"] .rail-head{display:block}html[data-cc-page="hotel-meetings-events"] .rail-nav{margin-top:24px}html[data-cc-page="hotel-meetings-events"] .rail-card{width:76vw;min-width:330px}html[data-cc-page="hotel-meetings-events"] .split-visual{min-height:520px}html[data-cc-page="hotel-meetings-events"] .split-panel{padding:48px 36px}}
@media(max-width:560px){html[data-cc-page="hotel-meetings-events"] .rail-card{width:88vw;min-width:280px}html[data-cc-page="hotel-meetings-events"] .rail-image{height:310px}html[data-cc-page="hotel-meetings-events"] .rail-copy{padding:24px}html[data-cc-page="hotel-meetings-events"] .split-panel{padding:36px 24px}html[data-cc-page="hotel-meetings-events"] .split-visual{min-height:430px}html[data-cc-page="hotel-meetings-events"] .page-intro h2{font-size:48px}html[data-cc-page="hotel-meetings-events"] .rail-head h2{font-size:46px}}
html[data-cc-page="hotel-meetings-events"] .event-facts{padding:0 0 140px}html[data-cc-page="hotel-meetings-events"] .event-fact-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}html[data-cc-page="hotel-meetings-events"] .event-fact{padding:36px 26px;border-right:1px solid var(--line)}html[data-cc-page="hotel-meetings-events"] .event-fact:last-child{border-right:0}html[data-cc-page="hotel-meetings-events"] .event-fact strong{display:block;font-family:var(--display);font-size:45px;font-weight:400;color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .event-fact span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#777}html[data-cc-page="hotel-meetings-events"] .setup-section{padding:150px 0;background:#111113;color:#fff}html[data-cc-page="hotel-meetings-events"] .setup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.15);margin-top:55px}html[data-cc-page="hotel-meetings-events"] .setup{background:#111113;padding:42px}html[data-cc-page="hotel-meetings-events"] .setup i{color:var(--pink);font-size:24px;margin-bottom:28px}html[data-cc-page="hotel-meetings-events"] .setup h3{font-family:var(--display);font-size:34px;font-weight:400}html[data-cc-page="hotel-meetings-events"] .setup p{font-size:12px;line-height:1.8;color:rgba(255,255,255,.58);margin-top:12px}@media(max-width:800px){html[data-cc-page="hotel-meetings-events"] .event-fact-grid, html[data-cc-page="hotel-meetings-events"] .setup-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){html[data-cc-page="hotel-meetings-events"] .event-fact-grid, html[data-cc-page="hotel-meetings-events"] .setup-grid{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .event-fact{border-right:0;border-bottom:1px solid var(--line)}}
/* Final v2 - hotel navigation clarity */
html[data-cc-page="hotel-meetings-events"] .drawer-back-group{color:var(--pink)!important;font-weight:600!important;border-bottom:1px solid rgba(169,0,97,.18)!important;margin-bottom:5px}html[data-cc-page="hotel-meetings-events"] .drawer-back-group i{font-size:11px;margin-right:8px}html[data-cc-page="hotel-meetings-events"] .menu a.active, html[data-cc-page="hotel-meetings-events"] .menu-link.active{color:var(--pink)}


/* FINAL DEMO V4 REVIEW FIXES */

html[data-cc-page="hotel-meetings-events"] .image-reveal, html[data-cc-page="hotel-meetings-events"] .rail-image{background:#f2eff0}
html[data-cc-page="hotel-meetings-events"] .setup-section{background:#f7f5f5!important;color:#171717!important;border-top:1px solid #ece7e9;border-bottom:1px solid #ece7e9}
html[data-cc-page="hotel-meetings-events"] .setup{background:#fff!important;color:#171717!important;border:1px solid #ebe5e8!important}
html[data-cc-page="hotel-meetings-events"] .setup p, html[data-cc-page="hotel-meetings-events"] .setup-section p{color:#6f686c!important}
html[data-cc-page="hotel-meetings-events"] .meeting-dimensions{margin-top:18px;color:var(--pink)!important;font-weight:600;letter-spacing:.02em}



/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="hotel-meetings-events"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="hotel-meetings-events"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="hotel-meetings-events"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="hotel-meetings-events"] .page-intro-grid>div, html[data-cc-page="hotel-meetings-events"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="hotel-meetings-events"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="hotel-meetings-events"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="hotel-meetings-events"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="hotel-meetings-events"] .page-intro .reveal-left, html[data-cc-page="hotel-meetings-events"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="hotel-meetings-events"] .page-intro .reveal-left.in-view, html[data-cc-page="hotel-meetings-events"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="hotel-meetings-events"] .section-heading h2, html[data-cc-page="hotel-meetings-events"] .rail-head h2, html[data-cc-page="hotel-meetings-events"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="hotel-meetings-events"] .section-heading p, html[data-cc-page="hotel-meetings-events"] .rail-head p, html[data-cc-page="hotel-meetings-events"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="hotel-meetings-events"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="hotel-meetings-events"] .page-intro-grid{padding:0 8px}html[data-cc-page="hotel-meetings-events"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="hotel-meetings-events"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="hotel-meetings-events"] .page-intro h2{font-size:38px!important}html[data-cc-page="hotel-meetings-events"] .page-intro p{font-size:13px!important}}

/* V8 footer separation rule */
html[data-cc-page="hotel-meetings-events"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* V9 - compact one-room meetings presentation */
html[data-cc-page="hotel-meetings-events"] .meeting-room-section{padding:45px 0 105px;background:#fff}
html[data-cc-page="hotel-meetings-events"] .meeting-room-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:560px}
html[data-cc-page="hotel-meetings-events"] .meeting-room-media{overflow:hidden;background:#f3f0f1}
html[data-cc-page="hotel-meetings-events"] .meeting-room-media img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="hotel-meetings-events"] .meeting-room-grid:hover .meeting-room-media img{transform:scale(1.025)}
html[data-cc-page="hotel-meetings-events"] .meeting-room-copy{padding:70px 70px 64px;display:flex;flex-direction:column;justify-content:center;background:#fff;border:1px solid #ece7e9;border-left:0}
html[data-cc-page="hotel-meetings-events"] .meeting-room-copy h2{font-family:var(--display);font-size:var(--inner-section-title);line-height:1.03;font-weight:400;letter-spacing:-.035em;margin:12px 0 20px}
html[data-cc-page="hotel-meetings-events"] .meeting-room-copy>p{font-size:13.5px;line-height:1.85;color:var(--muted);max-width:570px}
html[data-cc-page="hotel-meetings-events"] .meeting-room-spec{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:30px 0 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
html[data-cc-page="hotel-meetings-events"] .meeting-room-spec div{padding:18px 12px 18px 0}
html[data-cc-page="hotel-meetings-events"] .meeting-room-spec strong{display:block;font-family:var(--display);font-size:25px;font-weight:400;color:var(--pink)}
html[data-cc-page="hotel-meetings-events"] .meeting-room-spec span{display:block;margin-top:4px;font-size:9px;letter-spacing:.11em;text-transform:uppercase;color:#8c8689}
html[data-cc-page="hotel-meetings-events"] .capacity-section{padding:100px 0 110px;background:#f7f5f5;border-top:1px solid #ece7e9;border-bottom:1px solid #ece7e9}
html[data-cc-page="hotel-meetings-events"] .capacity-head{text-align:center;max-width:780px;margin:0 auto 48px}
html[data-cc-page="hotel-meetings-events"] .capacity-head h2{font-family:var(--display);font-size:var(--inner-section-title);font-weight:400;line-height:1.04;letter-spacing:-.03em;margin:12px 0 15px}
html[data-cc-page="hotel-meetings-events"] .capacity-head p{font-size:13.5px;line-height:1.8;color:var(--muted);max-width:650px;margin:auto}
html[data-cc-page="hotel-meetings-events"] .capacity-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
html[data-cc-page="hotel-meetings-events"] .capacity-card{position:relative;background:#fff;border:1px solid #ebe5e8;padding:30px 18px 28px;text-align:center;min-height:190px;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
html[data-cc-page="hotel-meetings-events"] .capacity-card::before{content:"";position:absolute;left:50%;top:0;width:58px;height:3px;background:var(--pink);transform:translateX(-50%)}
html[data-cc-page="hotel-meetings-events"] .capacity-card:hover{transform:translateY(-6px);box-shadow:0 18px 42px rgba(0,0,0,.07);border-color:#e2d4db}
html[data-cc-page="hotel-meetings-events"] .capacity-card i{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;margin:0 auto 17px;background:#faf4f7;color:var(--pink);font-size:20px}
html[data-cc-page="hotel-meetings-events"] .capacity-card strong{display:block;font-family:var(--display);font-size:34px;line-height:1;font-weight:400}
html[data-cc-page="hotel-meetings-events"] .capacity-card h3{font-family:var(--display);font-size:20px;font-weight:400;margin-top:9px}
html[data-cc-page="hotel-meetings-events"] .capacity-card small{display:block;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#8b8588;margin-top:7px}
html[data-cc-page="hotel-meetings-events"] .event-support-strip{margin-top:35px;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #e5dfe2;border-bottom:1px solid #e5dfe2}
html[data-cc-page="hotel-meetings-events"] .event-support-item{padding:22px 25px;display:grid;grid-template-columns:30px 1fr;gap:13px;border-right:1px solid #e5dfe2;background:transparent}
html[data-cc-page="hotel-meetings-events"] .event-support-item:last-child{border-right:0}html[data-cc-page="hotel-meetings-events"] .event-support-item i{color:var(--pink);margin-top:3px}html[data-cc-page="hotel-meetings-events"] .event-support-item strong{display:block;font-size:12px;margin-bottom:5px}html[data-cc-page="hotel-meetings-events"] .event-support-item p{font-size:11px;line-height:1.65;color:#777;margin:0}
html[data-cc-page="hotel-meetings-events"] .wedding-section{padding:110px 0 115px;background:#fff}
html[data-cc-page="hotel-meetings-events"] .wedding-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}
html[data-cc-page="hotel-meetings-events"] .wedding-copy{padding-left:45px}html[data-cc-page="hotel-meetings-events"] .wedding-copy h2{font-family:var(--display);font-size:var(--inner-section-title);font-weight:400;line-height:1.03;letter-spacing:-.035em;margin:12px 0 20px}html[data-cc-page="hotel-meetings-events"] .wedding-copy p{font-size:13.5px;line-height:1.85;color:var(--muted);max-width:560px;margin-bottom:28px}
html[data-cc-page="hotel-meetings-events"] .wedding-media{position:relative;aspect-ratio:4/3;overflow:hidden}html[data-cc-page="hotel-meetings-events"] .wedding-media::after{content:"";position:absolute;right:-22px;bottom:-22px;width:42%;height:42%;border:1px solid rgba(169,0,97,.34);z-index:-1}html[data-cc-page="hotel-meetings-events"] .wedding-media img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="hotel-meetings-events"] .wedding-media:hover img{transform:scale(1.025)}
@media(max-width:1050px){html[data-cc-page="hotel-meetings-events"] .capacity-grid{grid-template-columns:repeat(3,1fr)}html[data-cc-page="hotel-meetings-events"] .meeting-room-copy{padding:55px 44px}html[data-cc-page="hotel-meetings-events"] .wedding-grid{gap:45px}html[data-cc-page="hotel-meetings-events"] .wedding-copy{padding-left:10px}}
@media(max-width:820px){html[data-cc-page="hotel-meetings-events"] .meeting-room-grid, html[data-cc-page="hotel-meetings-events"] .wedding-grid{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .meeting-room-copy{border-left:1px solid #ece7e9}html[data-cc-page="hotel-meetings-events"] .meeting-room-media{aspect-ratio:16/10}html[data-cc-page="hotel-meetings-events"] .capacity-grid{grid-template-columns:1fr 1fr}html[data-cc-page="hotel-meetings-events"] .event-support-strip{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .event-support-item{border-right:0;border-bottom:1px solid #e5dfe2}html[data-cc-page="hotel-meetings-events"] .event-support-item:last-child{border-bottom:0}html[data-cc-page="hotel-meetings-events"] .wedding-copy{padding:0}html[data-cc-page="hotel-meetings-events"] .wedding-media{order:2}html[data-cc-page="hotel-meetings-events"] .meeting-room-section{padding-top:15px}}
@media(max-width:520px){html[data-cc-page="hotel-meetings-events"] .capacity-grid{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .meeting-room-copy{padding:38px 24px}html[data-cc-page="hotel-meetings-events"] .meeting-room-spec{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .meeting-room-spec div{border-bottom:1px solid var(--line)}html[data-cc-page="hotel-meetings-events"] .meeting-room-spec div:last-child{border-bottom:0}html[data-cc-page="hotel-meetings-events"] .capacity-section, html[data-cc-page="hotel-meetings-events"] .wedding-section{padding:75px 0}html[data-cc-page="hotel-meetings-events"] .wedding-grid{gap:30px}}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="hotel-meetings-events"] .header-main{height:92px!important}
html[data-cc-page="hotel-meetings-events"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="hotel-meetings-events"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="hotel-meetings-events"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="hotel-meetings-events"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="hotel-meetings-events"] .menu{gap:26px!important}
html[data-cc-page="hotel-meetings-events"] .brand img{max-height:66px!important}
html[data-cc-page="hotel-meetings-events"] .hero .eyebrow, html[data-cc-page="hotel-meetings-events"] .hero-kicker, html[data-cc-page="hotel-meetings-events"] .hero-kicker.eyebrow, html[data-cc-page="hotel-meetings-events"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="hotel-meetings-events"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="hotel-meetings-events"] .menu{gap:18px!important}html[data-cc-page="hotel-meetings-events"] .menu>a, html[data-cc-page="hotel-meetings-events"] .menu-link{font-size:10px!important}html[data-cc-page="hotel-meetings-events"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="hotel-meetings-events"] .header-main{height:72px!important}html[data-cc-page="hotel-meetings-events"] .brand img{max-height:46px!important}html[data-cc-page="hotel-meetings-events"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="hotel-meetings-events"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-meetings-events"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="hotel-meetings-events"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="hotel-meetings-events"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="hotel-meetings-events"] .internal-banner .hero-inner, html[data-cc-page="hotel-meetings-events"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="hotel-meetings-events"] .internal-banner .hero-copy, html[data-cc-page="hotel-meetings-events"] .internal-banner .offers-page-hero-copy, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="hotel-meetings-events"] .internal-banner .hero-kicker, html[data-cc-page="hotel-meetings-events"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="hotel-meetings-events"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-kicker, html[data-cc-page="hotel-meetings-events"] .internal-banner h1, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="hotel-meetings-events"] .internal-banner .hero-kicker::before, html[data-cc-page="hotel-meetings-events"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="hotel-meetings-events"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="hotel-meetings-events"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="hotel-meetings-events"] .internal-banner .hero-inner, html[data-cc-page="hotel-meetings-events"] .internal-banner .offers-page-hero-inner, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="hotel-meetings-events"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="hotel-meetings-events"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="hotel-meetings-events"] .internal-banner .offers-page-hero h1, html[data-cc-page="hotel-meetings-events"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="hotel-meetings-events"] .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;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference::after{display:none!important;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="hotel-meetings-events"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="hotel-meetings-events"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="hotel-meetings-events"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="hotel-meetings-events"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="hotel-meetings-events"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="hotel-meetings-events"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="hotel-meetings-events"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="hotel-meetings-events"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="hotel-meetings-events"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="hotel-meetings-events"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="hotel-meetings-events"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="hotel-meetings-events"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-meetings-events"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="hotel-meetings-events"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="hotel-meetings-events"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-brand, html[data-cc-page="hotel-meetings-events"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference>.container.footer-reference-main, html[data-cc-page="hotel-meetings-events"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="hotel-meetings-events"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-brand, html[data-cc-page="hotel-meetings-events"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="hotel-meetings-events"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="hotel-meetings-events"] .footer-reference-form button{min-height:52px;}
}


/* FINAL DEMO V11 - standard hotel footer from Hotel_Dining.html */
html[data-cc-page="hotel-meetings-events"] .footer{background:#111113!important;color:#fff!important;position:relative!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-main{padding:72px 0 58px!important;display:grid!important;grid-template-columns:1.1fr .7fr .85fr 1.2fr!important;gap:70px!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-logo{width:170px!important;height:auto!important;object-fit:contain!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-copy{font-size:12px!important;line-height:1.8!important;color:rgba(255,255,255,.56)!important;max-width:320px!important;margin-top:22px!important}
html[data-cc-page="hotel-meetings-events"] .footer h4{font-size:9px!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:rgba(255,255,255,.45)!important;margin-bottom:20px!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-links{display:grid!important;gap:11px!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-links a, html[data-cc-page="hotel-meetings-events"] .footer p{font-size:12px!important;line-height:1.65!important;color:rgba(255,255,255,.68)!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-links a:hover{color:#fff!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-contact-card{display:flex!important;align-items:center!important;gap:12px!important;border:1px solid rgba(255,255,255,.14)!important;padding:15px!important;margin-bottom:10px!important;background:transparent!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-contact-card i{color:var(--pink)!important}
html[data-cc-page="hotel-meetings-events"] .footer .newsletter{margin-top:22px!important}
html[data-cc-page="hotel-meetings-events"] .footer .newsletter-form{display:flex!important;border:1px solid rgba(255,255,255,.18)!important;min-height:48px!important;background:transparent!important}
html[data-cc-page="hotel-meetings-events"] .footer .newsletter-form input{flex:1!important;min-width:0!important;border:0!important;background:transparent!important;color:#fff!important;padding:0 14px!important;outline:0!important}
html[data-cc-page="hotel-meetings-events"] .footer .newsletter-form button{border:0!important;background:var(--pink)!important;color:#fff!important;padding:0 18px!important;font-size:9px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.1em!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-social{display:flex!important;gap:8px!important;margin-top:20px!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-social a{width:37px!important;height:37px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1)!important;padding:22px 0 26px!important;display:flex!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important;font-size:10px!important;line-height:1.5!important;color:rgba(255,255,255,.52)!important;background:transparent!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-bottom nav{display:flex!important;gap:18px!important;flex-wrap:wrap!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-bottom a{color:rgba(255,255,255,.62)!important}
html[data-cc-page="hotel-meetings-events"] .footer .footer-bottom a:hover{color:#fff!important}
@media(max-width:1050px){html[data-cc-page="hotel-meetings-events"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:45px!important}}
@media(max-width:820px){html[data-cc-page="hotel-meetings-events"] .footer .footer-main{grid-template-columns:1fr 1fr!important;gap:38px 28px!important;padding-top:55px!important}html[data-cc-page="hotel-meetings-events"] .footer .footer-brand{grid-column:1/3!important}}
@media(max-width:560px){html[data-cc-page="hotel-meetings-events"] .footer .footer-main{grid-template-columns:1fr!important}html[data-cc-page="hotel-meetings-events"] .footer .footer-brand{grid-column:auto!important}html[data-cc-page="hotel-meetings-events"] .footer .footer-bottom{display:block!important}html[data-cc-page="hotel-meetings-events"] .footer .footer-bottom nav{margin-top:12px!important}}


/* FINAL DEMO V11 - meetings visual setup plans */
html[data-cc-page="hotel-meetings-events"] .meeting-room-media, html[data-cc-page="hotel-meetings-events"] .wedding-media{overflow:hidden;background:#111}html[data-cc-page="hotel-meetings-events"] .meeting-room-media img, html[data-cc-page="hotel-meetings-events"] .wedding-media img{width:100%;height:100%;object-fit:cover;display:block}html[data-cc-page="hotel-meetings-events"] .meeting-room-media img{min-height:520px}html[data-cc-page="hotel-meetings-events"] .wedding-media img{min-height:520px}html[data-cc-page="hotel-meetings-events"] .capacity-section{padding:125px 0 135px!important;background:#f7f5f5!important}html[data-cc-page="hotel-meetings-events"] .capacity-head{margin-bottom:58px!important}html[data-cc-page="hotel-meetings-events"] .setup-visual-grid-v11{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}html[data-cc-page="hotel-meetings-events"] .setup-visual-card-v11{background:#fff;min-height:360px;padding:28px 22px 25px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-meetings-events"] .setup-visual-card-v11:hover{transform:translateY(-7px);box-shadow:0 22px 55px rgba(0,0,0,.07)}html[data-cc-page="hotel-meetings-events"] .setup-diagram-v11{height:190px;display:flex;align-items:center;justify-content:center;position:relative;color:var(--pink);font-family:monospace}html[data-cc-page="hotel-meetings-events"] .setup-visual-info-v11{padding-top:18px}html[data-cc-page="hotel-meetings-events"] .setup-visual-info-v11>span{font-size:9px;letter-spacing:.16em;font-weight:700;color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .setup-visual-info-v11 h3{font-family:var(--display);font-size:30px;font-weight:400;line-height:1.05;margin:6px 0 14px}html[data-cc-page="hotel-meetings-events"] .setup-visual-info-v11 strong{font-family:var(--display);font-size:34px;font-weight:400;color:#171717}html[data-cc-page="hotel-meetings-events"] .setup-visual-info-v11 strong small{font-family:var(--body);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#817a7d}html[data-cc-page="hotel-meetings-events"] .theatre{flex-direction:column;gap:22px}html[data-cc-page="hotel-meetings-events"] .screen-v11{width:75%;height:5px;background:#171717}html[data-cc-page="hotel-meetings-events"] .seatrows-v11{font-size:19px;line-height:1.55;letter-spacing:5px;text-align:center}html[data-cc-page="hotel-meetings-events"] .reception{display:grid;grid-template-columns:repeat(4,38px);grid-auto-rows:38px;gap:13px}html[data-cc-page="hotel-meetings-events"] .reception i{width:38px;height:38px;border:2px solid var(--pink);border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:8px}html[data-cc-page="hotel-meetings-events"] .reception b{position:absolute;width:5px;height:5px;background:#171717;border-radius:50%}html[data-cc-page="hotel-meetings-events"] .reception b:nth-of-type(1){left:22%;top:27%}html[data-cc-page="hotel-meetings-events"] .reception b:nth-of-type(2){right:22%;top:27%}html[data-cc-page="hotel-meetings-events"] .reception b:nth-of-type(3){left:22%;bottom:27%}html[data-cc-page="hotel-meetings-events"] .reception b:nth-of-type(4){right:22%;bottom:27%}html[data-cc-page="hotel-meetings-events"] .banquet{gap:14px}html[data-cc-page="hotel-meetings-events"] .round-v11{width:56px;height:56px;border:2px solid var(--pink);border-radius:50%;position:relative}html[data-cc-page="hotel-meetings-events"] .round-v11 b{position:absolute;width:6px;height:6px;border-radius:50%;background:#171717}html[data-cc-page="hotel-meetings-events"] .round-v11 b:nth-child(1){top:-11px;left:23px}html[data-cc-page="hotel-meetings-events"] .round-v11 b:nth-child(2){bottom:-11px;left:23px}html[data-cc-page="hotel-meetings-events"] .round-v11 b:nth-child(3){right:-11px;top:23px}html[data-cc-page="hotel-meetings-events"] .classroom{flex-direction:column;gap:14px;font-size:24px;letter-spacing:8px}html[data-cc-page="hotel-meetings-events"] .ushape .u-v11{width:120px;height:95px;border:4px solid var(--pink);border-top:0;border-radius:0 0 8px 8px}html[data-cc-page="hotel-meetings-events"] .u-seats-v11{position:absolute;font-size:13px;line-height:2.55;letter-spacing:3px;text-align:center;color:#171717}html[data-cc-page="hotel-meetings-events"] .event-support-strip{margin-top:55px!important}
@media(max-width:1100px){html[data-cc-page="hotel-meetings-events"] .setup-visual-grid-v11{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){html[data-cc-page="hotel-meetings-events"] .setup-visual-grid-v11{grid-template-columns:1fr 1fr}html[data-cc-page="hotel-meetings-events"] .meeting-room-media img, html[data-cc-page="hotel-meetings-events"] .wedding-media img{min-height:420px}}
@media(max-width:500px){html[data-cc-page="hotel-meetings-events"] .setup-visual-grid-v11{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .setup-visual-card-v11{min-height:330px}}


/* FINAL DEMO V12 - clear, visual MICE page */
html[data-cc-page="hotel-meetings-events"] .meeting-room-v12{padding:130px 0;background:#fff}html[data-cc-page="hotel-meetings-events"] .meeting-room-grid-v12{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:72px;align-items:center}html[data-cc-page="hotel-meetings-events"] .meeting-room-image-v12{height:620px;overflow:hidden}html[data-cc-page="hotel-meetings-events"] .meeting-room-image-v12 img{width:100%;height:100%;object-fit:cover}html[data-cc-page="hotel-meetings-events"] .meeting-room-content-v12 h2, html[data-cc-page="hotel-meetings-events"] .meeting-setups-head-v12 h2, html[data-cc-page="hotel-meetings-events"] .wedding-content-v12 h2{font-family:var(--display);font-weight:400;letter-spacing:-.04em;line-height:.98}html[data-cc-page="hotel-meetings-events"] .meeting-room-content-v12 h2{font-size:clamp(52px,5vw,76px);margin:14px 0 24px}html[data-cc-page="hotel-meetings-events"] .meeting-room-content-v12 p{font-size:13px;line-height:1.9;color:var(--muted);max-width:500px}html[data-cc-page="hotel-meetings-events"] .meeting-specs-v12{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:34px 0}html[data-cc-page="hotel-meetings-events"] .meeting-specs-v12 span{display:flex;flex-direction:column;gap:5px}html[data-cc-page="hotel-meetings-events"] .meeting-specs-v12 strong{font-family:var(--display);font-size:28px;font-weight:400;color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .meeting-specs-v12 small{font-size:8px;letter-spacing:.13em;text-transform:uppercase;color:#8b8588}html[data-cc-page="hotel-meetings-events"] .meeting-setups-v12{padding:130px 0 145px;background:#f6f4f4}html[data-cc-page="hotel-meetings-events"] .meeting-setups-head-v12{text-align:center;max-width:780px;margin:0 auto 62px}html[data-cc-page="hotel-meetings-events"] .meeting-setups-head-v12 h2{font-size:clamp(52px,5.2vw,80px);margin-top:14px}html[data-cc-page="hotel-meetings-events"] .meeting-setups-head-v12 p{font-size:13px;line-height:1.85;color:var(--muted);max-width:560px;margin:20px auto 0}html[data-cc-page="hotel-meetings-events"] .meeting-setups-grid-v12{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}html[data-cc-page="hotel-meetings-events"] .meeting-setup-card-v12{background:#fff;min-height:390px;padding:28px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;transition:transform .35s ease,box-shadow .35s ease}html[data-cc-page="hotel-meetings-events"] .meeting-setup-card-v12:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(0,0,0,.07)}html[data-cc-page="hotel-meetings-events"] .setup-icon-v12{height:170px;width:100%;display:flex;align-items:center;justify-content:center;margin-bottom:8px}html[data-cc-page="hotel-meetings-events"] .setup-icon-v12 svg{width:150px;height:105px;overflow:visible}html[data-cc-page="hotel-meetings-events"] .setup-icon-v12 svg>*{stroke:var(--pink);fill:none}html[data-cc-page="hotel-meetings-events"] .setup-icon-v12 svg .chairs circle, html[data-cc-page="hotel-meetings-events"] .setup-icon-v12 svg .tables circle{stroke:var(--pink);fill:none;stroke-width:3}html[data-cc-page="hotel-meetings-events"] .setup-icon-v12 svg .tables rect{stroke:var(--pink);fill:none;stroke-width:3}html[data-cc-page="hotel-meetings-events"] .setup-icon-v12 svg .dots circle{fill:#171717;stroke:none}html[data-cc-page="hotel-meetings-events"] .meeting-setup-card-v12>span{font-size:9px;letter-spacing:.16em;font-weight:700;color:var(--pink)}html[data-cc-page="hotel-meetings-events"] .meeting-setup-card-v12 h3{font-family:var(--display);font-size:30px;font-weight:400;line-height:1.05;margin:7px 0 14px}html[data-cc-page="hotel-meetings-events"] .meeting-setup-card-v12>strong{font-family:var(--display);font-size:43px;font-weight:400;line-height:1;color:#171717}html[data-cc-page="hotel-meetings-events"] .meeting-setup-card-v12>small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#8b8588;margin-top:6px}html[data-cc-page="hotel-meetings-events"] .meeting-support-v12{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}html[data-cc-page="hotel-meetings-events"] .meeting-support-v12 span{display:flex;align-items:center;justify-content:center;gap:12px;padding:18px 20px;background:#fff}html[data-cc-page="hotel-meetings-events"] .meeting-support-v12 i{color:var(--pink);font-size:16px}html[data-cc-page="hotel-meetings-events"] .meeting-support-v12 b{font-size:10px;letter-spacing:.08em;text-transform:uppercase}html[data-cc-page="hotel-meetings-events"] .wedding-v12{padding:130px 0 145px;background:#fff}html[data-cc-page="hotel-meetings-events"] .wedding-grid-v12{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:center}html[data-cc-page="hotel-meetings-events"] .wedding-content-v12 h2{font-size:clamp(52px,5vw,76px);margin:14px 0 24px}html[data-cc-page="hotel-meetings-events"] .wedding-content-v12 p{font-size:13px;line-height:1.9;color:var(--muted);max-width:460px;margin-bottom:28px}html[data-cc-page="hotel-meetings-events"] .wedding-image-v12{height:590px;overflow:hidden}html[data-cc-page="hotel-meetings-events"] .wedding-image-v12 img{width:100%;height:100%;object-fit:cover}
@media(max-width:1100px){html[data-cc-page="hotel-meetings-events"] .meeting-setups-grid-v12{grid-template-columns:repeat(3,1fr)}html[data-cc-page="hotel-meetings-events"] .meeting-room-grid-v12, html[data-cc-page="hotel-meetings-events"] .wedding-grid-v12{gap:45px}}
@media(max-width:850px){html[data-cc-page="hotel-meetings-events"] .meeting-room-grid-v12, html[data-cc-page="hotel-meetings-events"] .wedding-grid-v12{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .meeting-room-image-v12, html[data-cc-page="hotel-meetings-events"] .wedding-image-v12{height:520px}html[data-cc-page="hotel-meetings-events"] .meeting-support-v12{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .meeting-specs-v12{max-width:600px}}
@media(max-width:650px){html[data-cc-page="hotel-meetings-events"] .meeting-setups-grid-v12{grid-template-columns:1fr 1fr}html[data-cc-page="hotel-meetings-events"] .meeting-room-v12, html[data-cc-page="hotel-meetings-events"] .meeting-setups-v12, html[data-cc-page="hotel-meetings-events"] .wedding-v12{padding:90px 0}html[data-cc-page="hotel-meetings-events"] .meeting-room-image-v12, html[data-cc-page="hotel-meetings-events"] .wedding-image-v12{height:420px}html[data-cc-page="hotel-meetings-events"] .meeting-specs-v12{grid-template-columns:1fr 1fr}}
@media(max-width:440px){html[data-cc-page="hotel-meetings-events"] .meeting-setups-grid-v12{grid-template-columns:1fr}html[data-cc-page="hotel-meetings-events"] .meeting-setup-card-v12{min-height:350px}html[data-cc-page="hotel-meetings-events"] .meeting-specs-v12{grid-template-columns:1fr}}

/* ============================================================
   PAGE: group-about-us   (group_About_Us.html)
   ============================================================ */
html[data-cc-page="group-about-us"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="group-about-us"], html[data-cc-page="group-about-us"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="group-about-us"]{scroll-behavior:smooth}html[data-cc-page="group-about-us"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="group-about-us"] a{text-decoration:none;color:inherit}html[data-cc-page="group-about-us"] img, html[data-cc-page="group-about-us"] video{display:block;width:100%}html[data-cc-page="group-about-us"] button, html[data-cc-page="group-about-us"] input, html[data-cc-page="group-about-us"] textarea{font:inherit}html[data-cc-page="group-about-us"] button{cursor:pointer}html[data-cc-page="group-about-us"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="group-about-us"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="group-about-us"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-about-us"] .in-view .section-rule, html[data-cc-page="group-about-us"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="group-about-us"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="group-about-us"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="group-about-us"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="group-about-us"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="group-about-us"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="group-about-us"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="group-about-us"] .btn-white{background:#fff;color:#111}html[data-cc-page="group-about-us"] .btn-white::before{background:var(--pink)}html[data-cc-page="group-about-us"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="group-about-us"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="group-about-us"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="group-about-us"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="group-about-us"] .header.sticky .topbar{display:none}html[data-cc-page="group-about-us"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="group-about-us"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="group-about-us"] .header-main{height:102px}html[data-cc-page="group-about-us"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="group-about-us"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="group-about-us"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="group-about-us"] .brand-dark{display:none}html[data-cc-page="group-about-us"] .header.sticky .brand-light{display:none}html[data-cc-page="group-about-us"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="group-about-us"] .header.sticky .brand{width:210px}html[data-cc-page="group-about-us"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="group-about-us"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="group-about-us"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="group-about-us"] .menu a:hover::after, html[data-cc-page="group-about-us"] .menu a.active::after{right:0}html[data-cc-page="group-about-us"] .header-book{margin-left:32px}html[data-cc-page="group-about-us"] .lang{position:relative}html[data-cc-page="group-about-us"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="group-about-us"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="group-about-us"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="group-about-us"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="group-about-us"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="group-about-us"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="group-about-us"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="group-about-us"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="group-about-us"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="group-about-us"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="group-about-us"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="group-about-us"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="group-about-us"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="group-about-us"] .drawer.open{transform:none}html[data-cc-page="group-about-us"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="group-about-us"] .drawer-head img{width:150px}html[data-cc-page="group-about-us"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="group-about-us"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="group-about-us"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="group-about-us"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="group-about-us"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="group-about-us"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="group-about-us"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="group-about-us"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="group-about-us"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="group-about-us"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="group-about-us"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_groupaboutus 9s ease-in-out both}html[data-cc-page="group-about-us"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_groupaboutus{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="group-about-us"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="group-about-us"] .hero-copy{max-width:800px}html[data-cc-page="group-about-us"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="group-about-us"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="group-about-us"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="group-about-us"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="group-about-us"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="group-about-us"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="group-about-us"] .reveal, html[data-cc-page="group-about-us"] .reveal-left, html[data-cc-page="group-about-us"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-about-us"] .reveal{transform:translateY(44px)}html[data-cc-page="group-about-us"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="group-about-us"] .reveal-right{transform:translateX(60px)}html[data-cc-page="group-about-us"] .reveal.in-view, html[data-cc-page="group-about-us"] .reveal-left.in-view, html[data-cc-page="group-about-us"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="group-about-us"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-about-us"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="group-about-us"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="group-about-us"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="group-about-us"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="group-about-us"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="group-about-us"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="group-about-us"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="group-about-us"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="group-about-us"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-about-us"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="group-about-us"] .intro-section{padding:150px 0}html[data-cc-page="group-about-us"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="group-about-us"] .intro-grid h2, html[data-cc-page="group-about-us"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="group-about-us"] .intro-grid p, html[data-cc-page="group-about-us"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="group-about-us"] .section-heading{margin-bottom:58px}html[data-cc-page="group-about-us"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="group-about-us"] .section-heading h2{max-width:850px}html[data-cc-page="group-about-us"] .section-heading p{margin-top:20px}html[data-cc-page="group-about-us"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="group-about-us"] .footer{background:#111113;color:#fff}html[data-cc-page="group-about-us"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="group-about-us"] .footer-logo{width:170px}html[data-cc-page="group-about-us"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="group-about-us"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="group-about-us"] .footer-links{display:grid;gap:11px}html[data-cc-page="group-about-us"] .footer-links a, html[data-cc-page="group-about-us"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="group-about-us"] .footer-links a:hover{color:#fff}html[data-cc-page="group-about-us"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="group-about-us"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="group-about-us"] .newsletter{margin-top:22px}html[data-cc-page="group-about-us"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="group-about-us"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="group-about-us"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="group-about-us"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="group-about-us"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="group-about-us"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="group-about-us"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="group-about-us"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="group-about-us"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="group-about-us"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="group-about-us"] .container{width:calc(100% - 44px)}html[data-cc-page="group-about-us"] .menu{gap:18px}html[data-cc-page="group-about-us"] .menu a{font-size:10px}html[data-cc-page="group-about-us"] .header-book{margin-left:20px}html[data-cc-page="group-about-us"] .intro-grid{gap:65px}html[data-cc-page="group-about-us"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="group-about-us"] body{padding-bottom:68px}html[data-cc-page="group-about-us"] .container{width:calc(100% - 30px)}html[data-cc-page="group-about-us"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="group-about-us"] .topbar, html[data-cc-page="group-about-us"] .menu, html[data-cc-page="group-about-us"] .header-book{display:none}html[data-cc-page="group-about-us"] .header-main{height:72px}html[data-cc-page="group-about-us"] .brand{width:180px}html[data-cc-page="group-about-us"] .brand-light{display:none!important}html[data-cc-page="group-about-us"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="group-about-us"] .mobile-actions{display:flex}html[data-cc-page="group-about-us"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="group-about-us"] .hero-inner{padding-bottom:70px}html[data-cc-page="group-about-us"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="group-about-us"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="group-about-us"] .hero-place{display:none}html[data-cc-page="group-about-us"] .intro-section{padding:105px 0}html[data-cc-page="group-about-us"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="group-about-us"] .intro-grid h2, html[data-cc-page="group-about-us"] .section-heading h2{font-size:48px}html[data-cc-page="group-about-us"] .section-heading{margin-bottom:40px}html[data-cc-page="group-about-us"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="group-about-us"] .footer-brand{grid-column:1/3}html[data-cc-page="group-about-us"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="group-about-us"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="group-about-us"] .hero{min-height:600px}html[data-cc-page="group-about-us"] .hero h1{font-size:45px}html[data-cc-page="group-about-us"] .hero-actions .btn{width:100%}html[data-cc-page="group-about-us"] .intro-grid h2, html[data-cc-page="group-about-us"] .section-heading h2{font-size:42px}html[data-cc-page="group-about-us"] .footer-main{grid-template-columns:1fr}html[data-cc-page="group-about-us"] .footer-brand{grid-column:auto}html[data-cc-page="group-about-us"] .footer-bottom{display:block}html[data-cc-page="group-about-us"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="group-about-us"], html[data-cc-page="group-about-us"] *{scroll-behavior:auto!important}html[data-cc-page="group-about-us"] .reveal, html[data-cc-page="group-about-us"] .reveal-left, html[data-cc-page="group-about-us"] .reveal-right, html[data-cc-page="group-about-us"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="group-about-us"] .image-reveal::after{display:none}html[data-cc-page="group-about-us"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="group-about-us"] .about-manifesto{padding:160px 0 170px}html[data-cc-page="group-about-us"] .about-manifesto .statement{font-family:var(--display);font-size:clamp(58px,7vw,108px);line-height:.93;letter-spacing:-.055em;max-width:1180px;font-weight:400}html[data-cc-page="group-about-us"] .about-manifesto .statement em{font-style:italic;color:var(--pink)}html[data-cc-page="group-about-us"] .about-manifesto .small-copy{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:72px;padding-top:34px;border-top:1px solid var(--line)}html[data-cc-page="group-about-us"] .about-manifesto p{font-size:14px;line-height:1.9;color:var(--muted);max-width:560px}html[data-cc-page="group-about-us"] .about-collage{padding:0 0 160px}html[data-cc-page="group-about-us"] .collage-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:end}html[data-cc-page="group-about-us"] .collage-main{height:680px}html[data-cc-page="group-about-us"] .collage-side{display:grid;gap:22px}html[data-cc-page="group-about-us"] .collage-side .image-reveal:first-child{height:370px}html[data-cc-page="group-about-us"] .collage-side .image-reveal:last-child{height:288px}html[data-cc-page="group-about-us"] .philosophy{padding:150px 0;background:#111113;color:#fff}html[data-cc-page="group-about-us"] .philosophy-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;margin-bottom:75px}html[data-cc-page="group-about-us"] .philosophy h2{font-family:var(--display);font-size:clamp(54px,5vw,78px);line-height:1;font-weight:400}html[data-cc-page="group-about-us"] .philosophy p{color:rgba(255,255,255,.6);font-size:14px;line-height:1.9;max-width:620px}html[data-cc-page="group-about-us"] .philosophy-list{border-top:1px solid rgba(255,255,255,.18)}html[data-cc-page="group-about-us"] .philosophy-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:40px;align-items:center;padding:34px 0;border-bottom:1px solid rgba(255,255,255,.14)}html[data-cc-page="group-about-us"] .philosophy-row .num{font-family:var(--display);font-size:44px;color:var(--pink)}html[data-cc-page="group-about-us"] .philosophy-row h3{font-family:var(--display);font-size:38px;font-weight:400}html[data-cc-page="group-about-us"] .philosophy-row p{font-size:12px;line-height:1.8}html[data-cc-page="group-about-us"] .about-collection{padding:155px 0}html[data-cc-page="group-about-us"] .collection-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}html[data-cc-page="group-about-us"] .collection-strip a{padding:34px 24px;border-right:1px solid var(--line);transition:background .3s ease,color .3s ease,transform .3s ease}html[data-cc-page="group-about-us"] .collection-strip a:last-child{border-right:0}html[data-cc-page="group-about-us"] .collection-strip a:hover{background:#171717;color:#fff;transform:translateY(-5px)}html[data-cc-page="group-about-us"] .collection-strip small{display:block;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--pink);margin-bottom:12px}html[data-cc-page="group-about-us"] .collection-strip strong{font-family:var(--display);font-size:27px;font-weight:400}html[data-cc-page="group-about-us"] .about-visual-break{height:70vh;min-height:560px;position:relative;color:#fff;display:flex;align-items:flex-end;overflow:hidden}html[data-cc-page="group-about-us"] .about-visual-break img{position:absolute;inset:0;height:100%;object-fit:cover}html[data-cc-page="group-about-us"] .about-visual-break::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.65))}html[data-cc-page="group-about-us"] .about-visual-break .container{position:relative;z-index:2;padding-bottom:70px}html[data-cc-page="group-about-us"] .about-visual-break h2{font-family:var(--display);font-size:clamp(60px,6vw,94px);font-weight:400;line-height:.96;max-width:850px}html[data-cc-page="group-about-us"] .about-cta{padding:140px 0}html[data-cc-page="group-about-us"] .about-cta-inner{display:flex;justify-content:space-between;gap:60px;align-items:end;border-top:1px solid var(--line);padding-top:60px}html[data-cc-page="group-about-us"] .about-cta h2{font-family:var(--display);font-size:58px;font-weight:400;max-width:650px;line-height:1}
@media(max-width:820px){html[data-cc-page="group-about-us"] .about-manifesto{padding:105px 0}html[data-cc-page="group-about-us"] .about-manifesto .small-copy, html[data-cc-page="group-about-us"] .philosophy-head{grid-template-columns:1fr;gap:28px}html[data-cc-page="group-about-us"] .collage-grid{grid-template-columns:1fr}html[data-cc-page="group-about-us"] .collage-main{height:520px}html[data-cc-page="group-about-us"] .collage-side{grid-template-columns:1fr 1fr}html[data-cc-page="group-about-us"] .collage-side .image-reveal:first-child, html[data-cc-page="group-about-us"] .collage-side .image-reveal:last-child{height:280px}html[data-cc-page="group-about-us"] .philosophy{padding:105px 0}html[data-cc-page="group-about-us"] .philosophy-row{grid-template-columns:70px 1fr;gap:18px}html[data-cc-page="group-about-us"] .philosophy-row p{grid-column:2}html[data-cc-page="group-about-us"] .collection-strip{grid-template-columns:1fr 1fr}html[data-cc-page="group-about-us"] .collection-strip a:nth-child(2){border-right:0}html[data-cc-page="group-about-us"] .collection-strip a:nth-child(-n+2){border-bottom:1px solid var(--line)}html[data-cc-page="group-about-us"] .about-visual-break{min-height:500px}html[data-cc-page="group-about-us"] .about-cta-inner{display:block}html[data-cc-page="group-about-us"] .about-cta .btn{margin-top:30px}}
@media(max-width:560px){html[data-cc-page="group-about-us"] .about-manifesto .statement{font-size:54px}html[data-cc-page="group-about-us"] .collage-side{grid-template-columns:1fr}html[data-cc-page="group-about-us"] .collection-strip{grid-template-columns:1fr}html[data-cc-page="group-about-us"] .collection-strip a{border-right:0;border-bottom:1px solid var(--line)}html[data-cc-page="group-about-us"] .philosophy-row h3{font-size:31px}html[data-cc-page="group-about-us"] .about-visual-break h2{font-size:48px}html[data-cc-page="group-about-us"] .about-cta h2{font-size:44px}}


/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="group-about-us"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="group-about-us"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="group-about-us"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-about-us"] .page-intro-grid>div, html[data-cc-page="group-about-us"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-about-us"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="group-about-us"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="group-about-us"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="group-about-us"] .page-intro .reveal-left, html[data-cc-page="group-about-us"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="group-about-us"] .page-intro .reveal-left.in-view, html[data-cc-page="group-about-us"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="group-about-us"] .section-heading h2, html[data-cc-page="group-about-us"] .rail-head h2, html[data-cc-page="group-about-us"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="group-about-us"] .section-heading p, html[data-cc-page="group-about-us"] .rail-head p, html[data-cc-page="group-about-us"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="group-about-us"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="group-about-us"] .page-intro-grid{padding:0 8px}html[data-cc-page="group-about-us"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="group-about-us"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="group-about-us"] .page-intro h2{font-size:38px!important}html[data-cc-page="group-about-us"] .page-intro p{font-size:13px!important}}

html[data-cc-page="group-about-us"] .about-manifesto{padding:92px 0 88px!important;text-align:center!important}
html[data-cc-page="group-about-us"] .about-manifesto .container{max-width:920px!important}
html[data-cc-page="group-about-us"] .about-manifesto .statement{font-size:var(--inner-title)!important;line-height:1.04!important;letter-spacing:-.035em!important}
html[data-cc-page="group-about-us"] .about-manifesto .small-copy{max-width:760px!important;margin:24px auto 0!important}
html[data-cc-page="group-about-us"] .about-manifesto .small-copy p{font-size:var(--inner-body)!important;line-height:1.82!important}
html[data-cc-page="group-about-us"] .philosophy-head h2, html[data-cc-page="group-about-us"] .about-collection .section-heading h2{font-size:var(--inner-section-title)!important}

/* V8 footer separation rule */
html[data-cc-page="group-about-us"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="group-about-us"] .header-main{height:92px!important}
html[data-cc-page="group-about-us"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-about-us"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="group-about-us"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="group-about-us"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-about-us"] .menu{gap:26px!important}
html[data-cc-page="group-about-us"] .brand img{max-height:66px!important}
html[data-cc-page="group-about-us"] .hero .eyebrow, html[data-cc-page="group-about-us"] .hero-kicker, html[data-cc-page="group-about-us"] .hero-kicker.eyebrow, html[data-cc-page="group-about-us"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="group-about-us"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="group-about-us"] .menu{gap:18px!important}html[data-cc-page="group-about-us"] .menu>a, html[data-cc-page="group-about-us"] .menu-link{font-size:10px!important}html[data-cc-page="group-about-us"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-about-us"] .header-main{height:72px!important}html[data-cc-page="group-about-us"] .brand img{max-height:46px!important}html[data-cc-page="group-about-us"] .mobile-trigger{font-size:20px!important}}


/* --- group-menu-unified.css --- */
/* Final Demo - unified Group menu
   Reference: original index-group.html
*/
/* HEADER */
html[data-cc-page="group-about-us"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="group-about-us"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_groupaboutus .35s ease both
            }

        @keyframes drop_cc_groupaboutus {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="group-about-us"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="group-about-us"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="group-about-us"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="group-about-us"] .header-main {
            height: 102px
        }

            html[data-cc-page="group-about-us"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="group-about-us"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="group-about-us"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="group-about-us"] .brand-dark {
            display: none
        }

        html[data-cc-page="group-about-us"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="group-about-us"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="group-about-us"] .header-main {
            position: relative
        }

        html[data-cc-page="group-about-us"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="group-about-us"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="group-about-us"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="group-about-us"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="group-about-us"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="group-about-us"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-about-us"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="group-about-us"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="group-about-us"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-about-us"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="group-about-us"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="group-about-us"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="group-about-us"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-about-us"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="group-about-us"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="group-about-us"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="group-about-us"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="group-about-us"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="group-about-us"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="group-about-us"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="group-about-us"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="group-about-us"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-about-us"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="group-about-us"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="group-about-us"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-about-us"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="group-about-us"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="group-about-us"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="group-about-us"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="group-about-us"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="group-about-us"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="group-about-us"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="group-about-us"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="group-about-us"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="group-about-us"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="group-about-us"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-about-us"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="group-about-us"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="group-about-us"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="group-about-us"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="group-about-us"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="group-about-us"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="group-about-us"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="group-about-us"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="group-about-us"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="group-about-us"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="group-about-us"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="group-about-us"] .drawer.open {
                transform: none
            }

        html[data-cc-page="group-about-us"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="group-about-us"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="group-about-us"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="group-about-us"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="group-about-us"] .drawer-nav > a, html[data-cc-page="group-about-us"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="group-about-us"] .drawer-nav > a:hover, html[data-cc-page="group-about-us"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="group-about-us"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="group-about-us"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="group-about-us"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="group-about-us"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="group-about-us"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="group-about-us"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="group-about-us"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-about-us"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="group-about-us"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="group-about-us"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="group-about-us"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-about-us"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="group-about-us"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }


@media(max-width:1100px){
  html[data-cc-page="group-about-us"] .menu{gap:18px}
  html[data-cc-page="group-about-us"] .menu-link{font-size:11px}
  html[data-cc-page="group-about-us"] .header-book{margin-left:20px}
}
@media(max-width:820px){
  html[data-cc-page="group-about-us"] .header{position:absolute;background:rgba(255,255,255,.97);color:#111}
  html[data-cc-page="group-about-us"] .header-top, html[data-cc-page="group-about-us"] .menu, html[data-cc-page="group-about-us"] .header-book{display:none}
  html[data-cc-page="group-about-us"] .header-main{height:72px}
  html[data-cc-page="group-about-us"] .brand-light{display:none!important}
  html[data-cc-page="group-about-us"] .brand-dark{display:block!important}
  html[data-cc-page="group-about-us"] .brand img{width:125px;max-height:52px}
  html[data-cc-page="group-about-us"] .mobile-trigger{display:block}
}
/* V23-V25 language/mobile controls from reference */
html[data-cc-page="group-about-us"]
        .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="group-about-us"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-about-us"] .language-trigger:hover, html[data-cc-page="group-about-us"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="group-about-us"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="group-about-us"] .header.sticky .language-trigger:hover, html[data-cc-page="group-about-us"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="group-about-us"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="group-about-us"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="group-about-us"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="group-about-us"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="group-about-us"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-about-us"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-about-us"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-about-us"] .language-menu a:hover, html[data-cc-page="group-about-us"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="group-about-us"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="group-about-us"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="group-about-us"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="group-about-us"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="group-about-us"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="group-about-us"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="group-about-us"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="group-about-us"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="group-about-us"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-about-us"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="group-about-us"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-about-us"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="group-about-us"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="group-about-us"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="group-about-us"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="group-about-us"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="group-about-us"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="group-about-us"] .topbar-language .language-trigger:hover, html[data-cc-page="group-about-us"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-about-us"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="group-about-us"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="group-about-us"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="group-about-us"] .topbar-language .language-menu a:hover, html[data-cc-page="group-about-us"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="group-about-us"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="group-about-us"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="group-about-us"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="group-about-us"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="group-about-us"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="group-about-us"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="group-about-us"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="group-about-us"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="group-about-us"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="group-about-us"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="group-about-us"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="group-about-us"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="group-about-us"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="group-about-us"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="group-about-us"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="group-about-us"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="group-about-us"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="group-about-us"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-about-us"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-about-us"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="group-about-us"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="group-about-us"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="group-about-us"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="group-about-us"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="group-about-us"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="group-about-us"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="group-about-us"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="group-about-us"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-about-us"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="group-about-us"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="group-about-us"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="group-about-us"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-about-us"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-about-us"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-about-us"] .mobile-language-menu a:hover, html[data-cc-page="group-about-us"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="group-about-us"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-about-us"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="group-about-us"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="group-about-us"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-about-us"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="group-about-us"] .mobile-language-trigger, html[data-cc-page="group-about-us"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="group-about-us"] .mobile-language-menu {
                right: -43px;
            }
        }

/* Final reference sizing */
html[data-cc-page="group-about-us"] .header-main{height:92px!important}
html[data-cc-page="group-about-us"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-about-us"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
html[data-cc-page="group-about-us"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-about-us"] .menu{gap:26px!important}
html[data-cc-page="group-about-us"] .brand img{max-height:66px!important}
@media(max-width:1200px){html[data-cc-page="group-about-us"] .menu{gap:18px!important}html[data-cc-page="group-about-us"] .menu-link{font-size:10px!important}html[data-cc-page="group-about-us"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-about-us"] .header-main{height:72px!important}html[data-cc-page="group-about-us"] .brand img{max-height:46px!important}html[data-cc-page="group-about-us"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="group-about-us"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-about-us"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="group-about-us"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-about-us"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="group-about-us"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="group-about-us"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="group-about-us"] .internal-banner .hero-inner, html[data-cc-page="group-about-us"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-about-us"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-about-us"] .internal-banner .hero-copy, html[data-cc-page="group-about-us"] .internal-banner .offers-page-hero-copy, html[data-cc-page="group-about-us"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="group-about-us"] .internal-banner .hero-kicker, html[data-cc-page="group-about-us"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="group-about-us"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="group-about-us"] .internal-banner .cl7-kicker, html[data-cc-page="group-about-us"] .internal-banner h1, html[data-cc-page="group-about-us"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="group-about-us"] .internal-banner .hero-kicker::before, html[data-cc-page="group-about-us"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="group-about-us"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="group-about-us"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-about-us"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="group-about-us"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="group-about-us"] .internal-banner .hero-inner, html[data-cc-page="group-about-us"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-about-us"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="group-about-us"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-about-us"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="group-about-us"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="group-about-us"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-about-us"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="group-about-us"] .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;
}
html[data-cc-page="group-about-us"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="group-about-us"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="group-about-us"] .footer-reference::after{display:none!important;}
html[data-cc-page="group-about-us"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="group-about-us"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="group-about-us"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="group-about-us"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="group-about-us"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="group-about-us"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="group-about-us"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="group-about-us"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="group-about-us"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="group-about-us"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="group-about-us"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="group-about-us"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="group-about-us"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="group-about-us"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="group-about-us"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="group-about-us"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="group-about-us"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="group-about-us"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="group-about-us"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="group-about-us"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="group-about-us"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="group-about-us"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="group-about-us"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="group-about-us"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="group-about-us"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="group-about-us"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="group-about-us"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="group-about-us"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="group-about-us"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="group-about-us"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="group-about-us"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="group-about-us"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="group-about-us"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="group-about-us"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="group-about-us"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="group-about-us"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="group-about-us"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="group-about-us"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="group-about-us"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="group-about-us"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="group-about-us"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="group-about-us"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="group-about-us"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="group-about-us"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-about-us"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="group-about-us"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="group-about-us"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-about-us"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="group-about-us"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="group-about-us"] .footer-reference-brand, html[data-cc-page="group-about-us"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-about-us"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="group-about-us"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="group-about-us"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="group-about-us"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-about-us"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="group-about-us"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="group-about-us"] .footer-reference-brand, html[data-cc-page="group-about-us"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="group-about-us"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="group-about-us"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="group-about-us"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="group-about-us"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="group-about-us"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="group-about-us"] .footer-reference-form button{min-height:52px;}
}


/* FINAL DEMO V6 - About Us refinement */
html[data-cc-page="group-about-us"] .about-manifesto .small-copy{display:block!important;max-width:860px!important;margin:38px auto 0!important;padding-top:0!important;border-top:0!important;text-align:center!important}
html[data-cc-page="group-about-us"] .about-manifesto .small-copy p{max-width:none!important;margin:0!important;font-size:15px!important;line-height:1.9!important;color:#686467!important}
html[data-cc-page="group-about-us"] .philosophy-head{align-items:center!important;grid-template-columns:1.05fr .95fr!important}
html[data-cc-page="group-about-us"] .philosophy-head>p{align-self:center!important;margin:24px 0 0!important;max-width:590px!important;font-size:16px!important;line-height:1.85!important;color:rgba(255,255,255,.76)!important}
html[data-cc-page="group-about-us"] .about-collection{padding:145px 0 150px!important}
html[data-cc-page="group-about-us"] .about-collection .section-heading{max-width:920px;margin-bottom:54px!important}
html[data-cc-page="group-about-us"] .about-collection .section-heading p{font-size:15px!important}
html[data-cc-page="group-about-us"] .resort-portrait-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
html[data-cc-page="group-about-us"] .resort-portrait{position:relative;display:block;min-height:430px;overflow:hidden;background:#111;color:#fff}
html[data-cc-page="group-about-us"] .resort-portrait.image-reveal::after{z-index:5}
html[data-cc-page="group-about-us"] .resort-portrait>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1),filter .5s ease}
html[data-cc-page="group-about-us"] .resort-portrait:hover>img{transform:scale(1.045)}
html[data-cc-page="group-about-us"] .resort-portrait-shade{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(0,0,0,.04) 30%,rgba(0,0,0,.76) 100%)}
html[data-cc-page="group-about-us"] .resort-portrait-copy{position:absolute;left:34px;right:34px;bottom:30px;z-index:3;display:block}
html[data-cc-page="group-about-us"] .resort-portrait-copy small{display:block;margin-bottom:9px;font-size:10px;font-style:normal;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff}
html[data-cc-page="group-about-us"] .resort-portrait-copy strong{display:block;max-width:520px;font-family:var(--display);font-size:clamp(29px,2.8vw,42px);font-weight:400;line-height:1.05;letter-spacing:-.025em}
html[data-cc-page="group-about-us"] .resort-portrait-copy em{display:inline-flex;align-items:center;gap:10px;margin-top:18px;font-family:var(--body);font-size:10px;font-style:normal;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.88);transition:gap .3s ease,color .3s ease}
html[data-cc-page="group-about-us"] .resort-portrait:hover .resort-portrait-copy em{gap:15px;color:#fff}
html[data-cc-page="group-about-us"] .about-rooted{padding:0 0 145px;background:#fff}
html[data-cc-page="group-about-us"] .about-rooted-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:82px;align-items:center}
html[data-cc-page="group-about-us"] .about-rooted-visual{height:560px}
html[data-cc-page="group-about-us"] .about-rooted-copy{max-width:570px}
html[data-cc-page="group-about-us"] .about-rooted-copy .eyebrow{margin-bottom:17px}
html[data-cc-page="group-about-us"] .about-rooted-copy h2{font-family:var(--display);font-size:clamp(42px,4vw,62px);line-height:1.02;font-weight:400;letter-spacing:-.035em}
html[data-cc-page="group-about-us"] .about-rooted-copy p{margin-top:25px;font-size:15px;line-height:1.9;color:var(--muted)}
html[data-cc-page="group-about-us"] .about-rooted-copy .text-link{display:inline-flex;align-items:center;gap:11px;margin-top:28px;padding-bottom:5px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid rgba(169,0,97,.34);color:var(--pink);transition:gap .3s ease,border-color .3s ease}
html[data-cc-page="group-about-us"] .about-rooted-copy .text-link:hover{gap:16px;border-color:var(--pink)}
@media(max-width:900px){html[data-cc-page="group-about-us"] .philosophy-head{grid-template-columns:1fr!important;gap:20px!important}html[data-cc-page="group-about-us"] .philosophy-head>p{margin-top:0!important}html[data-cc-page="group-about-us"] .resort-portrait-grid{grid-template-columns:1fr}html[data-cc-page="group-about-us"] .resort-portrait{min-height:390px}html[data-cc-page="group-about-us"] .about-rooted-grid{grid-template-columns:1fr;gap:42px}html[data-cc-page="group-about-us"] .about-rooted-visual{height:480px}html[data-cc-page="group-about-us"] .about-rooted-copy{max-width:720px}}
@media(max-width:560px){html[data-cc-page="group-about-us"] .about-manifesto .small-copy{margin-top:30px!important;text-align:left!important}html[data-cc-page="group-about-us"] .about-manifesto .small-copy p{font-size:14px!important}html[data-cc-page="group-about-us"] .resort-portrait{min-height:340px}html[data-cc-page="group-about-us"] .resort-portrait-copy{left:24px;right:24px;bottom:24px}html[data-cc-page="group-about-us"] .about-rooted{padding-bottom:100px}html[data-cc-page="group-about-us"] .about-rooted-visual{height:390px}}

/* ============================================================
   PAGE: group-contact-us   (group_Contact_Us.html)
   ============================================================ */
html[data-cc-page="group-contact-us"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="group-contact-us"], html[data-cc-page="group-contact-us"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="group-contact-us"]{scroll-behavior:smooth}html[data-cc-page="group-contact-us"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="group-contact-us"] a{text-decoration:none;color:inherit}html[data-cc-page="group-contact-us"] img, html[data-cc-page="group-contact-us"] video{display:block;width:100%}html[data-cc-page="group-contact-us"] button, html[data-cc-page="group-contact-us"] input, html[data-cc-page="group-contact-us"] textarea{font:inherit}html[data-cc-page="group-contact-us"] button{cursor:pointer}html[data-cc-page="group-contact-us"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="group-contact-us"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="group-contact-us"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-contact-us"] .in-view .section-rule, html[data-cc-page="group-contact-us"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="group-contact-us"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="group-contact-us"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="group-contact-us"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="group-contact-us"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="group-contact-us"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="group-contact-us"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="group-contact-us"] .btn-white{background:#fff;color:#111}html[data-cc-page="group-contact-us"] .btn-white::before{background:var(--pink)}html[data-cc-page="group-contact-us"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="group-contact-us"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="group-contact-us"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="group-contact-us"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="group-contact-us"] .header.sticky .topbar{display:none}html[data-cc-page="group-contact-us"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="group-contact-us"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="group-contact-us"] .header-main{height:102px}html[data-cc-page="group-contact-us"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="group-contact-us"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="group-contact-us"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="group-contact-us"] .brand-dark{display:none}html[data-cc-page="group-contact-us"] .header.sticky .brand-light{display:none}html[data-cc-page="group-contact-us"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="group-contact-us"] .header.sticky .brand{width:210px}html[data-cc-page="group-contact-us"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="group-contact-us"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="group-contact-us"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="group-contact-us"] .menu a:hover::after, html[data-cc-page="group-contact-us"] .menu a.active::after{right:0}html[data-cc-page="group-contact-us"] .header-book{margin-left:32px}html[data-cc-page="group-contact-us"] .lang{position:relative}html[data-cc-page="group-contact-us"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="group-contact-us"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="group-contact-us"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="group-contact-us"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="group-contact-us"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="group-contact-us"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="group-contact-us"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="group-contact-us"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="group-contact-us"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="group-contact-us"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="group-contact-us"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="group-contact-us"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="group-contact-us"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="group-contact-us"] .drawer.open{transform:none}html[data-cc-page="group-contact-us"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="group-contact-us"] .drawer-head img{width:150px}html[data-cc-page="group-contact-us"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="group-contact-us"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="group-contact-us"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="group-contact-us"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="group-contact-us"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="group-contact-us"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="group-contact-us"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="group-contact-us"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="group-contact-us"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="group-contact-us"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="group-contact-us"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_groupcontactus 9s ease-in-out both}html[data-cc-page="group-contact-us"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_groupcontactus{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="group-contact-us"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="group-contact-us"] .hero-copy{max-width:800px}html[data-cc-page="group-contact-us"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="group-contact-us"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="group-contact-us"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="group-contact-us"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="group-contact-us"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="group-contact-us"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="group-contact-us"] .reveal, html[data-cc-page="group-contact-us"] .reveal-left, html[data-cc-page="group-contact-us"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-contact-us"] .reveal{transform:translateY(44px)}html[data-cc-page="group-contact-us"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="group-contact-us"] .reveal-right{transform:translateX(60px)}html[data-cc-page="group-contact-us"] .reveal.in-view, html[data-cc-page="group-contact-us"] .reveal-left.in-view, html[data-cc-page="group-contact-us"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="group-contact-us"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-contact-us"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="group-contact-us"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="group-contact-us"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="group-contact-us"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="group-contact-us"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="group-contact-us"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="group-contact-us"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="group-contact-us"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="group-contact-us"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-contact-us"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="group-contact-us"] .intro-section{padding:150px 0}html[data-cc-page="group-contact-us"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="group-contact-us"] .intro-grid h2, html[data-cc-page="group-contact-us"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="group-contact-us"] .intro-grid p, html[data-cc-page="group-contact-us"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="group-contact-us"] .section-heading{margin-bottom:58px}html[data-cc-page="group-contact-us"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="group-contact-us"] .section-heading h2{max-width:850px}html[data-cc-page="group-contact-us"] .section-heading p{margin-top:20px}html[data-cc-page="group-contact-us"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="group-contact-us"] .footer{background:#111113;color:#fff}html[data-cc-page="group-contact-us"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="group-contact-us"] .footer-logo{width:170px}html[data-cc-page="group-contact-us"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="group-contact-us"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="group-contact-us"] .footer-links{display:grid;gap:11px}html[data-cc-page="group-contact-us"] .footer-links a, html[data-cc-page="group-contact-us"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="group-contact-us"] .footer-links a:hover{color:#fff}html[data-cc-page="group-contact-us"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="group-contact-us"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="group-contact-us"] .newsletter{margin-top:22px}html[data-cc-page="group-contact-us"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="group-contact-us"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="group-contact-us"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="group-contact-us"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="group-contact-us"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="group-contact-us"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="group-contact-us"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="group-contact-us"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="group-contact-us"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="group-contact-us"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="group-contact-us"] .container{width:calc(100% - 44px)}html[data-cc-page="group-contact-us"] .menu{gap:18px}html[data-cc-page="group-contact-us"] .menu a{font-size:10px}html[data-cc-page="group-contact-us"] .header-book{margin-left:20px}html[data-cc-page="group-contact-us"] .intro-grid{gap:65px}html[data-cc-page="group-contact-us"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="group-contact-us"] body{padding-bottom:68px}html[data-cc-page="group-contact-us"] .container{width:calc(100% - 30px)}html[data-cc-page="group-contact-us"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="group-contact-us"] .topbar, html[data-cc-page="group-contact-us"] .menu, html[data-cc-page="group-contact-us"] .header-book{display:none}html[data-cc-page="group-contact-us"] .header-main{height:72px}html[data-cc-page="group-contact-us"] .brand{width:180px}html[data-cc-page="group-contact-us"] .brand-light{display:none!important}html[data-cc-page="group-contact-us"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="group-contact-us"] .mobile-actions{display:flex}html[data-cc-page="group-contact-us"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="group-contact-us"] .hero-inner{padding-bottom:70px}html[data-cc-page="group-contact-us"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="group-contact-us"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="group-contact-us"] .hero-place{display:none}html[data-cc-page="group-contact-us"] .intro-section{padding:105px 0}html[data-cc-page="group-contact-us"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="group-contact-us"] .intro-grid h2, html[data-cc-page="group-contact-us"] .section-heading h2{font-size:48px}html[data-cc-page="group-contact-us"] .section-heading{margin-bottom:40px}html[data-cc-page="group-contact-us"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="group-contact-us"] .footer-brand{grid-column:1/3}html[data-cc-page="group-contact-us"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="group-contact-us"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="group-contact-us"] .hero{min-height:600px}html[data-cc-page="group-contact-us"] .hero h1{font-size:45px}html[data-cc-page="group-contact-us"] .hero-actions .btn{width:100%}html[data-cc-page="group-contact-us"] .intro-grid h2, html[data-cc-page="group-contact-us"] .section-heading h2{font-size:42px}html[data-cc-page="group-contact-us"] .footer-main{grid-template-columns:1fr}html[data-cc-page="group-contact-us"] .footer-brand{grid-column:auto}html[data-cc-page="group-contact-us"] .footer-bottom{display:block}html[data-cc-page="group-contact-us"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="group-contact-us"], html[data-cc-page="group-contact-us"] *{scroll-behavior:auto!important}html[data-cc-page="group-contact-us"] .reveal, html[data-cc-page="group-contact-us"] .reveal-left, html[data-cc-page="group-contact-us"] .reveal-right, html[data-cc-page="group-contact-us"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="group-contact-us"] .image-reveal::after{display:none}html[data-cc-page="group-contact-us"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="group-contact-us"] .page-intro{padding:155px 0 130px}html[data-cc-page="group-contact-us"] .page-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px;align-items:start}html[data-cc-page="group-contact-us"] .page-intro h2{font-family:var(--display);font-size:clamp(56px,5.6vw,86px);line-height:.98;letter-spacing:-.045em;font-weight:400}html[data-cc-page="group-contact-us"] .page-intro p{font-size:15px;line-height:1.95;color:var(--muted);max-width:650px}html[data-cc-page="group-contact-us"] .big-space{padding:150px 0}html[data-cc-page="group-contact-us"] .soft-space{padding:150px 0;background:var(--paper)}
html[data-cc-page="group-contact-us"] .rail-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}html[data-cc-page="group-contact-us"] .rail-head h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="group-contact-us"] .rail-head p{font-size:14px;line-height:1.85;color:var(--muted);max-width:570px;margin-top:18px}html[data-cc-page="group-contact-us"] .rail-nav{display:flex;gap:8px}html[data-cc-page="group-contact-us"] .rail-nav button{width:48px;height:48px;border:1px solid #ccc;background:#fff;transition:.25s}html[data-cc-page="group-contact-us"] .rail-nav button:hover{background:var(--pink);border-color:var(--pink);color:#fff;transform:translateY(-2px)}
html[data-cc-page="group-contact-us"] .rail-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;scroll-snap-type:x mandatory;user-select:none}html[data-cc-page="group-contact-us"] .rail-viewport::-webkit-scrollbar{display:none}html[data-cc-page="group-contact-us"] .rail-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none}html[data-cc-page="group-contact-us"] .rail-track{display:flex;gap:24px;width:max-content;padding-bottom:4px}html[data-cc-page="group-contact-us"] .rail-card{width:min(500px,38vw);min-width:390px;scroll-snap-align:start;background:#fff;border:1px solid #ece8e9;transition:transform .35s ease,box-shadow .35s ease}html[data-cc-page="group-contact-us"] .rail-card:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(0,0,0,.08)}html[data-cc-page="group-contact-us"] .rail-image{height:360px;overflow:hidden;background:#111}html[data-cc-page="group-contact-us"] .rail-image img{height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-contact-us"] .rail-card:hover .rail-image img{transform:scale(1.045)}html[data-cc-page="group-contact-us"] .rail-copy{padding:30px 30px 34px}html[data-cc-page="group-contact-us"] .rail-meta{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8b8688;margin-bottom:14px}html[data-cc-page="group-contact-us"] .rail-meta span:first-child{color:var(--pink)}html[data-cc-page="group-contact-us"] .rail-copy h3{font-family:var(--display);font-size:36px;line-height:1.05;font-weight:400}html[data-cc-page="group-contact-us"] .rail-copy p{font-size:12px;line-height:1.8;color:var(--muted);margin:14px 0 22px;max-width:410px}html[data-cc-page="group-contact-us"] .text-link{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="group-contact-us"] .text-link i{transition:transform .25s}html[data-cc-page="group-contact-us"] .text-link:hover i{transform:translateX(5px)}
html[data-cc-page="group-contact-us"] .rail-progress{position:relative;height:20px;margin-top:25px;display:flex;align-items:center;cursor:pointer}html[data-cc-page="group-contact-us"] .rail-progress::before{content:"";position:absolute;left:0;right:0;height:2px;background:#dedadb}html[data-cc-page="group-contact-us"] .rail-progress span{position:absolute;left:0;height:4px;width:28%;background:var(--pink);transition:left .1s linear,width .2s ease;border-radius:5px}
html[data-cc-page="group-contact-us"] .editorial-split{display:grid;grid-template-columns:1.1fr .9fr;gap:25px;align-items:stretch}html[data-cc-page="group-contact-us"] .editorial-split.reverse{grid-template-columns:.9fr 1.1fr}html[data-cc-page="group-contact-us"] .editorial-split.reverse .split-visual{order:2}html[data-cc-page="group-contact-us"] .split-visual{min-height:650px}html[data-cc-page="group-contact-us"] .split-panel{padding:70px;display:flex;flex-direction:column;justify-content:center;background:#fff}html[data-cc-page="group-contact-us"] .split-panel h2{font-family:var(--display);font-size:clamp(50px,4.6vw,72px);line-height:1;font-weight:400;letter-spacing:-.04em}html[data-cc-page="group-contact-us"] .split-panel p{font-size:14px;line-height:1.9;color:var(--muted);margin:24px 0 28px;max-width:560px}html[data-cc-page="group-contact-us"] .fact-row{display:flex;gap:32px;flex-wrap:wrap;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}html[data-cc-page="group-contact-us"] .fact-row strong{font-family:var(--display);font-size:28px;font-weight:400;color:var(--pink)}html[data-cc-page="group-contact-us"] .fact-row small{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#888;margin-top:4px}
html[data-cc-page="group-contact-us"] .object-motion{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .8s ease,transform .9s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-contact-us"] .object-motion.in-view{opacity:1;transform:none}html[data-cc-page="group-contact-us"] .object-motion:nth-child(even){transform:translateY(34px) translateX(20px)}html[data-cc-page="group-contact-us"] .object-motion:nth-child(even).in-view{transform:none}
@media(max-width:900px){html[data-cc-page="group-contact-us"] .page-intro-grid, html[data-cc-page="group-contact-us"] .editorial-split, html[data-cc-page="group-contact-us"] .editorial-split.reverse{grid-template-columns:1fr;gap:28px}html[data-cc-page="group-contact-us"] .editorial-split.reverse .split-visual{order:0}html[data-cc-page="group-contact-us"] .page-intro{padding:110px 0 95px}html[data-cc-page="group-contact-us"] .big-space, html[data-cc-page="group-contact-us"] .soft-space{padding:105px 0}html[data-cc-page="group-contact-us"] .rail-head{display:block}html[data-cc-page="group-contact-us"] .rail-nav{margin-top:24px}html[data-cc-page="group-contact-us"] .rail-card{width:76vw;min-width:330px}html[data-cc-page="group-contact-us"] .split-visual{min-height:520px}html[data-cc-page="group-contact-us"] .split-panel{padding:48px 36px}}
@media(max-width:560px){html[data-cc-page="group-contact-us"] .rail-card{width:88vw;min-width:280px}html[data-cc-page="group-contact-us"] .rail-image{height:310px}html[data-cc-page="group-contact-us"] .rail-copy{padding:24px}html[data-cc-page="group-contact-us"] .split-panel{padding:36px 24px}html[data-cc-page="group-contact-us"] .split-visual{min-height:430px}html[data-cc-page="group-contact-us"] .page-intro h2{font-size:48px}html[data-cc-page="group-contact-us"] .rail-head h2{font-size:46px}}
html[data-cc-page="group-contact-us"] .office-section{padding:145px 0}html[data-cc-page="group-contact-us"] .office-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:26px}html[data-cc-page="group-contact-us"] .office-card{background:#111113;color:#fff;padding:60px;min-height:440px;display:flex;flex-direction:column;justify-content:space-between}html[data-cc-page="group-contact-us"] .office-card h2{font-family:var(--display);font-size:56px;font-weight:400;line-height:1}html[data-cc-page="group-contact-us"] .office-card p{font-size:13px;line-height:1.85;color:rgba(255,255,255,.6);max-width:430px}html[data-cc-page="group-contact-us"] .office-contact{display:grid;gap:12px}html[data-cc-page="group-contact-us"] .office-contact a{font-size:16px}html[data-cc-page="group-contact-us"] .office-map iframe{width:100%;height:100%;min-height:440px;border:0}html[data-cc-page="group-contact-us"] .resort-contacts{padding:150px 0;background:var(--paper)}html[data-cc-page="group-contact-us"] .resort-contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}html[data-cc-page="group-contact-us"] .resort-contact{background:#fff;padding:42px;border:1px solid #ece8e9;transition:transform .35s ease,box-shadow .35s ease}html[data-cc-page="group-contact-us"] .resort-contact:hover{transform:translateY(-6px);box-shadow:0 22px 55px rgba(0,0,0,.07)}html[data-cc-page="group-contact-us"] .resort-contact small{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--pink)}html[data-cc-page="group-contact-us"] .resort-contact h3{font-family:var(--display);font-size:36px;font-weight:400;margin:12px 0}html[data-cc-page="group-contact-us"] .resort-contact p, html[data-cc-page="group-contact-us"] .resort-contact a{font-size:12px;line-height:1.75;color:var(--muted)}html[data-cc-page="group-contact-us"] .group-form{padding:150px 0}html[data-cc-page="group-contact-us"] .group-form-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}html[data-cc-page="group-contact-us"] .group-form-copy h2{font-family:var(--display);font-size:clamp(54px,5vw,78px);line-height:1;font-weight:400}html[data-cc-page="group-contact-us"] .group-form-copy p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:20px}html[data-cc-page="group-contact-us"] .simple-form{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}html[data-cc-page="group-contact-us"] .simple-field.full{grid-column:1/3}html[data-cc-page="group-contact-us"] .simple-field label{display:block;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}html[data-cc-page="group-contact-us"] .simple-field input, html[data-cc-page="group-contact-us"] .simple-field textarea{width:100%;border:0;border-bottom:1px solid #cbc7c8;background:transparent;padding:13px 0;outline:0;font-size:14px}html[data-cc-page="group-contact-us"] .simple-field textarea{min-height:125px}html[data-cc-page="group-contact-us"] .simple-field input:focus, html[data-cc-page="group-contact-us"] .simple-field textarea:focus{border-color:var(--pink)}html[data-cc-page="group-contact-us"] .simple-form .btn{grid-column:1/3;justify-self:start;margin-top:8px}@media(max-width:850px){html[data-cc-page="group-contact-us"] .office-grid, html[data-cc-page="group-contact-us"] .group-form-grid{grid-template-columns:1fr}html[data-cc-page="group-contact-us"] .resort-contact-grid{grid-template-columns:1fr}}@media(max-width:560px){html[data-cc-page="group-contact-us"] .office-card{padding:38px 24px}html[data-cc-page="group-contact-us"] .simple-form{grid-template-columns:1fr}html[data-cc-page="group-contact-us"] .simple-field.full, html[data-cc-page="group-contact-us"] .simple-form .btn{grid-column:1}html[data-cc-page="group-contact-us"] .resort-contacts, html[data-cc-page="group-contact-us"] .group-form, html[data-cc-page="group-contact-us"] .office-section{padding:105px 0}}

/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="group-contact-us"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="group-contact-us"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="group-contact-us"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-contact-us"] .page-intro-grid>div, html[data-cc-page="group-contact-us"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-contact-us"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="group-contact-us"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="group-contact-us"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="group-contact-us"] .page-intro .reveal-left, html[data-cc-page="group-contact-us"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="group-contact-us"] .page-intro .reveal-left.in-view, html[data-cc-page="group-contact-us"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="group-contact-us"] .section-heading h2, html[data-cc-page="group-contact-us"] .rail-head h2, html[data-cc-page="group-contact-us"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="group-contact-us"] .section-heading p, html[data-cc-page="group-contact-us"] .rail-head p, html[data-cc-page="group-contact-us"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="group-contact-us"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="group-contact-us"] .page-intro-grid{padding:0 8px}html[data-cc-page="group-contact-us"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="group-contact-us"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="group-contact-us"] .page-intro h2{font-size:38px!important}html[data-cc-page="group-contact-us"] .page-intro p{font-size:13px!important}}

/* V8 footer separation rule */
html[data-cc-page="group-contact-us"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="group-contact-us"] .header-main{height:92px!important}
html[data-cc-page="group-contact-us"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-contact-us"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="group-contact-us"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="group-contact-us"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-contact-us"] .menu{gap:26px!important}
html[data-cc-page="group-contact-us"] .brand img{max-height:66px!important}
html[data-cc-page="group-contact-us"] .hero .eyebrow, html[data-cc-page="group-contact-us"] .hero-kicker, html[data-cc-page="group-contact-us"] .hero-kicker.eyebrow, html[data-cc-page="group-contact-us"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="group-contact-us"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="group-contact-us"] .menu{gap:18px!important}html[data-cc-page="group-contact-us"] .menu>a, html[data-cc-page="group-contact-us"] .menu-link{font-size:10px!important}html[data-cc-page="group-contact-us"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-contact-us"] .header-main{height:72px!important}html[data-cc-page="group-contact-us"] .brand img{max-height:46px!important}html[data-cc-page="group-contact-us"] .mobile-trigger{font-size:20px!important}}


/* --- group-menu-unified.css --- */
/* Final Demo - unified Group menu
   Reference: original index-group.html
*/
/* HEADER */
html[data-cc-page="group-contact-us"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="group-contact-us"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_groupcontactus .35s ease both
            }

        @keyframes drop_cc_groupcontactus {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="group-contact-us"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="group-contact-us"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="group-contact-us"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="group-contact-us"] .header-main {
            height: 102px
        }

            html[data-cc-page="group-contact-us"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="group-contact-us"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="group-contact-us"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="group-contact-us"] .brand-dark {
            display: none
        }

        html[data-cc-page="group-contact-us"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="group-contact-us"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="group-contact-us"] .header-main {
            position: relative
        }

        html[data-cc-page="group-contact-us"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="group-contact-us"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="group-contact-us"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="group-contact-us"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="group-contact-us"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="group-contact-us"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-contact-us"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="group-contact-us"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="group-contact-us"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-contact-us"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="group-contact-us"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="group-contact-us"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="group-contact-us"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-contact-us"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="group-contact-us"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="group-contact-us"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="group-contact-us"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="group-contact-us"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="group-contact-us"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="group-contact-us"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="group-contact-us"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="group-contact-us"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-contact-us"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="group-contact-us"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="group-contact-us"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-contact-us"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="group-contact-us"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="group-contact-us"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="group-contact-us"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="group-contact-us"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="group-contact-us"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="group-contact-us"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="group-contact-us"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="group-contact-us"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="group-contact-us"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="group-contact-us"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-contact-us"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="group-contact-us"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="group-contact-us"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="group-contact-us"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="group-contact-us"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="group-contact-us"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="group-contact-us"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="group-contact-us"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="group-contact-us"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="group-contact-us"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="group-contact-us"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="group-contact-us"] .drawer.open {
                transform: none
            }

        html[data-cc-page="group-contact-us"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="group-contact-us"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="group-contact-us"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="group-contact-us"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="group-contact-us"] .drawer-nav > a, html[data-cc-page="group-contact-us"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="group-contact-us"] .drawer-nav > a:hover, html[data-cc-page="group-contact-us"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="group-contact-us"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="group-contact-us"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="group-contact-us"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="group-contact-us"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="group-contact-us"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="group-contact-us"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="group-contact-us"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-contact-us"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="group-contact-us"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="group-contact-us"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="group-contact-us"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-contact-us"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="group-contact-us"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }


@media(max-width:1100px){
  html[data-cc-page="group-contact-us"] .menu{gap:18px}
  html[data-cc-page="group-contact-us"] .menu-link{font-size:11px}
  html[data-cc-page="group-contact-us"] .header-book{margin-left:20px}
}
@media(max-width:820px){
  html[data-cc-page="group-contact-us"] .header{position:absolute;background:rgba(255,255,255,.97);color:#111}
  html[data-cc-page="group-contact-us"] .header-top, html[data-cc-page="group-contact-us"] .menu, html[data-cc-page="group-contact-us"] .header-book{display:none}
  html[data-cc-page="group-contact-us"] .header-main{height:72px}
  html[data-cc-page="group-contact-us"] .brand-light{display:none!important}
  html[data-cc-page="group-contact-us"] .brand-dark{display:block!important}
  html[data-cc-page="group-contact-us"] .brand img{width:125px;max-height:52px}
  html[data-cc-page="group-contact-us"] .mobile-trigger{display:block}
}
/* V23-V25 language/mobile controls from reference */
html[data-cc-page="group-contact-us"] 
        .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="group-contact-us"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-contact-us"] .language-trigger:hover, html[data-cc-page="group-contact-us"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="group-contact-us"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="group-contact-us"] .header.sticky .language-trigger:hover, html[data-cc-page="group-contact-us"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="group-contact-us"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="group-contact-us"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="group-contact-us"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="group-contact-us"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="group-contact-us"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-contact-us"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-contact-us"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-contact-us"] .language-menu a:hover, html[data-cc-page="group-contact-us"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="group-contact-us"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="group-contact-us"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="group-contact-us"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="group-contact-us"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="group-contact-us"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="group-contact-us"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="group-contact-us"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="group-contact-us"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="group-contact-us"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-contact-us"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="group-contact-us"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-contact-us"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="group-contact-us"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="group-contact-us"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="group-contact-us"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="group-contact-us"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="group-contact-us"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="group-contact-us"] .topbar-language .language-trigger:hover, html[data-cc-page="group-contact-us"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-contact-us"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="group-contact-us"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="group-contact-us"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="group-contact-us"] .topbar-language .language-menu a:hover, html[data-cc-page="group-contact-us"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="group-contact-us"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="group-contact-us"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="group-contact-us"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="group-contact-us"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="group-contact-us"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="group-contact-us"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="group-contact-us"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="group-contact-us"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="group-contact-us"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="group-contact-us"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="group-contact-us"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="group-contact-us"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="group-contact-us"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="group-contact-us"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="group-contact-us"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="group-contact-us"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="group-contact-us"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="group-contact-us"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-contact-us"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-contact-us"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="group-contact-us"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="group-contact-us"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="group-contact-us"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="group-contact-us"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="group-contact-us"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="group-contact-us"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="group-contact-us"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="group-contact-us"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-contact-us"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="group-contact-us"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="group-contact-us"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="group-contact-us"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-contact-us"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-contact-us"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-contact-us"] .mobile-language-menu a:hover, html[data-cc-page="group-contact-us"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="group-contact-us"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-contact-us"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="group-contact-us"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="group-contact-us"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-contact-us"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="group-contact-us"] .mobile-language-trigger, html[data-cc-page="group-contact-us"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="group-contact-us"] .mobile-language-menu {
                right: -43px;
            }
        }

/* Final reference sizing */
html[data-cc-page="group-contact-us"] .header-main{height:92px!important}
html[data-cc-page="group-contact-us"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-contact-us"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
html[data-cc-page="group-contact-us"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-contact-us"] .menu{gap:26px!important}
html[data-cc-page="group-contact-us"] .brand img{max-height:66px!important}
@media(max-width:1200px){html[data-cc-page="group-contact-us"] .menu{gap:18px!important}html[data-cc-page="group-contact-us"] .menu-link{font-size:10px!important}html[data-cc-page="group-contact-us"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-contact-us"] .header-main{height:72px!important}html[data-cc-page="group-contact-us"] .brand img{max-height:46px!important}html[data-cc-page="group-contact-us"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="group-contact-us"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-contact-us"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="group-contact-us"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-contact-us"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="group-contact-us"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="group-contact-us"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="group-contact-us"] .internal-banner .hero-inner, html[data-cc-page="group-contact-us"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-contact-us"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-contact-us"] .internal-banner .hero-copy, html[data-cc-page="group-contact-us"] .internal-banner .offers-page-hero-copy, html[data-cc-page="group-contact-us"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="group-contact-us"] .internal-banner .hero-kicker, html[data-cc-page="group-contact-us"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="group-contact-us"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="group-contact-us"] .internal-banner .cl7-kicker, html[data-cc-page="group-contact-us"] .internal-banner h1, html[data-cc-page="group-contact-us"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="group-contact-us"] .internal-banner .hero-kicker::before, html[data-cc-page="group-contact-us"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="group-contact-us"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="group-contact-us"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-contact-us"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="group-contact-us"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="group-contact-us"] .internal-banner .hero-inner, html[data-cc-page="group-contact-us"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-contact-us"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="group-contact-us"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-contact-us"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="group-contact-us"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="group-contact-us"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-contact-us"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="group-contact-us"] .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;
}
html[data-cc-page="group-contact-us"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="group-contact-us"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="group-contact-us"] .footer-reference::after{display:none!important;}
html[data-cc-page="group-contact-us"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="group-contact-us"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="group-contact-us"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="group-contact-us"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="group-contact-us"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="group-contact-us"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="group-contact-us"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="group-contact-us"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="group-contact-us"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="group-contact-us"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="group-contact-us"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="group-contact-us"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="group-contact-us"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="group-contact-us"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="group-contact-us"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="group-contact-us"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="group-contact-us"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="group-contact-us"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="group-contact-us"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="group-contact-us"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="group-contact-us"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="group-contact-us"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="group-contact-us"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="group-contact-us"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="group-contact-us"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="group-contact-us"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="group-contact-us"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="group-contact-us"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="group-contact-us"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="group-contact-us"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="group-contact-us"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="group-contact-us"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="group-contact-us"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="group-contact-us"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="group-contact-us"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="group-contact-us"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="group-contact-us"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="group-contact-us"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="group-contact-us"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="group-contact-us"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="group-contact-us"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="group-contact-us"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="group-contact-us"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="group-contact-us"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-contact-us"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="group-contact-us"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="group-contact-us"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-contact-us"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="group-contact-us"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="group-contact-us"] .footer-reference-brand, html[data-cc-page="group-contact-us"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-contact-us"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="group-contact-us"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="group-contact-us"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="group-contact-us"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-contact-us"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="group-contact-us"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="group-contact-us"] .footer-reference-brand, html[data-cc-page="group-contact-us"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="group-contact-us"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="group-contact-us"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="group-contact-us"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="group-contact-us"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="group-contact-us"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="group-contact-us"] .footer-reference-form button{min-height:52px;}
}


/* Resort contact cards: map first, contact information below; two cards per row on desktop. */
html[data-cc-page="group-contact-us"] .resort-contact-showcase{padding:112px 0 126px;background:#f6f3f4;overflow:hidden}
html[data-cc-page="group-contact-us"] .resort-contact-showcase-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,.55fr);gap:78px;align-items:end;margin-bottom:48px}
html[data-cc-page="group-contact-us"] .resort-contact-showcase-head h2{font-family:var(--display);font-size:clamp(52px,5.2vw,78px);font-weight:400;line-height:.96;letter-spacing:-.035em;margin-top:12px}
html[data-cc-page="group-contact-us"] .resort-contact-showcase-head h2 em{font-weight:400;color:var(--pink)}
html[data-cc-page="group-contact-us"] .resort-contact-showcase-head p{font-size:14px;line-height:1.85;color:var(--muted);max-width:470px;margin:0 0 5px}
html[data-cc-page="group-contact-us"] .resort-contact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
html[data-cc-page="group-contact-us"] .resort-contact-row{display:flex;flex-direction:column;min-width:0;background:#fff;box-shadow:0 18px 48px rgba(0,0,0,.065);overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}
html[data-cc-page="group-contact-us"] .resort-contact-row:hover{transform:translateY(-5px);box-shadow:0 26px 62px rgba(0,0,0,.09)}
html[data-cc-page="group-contact-us"] .resort-contact-map{position:relative;height:310px;background:#e9e6e7;overflow:hidden}
html[data-cc-page="group-contact-us"] .resort-contact-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.9) contrast(.99)}
html[data-cc-page="group-contact-us"] .resort-contact-map::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.035)}
html[data-cc-page="group-contact-us"] .resort-contact-info{padding:34px 36px 38px;display:flex;flex-direction:column;flex:1;background:#fff;color:#161616}
html[data-cc-page="group-contact-us"] .resort-contact-index{display:flex;align-items:center;gap:11px;margin-bottom:13px;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--pink)}
html[data-cc-page="group-contact-us"] .resort-contact-index::before{content:"";width:28px;height:1px;background:currentColor}
html[data-cc-page="group-contact-us"] .resort-contact-info h3{font-family:var(--display);font-size:clamp(32px,2.4vw,43px);font-weight:400;line-height:1.02;letter-spacing:-.025em;margin:0;min-height:88px}
html[data-cc-page="group-contact-us"] .resort-contact-location{font-size:12.5px;line-height:1.72;color:var(--muted);margin:15px 0 22px}
html[data-cc-page="group-contact-us"] .resort-contact-details{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px;margin:0 0 24px;padding:20px 0;border-top:1px solid #ece8e9;border-bottom:1px solid #ece8e9}
html[data-cc-page="group-contact-us"] .resort-contact-detail{min-width:0}
html[data-cc-page="group-contact-us"] .resort-contact-detail span{display:block;font-size:8px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#9a9396;margin-bottom:5px}
html[data-cc-page="group-contact-us"] .resort-contact-detail a, html[data-cc-page="group-contact-us"] .resort-contact-detail strong{display:block;font-size:11.5px;line-height:1.5;color:#191919;font-weight:600;overflow-wrap:anywhere}
html[data-cc-page="group-contact-us"] .resort-contact-detail a:hover{color:var(--pink)}
html[data-cc-page="group-contact-us"] .resort-contact-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:auto}
html[data-cc-page="group-contact-us"] .resort-contact-actions a{display:inline-flex;align-items:center;gap:8px;font-size:9px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#171717}
html[data-cc-page="group-contact-us"] .resort-contact-actions a i{color:var(--pink);font-size:11px}
html[data-cc-page="group-contact-us"] .resort-contact-actions a:hover{color:var(--pink)}
@media(max-width:950px){
  html[data-cc-page="group-contact-us"] .resort-contact-showcase{padding:92px 0 102px}
  html[data-cc-page="group-contact-us"] .resort-contact-showcase-head{grid-template-columns:1fr;gap:20px;margin-bottom:38px}
  html[data-cc-page="group-contact-us"] .resort-contact-map{height:280px}
  html[data-cc-page="group-contact-us"] .resort-contact-info h3{min-height:0}
}
@media(max-width:760px){
  html[data-cc-page="group-contact-us"] .resort-contact-list{grid-template-columns:1fr}
  html[data-cc-page="group-contact-us"] .resort-contact-map{height:320px}
}
@media(max-width:560px){
  html[data-cc-page="group-contact-us"] .resort-contact-showcase{padding:74px 0 82px}
  html[data-cc-page="group-contact-us"] .resort-contact-showcase-head h2{font-size:44px}
  html[data-cc-page="group-contact-us"] .resort-contact-info{padding:30px 24px 32px}
  html[data-cc-page="group-contact-us"] .resort-contact-map{height:270px}
  html[data-cc-page="group-contact-us"] .resort-contact-details{grid-template-columns:1fr;gap:13px}
}

/* ============================================================
   PAGE: group-hotels   (group_Hotels.html)
   ============================================================ */
html[data-cc-page="group-hotels"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="group-hotels"], html[data-cc-page="group-hotels"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="group-hotels"]{scroll-behavior:smooth}html[data-cc-page="group-hotels"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="group-hotels"] a{text-decoration:none;color:inherit}html[data-cc-page="group-hotels"] img, html[data-cc-page="group-hotels"] video{display:block;width:100%}html[data-cc-page="group-hotels"] button, html[data-cc-page="group-hotels"] input, html[data-cc-page="group-hotels"] textarea{font:inherit}html[data-cc-page="group-hotels"] button{cursor:pointer}html[data-cc-page="group-hotels"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="group-hotels"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="group-hotels"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-hotels"] .in-view .section-rule, html[data-cc-page="group-hotels"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="group-hotels"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="group-hotels"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="group-hotels"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="group-hotels"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="group-hotels"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="group-hotels"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="group-hotels"] .btn-white{background:#fff;color:#111}html[data-cc-page="group-hotels"] .btn-white::before{background:var(--pink)}html[data-cc-page="group-hotels"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="group-hotels"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="group-hotels"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="group-hotels"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="group-hotels"] .header.sticky .topbar{display:none}html[data-cc-page="group-hotels"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="group-hotels"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="group-hotels"] .header-main{height:102px}html[data-cc-page="group-hotels"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="group-hotels"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="group-hotels"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="group-hotels"] .brand-dark{display:none}html[data-cc-page="group-hotels"] .header.sticky .brand-light{display:none}html[data-cc-page="group-hotels"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="group-hotels"] .header.sticky .brand{width:210px}html[data-cc-page="group-hotels"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="group-hotels"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="group-hotels"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="group-hotels"] .menu a:hover::after, html[data-cc-page="group-hotels"] .menu a.active::after{right:0}html[data-cc-page="group-hotels"] .header-book{margin-left:32px}html[data-cc-page="group-hotels"] .lang{position:relative}html[data-cc-page="group-hotels"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="group-hotels"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="group-hotels"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="group-hotels"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="group-hotels"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="group-hotels"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="group-hotels"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="group-hotels"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="group-hotels"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="group-hotels"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="group-hotels"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="group-hotels"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="group-hotels"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="group-hotels"] .drawer.open{transform:none}html[data-cc-page="group-hotels"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="group-hotels"] .drawer-head img{width:150px}html[data-cc-page="group-hotels"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="group-hotels"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="group-hotels"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="group-hotels"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="group-hotels"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="group-hotels"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="group-hotels"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="group-hotels"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="group-hotels"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="group-hotels"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="group-hotels"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_grouphotels 9s ease-in-out both}html[data-cc-page="group-hotels"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_grouphotels{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="group-hotels"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="group-hotels"] .hero-copy{max-width:800px}html[data-cc-page="group-hotels"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="group-hotels"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="group-hotels"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="group-hotels"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="group-hotels"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="group-hotels"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="group-hotels"] .reveal, html[data-cc-page="group-hotels"] .reveal-left, html[data-cc-page="group-hotels"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-hotels"] .reveal{transform:translateY(44px)}html[data-cc-page="group-hotels"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="group-hotels"] .reveal-right{transform:translateX(60px)}html[data-cc-page="group-hotels"] .reveal.in-view, html[data-cc-page="group-hotels"] .reveal-left.in-view, html[data-cc-page="group-hotels"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="group-hotels"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-hotels"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="group-hotels"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="group-hotels"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="group-hotels"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="group-hotels"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="group-hotels"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="group-hotels"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="group-hotels"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="group-hotels"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-hotels"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="group-hotels"] .intro-section{padding:150px 0}html[data-cc-page="group-hotels"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="group-hotels"] .intro-grid h2, html[data-cc-page="group-hotels"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="group-hotels"] .intro-grid p, html[data-cc-page="group-hotels"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="group-hotels"] .section-heading{margin-bottom:58px}html[data-cc-page="group-hotels"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="group-hotels"] .section-heading h2{max-width:850px}html[data-cc-page="group-hotels"] .section-heading p{margin-top:20px}html[data-cc-page="group-hotels"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="group-hotels"] .footer{background:#111113;color:#fff}html[data-cc-page="group-hotels"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="group-hotels"] .footer-logo{width:170px}html[data-cc-page="group-hotels"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="group-hotels"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="group-hotels"] .footer-links{display:grid;gap:11px}html[data-cc-page="group-hotels"] .footer-links a, html[data-cc-page="group-hotels"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="group-hotels"] .footer-links a:hover{color:#fff}html[data-cc-page="group-hotels"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="group-hotels"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="group-hotels"] .newsletter{margin-top:22px}html[data-cc-page="group-hotels"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="group-hotels"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="group-hotels"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="group-hotels"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="group-hotels"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="group-hotels"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="group-hotels"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="group-hotels"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="group-hotels"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="group-hotels"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="group-hotels"] .container{width:calc(100% - 44px)}html[data-cc-page="group-hotels"] .menu{gap:18px}html[data-cc-page="group-hotels"] .menu a{font-size:10px}html[data-cc-page="group-hotels"] .header-book{margin-left:20px}html[data-cc-page="group-hotels"] .intro-grid{gap:65px}html[data-cc-page="group-hotels"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="group-hotels"] body{padding-bottom:68px}html[data-cc-page="group-hotels"] .container{width:calc(100% - 30px)}html[data-cc-page="group-hotels"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="group-hotels"] .topbar, html[data-cc-page="group-hotels"] .menu, html[data-cc-page="group-hotels"] .header-book{display:none}html[data-cc-page="group-hotels"] .header-main{height:72px}html[data-cc-page="group-hotels"] .brand{width:180px}html[data-cc-page="group-hotels"] .brand-light{display:none!important}html[data-cc-page="group-hotels"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="group-hotels"] .mobile-actions{display:flex}html[data-cc-page="group-hotels"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="group-hotels"] .hero-inner{padding-bottom:70px}html[data-cc-page="group-hotels"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="group-hotels"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="group-hotels"] .hero-place{display:none}html[data-cc-page="group-hotels"] .intro-section{padding:105px 0}html[data-cc-page="group-hotels"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="group-hotels"] .intro-grid h2, html[data-cc-page="group-hotels"] .section-heading h2{font-size:48px}html[data-cc-page="group-hotels"] .section-heading{margin-bottom:40px}html[data-cc-page="group-hotels"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="group-hotels"] .footer-brand{grid-column:1/3}html[data-cc-page="group-hotels"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="group-hotels"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="group-hotels"] .hero{min-height:600px}html[data-cc-page="group-hotels"] .hero h1{font-size:45px}html[data-cc-page="group-hotels"] .hero-actions .btn{width:100%}html[data-cc-page="group-hotels"] .intro-grid h2, html[data-cc-page="group-hotels"] .section-heading h2{font-size:42px}html[data-cc-page="group-hotels"] .footer-main{grid-template-columns:1fr}html[data-cc-page="group-hotels"] .footer-brand{grid-column:auto}html[data-cc-page="group-hotels"] .footer-bottom{display:block}html[data-cc-page="group-hotels"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="group-hotels"], html[data-cc-page="group-hotels"] *{scroll-behavior:auto!important}html[data-cc-page="group-hotels"] .reveal, html[data-cc-page="group-hotels"] .reveal-left, html[data-cc-page="group-hotels"] .reveal-right, html[data-cc-page="group-hotels"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="group-hotels"] .image-reveal::after{display:none}html[data-cc-page="group-hotels"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="group-hotels"] .hotels-intro{padding:145px 0 105px}html[data-cc-page="group-hotels"] .hotels-intro-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:end}html[data-cc-page="group-hotels"] .hotels-intro h2{font-family:var(--display);font-size:clamp(56px,5.6vw,86px);font-weight:400;line-height:.98;letter-spacing:-.045em}html[data-cc-page="group-hotels"] .hotels-intro p{font-size:14px;line-height:1.9;color:var(--muted);max-width:610px}html[data-cc-page="group-hotels"] .hotel-chapters{padding-bottom:160px}html[data-cc-page="group-hotels"] .hotel-chapter{display:grid;grid-template-columns:1.1fr .9fr;min-height:610px;margin-bottom:34px;background:var(--paper);overflow:hidden}html[data-cc-page="group-hotels"] .hotel-chapter.reverse{grid-template-columns:.9fr 1.1fr}html[data-cc-page="group-hotels"] .hotel-chapter.reverse .hotel-visual{order:2}html[data-cc-page="group-hotels"] .hotel-visual{min-height:610px}html[data-cc-page="group-hotels"] .hotel-copy{padding:70px 72px;display:flex;flex-direction:column;justify-content:center}html[data-cc-page="group-hotels"] .hotel-copy .index{font-family:var(--display);font-size:56px;color:var(--pink);line-height:1}html[data-cc-page="group-hotels"] .hotel-copy .mood{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--pink);margin:16px 0}html[data-cc-page="group-hotels"] .hotel-copy h2{font-family:var(--display);font-size:clamp(48px,4.8vw,72px);line-height:1;font-weight:400;letter-spacing:-.035em}html[data-cc-page="group-hotels"] .hotel-copy p{font-size:13px;line-height:1.85;color:var(--muted);margin:22px 0 28px;max-width:470px}html[data-cc-page="group-hotels"] .hotel-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}html[data-cc-page="group-hotels"] .hotel-tags span{border:1px solid var(--line);padding:8px 11px;font-size:9px;letter-spacing:.1em;text-transform:uppercase}html[data-cc-page="group-hotels"] .collection-note{padding:140px 0;background:#111113;color:#fff}html[data-cc-page="group-hotels"] .collection-note .container{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:end}html[data-cc-page="group-hotels"] .collection-note h2{font-family:var(--display);font-size:clamp(58px,5.8vw,88px);font-weight:400;line-height:.96}html[data-cc-page="group-hotels"] .collection-note p{color:rgba(255,255,255,.62);font-size:14px;line-height:1.9;max-width:560px}html[data-cc-page="group-hotels"] .collection-note .btn{margin-top:25px}
@media(max-width:900px){html[data-cc-page="group-hotels"] .hotels-intro-inner, html[data-cc-page="group-hotels"] .collection-note .container{grid-template-columns:1fr;gap:30px}html[data-cc-page="group-hotels"] .hotel-chapter, html[data-cc-page="group-hotels"] .hotel-chapter.reverse{grid-template-columns:1fr}html[data-cc-page="group-hotels"] .hotel-chapter.reverse .hotel-visual{order:0}html[data-cc-page="group-hotels"] .hotel-visual{min-height:470px}html[data-cc-page="group-hotels"] .hotel-copy{padding:48px 38px}html[data-cc-page="group-hotels"] .hotel-chapter{min-height:0}html[data-cc-page="group-hotels"] .hotels-intro{padding:105px 0 70px}}
@media(max-width:560px){html[data-cc-page="group-hotels"] .hotel-visual{min-height:390px}html[data-cc-page="group-hotels"] .hotel-copy{padding:38px 24px 44px}html[data-cc-page="group-hotels"] .hotel-copy h2{font-size:43px}html[data-cc-page="group-hotels"] .hotel-copy .index{font-size:44px}html[data-cc-page="group-hotels"] .hotel-chapters{padding-bottom:100px}html[data-cc-page="group-hotels"] .collection-note{padding:100px 0}}


/* FINAL DEMO V4 REVIEW FIXES */
html[data-cc-page="group-hotels"] .collection-note{background:#f7f5f5!important;color:#171717!important;border-top:1px solid #ece7e9}html[data-cc-page="group-hotels"] .collection-note p{color:#6f686c!important}


/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="group-hotels"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="group-hotels"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="group-hotels"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-hotels"] .page-intro-grid>div, html[data-cc-page="group-hotels"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-hotels"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="group-hotels"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="group-hotels"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="group-hotels"] .page-intro .reveal-left, html[data-cc-page="group-hotels"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="group-hotels"] .page-intro .reveal-left.in-view, html[data-cc-page="group-hotels"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="group-hotels"] .section-heading h2, html[data-cc-page="group-hotels"] .rail-head h2, html[data-cc-page="group-hotels"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="group-hotels"] .section-heading p, html[data-cc-page="group-hotels"] .rail-head p, html[data-cc-page="group-hotels"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="group-hotels"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="group-hotels"] .page-intro-grid{padding:0 8px}html[data-cc-page="group-hotels"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="group-hotels"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="group-hotels"] .page-intro h2{font-size:38px!important}html[data-cc-page="group-hotels"] .page-intro p{font-size:13px!important}}

html[data-cc-page="group-hotels"] .hotels-intro{padding:92px 0 88px!important}
html[data-cc-page="group-hotels"] .hotels-intro-inner{display:grid!important;grid-template-columns:1fr!important;gap:22px!important;max-width:900px;margin:0 auto;text-align:center!important;align-items:center!important}
html[data-cc-page="group-hotels"] .hotels-intro-inner>div, html[data-cc-page="group-hotels"] .hotels-intro-inner>p{max-width:760px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-hotels"] .hotels-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important}
html[data-cc-page="group-hotels"] .hotels-intro p{font-size:var(--inner-body)!important;line-height:1.82!important}
html[data-cc-page="group-hotels"] .hotels-intro .reveal-left, html[data-cc-page="group-hotels"] .hotels-intro .reveal-right{transform:translateY(22px)!important}html[data-cc-page="group-hotels"] .hotels-intro .in-view{transform:none!important}
html[data-cc-page="group-hotels"] .hotel-copy h2{font-size:clamp(38px,4vw,54px)!important}

/* V8 footer separation rule */
html[data-cc-page="group-hotels"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="group-hotels"] .header-main{height:92px!important}
html[data-cc-page="group-hotels"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-hotels"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="group-hotels"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="group-hotels"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-hotels"] .menu{gap:26px!important}
html[data-cc-page="group-hotels"] .brand img{max-height:66px!important}
html[data-cc-page="group-hotels"] .hero .eyebrow, html[data-cc-page="group-hotels"] .hero-kicker, html[data-cc-page="group-hotels"] .hero-kicker.eyebrow, html[data-cc-page="group-hotels"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="group-hotels"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="group-hotels"] .menu{gap:18px!important}html[data-cc-page="group-hotels"] .menu>a, html[data-cc-page="group-hotels"] .menu-link{font-size:10px!important}html[data-cc-page="group-hotels"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-hotels"] .header-main{height:72px!important}html[data-cc-page="group-hotels"] .brand img{max-height:46px!important}html[data-cc-page="group-hotels"] .mobile-trigger{font-size:20px!important}}


/* --- group-menu-unified.css --- */
/* Final Demo - unified Group menu
   Reference: original index-group.html
*/
/* HEADER */
html[data-cc-page="group-hotels"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="group-hotels"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_grouphotels .35s ease both
            }

        @keyframes drop_cc_grouphotels {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="group-hotels"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="group-hotels"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="group-hotels"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="group-hotels"] .header-main {
            height: 102px
        }

            html[data-cc-page="group-hotels"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="group-hotels"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="group-hotels"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="group-hotels"] .brand-dark {
            display: none
        }

        html[data-cc-page="group-hotels"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="group-hotels"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="group-hotels"] .header-main {
            position: relative
        }

        html[data-cc-page="group-hotels"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="group-hotels"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="group-hotels"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="group-hotels"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="group-hotels"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="group-hotels"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-hotels"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="group-hotels"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="group-hotels"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-hotels"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="group-hotels"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="group-hotels"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="group-hotels"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-hotels"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="group-hotels"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="group-hotels"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="group-hotels"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="group-hotels"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="group-hotels"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="group-hotels"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="group-hotels"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="group-hotels"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-hotels"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="group-hotels"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="group-hotels"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-hotels"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="group-hotels"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="group-hotels"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="group-hotels"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="group-hotels"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="group-hotels"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="group-hotels"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="group-hotels"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="group-hotels"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="group-hotels"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="group-hotels"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-hotels"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="group-hotels"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="group-hotels"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="group-hotels"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="group-hotels"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="group-hotels"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="group-hotels"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="group-hotels"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="group-hotels"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="group-hotels"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="group-hotels"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="group-hotels"] .drawer.open {
                transform: none
            }

        html[data-cc-page="group-hotels"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="group-hotels"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="group-hotels"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="group-hotels"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="group-hotels"] .drawer-nav > a, html[data-cc-page="group-hotels"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="group-hotels"] .drawer-nav > a:hover, html[data-cc-page="group-hotels"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="group-hotels"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="group-hotels"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="group-hotels"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="group-hotels"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="group-hotels"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="group-hotels"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="group-hotels"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-hotels"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="group-hotels"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="group-hotels"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="group-hotels"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-hotels"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="group-hotels"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }


@media(max-width:1100px){
  html[data-cc-page="group-hotels"] .menu{gap:18px}
  html[data-cc-page="group-hotels"] .menu-link{font-size:11px}
  html[data-cc-page="group-hotels"] .header-book{margin-left:20px}
}
@media(max-width:820px){
  html[data-cc-page="group-hotels"] .header{position:absolute;background:rgba(255,255,255,.97);color:#111}
  html[data-cc-page="group-hotels"] .header-top, html[data-cc-page="group-hotels"] .menu, html[data-cc-page="group-hotels"] .header-book{display:none}
  html[data-cc-page="group-hotels"] .header-main{height:72px}
  html[data-cc-page="group-hotels"] .brand-light{display:none!important}
  html[data-cc-page="group-hotels"] .brand-dark{display:block!important}
  html[data-cc-page="group-hotels"] .brand img{width:125px;max-height:52px}
  html[data-cc-page="group-hotels"] .mobile-trigger{display:block}
}
/* V23-V25 language/mobile controls from reference */
html[data-cc-page="group-hotels"]
        .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="group-hotels"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-hotels"] .language-trigger:hover, html[data-cc-page="group-hotels"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="group-hotels"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="group-hotels"] .header.sticky .language-trigger:hover, html[data-cc-page="group-hotels"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="group-hotels"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="group-hotels"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="group-hotels"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="group-hotels"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="group-hotels"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-hotels"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-hotels"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-hotels"] .language-menu a:hover, html[data-cc-page="group-hotels"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="group-hotels"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="group-hotels"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="group-hotels"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="group-hotels"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="group-hotels"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="group-hotels"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="group-hotels"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="group-hotels"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="group-hotels"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-hotels"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="group-hotels"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-hotels"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="group-hotels"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="group-hotels"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="group-hotels"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="group-hotels"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="group-hotels"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="group-hotels"] .topbar-language .language-trigger:hover, html[data-cc-page="group-hotels"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-hotels"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="group-hotels"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="group-hotels"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="group-hotels"] .topbar-language .language-menu a:hover, html[data-cc-page="group-hotels"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="group-hotels"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="group-hotels"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="group-hotels"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="group-hotels"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="group-hotels"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="group-hotels"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="group-hotels"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="group-hotels"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="group-hotels"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="group-hotels"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="group-hotels"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="group-hotels"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="group-hotels"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="group-hotels"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="group-hotels"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="group-hotels"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="group-hotels"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="group-hotels"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-hotels"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-hotels"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="group-hotels"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="group-hotels"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="group-hotels"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="group-hotels"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="group-hotels"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="group-hotels"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="group-hotels"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="group-hotels"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-hotels"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="group-hotels"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="group-hotels"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="group-hotels"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-hotels"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-hotels"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-hotels"] .mobile-language-menu a:hover, html[data-cc-page="group-hotels"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="group-hotels"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-hotels"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="group-hotels"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="group-hotels"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-hotels"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="group-hotels"] .mobile-language-trigger, html[data-cc-page="group-hotels"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="group-hotels"] .mobile-language-menu {
                right: -43px;
            }
        }

/* Final reference sizing */
html[data-cc-page="group-hotels"] .header-main{height:92px!important}
html[data-cc-page="group-hotels"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-hotels"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
html[data-cc-page="group-hotels"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-hotels"] .menu{gap:26px!important}
html[data-cc-page="group-hotels"] .brand img{max-height:66px!important}
@media(max-width:1200px){html[data-cc-page="group-hotels"] .menu{gap:18px!important}html[data-cc-page="group-hotels"] .menu-link{font-size:10px!important}html[data-cc-page="group-hotels"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-hotels"] .header-main{height:72px!important}html[data-cc-page="group-hotels"] .brand img{max-height:46px!important}html[data-cc-page="group-hotels"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="group-hotels"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-hotels"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="group-hotels"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-hotels"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="group-hotels"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="group-hotels"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="group-hotels"] .internal-banner .hero-inner, html[data-cc-page="group-hotels"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-hotels"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-hotels"] .internal-banner .hero-copy, html[data-cc-page="group-hotels"] .internal-banner .offers-page-hero-copy, html[data-cc-page="group-hotels"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="group-hotels"] .internal-banner .hero-kicker, html[data-cc-page="group-hotels"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="group-hotels"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="group-hotels"] .internal-banner .cl7-kicker, html[data-cc-page="group-hotels"] .internal-banner h1, html[data-cc-page="group-hotels"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="group-hotels"] .internal-banner .hero-kicker::before, html[data-cc-page="group-hotels"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="group-hotels"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="group-hotels"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-hotels"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="group-hotels"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="group-hotels"] .internal-banner .hero-inner, html[data-cc-page="group-hotels"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-hotels"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="group-hotels"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-hotels"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="group-hotels"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="group-hotels"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-hotels"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="group-hotels"] .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;
}
html[data-cc-page="group-hotels"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="group-hotels"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="group-hotels"] .footer-reference::after{display:none!important;}
html[data-cc-page="group-hotels"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="group-hotels"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="group-hotels"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="group-hotels"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="group-hotels"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="group-hotels"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="group-hotels"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="group-hotels"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="group-hotels"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="group-hotels"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="group-hotels"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="group-hotels"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="group-hotels"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="group-hotels"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="group-hotels"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="group-hotels"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="group-hotels"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="group-hotels"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="group-hotels"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="group-hotels"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="group-hotels"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="group-hotels"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="group-hotels"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="group-hotels"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="group-hotels"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="group-hotels"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="group-hotels"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="group-hotels"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="group-hotels"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="group-hotels"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="group-hotels"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="group-hotels"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="group-hotels"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="group-hotels"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="group-hotels"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="group-hotels"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="group-hotels"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="group-hotels"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="group-hotels"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="group-hotels"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="group-hotels"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="group-hotels"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="group-hotels"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="group-hotels"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-hotels"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="group-hotels"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="group-hotels"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-hotels"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="group-hotels"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="group-hotels"] .footer-reference-brand, html[data-cc-page="group-hotels"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-hotels"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="group-hotels"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="group-hotels"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="group-hotels"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-hotels"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="group-hotels"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="group-hotels"] .footer-reference-brand, html[data-cc-page="group-hotels"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="group-hotels"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="group-hotels"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="group-hotels"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="group-hotels"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="group-hotels"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="group-hotels"] .footer-reference-form button{min-height:52px;}
}

/* ============================================================
   PAGE: group-index   (group_Index.html)
   ============================================================ */
html[data-cc-page="group-index"] {
            --pink: #A90061;
            --pink-dark: #6F0037;
            --ink: #171717;
            --muted: #6d6d6d;
            --paper: #f7f5f4;
            --soft: #efefed;
            --white: #fff;
            --line: rgba(23,23,23,.14);
            --display: "Playfair Display",serif;
            --body: "Inter",sans-serif;
        }

        html[data-cc-page="group-index"], html[data-cc-page="group-index"] * {
            box-sizing: border-box;
            margin: 0;
            padding: 0
        }

        html[data-cc-page="group-index"] {
            scroll-behavior: smooth
        }

        html[data-cc-page="group-index"] body {
            font-family: var(--body);
            color: var(--ink);
            background: #fff;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased
        }

        html[data-cc-page="group-index"] a {
            text-decoration: none;
            color: inherit
        }

        html[data-cc-page="group-index"] img, html[data-cc-page="group-index"] video {
            display: block;
            width: 100%
        }

        html[data-cc-page="group-index"] button, html[data-cc-page="group-index"] input, html[data-cc-page="group-index"] select {
            font: inherit
        }

        html[data-cc-page="group-index"] button {
            cursor: pointer
        }

        html[data-cc-page="group-index"] .container {
            width: min(1420px,calc(100% - 80px));
            margin-inline: auto
        }

        html[data-cc-page="group-index"] .eyebrow {
            font-size: 11px;
            letter-spacing: .22em;
            text-transform: uppercase;
            font-weight: 600
        }

        html[data-cc-page="group-index"] .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            min-height: 50px;
            padding: 0 28px;
            border: 1px solid transparent;
            border-radius: 2px;
            font-size: 13px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease
        }

            html[data-cc-page="group-index"] .btn:hover {
                transform: translateY(-2px)
            }

        html[data-cc-page="group-index"] .btn-pink {
            background: var(--pink);
            color: #fff
        }

            html[data-cc-page="group-index"] .btn-pink:hover {
                background: var(--pink-dark)
            }

        html[data-cc-page="group-index"] .btn-white {
            background: #fff;
            color: #111
        }

            html[data-cc-page="group-index"] .btn-white:hover {
                background: var(--pink);
                color: #fff
            }

        html[data-cc-page="group-index"] .btn-outline {
            border-color: currentColor;
            background: transparent
        }

        /* HEADER */
        html[data-cc-page="group-index"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="group-index"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_groupindex .35s ease both
            }

        @keyframes drop_cc_groupindex {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="group-index"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="group-index"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="group-index"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="group-index"] .header-main {
            height: 102px
        }

            html[data-cc-page="group-index"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="group-index"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="group-index"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="group-index"] .brand-dark {
            display: none
        }

        html[data-cc-page="group-index"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="group-index"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="group-index"] .header-main {
            position: relative
        }

        html[data-cc-page="group-index"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="group-index"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="group-index"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="group-index"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="group-index"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="group-index"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-index"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="group-index"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="group-index"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-index"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="group-index"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="group-index"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="group-index"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-index"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="group-index"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="group-index"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="group-index"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="group-index"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="group-index"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="group-index"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="group-index"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="group-index"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-index"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="group-index"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="group-index"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-index"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="group-index"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="group-index"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="group-index"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="group-index"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="group-index"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="group-index"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="group-index"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="group-index"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="group-index"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="group-index"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-index"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="group-index"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="group-index"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="group-index"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="group-index"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="group-index"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="group-index"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="group-index"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="group-index"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="group-index"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="group-index"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="group-index"] .drawer.open {
                transform: none
            }

        html[data-cc-page="group-index"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="group-index"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="group-index"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="group-index"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="group-index"] .drawer-nav > a, html[data-cc-page="group-index"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="group-index"] .drawer-nav > a:hover, html[data-cc-page="group-index"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="group-index"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="group-index"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="group-index"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="group-index"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="group-index"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="group-index"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="group-index"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-index"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="group-index"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="group-index"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="group-index"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-index"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="group-index"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }

        /* HERO */
        html[data-cc-page="group-index"] .hero {
            position: relative;
            height: 100svh;
            min-height: 760px;
            background: #111;
            overflow: hidden;
            color: #fff
        }

        html[data-cc-page="group-index"] .hero-slides {
            position: absolute;
            inset: 0
        }

        html[data-cc-page="group-index"] .hero-slide {
            position: absolute;
            inset: 0;
            opacity: 0;
            visibility: hidden;
            transition: opacity 1.15s ease,visibility 1.15s ease
        }

            html[data-cc-page="group-index"] .hero-slide.active {
                opacity: 1;
                visibility: visible;
                z-index: 2
            }

            html[data-cc-page="group-index"] .hero-slide img {
                height: 100%;
                object-fit: cover;
                transform: scale(1.035);
                will-change: transform;
                transform-origin: center center
            }

            html[data-cc-page="group-index"] .hero-slide.active img {
                animation: heroKenBurnsA_cc_groupindex 7.2s ease-in-out both
            }

            html[data-cc-page="group-index"] .hero-slide:nth-child(even).active img {
                animation-name: heroKenBurnsB_cc_groupindex
            }

            html[data-cc-page="group-index"] .hero-slide:nth-child(3).active img {
                animation-name: heroKenBurnsC_cc_groupindex
            }

        @keyframes heroKenBurnsA_cc_groupindex {
            0% {
                transform: scale(1.035) translate3d(0,0,0)
            }

            100% {
                transform: scale(1.14) translate3d(-1.4%,-1.1%,0)
            }
        }

        @keyframes heroKenBurnsB_cc_groupindex {
            0% {
                transform: scale(1.04) translate3d(-1.2%,0,0)
            }

            100% {
                transform: scale(1.145) translate3d(1.2%,-1%,0)
            }
        }

        @keyframes heroKenBurnsC_cc_groupindex {
            0% {
                transform: scale(1.04) translate3d(0,-.5%,0)
            }

            100% {
                transform: scale(1.15) translate3d(-.8%,1%,0)
            }
        }

        html[data-cc-page="group-index"] .hero::after {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 3;
            background: linear-gradient(180deg,rgba(0,0,0,.64) 0%,rgba(0,0,0,.16) 38%,rgba(0,0,0,.06) 58%,rgba(0,0,0,.62) 100%),linear-gradient(90deg,rgba(0,0,0,.35),transparent 48%);
            pointer-events: none
        }

        html[data-cc-page="group-index"] .hero-content {
            position: relative;
            z-index: 4;
            height: 100%;
            display: flex;
            align-items: flex-end;
            padding-bottom: 125px
        }

        html[data-cc-page="group-index"] .hero-copy {
            max-width: 680px;
            color: #fff
        }

        html[data-cc-page="group-index"] .hero-kicker {
            display: flex;
            align-items: center;
            gap: 13px;
            margin-bottom: 17px;
            opacity: .9
        }

            html[data-cc-page="group-index"] .hero-kicker::before {
                content: "";
                width: 44px;
                height: 2px;
                background: var(--pink)
            }

        html[data-cc-page="group-index"] .hero-title {
            font-family: var(--display);
            font-size: clamp(52px,5.6vw,92px);
            line-height: .96;
            font-weight: 400;
            letter-spacing: -.035em;
            max-width: 760px
        }

        html[data-cc-page="group-index"] .hero-subtitle {
            font-size: 15px;
            line-height: 1.7;
            margin-top: 19px;
            max-width: 480px;
            color: rgba(255,255,255,.9)
        }

        html[data-cc-page="group-index"] .hero-actions {
            display: flex;
            align-items: center;
            gap: 14px;
            margin-top: 28px
        }

        html[data-cc-page="group-index"] .hero-copy.animate .hero-kicker, html[data-cc-page="group-index"] .hero-copy.animate .hero-title, html[data-cc-page="group-index"] .hero-copy.animate .hero-subtitle, html[data-cc-page="group-index"] .hero-copy.animate .hero-actions {
            animation: heroUp_cc_groupindex .9s cubic-bezier(.22,1,.36,1) both
        }

        html[data-cc-page="group-index"] .hero-copy.animate .hero-title {
            animation-delay: .08s
        }

        html[data-cc-page="group-index"] .hero-copy.animate .hero-subtitle {
            animation-delay: .17s
        }

        html[data-cc-page="group-index"] .hero-copy.animate .hero-actions {
            animation-delay: .26s
        }

        @keyframes heroUp_cc_groupindex {
            from {
                opacity: 0;
                transform: translateY(45px)
            }

            to {
                opacity: 1;
                transform: none
            }
        }

        html[data-cc-page="group-index"] .hero-control {
            position: absolute;
            z-index: 26;
            right: 42px;
            bottom: 112px;
            display: flex;
            align-items: center;
            gap: 10px
        }

        html[data-cc-page="group-index"] .hero-arrow {
            width: 52px;
            height: 52px;
            border: 1px solid rgba(255,255,255,.55);
            background: rgba(0,0,0,.16);
            color: #fff;
            transition: .25s
        }

            html[data-cc-page="group-index"] .hero-arrow:hover {
                background: var(--pink);
                border-color: var(--pink)
            }

        html[data-cc-page="group-index"] .hero-count {
            position: absolute;
            z-index: 6;
            right: 46px;
            top: 50%;
            transform: translateY(-50%);
            display: grid;
            gap: 13px
        }

            html[data-cc-page="group-index"] .hero-count button {
                width: 32px;
                height: 32px;
                border: 0;
                background: transparent;
                color: rgba(255,255,255,.6);
                font-size: 11px;
                position: relative
            }

                html[data-cc-page="group-index"] .hero-count button::after {
                    content: "";
                    position: absolute;
                    right: -14px;
                    top: 50%;
                    width: 0;
                    height: 1px;
                    background: #fff;
                    transition: .3s
                }

                html[data-cc-page="group-index"] .hero-count button.active {
                    color: #fff
                }

                    html[data-cc-page="group-index"] .hero-count button.active::after {
                        width: 22px
                    }

        /* BOOKING DOCK */
        html[data-cc-page="group-index"] .booking-shell {
            position: relative;
            z-index: 30;
            margin-top: -62px
        }

        html[data-cc-page="group-index"] .booking-card {
            background: #fff;
            box-shadow: 0 20px 55px rgba(0,0,0,.14);
            padding: 18px 20px;
            border-radius: 2px;
            position: relative
        }

        html[data-cc-page="group-index"] .booking-form {
            display: grid;
            grid-template-columns: 1.25fr 1fr 1fr 1.35fr .82fr auto;
            gap: 10px;
            align-items: end
        }

        html[data-cc-page="group-index"] .field {
            position: relative;
            min-width: 0
        }

            html[data-cc-page="group-index"] .field label {
                display: block;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                margin-bottom: 7px;
                color: #777
            }

        html[data-cc-page="group-index"] .control {
            height: 50px;
            border: 1px solid #e0e0e0;
            display: flex;
            align-items: center;
            position: relative;
            background: #fafafa;
            transition: .25s;
            width: 100%
        }

            html[data-cc-page="group-index"] .control:focus-within, html[data-cc-page="group-index"] .control.is-open {
                border-color: var(--pink);
                background: #fff;
                box-shadow: 0 0 0 3px rgba(169,0,97,.07)
            }

            html[data-cc-page="group-index"] .control > i {
                position: absolute;
                left: 14px;
                color: var(--pink);
                font-size: 13px;
                z-index: 2;
                pointer-events: none
            }

            html[data-cc-page="group-index"] .control input, html[data-cc-page="group-index"] .control select {
                height: 100%;
                width: 100%;
                padding: 0 38px 0 38px;
                border: 0;
                background: transparent;
                outline: 0;
                appearance: none;
                -webkit-appearance: none;
                font-size: 12px;
                color: #222;
                min-width: 0
            }

            html[data-cc-page="group-index"] .control .down {
                position: absolute;
                right: 13px;
                top: 50%;
                transform: translateY(-50%);
                width: 20px;
                height: 20px;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #777;
                font-size: 10px;
                pointer-events: none;
                z-index: 3
            }

                html[data-cc-page="group-index"] .control .down i {
                    position: static !important;
                    left: auto !important;
                    color: inherit !important;
                    font-size: 10px !important;
                    pointer-events: none !important
                }

        html[data-cc-page="group-index"] .guest-trigger {
            border: 1px solid #e0e0e0;
            background: #fafafa;
            border-radius: 0;
            text-align: left;
            cursor: pointer;
            padding: 0 40px 0 40px;
            font-size: 12px;
            color: #222;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis
        }

            html[data-cc-page="group-index"] .guest-trigger .guest-summary {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                width: 100%
            }

        html[data-cc-page="group-index"] .guest-popover {
            position: absolute;
            left: 0;
            top: calc(100% + 12px);
            width: 390px;
            max-width: min(390px,calc(100vw - 40px));
            background: #fff;
            border: 1px solid #e8e8e8;
            box-shadow: 0 22px 55px rgba(0,0,0,.18);
            padding: 20px;
            z-index: 310;
            opacity: 0;
            visibility: hidden;
            transform: translateY(8px);
            transition: .22s ease
        }

            html[data-cc-page="group-index"] .guest-popover.open {
                opacity: 1;
                visibility: visible;
                transform: none
            }

            html[data-cc-page="group-index"] .guest-popover::before {
                content: "";
                position: absolute;
                top: -7px;
                left: 28px;
                width: 12px;
                height: 12px;
                background: #fff;
                border-left: 1px solid #e8e8e8;
                border-top: 1px solid #e8e8e8;
                transform: rotate(45deg)
            }

        html[data-cc-page="group-index"] .guest-popover-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 18px;
            padding-bottom: 15px;
            margin-bottom: 4px;
            border-bottom: 1px solid #eee
        }

            html[data-cc-page="group-index"] .guest-popover-head strong {
                display: block;
                font-family: var(--display);
                font-size: 24px;
                line-height: 1;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-index"] .guest-popover-head span {
                display: block;
                font-size: 10px;
                line-height: 1.55;
                color: #888;
                margin-top: 6px
            }

        html[data-cc-page="group-index"] .guest-close {
            width: 30px;
            height: 30px;
            border: 0;
            background: #f4f4f4;
            color: #444;
            border-radius: 50%
        }

        html[data-cc-page="group-index"] .rooms-container {
            max-height: 360px;
            overflow: auto;
            padding-right: 3px
        }

        html[data-cc-page="group-index"] .room-block {
            padding: 17px 0;
            border-bottom: 1px solid #ededed
        }

        html[data-cc-page="group-index"] .room-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 13px
        }

            html[data-cc-page="group-index"] .room-head strong {
                font-size: 11px;
                letter-spacing: .1em;
                text-transform: uppercase
            }

        html[data-cc-page="group-index"] .remove-room {
            border: 0;
            background: transparent;
            color: #9a9a9a;
            font-size: 10px;
            text-decoration: underline
        }

            html[data-cc-page="group-index"] .remove-room:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-index"] .guest-row {
            display: grid;
            grid-template-columns: 1fr auto;
            align-items: center;
            gap: 16px;
            margin: 10px 0
        }

        html[data-cc-page="group-index"] .guest-row-label strong {
            display: block;
            font-size: 12px;
            font-weight: 500;
            color: #242424
        }

        html[data-cc-page="group-index"] .guest-row-label span {
            display: block;
            font-size: 9px;
            color: #929292;
            margin-top: 1px
        }

        html[data-cc-page="group-index"] .stepper {
            display: flex;
            align-items: center;
            gap: 12px
        }

            html[data-cc-page="group-index"] .stepper button {
                width: 30px;
                height: 30px;
                border: 1px solid #ddd;
                background: #fff;
                color: #222;
                border-radius: 50%;
                font-size: 12px;
                transition: .2s
            }

                html[data-cc-page="group-index"] .stepper button:hover:not(:disabled) {
                    border-color: var(--pink);
                    color: var(--pink)
                }

                html[data-cc-page="group-index"] .stepper button:disabled {
                    opacity: .35;
                    cursor: not-allowed
                }

            html[data-cc-page="group-index"] .stepper output {
                min-width: 18px;
                text-align: center;
                font-size: 12px;
                color: #222
            }

        html[data-cc-page="group-index"] .child-ages {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 8px;
            margin-top: 12px
        }

        html[data-cc-page="group-index"] .child-age label {
            font-size: 8px;
            margin-bottom: 5px;
            color: #8a8a8a
        }

        html[data-cc-page="group-index"] .child-age select {
            width: 100%;
            height: 38px;
            border: 1px solid #ddd;
            background: #fafafa;
            padding: 0 28px 0 10px;
            font-size: 10px;
            outline: 0;
            appearance: none;
            -webkit-appearance: none
        }

        html[data-cc-page="group-index"] .child-age {
            position: relative
        }

            html[data-cc-page="group-index"] .child-age::after {
                content: "\f107";
                font-family: "Font Awesome 6 Free";
                font-weight: 900;
                position: absolute;
                right: 10px;
                bottom: 12px;
                font-size: 9px;
                color: #777;
                pointer-events: none
            }

        html[data-cc-page="group-index"] .guest-actions {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            padding-top: 16px
        }

        html[data-cc-page="group-index"] .add-room {
            border: 0;
            background: transparent;
            color: var(--pink);
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase
        }

            html[data-cc-page="group-index"] .add-room:disabled {
                opacity: .4;
                cursor: not-allowed
            }

        html[data-cc-page="group-index"] .guest-done {
            height: 38px;
            border: 0;
            background: #171717;
            color: #fff;
            padding: 0 20px;
            font-size: 9px;
            font-weight: 600;
            letter-spacing: .1em;
            text-transform: uppercase
        }

            html[data-cc-page="group-index"] .guest-done:hover {
                background: var(--pink)
            }

        html[data-cc-page="group-index"] .booking-submit {
            height: 50px;
            border: 0;
            background: var(--pink);
            color: #fff;
            padding: 0 24px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .1em;
            text-transform: uppercase;
            white-space: nowrap;
            transition: .3s
        }

            html[data-cc-page="group-index"] .booking-submit:hover {
                background: var(--pink-dark)
            }

        /* MOTION */
        html[data-cc-page="group-index"] .reveal {
            opacity: 0;
            transform: translateY(58px) scale(.985);
            filter: blur(7px);
            transition: opacity 1s cubic-bezier(.22,1,.36,1),transform 1.05s cubic-bezier(.22,1,.36,1),filter .9s ease;
            transition-delay: var(--delay,0ms)
        }

        html[data-cc-page="group-index"] .reveal-left {
            opacity: 0;
            transform: translateX(-72px);
            filter: blur(6px);
            transition: opacity 1.05s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .9s ease;
            transition-delay: var(--delay,0ms)
        }

        html[data-cc-page="group-index"] .reveal-right {
            opacity: 0;
            transform: translateX(72px);
            filter: blur(6px);
            transition: opacity 1.05s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .9s ease;
            transition-delay: var(--delay,0ms)
        }

            html[data-cc-page="group-index"] .reveal.in-view, html[data-cc-page="group-index"] .reveal-left.in-view, html[data-cc-page="group-index"] .reveal-right.in-view {
                opacity: 1;
                transform: none;
                filter: blur(0)
            }

            html[data-cc-page="group-index"] .reveal img, html[data-cc-page="group-index"] .reveal-left img, html[data-cc-page="group-index"] .reveal-right img {
                transition: transform 1.35s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-index"] .reveal:not(.in-view) > img, html[data-cc-page="group-index"] .reveal-left:not(.in-view) > img, html[data-cc-page="group-index"] .reveal-right:not(.in-view) > img {
                transform: scale(1.045)
            }

            html[data-cc-page="group-index"] .reveal.in-view > img, html[data-cc-page="group-index"] .reveal-left.in-view > img, html[data-cc-page="group-index"] .reveal-right.in-view > img {
                transform: scale(1)
            }

        /* BRAND STORY / COLLECTION INTRO */
        html[data-cc-page="group-index"] .brand-story {
            padding: 145px 0 155px;
            background: #fff;
            position: relative;
            overflow: hidden
        }

            html[data-cc-page="group-index"] .brand-story::before {
                content: "04";
                position: absolute;
                left: -18px;
                top: 28px;
                font-family: var(--display);
                font-size: clamp(190px,23vw,360px);
                line-height: .82;
                letter-spacing: -.09em;
                color: #f3f0f1;
                z-index: 0;
                pointer-events: none
            }

        html[data-cc-page="group-index"] .brand-story-grid {
            position: relative;
            z-index: 2;
            display: grid;
            grid-template-columns: .9fr 1.15fr;
            gap: 100px;
            align-items: center
        }

        html[data-cc-page="group-index"] .brand-story-copy {
            padding-left: 55px
        }

            html[data-cc-page="group-index"] .brand-story-copy .eyebrow {
                color: var(--pink);
                margin-bottom: 22px
            }

            html[data-cc-page="group-index"] .brand-story-copy h2 {
                font-family: var(--display);
                font-size: clamp(55px,5.8vw,88px);
                line-height: .98;
                font-weight: 400;
                letter-spacing: -.045em;
                max-width: 690px
            }

                html[data-cc-page="group-index"] .brand-story-copy h2 em {
                    font-style: italic;
                    color: var(--pink)
                }

            html[data-cc-page="group-index"] .brand-story-copy p {
                font-size: 14px;
                line-height: 1.9;
                color: var(--muted);
                max-width: 510px;
                margin-top: 28px
            }

        html[data-cc-page="group-index"] .brand-story-visual {
            position: relative;
            min-height: 610px
        }

        html[data-cc-page="group-index"] .brand-story-main-image {
            position: absolute;
            right: 0;
            top: 0;
            width: 92%;
            height: 560px;
            overflow: hidden;
            background: #111
        }

            html[data-cc-page="group-index"] .brand-story-main-image::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,transparent 48%,rgba(25,0,15,.44) 100%);
                pointer-events: none
            }

            html[data-cc-page="group-index"] .brand-story-main-image img {
                height: 100%;
                object-fit: cover;
                transform: scale(1.04);
                transition: transform 1.8s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-index"] .brand-story-main-image.in-view img {
                transform: scale(1)
            }

        html[data-cc-page="group-index"] .brand-story-note {
            position: absolute;
            left: 8%;
            bottom: 50px;
            width: min(620px,72%);
            color: #fff;
            padding: 30px 46px 30px 30px;
            z-index: 3;
            background: linear-gradient(90deg,rgba(169,0,97,.96) 0%,rgba(169,0,97,.72) 58%,rgba(169,0,97,0) 100%)
        }

            html[data-cc-page="group-index"] .brand-story-note strong {
                display: block;
                font-family: var(--display);
                font-size: 36px;
                line-height: 1;
                font-weight: 400;
                margin-bottom: 11px
            }

            html[data-cc-page="group-index"] .brand-story-note p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.82);
                max-width: 430px
            }

            html[data-cc-page="group-index"] .brand-story-note span {
                display: block;
                margin-top: 18px;
                color: #fff;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .15em;
                text-transform: uppercase
            }

        html[data-cc-page="group-index"] .brand-story-stamp {
            position: absolute;
            right: 22px;
            bottom: 20px;
            width: 118px;
            height: 118px;
            border-radius: 50%;
            background: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            box-shadow: 0 15px 35px rgba(0,0,0,.12);
            z-index: 4
        }

            html[data-cc-page="group-index"] .brand-story-stamp strong {
                font-family: var(--display);
                font-size: 38px;
                line-height: .8;
                font-weight: 400;
                color: var(--pink)
            }

            html[data-cc-page="group-index"] .brand-story-stamp small {
                display: block;
                font-size: 8px;
                line-height: 1.35;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #555;
                margin-top: 7px
            }

        /* RESORT STORIES */
        html[data-cc-page="group-index"] .resorts {
            padding: 0 0 150px;
            background: var(--paper);
            overflow: hidden
        }

        html[data-cc-page="group-index"] .resort-head {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            padding: 110px 0 52px
        }

            html[data-cc-page="group-index"] .resort-head .small-title {
                font-family: var(--display);
                font-size: 48px;
                font-weight: 400;
                line-height: 1.1
            }

                html[data-cc-page="group-index"] .resort-head .small-title span {
                    display: block;
                    font-family: var(--body);
                    font-size: 11px;
                    letter-spacing: .18em;
                    text-transform: uppercase;
                    color: var(--pink);
                    margin-bottom: 12px
                }

        html[data-cc-page="group-index"] .resort-nav {
            display: flex;
            gap: 8px
        }

            html[data-cc-page="group-index"] .resort-nav button {
                width: 48px;
                height: 48px;
                border: 1px solid #ccc;
                background: transparent
            }

                html[data-cc-page="group-index"] .resort-nav button:hover {
                    border-color: var(--pink);
                    color: var(--pink)
                }

        html[data-cc-page="group-index"] .resort-viewport {
            overflow: hidden;
            cursor: grab;
            touch-action: pan-y;
            user-select: none;
            -webkit-user-select: none
        }

            html[data-cc-page="group-index"] .resort-viewport.is-dragging {
                cursor: grabbing
            }

        html[data-cc-page="group-index"] .resort-track {
            display: flex;
            gap: 24px;
            transition: transform .7s cubic-bezier(.22,1,.36,1);
            will-change: transform
        }

            html[data-cc-page="group-index"] .resort-track.is-dragging {
                transition: none
            }

        html[data-cc-page="group-index"] .resort-story {
            flex: 0 0 min(1040px,76vw);
            height: 565px;
            position: relative;
            overflow: hidden;
            background: #111;
            color: #fff
        }

            html[data-cc-page="group-index"] .resort-story img {
                height: 100%;
                object-fit: cover;
                transition: transform 1.6s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-index"] .resort-story:hover img {
                transform: scale(1.035)
            }

            html[data-cc-page="group-index"] .resort-story::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,transparent 28%,rgba(0,0,0,.08) 48%,rgba(0,0,0,.72) 100%)
            }

        html[data-cc-page="group-index"] .story-index {
            position: absolute;
            z-index: 2;
            top: 32px;
            left: 34px;
            font-size: 10px;
            letter-spacing: .16em;
            text-transform: uppercase;
            background: rgba(0,0,0,.28);
            backdrop-filter: blur(8px);
            padding: 9px 12px
        }

        html[data-cc-page="group-index"] .story-copy {
            position: absolute;
            z-index: 2;
            left: 46px;
            right: 46px;
            bottom: 42px;
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 30px
        }

            html[data-cc-page="group-index"] .story-copy h3 {
                font-family: var(--display);
                font-size: clamp(45px,4.4vw,72px);
                line-height: 1;
                font-weight: 400;
                max-width: 700px;
                letter-spacing: -.03em
            }

            html[data-cc-page="group-index"] .story-copy p {
                font-size: 13px;
                line-height: 1.7;
                max-width: 330px;
                color: rgba(255,255,255,.84);
                margin-bottom: 5px
            }

        html[data-cc-page="group-index"] .story-link {
            position: absolute;
            right: 38px;
            top: 34px;
            z-index: 2;
            width: 54px;
            height: 54px;
            border-radius: 50%;
            border: 1px solid rgba(255,255,255,.65);
            display: flex;
            align-items: center;
            justify-content: center;
            transition: .3s
        }

            html[data-cc-page="group-index"] .story-link:hover {
                background: #fff;
                color: var(--pink);
                transform: rotate(-35deg)
            }

        html[data-cc-page="group-index"] .resort-controls-bottom {
            display: grid;
            grid-template-columns: auto 1fr auto;
            align-items: center;
            gap: 22px;
            margin-top: 28px
        }

        html[data-cc-page="group-index"] .resort-drag-hint {
            font-size: 9px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #8b8b8b;
            white-space: nowrap
        }

        html[data-cc-page="group-index"] .resort-progress {
            height: 18px;
            position: relative;
            cursor: pointer;
            display: flex;
            align-items: center;
            touch-action: none
        }

            html[data-cc-page="group-index"] .resort-progress::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                height: 2px;
                background: #d6d3d4
            }

            html[data-cc-page="group-index"] .resort-progress span {
                position: absolute;
                left: 0;
                height: 4px;
                width: 25%;
                background: var(--pink);
                transition: transform .55s cubic-bezier(.22,1,.36,1);
                z-index: 2
            }

            html[data-cc-page="group-index"] .resort-progress:hover span {
                height: 6px
            }

        html[data-cc-page="group-index"] .resort-bottom-nav {
            display: flex;
            gap: 7px
        }

            html[data-cc-page="group-index"] .resort-bottom-nav button {
                width: 44px;
                height: 44px;
                border: 1px solid #c8c5c6;
                background: transparent;
                transition: .25s
            }

                html[data-cc-page="group-index"] .resort-bottom-nav button:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff
                }

        /* LOYALTY CHAPTER */
        html[data-cc-page="group-index"] .loyalty {
            min-height: 740px;
            position: relative;
            background-color: #090909;
            background-image: url("../images/Loyalty-Section-Background.jpg"),url("https://charmillionresorts.com/images/uploads/Charmillion-Club-Resort-lobby.jpg");
            background-position: center,center;
            background-size: cover,cover;
            background-repeat: no-repeat,no-repeat;
            background-attachment: fixed,fixed;
            color: #fff;
            display: flex;
            align-items: center;
            overflow: hidden
        }

            html[data-cc-page="group-index"] .loyalty::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.58) 48%,rgba(0,0,0,.08) 100%)
            }

            html[data-cc-page="group-index"] .loyalty .container {
                position: relative;
                z-index: 2
            }

        html[data-cc-page="group-index"] .loyalty-copy {
            max-width: 710px
        }

            html[data-cc-page="group-index"] .loyalty-copy .eyebrow {
                color: #fff;
                margin-bottom: 25px
            }

            html[data-cc-page="group-index"] .loyalty-copy h2 {
                font-family: var(--display);
                font-size: clamp(54px,6vw,86px);
                font-weight: 400;
                line-height: 1.02;
                letter-spacing: -.04em
            }

            html[data-cc-page="group-index"] .loyalty-copy p {
                font-size: 15px;
                line-height: 1.8;
                color: rgba(255,255,255,.8);
                max-width: 480px;
                margin: 24px 0 30px
            }

        html[data-cc-page="group-index"] .loyalty-ring {
            position: absolute;
            right: -80px;
            top: 50%;
            width: 420px;
            height: 420px;
            border: 1px solid rgba(255,255,255,.16);
            border-radius: 50%;
            transform: translateY(-50%)
        }

            html[data-cc-page="group-index"] .loyalty-ring::before, html[data-cc-page="group-index"] .loyalty-ring::after {
                content: "";
                position: absolute;
                border: 1px solid rgba(255,255,255,.11);
                border-radius: 50%;
                inset: 55px
            }

            html[data-cc-page="group-index"] .loyalty-ring::after {
                inset: 110px
            }

        /* OFFERS MOSAIC */
        html[data-cc-page="group-index"] .offers {
            padding: 150px 0;
            background: #fff
        }

        html[data-cc-page="group-index"] .offers-intro {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 90px;
            align-items: end;
            margin-bottom: 62px
        }

            html[data-cc-page="group-index"] .offers-intro h2 {
                font-family: var(--display);
                font-size: clamp(50px,5vw,76px);
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.035em
            }

        html[data-cc-page="group-index"] .offers-intro-copy {
            max-width: 510px;
            margin-left: auto
        }

            html[data-cc-page="group-index"] .offers-intro-copy .eyebrow {
                color: var(--pink);
                margin-bottom: 18px
            }

            html[data-cc-page="group-index"] .offers-intro-copy p {
                font-size: 14px;
                line-height: 1.8;
                color: var(--muted)
            }

        html[data-cc-page="group-index"] .offer-mosaic {
            display: grid;
            grid-template-columns: 1.25fr .75fr;
            grid-template-rows: 310px 310px;
            gap: 22px
        }

        html[data-cc-page="group-index"] .offer-tile {
            position: relative;
            overflow: hidden;
            background: #111;
            color: #fff
        }

            html[data-cc-page="group-index"] .offer-tile.featured {
                grid-row: 1/3
            }

            html[data-cc-page="group-index"] .offer-tile img {
                height: 100%;
                object-fit: cover;
                transition: transform .8s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-index"] .offer-tile:hover img {
                transform: scale(1.045)
            }

            html[data-cc-page="group-index"] .offer-tile::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,transparent 30%,rgba(0,0,0,.72) 100%)
            }

        html[data-cc-page="group-index"] .offer-content {
            position: absolute;
            z-index: 2;
            left: 30px;
            right: 30px;
            bottom: 28px
        }

            html[data-cc-page="group-index"] .offer-content span {
                font-size: 9px;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: rgba(255,255,255,.72)
            }

            html[data-cc-page="group-index"] .offer-content h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.05;
                font-weight: 400;
                margin-top: 6px
            }

        html[data-cc-page="group-index"] .featured .offer-content h3 {
            font-size: 58px
        }

        html[data-cc-page="group-index"] .offer-arrow {
            position: absolute;
            z-index: 2;
            right: 25px;
            top: 25px;
            width: 44px;
            height: 44px;
            border: 1px solid rgba(255,255,255,.65);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: .3s
        }

        html[data-cc-page="group-index"] .offer-tile:hover .offer-arrow {
            background: #fff;
            color: var(--pink);
            transform: rotate(-35deg)
        }

        html[data-cc-page="group-index"] .offer-strip {
            display: grid;
            grid-template-columns: repeat(2,1fr);
            gap: 22px;
            margin-top: 22px
        }

            html[data-cc-page="group-index"] .offer-strip .offer-tile {
                height: 280px
            }

        html[data-cc-page="group-index"] .offers-bottom {
            display: flex;
            justify-content: flex-end;
            margin-top: 32px
        }

        /* MEET / CELEBRATE - expanded destination chapter */
        html[data-cc-page="group-index"] .gather {
            background: var(--paper);
            padding: 155px 0 165px;
            overflow: hidden
        }

        html[data-cc-page="group-index"] .gather-head {
            display: grid;
            grid-template-columns: 1.05fr .95fr;
            gap: 90px;
            align-items: end;
            margin-bottom: 58px
        }

            html[data-cc-page="group-index"] .gather-head h2 {
                font-family: var(--display);
                font-size: clamp(54px,5.7vw,84px);
                font-weight: 400;
                line-height: .98;
                letter-spacing: -.045em;
                max-width: 760px
            }

        html[data-cc-page="group-index"] .gather-head-copy {
            max-width: 530px;
            margin-left: auto
        }

            html[data-cc-page="group-index"] .gather-head-copy .eyebrow {
                color: var(--pink);
                margin-bottom: 18px
            }

            html[data-cc-page="group-index"] .gather-head-copy p {
                font-size: 14px;
                line-height: 1.85;
                color: var(--muted)
            }

        html[data-cc-page="group-index"] .gather-scenes {
            display: grid;
            grid-template-columns: 1.08fr .92fr;
            gap: 24px
        }

        html[data-cc-page="group-index"] .gather-scene {
            position: relative;
            min-height: 650px;
            overflow: hidden;
            background: #111;
            color: #fff
        }

            html[data-cc-page="group-index"] .gather-scene.secondary {
                min-height: 650px
            }

            html[data-cc-page="group-index"] .gather-scene img {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                transition: transform 1.25s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-index"] .gather-scene:hover img {
                transform: scale(1.045)
            }

            html[data-cc-page="group-index"] .gather-scene::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.08) 18%,rgba(0,0,0,.18) 45%,rgba(0,0,0,.82) 100%)
            }

        html[data-cc-page="group-index"] .gather-scene-content {
            position: absolute;
            z-index: 2;
            left: 42px;
            right: 42px;
            bottom: 40px
        }

        html[data-cc-page="group-index"] .gather-scene-index {
            position: absolute;
            z-index: 2;
            top: 28px;
            left: 30px;
            font-size: 10px;
            letter-spacing: .18em;
            text-transform: uppercase;
            background: rgba(0,0,0,.28);
            backdrop-filter: blur(8px);
            padding: 9px 12px
        }

        html[data-cc-page="group-index"] .gather-scene-content .eyebrow {
            color: rgba(255,255,255,.72);
            margin-bottom: 12px
        }

        html[data-cc-page="group-index"] .gather-scene-content h3 {
            font-family: var(--display);
            font-size: clamp(44px,4.5vw,68px);
            line-height: 1;
            font-weight: 400;
            letter-spacing: -.035em;
            max-width: 600px
        }

        html[data-cc-page="group-index"] .gather-scene-content p {
            font-size: 13px;
            line-height: 1.8;
            color: rgba(255,255,255,.78);
            max-width: 520px;
            margin: 17px 0 24px
        }

        html[data-cc-page="group-index"] .gather-scene-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            color: #fff;
            font-size: 11px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: .12em;
            border-bottom: 1px solid rgba(255,255,255,.65);
            padding-bottom: 5px;
            transition: .25s
        }

            html[data-cc-page="group-index"] .gather-scene-link:hover {
                color: #fff;
                border-color: #fff;
                gap: 16px
            }

        html[data-cc-page="group-index"] .gather-footer {
            margin-top: 24px;
            background: #181818;
            color: #fff;
            padding: 34px 42px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 30px
        }

        html[data-cc-page="group-index"] .gather-footer-copy {
            display: flex;
            align-items: center;
            gap: 34px
        }

        html[data-cc-page="group-index"] .gather-footer strong {
            font-family: var(--display);
            font-size: 30px;
            font-weight: 400;
            line-height: 1.1
        }

        html[data-cc-page="group-index"] .gather-footer span {
            font-size: 12px;
            line-height: 1.7;
            color: rgba(255,255,255,.62);
            max-width: 500px
        }

        html[data-cc-page="group-index"] .gather-footer .btn {
            flex: 0 0 auto
        }

        /* SEEN AT CHARMILLION - draggable media collection */
        html[data-cc-page="group-index"] .social {
            padding: 120px 0 125px;
            background: #0f0f0f;
            color: #fff;
            overflow: hidden
        }

        html[data-cc-page="group-index"] .social-head {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            margin-bottom: 42px
        }

            html[data-cc-page="group-index"] .social-head h2 {
                font-family: var(--display);
                font-size: clamp(48px,5vw,74px);
                font-weight: 400;
                line-height: 1.02
            }

        html[data-cc-page="group-index"] .social-head-right {
            display: flex;
            align-items: flex-end;
            gap: 30px
        }

        html[data-cc-page="group-index"] .social-head p {
            font-size: 12px;
            color: rgba(255,255,255,.6);
            max-width: 320px;
            line-height: 1.7;
            text-align: right
        }

        html[data-cc-page="group-index"] .media-nav {
            display: flex;
            gap: 7px
        }

            html[data-cc-page="group-index"] .media-nav button {
                width: 46px;
                height: 46px;
                border: 1px solid rgba(255,255,255,.32);
                background: transparent;
                color: #fff;
                transition: .25s
            }

                html[data-cc-page="group-index"] .media-nav button:hover {
                    background: var(--pink);
                    border-color: var(--pink)
                }

        html[data-cc-page="group-index"] .social-viewport {
            overflow-x: auto;
            overflow-y: hidden;
            scrollbar-width: none;
            cursor: grab;
            touch-action: pan-y;
            scroll-behavior: smooth;
            scroll-snap-type: x proximity;
            padding: 0 max(40px,calc((100vw - 1420px)/2));
            user-select: none;
            -webkit-user-select: none
        }

            html[data-cc-page="group-index"] .social-viewport::-webkit-scrollbar {
                display: none
            }

            html[data-cc-page="group-index"] .social-viewport.is-dragging {
                cursor: grabbing;
                scroll-behavior: auto
            }

        html[data-cc-page="group-index"] .social-track {
            display: flex;
            gap: 18px;
            width: max-content;
            padding-right: 40px
        }

        html[data-cc-page="group-index"] .social-card {
            width: 300px;
            height: 390px;
            flex: 0 0 auto;
            position: relative;
            overflow: hidden;
            background: #222;
            scroll-snap-align: start
        }

            html[data-cc-page="group-index"] .social-card.wide {
                width: 450px
            }

            html[data-cc-page="group-index"] .social-card.short {
                height: 330px;
                margin-top: 30px
            }

            html[data-cc-page="group-index"] .social-card img, html[data-cc-page="group-index"] .social-card video {
                height: 100%;
                object-fit: cover;
                transition: transform .7s ease
            }

            html[data-cc-page="group-index"] .social-card:hover img, html[data-cc-page="group-index"] .social-card:hover video {
                transform: scale(1.04)
            }

            html[data-cc-page="group-index"] .social-card::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,transparent 60%,rgba(0,0,0,.64) 100%)
            }

            html[data-cc-page="group-index"] .social-card span {
                position: absolute;
                z-index: 2;
                left: 18px;
                bottom: 16px;
                font-size: 10px;
                letter-spacing: .08em
            }

        html[data-cc-page="group-index"] .social-controls {
            display: grid;
            grid-template-columns: auto 1fr;
            gap: 24px;
            align-items: center;
            margin-top: 28px
        }

        html[data-cc-page="group-index"] .social-drag-hint {
            font-size: 9px;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: rgba(255,255,255,.5);
            white-space: nowrap
        }

        html[data-cc-page="group-index"] .social-progress {
            height: 2px;
            background: rgba(255,255,255,.18);
            position: relative;
            overflow: hidden
        }

            html[data-cc-page="group-index"] .social-progress span {
                position: absolute;
                left: 0;
                top: 0;
                bottom: 0;
                width: 22%;
                background: var(--pink);
                transform: translateX(0);
                transition: transform .15s linear
            }

        /* NEWS & EVENTS - image first cards */
        html[data-cc-page="group-index"] .newsroom {
            padding: 125px 0 135px;
            background: #f4f2f2;
            overflow: hidden
        }

        html[data-cc-page="group-index"] .newsroom-head {
            display: grid;
            grid-template-columns: 1fr .85fr;
            gap: 80px;
            align-items: end;
            margin-bottom: 48px
        }

            html[data-cc-page="group-index"] .newsroom-head .eyebrow {
                color: var(--pink);
                margin-bottom: 18px
            }

            html[data-cc-page="group-index"] .newsroom-head h2 {
                font-family: var(--display);
                font-size: clamp(54px,5.5vw,82px);
                font-weight: 400;
                line-height: .98;
                letter-spacing: -.04em
            }

            html[data-cc-page="group-index"] .newsroom-head p {
                font-size: 13px;
                line-height: 1.85;
                color: var(--muted);
                max-width: 480px;
                margin-left: auto
            }

        html[data-cc-page="group-index"] .newsroom-head-actions {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 24px;
            margin-top: 20px
        }

        html[data-cc-page="group-index"] .newsroom-viewall {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            font-size: 9px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: var(--pink)
        }

            html[data-cc-page="group-index"] .newsroom-viewall i {
                transition: .25s
            }

            html[data-cc-page="group-index"] .newsroom-viewall:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-index"] .news-viewport {
            overflow-x: auto;
            overflow-y: hidden;
            scrollbar-width: none;
            cursor: grab;
            touch-action: pan-y;
            scroll-behavior: smooth;
            scroll-snap-type: x mandatory;
            user-select: none;
            -webkit-user-select: none;
            padding-bottom: 4px
        }

            html[data-cc-page="group-index"] .news-viewport::-webkit-scrollbar {
                display: none
            }

            html[data-cc-page="group-index"] .news-viewport.is-dragging {
                cursor: grabbing;
                scroll-behavior: auto
            }

        html[data-cc-page="group-index"] .news-track {
            display: flex;
            gap: 22px;
            width: max-content
        }

        html[data-cc-page="group-index"] .news-card {
            width: min(400px,31vw);
            min-width: 330px;
            background: #fff;
            scroll-snap-align: start;
            display: flex;
            flex-direction: column;
            transition: transform .35s ease,box-shadow .35s ease
        }

            html[data-cc-page="group-index"] .news-card:hover {
                transform: translateY(-5px);
                box-shadow: 0 18px 50px rgba(0,0,0,.08)
            }

        html[data-cc-page="group-index"] .news-card-image {
            height: 265px;
            overflow: hidden;
            background: #ddd
        }

            html[data-cc-page="group-index"] .news-card-image img {
                height: 100%;
                object-fit: cover;
                transition: transform .8s cubic-bezier(.22,1,.36,1)
            }

        html[data-cc-page="group-index"] .news-card:hover .news-card-image img {
            transform: scale(1.045)
        }

        html[data-cc-page="group-index"] .news-card-body {
            padding: 26px 27px 29px;
            display: flex;
            flex-direction: column;
            flex: 1
        }

        html[data-cc-page="group-index"] .news-meta {
            display: flex;
            align-items: center;
            gap: 12px;
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .15em;
            text-transform: uppercase;
            color: #8b8b8b;
            margin-bottom: 17px
        }

            html[data-cc-page="group-index"] .news-meta .type {
                color: var(--pink);
                background: rgba(169,0,97,.07);
                padding: 6px 8px
            }

        html[data-cc-page="group-index"] .news-card h3 {
            font-family: var(--display);
            font-size: 32px;
            line-height: 1.08;
            font-weight: 400;
            letter-spacing: -.025em;
            color: #222
        }

        html[data-cc-page="group-index"] .news-card p {
            font-size: 11px;
            line-height: 1.75;
            color: #777;
            margin-top: 13px;
            max-width: 350px
        }

        html[data-cc-page="group-index"] .news-link {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            margin-top: auto;
            padding-top: 24px;
            font-size: 9px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: var(--pink)
        }

            html[data-cc-page="group-index"] .news-link i {
                transition: .25s
            }

            html[data-cc-page="group-index"] .news-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-index"] .news-controls {
            display: grid;
            grid-template-columns: auto 1fr auto;
            gap: 22px;
            align-items: center;
            margin-top: 28px
        }

        html[data-cc-page="group-index"] .news-drag-hint {
            font-size: 9px;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #8b8b8b;
            white-space: nowrap
        }

        html[data-cc-page="group-index"] .news-progress {
            height: 2px;
            background: #d6d3d4;
            position: relative;
            overflow: hidden
        }

            html[data-cc-page="group-index"] .news-progress span {
                position: absolute;
                left: 0;
                top: 0;
                bottom: 0;
                width: 28%;
                background: var(--pink);
                transition: transform .15s linear
            }

        html[data-cc-page="group-index"] .news-bottom-nav {
            display: flex;
            gap: 7px
        }

            html[data-cc-page="group-index"] .news-bottom-nav button {
                width: 44px;
                height: 44px;
                border: 1px solid #c8c5c6;
                background: transparent;
                transition: .25s
            }

                html[data-cc-page="group-index"] .news-bottom-nav button:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff
                }

        /* MODERN FOOTER */
        html[data-cc-page="group-index"] .footer {
            position: relative;
            background: #0a0a0b;
            color: #fff;
            padding: 0 0 24px;
            overflow: hidden
        }

            html[data-cc-page="group-index"] .footer::before {
                content: "";
                position: absolute;
                right: -190px;
                top: 130px;
                width: 520px;
                height: 520px;
                border: 1px solid rgba(169,0,97,.18);
                border-radius: 50%;
                pointer-events: none
            }

            html[data-cc-page="group-index"] .footer::after {
                content: "";
                position: absolute;
                right: -95px;
                top: 225px;
                width: 330px;
                height: 330px;
                border: 1px solid rgba(169,0,97,.12);
                border-radius: 50%;
                pointer-events: none
            }

            html[data-cc-page="group-index"] .footer .container {
                position: relative;
                z-index: 2
            }

        html[data-cc-page="group-index"] .footer-newsletter {
            transform: translateY(-1px);
            background: linear-gradient(115deg,var(--pink) 0%,var(--pink-dark) 72%);
            display: grid;
            grid-template-columns: .9fr 1.1fr;
            gap: 70px;
            align-items: center;
            padding: 48px 54px;
            margin-bottom: 68px
        }

            html[data-cc-page="group-index"] .footer-newsletter .eyebrow {
                color: rgba(255,255,255,.72);
                margin-bottom: 12px
            }

            html[data-cc-page="group-index"] .footer-newsletter h2 {
                font-family: var(--display);
                font-size: clamp(38px,4.2vw,60px);
                line-height: 1;
                font-weight: 400;
                letter-spacing: -.03em
            }

        html[data-cc-page="group-index"] .newsletter-copy p {
            font-size: 12px;
            line-height: 1.75;
            color: rgba(255,255,255,.76);
            margin-top: 14px;
            max-width: 500px
        }

        html[data-cc-page="group-index"] .newsletter-form {
            display: flex;
            align-items: stretch;
            border-bottom: 1px solid rgba(255,255,255,.65);
            min-height: 58px
        }

            html[data-cc-page="group-index"] .newsletter-form input {
                flex: 1;
                min-width: 0;
                border: 0;
                background: transparent;
                color: #fff;
                outline: 0;
                font-size: 13px;
                padding: 0 8px
            }

                html[data-cc-page="group-index"] .newsletter-form input::placeholder {
                    color: rgba(255,255,255,.62)
                }

            html[data-cc-page="group-index"] .newsletter-form button {
                border: 0;
                background: #fff;
                color: #171717;
                padding: 0 24px;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .14em;
                text-transform: uppercase;
                transition: .25s
            }

                html[data-cc-page="group-index"] .newsletter-form button:hover {
                    background: #171717;
                    color: #fff
                }

        html[data-cc-page="group-index"] .newsletter-note {
            font-size: 9px !important;
            color: rgba(255,255,255,.58) !important;
            margin-top: 11px !important
        }

        html[data-cc-page="group-index"] .footer-grid {
            display: grid;
            grid-template-columns: 1.35fr .72fr .82fr 1fr;
            gap: 72px;
            padding-bottom: 58px
        }

        html[data-cc-page="group-index"] .footer-brand-copy {
            font-size: 12px;
            line-height: 1.8;
            color: rgba(255,255,255,.58);
            max-width: 290px;
            margin-top: 22px
        }

        html[data-cc-page="group-index"] .footer-logo {
            width: 154px
        }

        html[data-cc-page="group-index"] .footer h4 {
            font-size: 9px;
            text-transform: uppercase;
            letter-spacing: .19em;
            color: rgba(255,255,255,.46);
            margin-bottom: 22px
        }

        html[data-cc-page="group-index"] .footer-links {
            display: grid;
            gap: 12px
        }

            html[data-cc-page="group-index"] .footer-links a, html[data-cc-page="group-index"] .footer p, html[data-cc-page="group-index"] .footer a.contact {
                font-size: 12px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                transition: .25s
            }

                html[data-cc-page="group-index"] .footer-links a:hover, html[data-cc-page="group-index"] .footer a.contact:hover {
                    color: #fff;
                    transform: translateX(3px)
                }

        html[data-cc-page="group-index"] .footer-contact {
            display: grid;
            gap: 7px
        }

        html[data-cc-page="group-index"] .footer-location {
            margin-top: 22px !important
        }

        html[data-cc-page="group-index"] .social-icons {
            display: flex;
            gap: 10px;
            margin-top: 24px
        }

            html[data-cc-page="group-index"] .social-icons a {
                width: 40px;
                height: 40px;
                border: 1px solid rgba(255,255,255,.22);
                display: flex;
                align-items: center;
                justify-content: center;
                border-radius: 50%;
                font-size: 13px;
                transition: .3s
            }

                html[data-cc-page="group-index"] .social-icons a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    transform: translateY(-3px)
                }

        html[data-cc-page="group-index"] .green-star {
            width: 92px;
            margin-top: 24px
        }

        html[data-cc-page="group-index"] .footer-bottom {
            border-top: 1px solid rgba(255,255,255,.12);
            padding-top: 22px;
            display: flex;
            justify-content: space-between;
            gap: 20px;
            flex-wrap: wrap;
            font-size: 9px;
            letter-spacing: .03em;
            color: rgba(255,255,255,.4)
        }

            html[data-cc-page="group-index"] .footer-bottom nav {
                display: flex;
                gap: 22px;
                flex-wrap: wrap
            }

            html[data-cc-page="group-index"] .footer-bottom a:hover {
                color: #fff
            }

        html[data-cc-page="group-index"] .scrolltop {
            position: fixed;
            right: 22px;
            bottom: 22px;
            z-index: 80;
            width: 42px;
            height: 42px;
            border: 0;
            border-radius: 50%;
            background: var(--pink);
            color: #fff;
            opacity: 0;
            visibility: hidden;
            transform: translateY(12px);
            transition: .3s
        }

            html[data-cc-page="group-index"] .scrolltop.show {
                opacity: 1;
                visibility: visible;
                transform: none
            }

        html[data-cc-page="group-index"] .mobile-book {
            display: none
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-index"] .container {
                width: min(100% - 44px,1420px)
            }

            html[data-cc-page="group-index"] .menu {
                gap: 18px
            }

            html[data-cc-page="group-index"] .menu-link {
                font-size: 11px
            }

            html[data-cc-page="group-index"] .header-book {
                margin-left: 20px
            }

            html[data-cc-page="group-index"] .booking-form {
                grid-template-columns: repeat(3,1fr)
            }

            html[data-cc-page="group-index"] .booking-submit {
                width: 100%
            }

            html[data-cc-page="group-index"] .guest-popover {
                width: 430px
            }

            html[data-cc-page="group-index"] .brand-story-grid {
                gap: 60px
            }

            html[data-cc-page="group-index"] .brand-story-copy {
                padding-left: 20px
            }

            html[data-cc-page="group-index"] .brand-story-visual {
                min-height: 560px
            }

            html[data-cc-page="group-index"] .brand-story-main-image {
                height: 510px
            }

            html[data-cc-page="group-index"] .news-card {
                width: 360px
            }

            html[data-cc-page="group-index"] .footer-newsletter {
                gap: 42px;
                padding: 42px
            }

            html[data-cc-page="group-index"] .footer-grid {
                gap: 45px
            }

            html[data-cc-page="group-index"] .manifesto-grid {
                gap: 70px
            }

            html[data-cc-page="group-index"] .resort-story {
                height: 535px;
                flex-basis: 80vw
            }

            html[data-cc-page="group-index"] .offer-mosaic {
                grid-template-rows: 270px 270px
            }

            html[data-cc-page="group-index"] .gather-scenes {
                gap: 20px
            }

            html[data-cc-page="group-index"] .gather-scene, html[data-cc-page="group-index"] .gather-scene.secondary {
                min-height: 590px
            }

            html[data-cc-page="group-index"] .gather-scene-content {
                left: 32px;
                right: 32px;
                bottom: 32px
            }

            html[data-cc-page="group-index"] .gather-footer {
                padding: 30px 32px
            }

            html[data-cc-page="group-index"] .footer-grid {
                grid-template-columns: 1.15fr 1fr 1fr;
                gap: 45px
            }

                html[data-cc-page="group-index"] .footer-grid > div:last-child {
                    grid-column: 2/4
                }

            html[data-cc-page="group-index"] .footer-newsletter {
                grid-template-columns: 1fr 1fr
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] body {
                padding-bottom: 56px
            }

            html[data-cc-page="group-index"] .container {
                width: calc(100% - 30px)
            }

            html[data-cc-page="group-index"] .header {
                position: absolute;
                background: rgba(255,255,255,.97);
                color: #111
            }

            html[data-cc-page="group-index"] .header-top, html[data-cc-page="group-index"] .menu, html[data-cc-page="group-index"] .header-book {
                display: none
            }

            html[data-cc-page="group-index"] .header-main {
                height: 72px
            }

            html[data-cc-page="group-index"] .brand-light {
                display: none !important
            }

            html[data-cc-page="group-index"] .brand-dark {
                display: block !important
            }

            html[data-cc-page="group-index"] .brand img {
                width: 125px;
                max-height: 52px
            }

            html[data-cc-page="group-index"] .mobile-trigger {
                display: block
            }

            html[data-cc-page="group-index"] .hero {
                height: 700px;
                min-height: 700px;
                padding-top: 72px
            }

            html[data-cc-page="group-index"] .hero-content {
                padding-bottom: 92px
            }

            html[data-cc-page="group-index"] .hero-copy {
                max-width: 90%
            }

            html[data-cc-page="group-index"] .hero-title {
                font-size: 52px
            }

            html[data-cc-page="group-index"] .hero-subtitle {
                font-size: 13px;
                max-width: 360px
            }

            html[data-cc-page="group-index"] .hero-count {
                display: none
            }

            html[data-cc-page="group-index"] .hero-control {
                right: 15px;
                bottom: 18px
            }

            html[data-cc-page="group-index"] .hero-arrow {
                width: 44px;
                height: 44px
            }

            html[data-cc-page="group-index"] .booking-shell {
                display: none
            }

            html[data-cc-page="group-index"] .brand-story {
                padding: 105px 0 110px
            }

                html[data-cc-page="group-index"] .brand-story::before {
                    font-size: 230px;
                    top: 55px
                }

            html[data-cc-page="group-index"] .brand-story-grid {
                grid-template-columns: 1fr;
                gap: 55px
            }

            html[data-cc-page="group-index"] .brand-story-copy {
                padding-left: 0
            }

                html[data-cc-page="group-index"] .brand-story-copy h2 {
                    font-size: 58px
                }

            html[data-cc-page="group-index"] .brand-story-visual {
                min-height: 540px
            }

            html[data-cc-page="group-index"] .brand-story-main-image {
                width: 94%;
                height: 500px
            }

            html[data-cc-page="group-index"] .brand-story-note {
                left: 6%;
                bottom: 34px;
                width: 76%
            }

            html[data-cc-page="group-index"] .newsroom {
                padding: 100px 0 110px
            }

            html[data-cc-page="group-index"] .newsroom-head {
                grid-template-columns: 1fr;
                gap: 25px
            }

                html[data-cc-page="group-index"] .newsroom-head p {
                    margin: 0
                }

            html[data-cc-page="group-index"] .newsroom-head-actions {
                justify-content: flex-start
            }

            html[data-cc-page="group-index"] .news-card {
                width: 360px;
                min-width: 360px
            }

            html[data-cc-page="group-index"] .resorts {
                padding-bottom: 100px
            }

            html[data-cc-page="group-index"] .resort-head {
                padding: 85px 0 40px
            }

                html[data-cc-page="group-index"] .resort-head .small-title {
                    font-size: 40px
                }

            html[data-cc-page="group-index"] .resort-story {
                height: 505px;
                flex-basis: 88vw
            }

            html[data-cc-page="group-index"] .resort-drag-hint {
                display: none
            }

            html[data-cc-page="group-index"] .story-copy {
                left: 28px;
                right: 28px;
                bottom: 28px;
                display: block
            }

                html[data-cc-page="group-index"] .story-copy h3 {
                    font-size: 48px
                }

                html[data-cc-page="group-index"] .story-copy p {
                    margin-top: 14px
                }

            html[data-cc-page="group-index"] .story-link {
                top: 20px;
                right: 20px
            }

            html[data-cc-page="group-index"] .story-index {
                top: 20px;
                left: 20px
            }

            html[data-cc-page="group-index"] .loyalty {
                min-height: 620px;
                background-attachment: scroll
            }

            html[data-cc-page="group-index"] .loyalty-ring {
                display: none
            }

            html[data-cc-page="group-index"] .loyalty-copy h2 {
                font-size: 56px
            }

            html[data-cc-page="group-index"] .offers {
                padding: 105px 0
            }

            html[data-cc-page="group-index"] .offers-intro {
                grid-template-columns: 1fr;
                gap: 30px;
                margin-bottom: 42px
            }

                html[data-cc-page="group-index"] .offers-intro h2 {
                    font-size: 54px
                }

            html[data-cc-page="group-index"] .offers-intro-copy {
                margin: 0
            }

            html[data-cc-page="group-index"] .offer-mosaic {
                grid-template-columns: 1fr;
                grid-template-rows: none
            }

            html[data-cc-page="group-index"] .offer-tile, html[data-cc-page="group-index"] .offer-tile.featured {
                grid-row: auto;
                height: 430px
            }

            html[data-cc-page="group-index"] .featured .offer-content h3, html[data-cc-page="group-index"] .offer-content h3 {
                font-size: 42px
            }

            html[data-cc-page="group-index"] .offer-strip {
                grid-template-columns: 1fr 1fr
            }

                html[data-cc-page="group-index"] .offer-strip .offer-tile {
                    height: 280px
                }

            html[data-cc-page="group-index"] .gather {
                padding: 105px 0
            }

            html[data-cc-page="group-index"] .gather-head {
                grid-template-columns: 1fr;
                gap: 26px;
                margin-bottom: 40px
            }

                html[data-cc-page="group-index"] .gather-head h2 {
                    font-size: 56px
                }

            html[data-cc-page="group-index"] .gather-head-copy {
                margin: 0
            }

            html[data-cc-page="group-index"] .gather-scenes {
                grid-template-columns: 1fr
            }

            html[data-cc-page="group-index"] .gather-scene, html[data-cc-page="group-index"] .gather-scene.secondary {
                min-height: 520px
            }

            html[data-cc-page="group-index"] .gather-scene-content {
                left: 28px;
                right: 28px;
                bottom: 28px
            }

            html[data-cc-page="group-index"] .gather-footer {
                align-items: flex-start;
                flex-direction: column
            }

            html[data-cc-page="group-index"] .gather-footer-copy {
                align-items: flex-start;
                flex-direction: column;
                gap: 10px
            }

            html[data-cc-page="group-index"] .social {
                padding: 95px 0 100px
            }

            html[data-cc-page="group-index"] .social-head {
                display: block
            }

                html[data-cc-page="group-index"] .social-head h2 {
                    font-size: 52px
                }

            html[data-cc-page="group-index"] .social-head-right {
                margin-top: 22px;
                justify-content: space-between;
                align-items: center
            }

            html[data-cc-page="group-index"] .social-head p {
                text-align: left;
                margin: 0
            }

            html[data-cc-page="group-index"] .social-viewport {
                padding-left: 15px;
                padding-right: 15px
            }

            html[data-cc-page="group-index"] .social-card {
                width: 260px;
                height: 350px
            }

                html[data-cc-page="group-index"] .social-card.wide {
                    width: 390px
                }

                html[data-cc-page="group-index"] .social-card.short {
                    height: 290px;
                    margin-top: 30px
                }

            html[data-cc-page="group-index"] .social-drag-hint {
                display: none
            }

            html[data-cc-page="group-index"] .footer-newsletter {
                grid-template-columns: 1fr;
                gap: 28px;
                padding: 36px 32px;
                margin-bottom: 55px
            }

            html[data-cc-page="group-index"] .footer-grid {
                grid-template-columns: 1fr 1fr
            }

                html[data-cc-page="group-index"] .footer-grid > div:last-child {
                    grid-column: auto
                }

            html[data-cc-page="group-index"] .mobile-book {
                position: fixed;
                left: 0;
                right: 0;
                bottom: 0;
                height: 56px;
                z-index: 400;
                background: var(--pink);
                color: #fff;
                display: flex;
                align-items: center;
                justify-content: center;
                border: 0;
                font-size: 12px;
                font-weight: 600;
                text-transform: uppercase;
                letter-spacing: .12em
            }

            html[data-cc-page="group-index"] .scrolltop {
                bottom: 70px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="group-index"] .hero {
                height: 640px;
                min-height: 640px
            }

            html[data-cc-page="group-index"] .hero-content {
                padding-bottom: 82px
            }

            html[data-cc-page="group-index"] .hero-title {
                font-size: 43px
            }

            html[data-cc-page="group-index"] .hero-copy {
                max-width: 100%
            }

            html[data-cc-page="group-index"] .hero-kicker {
                font-size: 9px
            }

            html[data-cc-page="group-index"] .hero-subtitle {
                font-size: 12px;
                line-height: 1.6
            }

            html[data-cc-page="group-index"] .hero-actions .btn {
                min-height: 44px;
                padding: 0 18px;
                font-size: 10px
            }

            html[data-cc-page="group-index"] .brand-story::before {
                font-size: 170px
            }

            html[data-cc-page="group-index"] .brand-story-copy h2 {
                font-size: 46px
            }

            html[data-cc-page="group-index"] .brand-story-copy p {
                font-size: 13px
            }

            html[data-cc-page="group-index"] .brand-story-visual {
                min-height: 455px
            }

            html[data-cc-page="group-index"] .brand-story-main-image {
                width: 100%;
                height: 420px
            }

            html[data-cc-page="group-index"] .brand-story-note {
                left: 0;
                bottom: 25px;
                width: 88%;
                min-width: 0;
                padding: 24px 34px 24px 22px
            }

                html[data-cc-page="group-index"] .brand-story-note strong {
                    font-size: 29px
                }

            html[data-cc-page="group-index"] .brand-story-stamp {
                width: 94px;
                height: 94px;
                right: 8px
            }

                html[data-cc-page="group-index"] .brand-story-stamp strong {
                    font-size: 31px
                }

            html[data-cc-page="group-index"] .newsroom-head h2 {
                font-size: 46px
            }

            html[data-cc-page="group-index"] .news-card {
                width: 84vw;
                min-width: 280px
            }

            html[data-cc-page="group-index"] .news-card-image {
                height: 230px
            }

            html[data-cc-page="group-index"] .news-card-body {
                padding: 23px
            }

            html[data-cc-page="group-index"] .news-card h3 {
                font-size: 29px
            }

            html[data-cc-page="group-index"] .news-drag-hint {
                display: none
            }

            html[data-cc-page="group-index"] .resort-head {
                align-items: flex-end
            }

                html[data-cc-page="group-index"] .resort-head .small-title {
                    font-size: 34px
                }

            html[data-cc-page="group-index"] .resort-nav button {
                width: 42px;
                height: 42px
            }

            html[data-cc-page="group-index"] .resort-story {
                height: 470px;
                flex-basis: 92vw
            }

            html[data-cc-page="group-index"] .resort-controls-bottom {
                grid-template-columns: 1fr auto
            }

            html[data-cc-page="group-index"] .resort-drag-hint {
                display: none
            }

            html[data-cc-page="group-index"] .story-copy h3 {
                font-size: 40px
            }

            html[data-cc-page="group-index"] .story-copy p {
                font-size: 11px;
                max-width: 270px
            }

            html[data-cc-page="group-index"] .story-link {
                width: 46px;
                height: 46px
            }

            html[data-cc-page="group-index"] .loyalty {
                min-height: 560px
            }

            html[data-cc-page="group-index"] .loyalty-copy h2 {
                font-size: 46px
            }

            html[data-cc-page="group-index"] .loyalty-copy p {
                font-size: 13px
            }

            html[data-cc-page="group-index"] .offers-intro h2 {
                font-size: 44px
            }

            html[data-cc-page="group-index"] .offer-tile, html[data-cc-page="group-index"] .offer-tile.featured {
                height: 390px
            }

            html[data-cc-page="group-index"] .offer-strip {
                grid-template-columns: 1fr
            }

                html[data-cc-page="group-index"] .offer-strip .offer-tile {
                    height: 330px
                }

            html[data-cc-page="group-index"] .offer-content h3, html[data-cc-page="group-index"] .featured .offer-content h3 {
                font-size: 38px
            }

            html[data-cc-page="group-index"] .gather-head h2 {
                font-size: 46px
            }

            html[data-cc-page="group-index"] .gather-scene, html[data-cc-page="group-index"] .gather-scene.secondary {
                min-height: 460px
            }

            html[data-cc-page="group-index"] .gather-scene-content {
                left: 22px;
                right: 22px;
                bottom: 24px
            }

                html[data-cc-page="group-index"] .gather-scene-content h3 {
                    font-size: 40px
                }

            html[data-cc-page="group-index"] .gather-footer {
                padding: 26px 22px
            }

                html[data-cc-page="group-index"] .gather-footer strong {
                    font-size: 27px
                }

            html[data-cc-page="group-index"] .social-head h2 {
                font-size: 44px
            }

            html[data-cc-page="group-index"] .social-head-right {
                align-items: flex-start
            }

                html[data-cc-page="group-index"] .social-head-right .media-nav {
                    flex: 0 0 auto
                }

            html[data-cc-page="group-index"] .social-card {
                width: 230px;
                height: 320px
            }

                html[data-cc-page="group-index"] .social-card.wide {
                    width: 330px
                }

            html[data-cc-page="group-index"] .social-controls {
                grid-template-columns: 1fr
            }

            html[data-cc-page="group-index"] .social-drag-hint {
                display: none
            }

            html[data-cc-page="group-index"] .footer-newsletter {
                margin-inline: -15px;
                padding: 34px 22px
            }

                html[data-cc-page="group-index"] .footer-newsletter h2 {
                    font-size: 38px
                }

            html[data-cc-page="group-index"] .newsletter-form {
                min-height: 54px
            }

                html[data-cc-page="group-index"] .newsletter-form button {
                    padding: 0 16px
                }

            html[data-cc-page="group-index"] .footer-grid {
                grid-template-columns: 1fr;
                gap: 36px
            }

            html[data-cc-page="group-index"] .footer {
                padding-top: 0
            }

            html[data-cc-page="group-index"] .footer-bottom {
                display: block
            }

                html[data-cc-page="group-index"] .footer-bottom nav {
                    margin-top: 12px;
                    gap: 13px
                }
        }

        @media(prefers-reduced-motion:reduce) {
            html[data-cc-page="group-index"], html[data-cc-page="group-index"] * {
                scroll-behavior: auto !important
            }

            html[data-cc-page="group-index"] .reveal, html[data-cc-page="group-index"] .reveal-left, html[data-cc-page="group-index"] .reveal-right {
                opacity: 1 !important;
                transform: none !important;
                filter: none !important;
                transition: none !important
            }

            html[data-cc-page="group-index"] .hero-slide img {
                animation: none !important;
                transition: none !important
            }

            html[data-cc-page="group-index"] .hero-copy * {
                animation: none !important
            }

            html[data-cc-page="group-index"] .brand-story-main-image img {
                transform: none !important
            }
        }

        /* =====================================================
           Image Asset Safety
        ===================================================== */
        html[data-cc-page="group-index"] img[data-asset-fallback-used="true"] {
            opacity: 1 !important;
            visibility: visible !important;
        }


        /* =====================================================
           V8 REVIEW CHANGES
        ===================================================== */

        /* Premium refill hover: lift + animated fill + brightness */
        html[data-cc-page="group-index"] .btn, html[data-cc-page="group-index"] .booking-submit, html[data-cc-page="group-index"] .guest-done, html[data-cc-page="group-index"] .newsletter-form button, html[data-cc-page="group-index"] .hero-arrow, html[data-cc-page="group-index"] .resort-nav button, html[data-cc-page="group-index"] .resort-bottom-nav button, html[data-cc-page="group-index"] .media-nav button, html[data-cc-page="group-index"] .news-bottom-nav button {
            transition: background-size .42s cubic-bezier(.22,1,.36,1),color .28s ease,border-color .28s ease,transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease !important
        }

        html[data-cc-page="group-index"] .btn-pink, html[data-cc-page="group-index"] .booking-submit {
            background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
            background-repeat: no-repeat;
            background-position: left top;
            background-size: 0 100%;
            background-color: var(--pink) !important
        }

        html[data-cc-page="group-index"] .btn-white {
            background-image: linear-gradient(90deg,var(--pink),var(--pink));
            background-repeat: no-repeat;
            background-position: left top;
            background-size: 0 100%;
            background-color: #fff !important;
            color: #111
        }

        html[data-cc-page="group-index"] .btn-outline {
            background-image: linear-gradient(90deg,var(--pink),var(--pink));
            background-repeat: no-repeat;
            background-position: left top;
            background-size: 0 100%
        }

        html[data-cc-page="group-index"] .btn:hover, html[data-cc-page="group-index"] .booking-submit:hover, html[data-cc-page="group-index"] .guest-done:hover, html[data-cc-page="group-index"] .newsletter-form button:hover, html[data-cc-page="group-index"] .hero-arrow:hover, html[data-cc-page="group-index"] .resort-nav button:hover, html[data-cc-page="group-index"] .resort-bottom-nav button:hover, html[data-cc-page="group-index"] .media-nav button:hover, html[data-cc-page="group-index"] .news-bottom-nav button:hover {
            transform: translateY(-3px);
            filter: brightness(1.08);
            box-shadow: 0 12px 28px rgba(0,0,0,.13)
        }

        html[data-cc-page="group-index"] .btn-pink:hover, html[data-cc-page="group-index"] .booking-submit:hover, html[data-cc-page="group-index"] .btn-white:hover, html[data-cc-page="group-index"] .btn-outline:hover {
            background-size: 100% 100% !important
        }

        html[data-cc-page="group-index"] .btn-white:hover, html[data-cc-page="group-index"] .btn-outline:hover {
            color: #fff !important;
            border-color: var(--pink) !important
        }

        /* Sticky horizontal logo */
        html[data-cc-page="group-index"] .header.sticky .brand {
            width: 205px
        }

        html[data-cc-page="group-index"] .header.sticky .brand-dark {
            width: 190px;
            max-height: 46px;
            object-fit: contain;
            object-position: left center
        }

        /* Booking dock - visible above the fold and remains available while browsing */
        html[data-cc-page="group-index"] .booking-shell {
            position: sticky;
            top: 102px;
            z-index: 92;
            margin-top: -62px
        }

        html[data-cc-page="group-index"] .booking-card {
            transition: box-shadow .3s ease,transform .3s ease
        }

        html[data-cc-page="group-index"] .booking-shell.is-stuck .booking-card {
            box-shadow: 0 14px 38px rgba(0,0,0,.16)
        }

        /* Offers - black stage with cinematic image reveal every time the tile re-enters view */
        html[data-cc-page="group-index"] .offer-tile {
            background: #090909;
            isolation: isolate
        }

            html[data-cc-page="group-index"] .offer-tile img {
                clip-path: inset(0 100% 0 0);
                transform: scale(1.08);
                transition: clip-path 1.12s cubic-bezier(.77,0,.18,1),transform 1.45s cubic-bezier(.22,1,.36,1) !important;
                will-change: clip-path,transform
            }

            html[data-cc-page="group-index"] .offer-tile:nth-child(even) img, html[data-cc-page="group-index"] .offer-strip .offer-tile:nth-child(odd) img {
                clip-path: inset(0 0 0 100%)
            }

            html[data-cc-page="group-index"] .offer-tile.in-view img {
                clip-path: inset(0 0 0 0);
                transform: scale(1)
            }

            html[data-cc-page="group-index"] .offer-tile::before {
                content: "";
                position: absolute;
                inset: 0;
                background: #090909;
                z-index: 1;
                transform: scaleX(1);
                transform-origin: right center;
                transition: transform 1.08s cubic-bezier(.77,0,.18,1);
                pointer-events: none
            }

            html[data-cc-page="group-index"] .offer-tile:nth-child(even)::before, html[data-cc-page="group-index"] .offer-strip .offer-tile:nth-child(odd)::before {
                transform-origin: left center
            }

            html[data-cc-page="group-index"] .offer-tile.in-view::before {
                transform: scaleX(0)
            }

            html[data-cc-page="group-index"] .offer-tile::after, html[data-cc-page="group-index"] .offer-content, html[data-cc-page="group-index"] .offer-arrow {
                z-index: 2
            }

            html[data-cc-page="group-index"] .offer-tile:hover img {
                transform: scale(1.035)
            }

        /* Drag rails: disable native image/link drag and make the navigation line a real control */
        html[data-cc-page="group-index"] .social-card, html[data-cc-page="group-index"] .news-card {
            cursor: grab
        }

        html[data-cc-page="group-index"] .social-viewport.is-dragging, html[data-cc-page="group-index"] .news-viewport.is-dragging, html[data-cc-page="group-index"] .social-viewport.is-dragging .social-card, html[data-cc-page="group-index"] .news-viewport.is-dragging .news-card {
            cursor: grabbing;
            scroll-snap-type: none !important
        }

        html[data-cc-page="group-index"] .social-card img, html[data-cc-page="group-index"] .social-card video, html[data-cc-page="group-index"] .news-card img {
            pointer-events: none;
            -webkit-user-drag: none;
            user-select: none
        }

        html[data-cc-page="group-index"] .social-controls {
            display: block;
            margin-top: 28px
        }

        html[data-cc-page="group-index"] .social-progress, html[data-cc-page="group-index"] .news-progress {
            height: 22px;
            background: transparent;
            position: relative;
            overflow: visible;
            cursor: pointer;
            touch-action: none;
            display: flex;
            align-items: center
        }

            html[data-cc-page="group-index"] .social-progress::before, html[data-cc-page="group-index"] .news-progress::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                height: 2px;
                background: rgba(255,255,255,.20)
            }

            html[data-cc-page="group-index"] .news-progress::before {
                background: #d6d3d4
            }

            html[data-cc-page="group-index"] .social-progress span, html[data-cc-page="group-index"] .news-progress span {
                position: absolute;
                left: 0;
                top: 50%;
                height: 4px;
                transform: translateY(-50%);
                background: var(--pink);
                transition: left .08s linear,width .18s ease,transform .08s linear;
                border-radius: 10px
            }

            html[data-cc-page="group-index"] .social-progress:hover span, html[data-cc-page="group-index"] .news-progress:hover span {
                height: 6px
            }

        html[data-cc-page="group-index"] .news-controls {
            grid-template-columns: 1fr auto;
            gap: 22px
        }

        html[data-cc-page="group-index"] .resort-controls-bottom {
            grid-template-columns: 1fr auto
        }

        /* Footer - restrained editorial layout, no floating/gradient card */
        html[data-cc-page="group-index"] .footer {
            background: #0d0d0e;
            padding: 0 0 26px
        }

            html[data-cc-page="group-index"] .footer::before, html[data-cc-page="group-index"] .footer::after {
                display: none
            }

        html[data-cc-page="group-index"] .footer-newsletter {
            transform: none;
            background: transparent;
            display: grid;
            grid-template-columns: .8fr 1.2fr;
            gap: 90px;
            align-items: end;
            padding: 62px 0 52px;
            margin: 0;
            border-top: 1px solid rgba(255,255,255,.13);
            border-bottom: 1px solid rgba(255,255,255,.13)
        }

            html[data-cc-page="group-index"] .footer-newsletter .eyebrow {
                color: var(--pink);
                margin-bottom: 15px
            }

            html[data-cc-page="group-index"] .footer-newsletter h2 {
                font-size: clamp(38px,4vw,58px);
                line-height: 1.02
            }

        html[data-cc-page="group-index"] .newsletter-side {
            display: grid;
            grid-template-columns: minmax(190px,.72fr) minmax(360px,1.28fr);
            column-gap: 40px;
            align-items: end
        }

            html[data-cc-page="group-index"] .newsletter-side > p {
                font-size: 12px;
                line-height: 1.75;
                color: rgba(255,255,255,.56);
                margin: 0 0 8px;
                max-width: 340px
            }

        html[data-cc-page="group-index"] .newsletter-form {
            min-height: 52px;
            border: 1px solid rgba(255,255,255,.24);
            background: transparent;
            padding-left: 4px
        }

            html[data-cc-page="group-index"] .newsletter-form:focus-within {
                border-color: rgba(255,255,255,.55)
            }

            html[data-cc-page="group-index"] .newsletter-form input {
                padding: 0 16px;
                color: #fff
            }

            html[data-cc-page="group-index"] .newsletter-form button {
                background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                background-repeat: no-repeat;
                background-position: left top;
                background-size: 0 100%;
                background-color: var(--pink);
                color: #fff;
                min-width: 142px
            }

                html[data-cc-page="group-index"] .newsletter-form button:hover {
                    background-size: 100% 100%;
                    color: #fff
                }

        html[data-cc-page="group-index"] .newsletter-note {
            grid-column: 2;
            font-size: 9px !important;
            color: rgba(255,255,255,.38) !important;
            margin: 9px 0 0 !important
        }

        html[data-cc-page="group-index"] .footer-main {
            display: grid;
            grid-template-columns: 1.05fr 1.8fr;
            gap: 100px;
            padding: 64px 0 58px
        }

        html[data-cc-page="group-index"] .footer-identity {
            max-width: 330px
        }

        html[data-cc-page="group-index"] .footer-logo {
            width: 165px
        }

        html[data-cc-page="group-index"] .footer-brand-copy {
            margin-top: 24px;
            max-width: 310px
        }

        html[data-cc-page="group-index"] .footer-grid {
            display: grid;
            grid-template-columns: repeat(3,1fr);
            gap: 60px;
            padding: 0
        }

            html[data-cc-page="group-index"] .footer-grid > div:last-child {
                grid-column: auto
            }

        html[data-cc-page="group-index"] .footer h4 {
            margin-bottom: 20px
        }

        html[data-cc-page="group-index"] .footer-location {
            margin-top: 0 !important
        }

        html[data-cc-page="group-index"] .green-star {
            width: 78px;
            margin-top: 20px
        }

        html[data-cc-page="group-index"] .social-icons {
            margin-top: 28px
        }

            html[data-cc-page="group-index"] .social-icons a {
                width: 38px;
                height: 38px
            }

        html[data-cc-page="group-index"] .footer-bottom {
            padding-top: 22px
        }

        /* Replayed motion remains visible and resets each time elements leave the viewport */
        html[data-cc-page="group-index"] .reveal, html[data-cc-page="group-index"] .reveal-left, html[data-cc-page="group-index"] .reveal-right {
            transition-duration: 1.05s,1.15s,.95s
        }

            html[data-cc-page="group-index"] .reveal:not(.in-view), html[data-cc-page="group-index"] .reveal-left:not(.in-view), html[data-cc-page="group-index"] .reveal-right:not(.in-view) {
                will-change: opacity,transform,filter
            }

        @media(max-width:1100px) {
            html[data-cc-page="group-index"] .header.sticky .brand {
                width: 180px
            }

            html[data-cc-page="group-index"] .header.sticky .brand-dark {
                width: 168px
            }

            html[data-cc-page="group-index"] .booking-shell {
                top: 102px;
                margin-top: -62px
            }

            html[data-cc-page="group-index"] .booking-form {
                grid-template-columns: 1.1fr 1fr 1fr 1.25fr;
                gap: 9px
            }

                html[data-cc-page="group-index"] .booking-form > .field:nth-of-type(5) {
                    grid-column: 1/3
                }

            html[data-cc-page="group-index"] .booking-submit {
                grid-column: 3/5
            }

            html[data-cc-page="group-index"] .footer-newsletter {
                gap: 55px
            }

            html[data-cc-page="group-index"] .newsletter-side {
                grid-template-columns: 1fr
            }

            html[data-cc-page="group-index"] .newsletter-note {
                grid-column: 1
            }

            html[data-cc-page="group-index"] .footer-main {
                gap: 60px
            }

            html[data-cc-page="group-index"] .footer-grid {
                gap: 38px
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] body {
                padding-bottom: 0
            }

            html[data-cc-page="group-index"] .header.sticky .brand, html[data-cc-page="group-index"] .brand {
                width: 175px
            }

            html[data-cc-page="group-index"] .header.sticky .brand-dark, html[data-cc-page="group-index"] .brand-dark {
                width: 165px !important;
                max-height: 42px !important
            }

            html[data-cc-page="group-index"] .hero {
                height: 760px;
                min-height: 760px
            }

            html[data-cc-page="group-index"] .hero-content {
                padding-bottom: 300px
            }

            html[data-cc-page="group-index"] .hero-control {
                bottom: 255px
            }

            html[data-cc-page="group-index"] .booking-shell {
                display: block !important;
                position: sticky;
                top: 72px;
                z-index: 94;
                margin-top: -238px;
                margin-bottom: 34px
            }

            html[data-cc-page="group-index"] .booking-card {
                padding: 13px;
                border-radius: 0;
                box-shadow: 0 16px 38px rgba(0,0,0,.18)
            }

            html[data-cc-page="group-index"] .booking-form {
                grid-template-columns: 1fr 1fr;
                gap: 8px
            }

                html[data-cc-page="group-index"] .booking-form > .field:nth-of-type(1), html[data-cc-page="group-index"] .booking-form > .field:nth-of-type(4) {
                    grid-column: 1/3
                }

                html[data-cc-page="group-index"] .booking-form > .field:nth-of-type(5) {
                    grid-column: 1/2
                }

            html[data-cc-page="group-index"] .booking-submit {
                grid-column: 2/3;
                height: 48px;
                align-self: end
            }

            html[data-cc-page="group-index"] .field label {
                font-size: 8px;
                margin-bottom: 5px
            }

            html[data-cc-page="group-index"] .control, html[data-cc-page="group-index"] .guest-trigger {
                height: 46px
            }

            html[data-cc-page="group-index"] .booking-submit {
                height: 46px
            }

            html[data-cc-page="group-index"] .guest-popover {
                position: fixed;
                left: 15px;
                right: 15px;
                top: auto;
                bottom: 18px;
                width: auto;
                max-width: none;
                max-height: 72vh;
                overflow: auto;
                z-index: 520
            }

                html[data-cc-page="group-index"] .guest-popover::before {
                    display: none
                }

            html[data-cc-page="group-index"] .rooms-container {
                max-height: 46vh
            }

            html[data-cc-page="group-index"] .mobile-book {
                display: none !important
            }

            html[data-cc-page="group-index"] .social-controls {
                margin-top: 20px
            }

            html[data-cc-page="group-index"] .news-controls {
                grid-template-columns: 1fr auto
            }

            html[data-cc-page="group-index"] .footer-newsletter {
                grid-template-columns: 1fr;
                gap: 25px;
                padding: 48px 0 42px
            }

            html[data-cc-page="group-index"] .newsletter-side {
                grid-template-columns: 1fr;
                gap: 18px
            }

            html[data-cc-page="group-index"] .newsletter-note {
                grid-column: 1
            }

            html[data-cc-page="group-index"] .footer-main {
                grid-template-columns: 1fr;
                gap: 48px;
                padding: 50px 0
            }

            html[data-cc-page="group-index"] .footer-grid {
                grid-template-columns: repeat(3,1fr);
                gap: 28px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="group-index"] .header.sticky .brand, html[data-cc-page="group-index"] .brand {
                width: 160px
            }

            html[data-cc-page="group-index"] .header.sticky .brand-dark, html[data-cc-page="group-index"] .brand-dark {
                width: 150px !important
            }

            html[data-cc-page="group-index"] .hero {
                height: 790px;
                min-height: 790px
            }

            html[data-cc-page="group-index"] .hero-content {
                padding-bottom: 335px
            }

            html[data-cc-page="group-index"] .hero-control {
                bottom: 290px
            }

            html[data-cc-page="group-index"] .booking-shell {
                top: 72px;
                margin-top: -280px;
                margin-bottom: 30px
            }

            html[data-cc-page="group-index"] .booking-card {
                padding: 11px
            }

            html[data-cc-page="group-index"] .booking-form {
                grid-template-columns: 1fr 1fr;
                gap: 7px
            }

                html[data-cc-page="group-index"] .booking-form > .field:nth-of-type(1), html[data-cc-page="group-index"] .booking-form > .field:nth-of-type(4) {
                    grid-column: 1/3
                }

                html[data-cc-page="group-index"] .booking-form > .field:nth-of-type(5) {
                    grid-column: 1/2
                }

            html[data-cc-page="group-index"] .booking-submit {
                grid-column: 2/3;
                padding: 0 10px;
                font-size: 9px
            }

            html[data-cc-page="group-index"] .control input, html[data-cc-page="group-index"] .control select {
                font-size: 10px;
                padding-left: 34px
            }

            html[data-cc-page="group-index"] .guest-trigger {
                font-size: 10px;
                padding-left: 34px
            }

            html[data-cc-page="group-index"] .control > i {
                left: 11px
            }

            html[data-cc-page="group-index"] .control .down {
                right: 8px
            }

            html[data-cc-page="group-index"] .footer-newsletter h2 {
                font-size: 40px
            }

            html[data-cc-page="group-index"] .newsletter-form {
                min-height: 50px
            }

                html[data-cc-page="group-index"] .newsletter-form button {
                    min-width: 118px;
                    padding: 0 12px
                }

            html[data-cc-page="group-index"] .footer-grid {
                grid-template-columns: 1fr 1fr;
                gap: 36px 28px
            }

                html[data-cc-page="group-index"] .footer-grid > div:last-child {
                    grid-column: 1/3
                }

            html[data-cc-page="group-index"] .footer-main {
                padding-bottom: 44px
            }
        }


        /* =====================================================
           V9 BOOKING POSITION FIX - ABOVE THE FOLD, NEVER STICKY
           ===================================================== */
        html[data-cc-page="group-index"] .booking-shell {
            position: relative !important;
            top: auto !important;
            z-index: 30 !important;
            margin-top: -102px !important;
            margin-bottom: 48px !important;
        }

            html[data-cc-page="group-index"] .booking-shell .booking-card, html[data-cc-page="group-index"] .booking-shell .booking-card.reveal {
                opacity: 1 !important;
                transform: none !important;
                filter: none !important;
                visibility: visible !important;
            }

            html[data-cc-page="group-index"] .booking-shell.is-stuck .booking-card {
                box-shadow: 0 20px 55px rgba(0,0,0,.14) !important
            }

        @media(max-width:1100px) {
            html[data-cc-page="group-index"] .booking-shell {
                position: relative !important;
                top: auto !important;
                margin-top: -154px !important;
                margin-bottom: 46px !important;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .hero {
                height: 100svh !important;
                min-height: 700px !important
            }

            html[data-cc-page="group-index"] .booking-shell {
                display: block !important;
                position: relative !important;
                top: auto !important;
                margin-top: -238px !important;
                margin-bottom: 42px !important;
                z-index: 30 !important;
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="group-index"] .hero {
                height: 100svh !important;
                min-height: 680px !important
            }

            html[data-cc-page="group-index"] .booking-shell {
                position: relative !important;
                top: auto !important;
                margin-top: -270px !important;
                margin-bottom: 38px !important;
            }
        }



        /* V10 - True mouse drag for Seen at Charmillion + News */
        html[data-cc-page="group-index"] .social-viewport, html[data-cc-page="group-index"] .news-viewport {
            cursor: grab;
            user-select: none;
            -webkit-user-select: none;
            overscroll-behavior-x: contain;
        }

            html[data-cc-page="group-index"] .social-viewport.is-dragging, html[data-cc-page="group-index"] .news-viewport.is-dragging {
                cursor: grabbing !important;
                scroll-behavior: auto !important;
                scroll-snap-type: none !important;
            }

        html[data-cc-page="group-index"] .social-track, html[data-cc-page="group-index"] .news-track {
            user-select: none;
            -webkit-user-select: none
        }

        html[data-cc-page="group-index"] .social-card, html[data-cc-page="group-index"] .news-card, html[data-cc-page="group-index"] .social-card img, html[data-cc-page="group-index"] .social-card video, html[data-cc-page="group-index"] .news-card img {
            -webkit-user-drag: none;
            user-drag: none;
        }

        html[data-cc-page="group-index"] .social-progress, html[data-cc-page="group-index"] .news-progress {
            height: 20px;
            background: transparent;
            overflow: visible;
            display: flex;
            align-items: center;
            cursor: pointer;
            touch-action: none;
            position: relative;
        }

            html[data-cc-page="group-index"] .social-progress::before, html[data-cc-page="group-index"] .news-progress::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                height: 2px;
                background: rgba(255,255,255,.18);
            }

            html[data-cc-page="group-index"] .news-progress::before {
                background: #d6d3d4
            }

            html[data-cc-page="group-index"] .social-progress span, html[data-cc-page="group-index"] .news-progress span {
                top: auto;
                bottom: auto;
                height: 4px;
                min-width: 42px;
                background: var(--pink);
                transition: left .12s linear,width .2s ease,height .2s ease;
                z-index: 2;
            }

            html[data-cc-page="group-index"] .social-progress:hover span, html[data-cc-page="group-index"] .news-progress:hover span {
                height: 6px
            }

        /* V10 - New clean footer */
        html[data-cc-page="group-index"] .footer {
            background: #111113;
            color: #fff;
            padding: 0;
            overflow: hidden
        }

            html[data-cc-page="group-index"] .footer::before, html[data-cc-page="group-index"] .footer::after {
                display: none !important
            }

            html[data-cc-page="group-index"] .footer > .container {
                width: auto;
                max-width: none
            }

        html[data-cc-page="group-index"] .footer-newsletter-clean {
            background: #fff;
            color: #1d1d1f;
            border-top: 1px solid #ece9ea
        }

        html[data-cc-page="group-index"] .footer-newsletter-inner {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 100px;
            align-items: end;
            padding-top: 72px;
            padding-bottom: 72px
        }

        html[data-cc-page="group-index"] .footer-newsletter-heading .eyebrow {
            color: var(--pink);
            margin-bottom: 16px
        }

        html[data-cc-page="group-index"] .footer-newsletter-heading h2 {
            font-family: var(--display);
            font-size: clamp(44px,4.8vw,68px);
            font-weight: 400;
            line-height: .98;
            letter-spacing: -.035em
        }

        html[data-cc-page="group-index"] .footer-newsletter-action {
            max-width: 590px;
            margin-left: auto;
            width: 100%
        }

            html[data-cc-page="group-index"] .footer-newsletter-action > p {
                font-size: 13px;
                line-height: 1.8;
                color: #666;
                max-width: 510px;
                margin-bottom: 24px
            }

        html[data-cc-page="group-index"] .newsletter-form-clean {
            display: flex;
            align-items: stretch;
            border-bottom: 1px solid #bdb8ba;
            min-height: 58px
        }

            html[data-cc-page="group-index"] .newsletter-form-clean input {
                flex: 1;
                min-width: 0;
                border: 0;
                background: transparent;
                outline: 0;
                padding: 0 14px 0 0;
                font: inherit;
                font-size: 13px;
                color: #222
            }

                html[data-cc-page="group-index"] .newsletter-form-clean input::placeholder {
                    color: #989395
                }

            html[data-cc-page="group-index"] .newsletter-form-clean button {
                position: relative;
                overflow: hidden;
                isolation: isolate;
                border: 0;
                background: var(--pink);
                color: #fff;
                min-width: 150px;
                padding: 0 22px;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .14em;
                text-transform: uppercase;
                transition: transform .3s ease,filter .3s ease
            }

                html[data-cc-page="group-index"] .newsletter-form-clean button::before {
                    content: "";
                    position: absolute;
                    inset: 0;
                    background: var(--pink-dark);
                    transform: scaleX(0);
                    transform-origin: left;
                    transition: transform .38s cubic-bezier(.22,1,.36,1);
                    z-index: -1
                }

                html[data-cc-page="group-index"] .newsletter-form-clean button:hover {
                    transform: translateY(-2px);
                    filter: brightness(1.08)
                }

                    html[data-cc-page="group-index"] .newsletter-form-clean button:hover::before {
                        transform: scaleX(1)
                    }

        html[data-cc-page="group-index"] .footer-newsletter-action small {
            display: block;
            margin-top: 11px;
            font-size: 9px;
            color: #9b9698
        }

        html[data-cc-page="group-index"] .footer-core {
            background: #111113
        }

            html[data-cc-page="group-index"] .footer-core > .container {
                padding-top: 66px
            }

        html[data-cc-page="group-index"] .footer-topline {
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 80px;
            align-items: start;
            padding-bottom: 50px;
            border-bottom: 1px solid rgba(255,255,255,.12)
        }

        html[data-cc-page="group-index"] .footer-identity {
            max-width: 430px
        }

        html[data-cc-page="group-index"] .footer-logo {
            width: 176px;
            height: auto
        }

        html[data-cc-page="group-index"] .footer-identity p {
            font-size: 12px;
            line-height: 1.8;
            color: rgba(255,255,255,.55);
            margin-top: 22px;
            max-width: 390px
        }

        html[data-cc-page="group-index"] .footer-primary-contact {
            display: grid;
            justify-items: end;
            gap: 6px;
            text-align: right
        }

            html[data-cc-page="group-index"] .footer-primary-contact span, html[data-cc-page="group-index"] .footer h4 {
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .17em;
                text-transform: uppercase;
                color: rgba(255,255,255,.42)
            }

            html[data-cc-page="group-index"] .footer-primary-contact a {
                font-family: var(--display);
                font-size: 21px;
                line-height: 1.25;
                color: #fff;
                transition: color .25s ease
            }

                html[data-cc-page="group-index"] .footer-primary-contact a:hover {
                    color: var(--pink)
                }

        html[data-cc-page="group-index"] .footer-navigation {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr 1.05fr;
            gap: 70px;
            padding: 52px 0 58px
        }

        html[data-cc-page="group-index"] .footer h4 {
            margin-bottom: 20px
        }

        html[data-cc-page="group-index"] .footer-links {
            display: grid;
            gap: 11px
        }

            html[data-cc-page="group-index"] .footer-links a, html[data-cc-page="group-index"] .footer-place {
                font-size: 12px;
                line-height: 1.7;
                color: rgba(255,255,255,.67);
                transition: color .25s ease,transform .25s ease
            }

                html[data-cc-page="group-index"] .footer-links a:hover {
                    color: #fff;
                    transform: translateX(3px)
                }

        html[data-cc-page="group-index"] .footer-place {
            max-width: 190px
        }

        html[data-cc-page="group-index"] .footer-community .social-icons {
            display: flex;
            gap: 9px;
            margin: 0 0 26px
        }

        html[data-cc-page="group-index"] .social-icons a {
            width: 39px;
            height: 39px;
            border: 1px solid rgba(255,255,255,.20);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 12px;
            transition: transform .28s ease,background .28s ease,border-color .28s ease
        }

            html[data-cc-page="group-index"] .social-icons a:hover {
                background: var(--pink);
                border-color: var(--pink);
                transform: translateY(-3px)
            }

        html[data-cc-page="group-index"] .green-star {
            width: 78px;
            height: auto;
            margin: 0
        }

        html[data-cc-page="group-index"] .footer-bottom {
            border-top: 1px solid rgba(255,255,255,.11);
            padding: 22px 0 26px;
            display: flex;
            justify-content: space-between;
            gap: 20px;
            flex-wrap: wrap;
            font-size: 9px;
            color: rgba(255,255,255,.38)
        }

            html[data-cc-page="group-index"] .footer-bottom nav {
                display: flex;
                gap: 22px;
                flex-wrap: wrap
            }

            html[data-cc-page="group-index"] .footer-bottom a {
                transition: color .25s
            }

                html[data-cc-page="group-index"] .footer-bottom a:hover {
                    color: #fff
                }

        html[data-cc-page="group-index"] .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
        }

        @media(max-width:900px) {
            html[data-cc-page="group-index"] .footer-newsletter-inner {
                grid-template-columns: 1fr;
                gap: 32px;
                padding-top: 58px;
                padding-bottom: 58px
            }

            html[data-cc-page="group-index"] .footer-newsletter-action {
                margin: 0;
                max-width: none
            }

            html[data-cc-page="group-index"] .footer-topline {
                grid-template-columns: 1fr;
                gap: 35px
            }

            html[data-cc-page="group-index"] .footer-primary-contact {
                justify-items: start;
                text-align: left
            }

            html[data-cc-page="group-index"] .footer-navigation {
                grid-template-columns: 1fr 1fr;
                gap: 42px 32px
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="group-index"] .footer-newsletter-inner {
                padding-top: 48px;
                padding-bottom: 48px
            }

            html[data-cc-page="group-index"] .footer-newsletter-heading h2 {
                font-size: 42px
            }

            html[data-cc-page="group-index"] .newsletter-form-clean {
                min-height: 54px
            }

                html[data-cc-page="group-index"] .newsletter-form-clean button {
                    min-width: 122px;
                    padding: 0 14px
                }

            html[data-cc-page="group-index"] .footer-core > .container {
                padding-top: 50px
            }

            html[data-cc-page="group-index"] .footer-primary-contact a {
                font-size: 18px
            }

            html[data-cc-page="group-index"] .footer-navigation {
                grid-template-columns: 1fr 1fr;
                gap: 38px 24px;
                padding: 42px 0 48px
            }

            html[data-cc-page="group-index"] .footer-community {
                grid-column: 1/3
            }

            html[data-cc-page="group-index"] .footer-bottom {
                display: block
            }

                html[data-cc-page="group-index"] .footer-bottom nav {
                    margin-top: 13px;
                    gap: 13px
                }
        }



        /* =====================================================
           V11 MOBILE BOOKING - FIXED BOOK NOW + BOTTOM SHEET
           ===================================================== */
        html[data-cc-page="group-index"] .mobile-booking-modal {
            display: none
        }

        @media(max-width:767px) {
            html[data-cc-page="group-index"] body {
                padding-bottom: calc(66px + env(safe-area-inset-bottom,0px)) !important
            }

            html[data-cc-page="group-index"] .hero {
                height: 100svh !important;
                min-height: 660px !important
            }

            html[data-cc-page="group-index"] .hero-content {
                padding-bottom: 112px !important
            }

            html[data-cc-page="group-index"] .hero-control {
                bottom: 84px !important
            }

            /* The full booking dock is desktop/tablet only on phone screens. */
            html[data-cc-page="group-index"] .booking-shell {
                display: none !important
            }

            /* Persistent mobile reservation CTA. */
            html[data-cc-page="group-index"] .mobile-book {
                display: flex !important;
                position: fixed !important;
                left: 12px !important;
                right: 12px !important;
                bottom: calc(10px + env(safe-area-inset-bottom,0px)) !important;
                width: auto !important;
                height: 56px !important;
                z-index: 990 !important;
                border: 0 !important;
                border-radius: 2px !important;
                background: var(--pink) !important;
                color: #fff !important;
                align-items: center !important;
                justify-content: center !important;
                gap: 11px !important;
                box-shadow: 0 14px 34px rgba(45,0,27,.28) !important;
                font-size: 11px !important;
                font-weight: 700 !important;
                letter-spacing: .15em !important;
                text-transform: uppercase !important;
            }

                html[data-cc-page="group-index"] .mobile-book::after {
                    content: "\f061";
                    font-family: "Font Awesome 6 Free";
                    font-weight: 900;
                    font-size: 11px
                }

                html[data-cc-page="group-index"] .mobile-book:hover, html[data-cc-page="group-index"] .mobile-book:focus-visible {
                    transform: translateY(-2px);
                    filter: brightness(1.06)
                }

            html[data-cc-page="group-index"] .scrolltop {
                bottom: calc(82px + env(safe-area-inset-bottom,0px)) !important
            }

            html[data-cc-page="group-index"] .mobile-booking-modal {
                position: fixed;
                inset: 0;
                z-index: 1100;
                display: block;
                visibility: hidden;
                opacity: 0;
                pointer-events: none;
                transition: opacity .28s ease,visibility .28s ease;
            }

                html[data-cc-page="group-index"] .mobile-booking-modal.open {
                    visibility: visible;
                    opacity: 1;
                    pointer-events: auto
                }

            html[data-cc-page="group-index"] .mobile-booking-backdrop {
                position: absolute;
                inset: 0;
                border: 0;
                background: rgba(8,5,7,.58);
                backdrop-filter: blur(3px);
                -webkit-backdrop-filter: blur(3px)
            }

            html[data-cc-page="group-index"] .mobile-booking-sheet {
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                max-height: min(91svh,820px);
                overflow: auto;
                overscroll-behavior: contain;
                background: #fff;
                box-shadow: 0 -24px 60px rgba(0,0,0,.23);
                transform: translateY(102%);
                transition: transform .42s cubic-bezier(.22,1,.36,1);
                padding-bottom: calc(18px + env(safe-area-inset-bottom,0px));
            }

            html[data-cc-page="group-index"] .mobile-booking-modal.open .mobile-booking-sheet {
                transform: none
            }

            html[data-cc-page="group-index"] .mobile-booking-head {
                position: sticky;
                top: 0;
                z-index: 8;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 20px;
                padding: 20px 20px 17px;
                background: rgba(255,255,255,.97);
                border-bottom: 1px solid #ece8ea;
                backdrop-filter: blur(12px);
                -webkit-backdrop-filter: blur(12px)
            }

                html[data-cc-page="group-index"] .mobile-booking-head span {
                    display: block;
                    margin-bottom: 4px;
                    color: var(--pink);
                    font-size: 8px;
                    font-weight: 700;
                    letter-spacing: .18em;
                    text-transform: uppercase
                }

                html[data-cc-page="group-index"] .mobile-booking-head h3 {
                    font-family: var(--display);
                    font-size: 31px;
                    line-height: 1;
                    font-weight: 400;
                    letter-spacing: -.025em;
                    color: #171317
                }

            html[data-cc-page="group-index"] .mobile-booking-close {
                flex: 0 0 auto;
                width: 42px;
                height: 42px;
                border: 1px solid #e7e1e4;
                border-radius: 50%;
                background: #fff;
                color: #211b1f;
                font-size: 15px
            }

            html[data-cc-page="group-index"] .mobile-booking-body {
                padding: 18px 16px 4px
            }

            html[data-cc-page="group-index"] .mobile-booking-modal .booking-card, html[data-cc-page="group-index"] .mobile-booking-modal .booking-card.reveal {
                opacity: 1 !important;
                visibility: visible !important;
                transform: none !important;
                filter: none !important;
                box-shadow: none !important;
                padding: 0 !important;
                border-radius: 0 !important;
                background: #fff !important;
            }

            html[data-cc-page="group-index"] .mobile-booking-modal .booking-form {
                display: grid !important;
                grid-template-columns: 1fr 1fr !important;
                gap: 12px !important;
                align-items: end !important
            }

                html[data-cc-page="group-index"] .mobile-booking-modal .booking-form > .field {
                    grid-column: auto !important
                }

                    html[data-cc-page="group-index"] .mobile-booking-modal .booking-form > .field:nth-of-type(1), html[data-cc-page="group-index"] .mobile-booking-modal .booking-form > .field:nth-of-type(4), html[data-cc-page="group-index"] .mobile-booking-modal .booking-form > .field:nth-of-type(5) {
                        grid-column: 1/-1 !important
                    }

            html[data-cc-page="group-index"] .mobile-booking-modal .booking-submit {
                grid-column: 1/-1 !important;
                width: 100% !important;
                height: 54px !important;
                margin-top: 2px !important;
                font-size: 10px !important
            }

            html[data-cc-page="group-index"] .mobile-booking-modal .field label {
                font-size: 8px !important;
                margin-bottom: 6px !important
            }

            html[data-cc-page="group-index"] .mobile-booking-modal .control, html[data-cc-page="group-index"] .mobile-booking-modal .guest-trigger {
                height: 50px !important
            }

                html[data-cc-page="group-index"] .mobile-booking-modal .control input, html[data-cc-page="group-index"] .mobile-booking-modal .control select, html[data-cc-page="group-index"] .mobile-booking-modal .guest-trigger {
                    font-size: 11px !important
                }

            /* Rooms & Guests opens above the booking sheet and stays usable. */
            html[data-cc-page="group-index"] .mobile-booking-modal .guest-popover {
                position: fixed !important;
                left: 12px !important;
                right: 12px !important;
                top: auto !important;
                bottom: calc(12px + env(safe-area-inset-bottom,0px)) !important;
                width: auto !important;
                max-width: none !important;
                max-height: 78svh !important;
                overflow: auto !important;
                z-index: 1160 !important;
                padding: 18px !important;
                border-radius: 2px !important;
                box-shadow: 0 24px 65px rgba(0,0,0,.27) !important;
            }

                html[data-cc-page="group-index"] .mobile-booking-modal .guest-popover::before {
                    display: none !important
                }

            html[data-cc-page="group-index"] .mobile-booking-modal .rooms-container {
                max-height: 50svh !important
            }

            html[data-cc-page="group-index"] body.booking-modal-open {
                overflow: hidden !important
            }

                html[data-cc-page="group-index"] body.booking-modal-open .mobile-book {
                    opacity: 0;
                    pointer-events: none;
                    transform: translateY(12px)
                }
        }

        @media(max-width:420px) {
            html[data-cc-page="group-index"] .mobile-booking-body {
                padding-left: 13px;
                padding-right: 13px
            }

            html[data-cc-page="group-index"] .mobile-booking-head {
                padding-left: 16px;
                padding-right: 16px
            }

                html[data-cc-page="group-index"] .mobile-booking-head h3 {
                    font-size: 28px
                }

            html[data-cc-page="group-index"] .mobile-booking-modal .booking-form {
                gap: 10px !important
            }

            html[data-cc-page="group-index"] .mobile-booking-modal .control input, html[data-cc-page="group-index"] .mobile-booking-modal .control select {
                padding-left: 34px !important;
                padding-right: 31px !important
            }

            html[data-cc-page="group-index"] .mobile-booking-modal .guest-trigger {
                padding-left: 34px !important;
                padding-right: 31px !important
            }
        }

        /* =====================================================
                   V12 REVIEW FIXES
                   1) Booking fully visible above the fold on desktop/tablet
                   2) Hero white CTA keeps readable text through refill hover
                   3) Offers use a deliberate black curtain reveal, not clip refresh
                   ===================================================== */

        /* 1. BOOKING - fully visible inside the first viewport */
        @media(min-width:1101px) {
            html[data-cc-page="group-index"] .hero-content {
                padding-bottom: 220px !important;
            }

            html[data-cc-page="group-index"] .hero-control {
                bottom: 192px !important;
            }

            html[data-cc-page="group-index"] .booking-shell {
                position: relative !important;
                top: auto !important;
                margin-top: -188px !important;
                margin-bottom: 58px !important;
                z-index: 32 !important;
            }
        }

        @media(min-width:821px) and (max-width:1100px) {
            html[data-cc-page="group-index"] .hero-content {
                padding-bottom: 270px !important;
            }

            html[data-cc-page="group-index"] .hero-control {
                bottom: 224px !important;
            }

            html[data-cc-page="group-index"] .booking-shell {
                position: relative !important;
                top: auto !important;
                margin-top: -226px !important;
                margin-bottom: 54px !important;
                z-index: 32 !important;
            }
        }

        @media(min-width:768px) and (max-width:820px) {
            html[data-cc-page="group-index"] .hero-content {
                padding-bottom: 315px !important;
            }

            html[data-cc-page="group-index"] .hero-control {
                bottom: 272px !important;
            }

            html[data-cc-page="group-index"] .booking-shell {
                display: block !important;
                position: relative !important;
                top: auto !important;
                margin-top: -280px !important;
                margin-bottom: 48px !important;
                z-index: 32 !important;
            }
        }

        /* 2. HERO CTA - robust refill with readable text from start to finish */
        html[data-cc-page="group-index"] .hero-actions .btn-white {
            position: relative;
            overflow: hidden;
            background-color: #fff !important;
            background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
            background-repeat: no-repeat !important;
            background-position: left center !important;
            background-size: 0 100% !important;
            color: #111 !important;
            border-color: #fff !important;
            transition: background-size .46s cubic-bezier(.22,1,.36,1), color .22s ease, border-color .22s ease, transform .28s cubic-bezier(.22,1,.36,1), filter .28s ease, box-shadow .28s ease !important;
        }

            html[data-cc-page="group-index"] .hero-actions .btn-white:hover, html[data-cc-page="group-index"] .hero-actions .btn-white:focus-visible {
                background-color: #fff !important;
                background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                background-repeat: no-repeat !important;
                background-position: left center !important;
                background-size: 100% 100% !important;
                color: #fff !important;
                border-color: var(--pink) !important;
                transform: translateY(-3px);
                filter: brightness(1.06);
                box-shadow: 0 12px 28px rgba(0,0,0,.18);
            }

            html[data-cc-page="group-index"] .hero-actions .btn-white i {
                color: currentColor !important;
            }

        /* 3. OFFERS - clear cinematic black curtain reveal */
        html[data-cc-page="group-index"] .offer-tile.reveal, html[data-cc-page="group-index"] .offer-tile.reveal-left, html[data-cc-page="group-index"] .offer-tile.reveal-right {
            opacity: 1 !important;
            transform: none !important;
            filter: none !important;
            visibility: visible !important;
            background: #080808 !important;
        }

        html[data-cc-page="group-index"] .offer-tile img {
            clip-path: none !important;
            opacity: 1 !important;
            transform: scale(1.085) !important;
            transition: transform 1.65s cubic-bezier(.22,1,.36,1) !important;
            will-change: transform;
        }

        html[data-cc-page="group-index"] .offer-tile.in-view img {
            clip-path: none !important;
            transform: scale(1) !important;
        }

        html[data-cc-page="group-index"] .offer-tile::before {
            content: "" !important;
            display: block !important;
            position: absolute !important;
            inset: 0 !important;
            z-index: 3 !important;
            background: #080808 !important;
            transform: scaleX(1) !important;
            transform-origin: right center !important;
            transition: transform 1.38s cubic-bezier(.77,0,.18,1) .10s !important;
            pointer-events: none !important;
            will-change: transform;
        }

        html[data-cc-page="group-index"] .offer-tile:nth-child(even)::before, html[data-cc-page="group-index"] .offer-strip .offer-tile:nth-child(even)::before {
            transform-origin: left center !important;
        }

        html[data-cc-page="group-index"] .offer-tile.in-view::before {
            transform: scaleX(0) !important;
        }

        /* Keep the content hidden for a fraction of a second while the curtain starts moving,
                   then bring it in deliberately instead of flashing with the image. */
        html[data-cc-page="group-index"] .offer-tile .offer-content, html[data-cc-page="group-index"] .offer-tile .offer-arrow {
            opacity: 0;
            transform: translateY(12px);
            transition: opacity .55s ease .62s,transform .65s cubic-bezier(.22,1,.36,1) .62s !important;
            z-index: 5 !important;
        }

        html[data-cc-page="group-index"] .offer-tile .offer-arrow {
            transform: translateY(-8px);
        }

        html[data-cc-page="group-index"] .offer-tile.in-view .offer-content, html[data-cc-page="group-index"] .offer-tile.in-view .offer-arrow {
            opacity: 1;
            transform: none;
        }

        html[data-cc-page="group-index"] .offer-tile::after {
            z-index: 4 !important;
        }

        html[data-cc-page="group-index"] .offer-tile:hover img {
            transform: scale(1.035) !important;
        }

        @media(prefers-reduced-motion:reduce) {
            html[data-cc-page="group-index"] .offer-tile::before {
                transform: scaleX(0) !important;
                transition: none !important;
            }

            html[data-cc-page="group-index"] .offer-tile img, html[data-cc-page="group-index"] .offer-tile .offer-content, html[data-cc-page="group-index"] .offer-tile .offer-arrow {
                opacity: 1 !important;
                transform: none !important;
                transition: none !important;
            }
        }


        /* =====================================================
                   V13 HERO SAFE AREA + FROSTED BOOKING DOCK
                   1) Compact hero typography keeps copy clear of header/logo
                   2) Booking becomes a light glass panel so the hero remains visible
                   ===================================================== */

        /* HERO COPY - keep a deliberate safe area below the header without
                   pushing the CTA into the booking dock. Wider copy means long hero
                   headlines use fewer lines and sit naturally lower in the image. */
        @media(min-width:1101px) {
            html[data-cc-page="group-index"] .hero-copy {
                max-width: 880px !important;
            }

            html[data-cc-page="group-index"] .hero-title {
                max-width: 860px !important;
                font-size: clamp(64px,4.8vw,82px) !important;
                line-height: .94 !important;
                letter-spacing: -.038em !important;
            }

            html[data-cc-page="group-index"] .hero-kicker {
                margin-bottom: 14px !important;
            }

            html[data-cc-page="group-index"] .hero-subtitle {
                max-width: 540px !important;
                margin-top: 16px !important;
            }

            html[data-cc-page="group-index"] .hero-actions {
                margin-top: 23px !important;
            }
        }

        @media(min-width:821px) and (max-width:1100px) {
            html[data-cc-page="group-index"] .hero-copy {
                max-width: 720px !important;
            }

            html[data-cc-page="group-index"] .hero-title {
                max-width: 710px !important;
                font-size: clamp(56px,6.2vw,68px) !important;
                line-height: .95 !important;
            }
        }

        @media(min-width:768px) and (max-width:820px) {
            html[data-cc-page="group-index"] .hero-copy {
                max-width: 620px !important;
            }

            html[data-cc-page="group-index"] .hero-title {
                max-width: 610px !important;
                font-size: 54px !important;
                line-height: .96 !important;
            }
        }

        /* BOOKING - light frosted glass instead of a solid white slab. */
        @media(min-width:768px) {
            html[data-cc-page="group-index"] .booking-card {
                background: rgba(255,255,255,.76) !important;
                border: 1px solid rgba(255,255,255,.72) !important;
                box-shadow: 0 20px 52px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.62) !important;
                backdrop-filter: blur(18px) saturate(128%) !important;
                -webkit-backdrop-filter: blur(18px) saturate(128%) !important;
            }

                html[data-cc-page="group-index"] .booking-card::before {
                    content: "";
                    position: absolute;
                    inset: 0;
                    border: 1px solid rgba(255,255,255,.34);
                    pointer-events: none;
                }

                html[data-cc-page="group-index"] .booking-card .field label {
                    color: rgba(35,27,31,.66) !important;
                }

                html[data-cc-page="group-index"] .booking-card .control, html[data-cc-page="group-index"] .booking-card .guest-trigger {
                    background: rgba(255,255,255,.62) !important;
                    border-color: rgba(58,45,51,.16) !important;
                    box-shadow: inset 0 1px 0 rgba(255,255,255,.58) !important;
                }

                    html[data-cc-page="group-index"] .booking-card .control:focus-within, html[data-cc-page="group-index"] .booking-card .control.is-open, html[data-cc-page="group-index"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.90) !important;
                        border-color: rgba(169,0,97,.52) !important;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.08), inset 0 1px 0 rgba(255,255,255,.72) !important;
                    }

                    html[data-cc-page="group-index"] .booking-card .control input, html[data-cc-page="group-index"] .booking-card .control select, html[data-cc-page="group-index"] .booking-card .guest-trigger {
                        color: #272126 !important;
                    }

                        html[data-cc-page="group-index"] .booking-card .control input::placeholder {
                            color: rgba(39,33,38,.55) !important;
                        }
        }



        /* =====================================================
                   V14 CLEAR BOOKING PANEL + TRUE PINK REFILL
                   - No blur / no haze: hero image remains clearly visible
                   - Pink CTAs keep their refill animation on hover
                   ===================================================== */

        /* Booking panel: lower white opacity with ZERO blur/haze. */
        @media(min-width:768px) {
            html[data-cc-page="group-index"] .booking-card {
                background: rgba(255,255,255,.46) !important;
                border: 1px solid rgba(255,255,255,.64) !important;
                box-shadow: 0 18px 44px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.36) !important;
                backdrop-filter: none !important;
                -webkit-backdrop-filter: none !important;
            }

                html[data-cc-page="group-index"] .booking-card::before {
                    border-color: rgba(255,255,255,.24) !important;
                }

                html[data-cc-page="group-index"] .booking-card .field label {
                    color: rgba(29,23,27,.72) !important;
                }

                html[data-cc-page="group-index"] .booking-card .control, html[data-cc-page="group-index"] .booking-card .guest-trigger {
                    background: rgba(255,255,255,.72) !important;
                    border-color: rgba(49,39,44,.18) !important;
                    box-shadow: none !important;
                }

                    html[data-cc-page="group-index"] .booking-card .control:focus-within, html[data-cc-page="group-index"] .booking-card .control.is-open, html[data-cc-page="group-index"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.90) !important;
                        border-color: rgba(169,0,97,.58) !important;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.08) !important;
                    }
        }

        /* True refill for buttons that start pink. The explicit hover
                   background-image prevents older background shorthands from
                   cancelling the animation. */
        html[data-cc-page="group-index"] .btn-pink, html[data-cc-page="group-index"] .booking-submit {
            position: relative;
            overflow: hidden;
            background-color: var(--pink) !important;
            background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
            background-repeat: no-repeat !important;
            background-position: left top !important;
            background-size: 0 100% !important;
            color: #fff !important;
            transition: background-size .46s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease,border-color .28s ease !important;
        }

            html[data-cc-page="group-index"] .btn-pink:hover, html[data-cc-page="group-index"] .btn-pink:focus-visible, html[data-cc-page="group-index"] .booking-submit:hover, html[data-cc-page="group-index"] .booking-submit:focus-visible {
                background-color: var(--pink) !important;
                background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                background-size: 100% 100% !important;
                color: #fff !important;
                transform: translateY(-3px) !important;
                filter: brightness(1.08) !important;
                box-shadow: 0 12px 28px rgba(91,0,52,.22) !important;
            }

        /* Mobile persistent Book Now gets the same refill behavior. */
        @media(max-width:767px) {
            html[data-cc-page="group-index"] .mobile-book {
                background-color: var(--pink) !important;
                background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                background-repeat: no-repeat !important;
                background-position: left top !important;
                background-size: 0 100% !important;
                transition: background-size .46s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease !important;
            }

                html[data-cc-page="group-index"] .mobile-book:hover, html[data-cc-page="group-index"] .mobile-book:focus-visible {
                    background-color: var(--pink) !important;
                    background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                }
        }



        /* =====================================================
                   V15 NEWSLETTER FIELD + BORDERLESS BOOKING + SPACING
                   - Newsletter uses a calm tinted field instead of an underline-only input
                   - Booking card/controls are borderless while keeping the clear hero image visible
                   - Booking dock sits slightly lower with more breathing room from hero navigation
                   ===================================================== */

        /* 1) NEWSLETTER - soft brand-tinted field, no underline treatment */
        html[data-cc-page="group-index"] .newsletter-form-clean {
            display: grid !important;
            grid-template-columns: minmax(0,1fr) auto !important;
            gap: 10px !important;
            align-items: stretch !important;
            min-height: 58px !important;
            border: 0 !important;
            background: transparent !important;
        }

            html[data-cc-page="group-index"] .newsletter-form-clean input {
                width: 100% !important;
                min-width: 0 !important;
                height: 58px !important;
                padding: 0 20px !important;
                border: 0 !important;
                outline: 0 !important;
                background: #f3eff1 !important;
                color: #211d20 !important;
                box-shadow: inset 0 0 0 1px rgba(73,55,65,.05) !important;
                transition: background .25s ease,box-shadow .25s ease !important;
            }

                html[data-cc-page="group-index"] .newsletter-form-clean input::placeholder {
                    color: #8f858b !important;
                }

                html[data-cc-page="group-index"] .newsletter-form-clean input:focus {
                    background: #eee7eb !important;
                    box-shadow: inset 0 0 0 1px rgba(169,0,97,.22) !important;
                }

            html[data-cc-page="group-index"] .newsletter-form-clean button {
                min-width: 154px !important;
                height: 58px !important;
                border: 0 !important;
                background-color: #171717 !important;
                background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                background-repeat: no-repeat !important;
                background-position: left top !important;
                background-size: 0 100% !important;
                color: #fff !important;
                transition: background-size .44s cubic-bezier(.22,1,.36,1),transform .28s ease,filter .28s ease,box-shadow .28s ease !important;
            }

                html[data-cc-page="group-index"] .newsletter-form-clean button:hover, html[data-cc-page="group-index"] .newsletter-form-clean button:focus-visible {
                    background-color: #171717 !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                    transform: translateY(-2px) !important;
                    filter: brightness(1.05) !important;
                    box-shadow: 0 10px 24px rgba(0,0,0,.12) !important;
                }

        /* 2) BOOKING - keep the approved transparent background, remove visible borders */
        @media(min-width:768px) {
            html[data-cc-page="group-index"] .booking-card {
                background: rgba(255,255,255,.46) !important;
                border: 0 !important;
                box-shadow: 0 18px 44px rgba(0,0,0,.13) !important;
            }

                html[data-cc-page="group-index"] .booking-card::before {
                    display: none !important;
                    content: none !important;
                }

                html[data-cc-page="group-index"] .booking-card .control, html[data-cc-page="group-index"] .booking-card .guest-trigger {
                    background: rgba(255,255,255,.76) !important;
                    border: 0 !important;
                    box-shadow: 0 1px 0 rgba(255,255,255,.56),0 5px 16px rgba(24,14,20,.045) !important;
                }

                    html[data-cc-page="group-index"] .booking-card .control:focus-within, html[data-cc-page="group-index"] .booking-card .control.is-open, html[data-cc-page="group-index"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.93) !important;
                        border: 0 !important;
                        box-shadow: 0 0 0 2px rgba(169,0,97,.20),0 6px 18px rgba(24,14,20,.06) !important;
                    }
        }

        /* 3) BOOKING POSITION - slightly lower, arrows slightly higher for clear separation */
        @media(min-width:1101px) {
            html[data-cc-page="group-index"] .hero-control {
                bottom: 204px !important;
            }

            html[data-cc-page="group-index"] .booking-shell {
                margin-top: -172px !important;
                margin-bottom: 58px !important;
            }
        }

        @media(min-width:821px) and (max-width:1100px) {
            html[data-cc-page="group-index"] .hero-control {
                bottom: 236px !important;
            }

            html[data-cc-page="group-index"] .booking-shell {
                margin-top: -210px !important;
                margin-bottom: 54px !important;
            }
        }

        @media(min-width:768px) and (max-width:820px) {
            html[data-cc-page="group-index"] .hero-control {
                bottom: 285px !important;
            }

            html[data-cc-page="group-index"] .booking-shell {
                margin-top: -265px !important;
                margin-bottom: 48px !important;
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="group-index"] .newsletter-form-clean {
                grid-template-columns: 1fr !important;
                gap: 9px !important;
            }

                html[data-cc-page="group-index"] .newsletter-form-clean input, html[data-cc-page="group-index"] .newsletter-form-clean button {
                    width: 100% !important;
                    height: 54px !important;
                }
        }


        /* =====================================================
                   V16 SECOND NEWSLETTER CONCEPT - CENTERED / STACKED
                   Added below the current newsletter for direct visual comparison.
                   ===================================================== */
        html[data-cc-page="group-index"] .footer-newsletter-centered {
            background: #f7f5f4;
            color: #1c191b;
            border-top: 1px solid #ebe6e8;
            border-bottom: 1px solid #ebe6e8;
        }

        html[data-cc-page="group-index"] .footer-newsletter-centered-inner {
            width: min(760px,calc(100% - 40px));
            margin-inline: auto;
            padding: 76px 0 82px;
            text-align: center;
        }

        html[data-cc-page="group-index"] .footer-newsletter-centered .eyebrow {
            color: var(--pink);
            margin-bottom: 16px;
        }

        html[data-cc-page="group-index"] .footer-newsletter-centered h2 {
            font-family: var(--display);
            font-size: clamp(42px,4.6vw,66px);
            line-height: 1.02;
            font-weight: 400;
            letter-spacing: -.035em;
            max-width: 720px;
            margin-inline: auto;
        }

        html[data-cc-page="group-index"] .footer-newsletter-centered p {
            max-width: 560px;
            margin: 20px auto 30px;
            font-size: 13px;
            line-height: 1.8;
            color: #6f686c;
        }

        html[data-cc-page="group-index"] .newsletter-form-centered {
            width: min(620px,100%);
            margin-inline: auto;
            display: grid;
            grid-template-columns: minmax(0,1fr) auto;
            gap: 10px;
            align-items: stretch;
        }

            html[data-cc-page="group-index"] .newsletter-form-centered input {
                width: 100%;
                min-width: 0;
                height: 58px;
                border: 1px solid #d8d1d4;
                background: #fff;
                color: #211d20;
                outline: 0;
                padding: 0 20px;
                font-size: 13px;
                transition: border-color .25s ease,box-shadow .25s ease,background .25s ease;
            }

                html[data-cc-page="group-index"] .newsletter-form-centered input::placeholder {
                    color: #968d92;
                }

                html[data-cc-page="group-index"] .newsletter-form-centered input:focus {
                    border-color: rgba(169,0,97,.46);
                    box-shadow: 0 0 0 3px rgba(169,0,97,.07);
                }

            html[data-cc-page="group-index"] .newsletter-form-centered button {
                min-width: 154px;
                height: 58px;
                border: 0;
                background-color: var(--pink);
                background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                background-repeat: no-repeat;
                background-position: left top;
                background-size: 0 100%;
                color: #fff;
                padding: 0 24px;
                font-size: 9px;
                font-weight: 600;
                letter-spacing: .14em;
                text-transform: uppercase;
                transition: background-size .44s cubic-bezier(.22,1,.36,1),transform .28s ease,filter .28s ease,box-shadow .28s ease;
            }

                html[data-cc-page="group-index"] .newsletter-form-centered button:hover, html[data-cc-page="group-index"] .newsletter-form-centered button:focus-visible {
                    background-size: 100% 100%;
                    transform: translateY(-2px);
                    filter: brightness(1.06);
                    box-shadow: 0 10px 24px rgba(91,0,52,.18);
                }

        html[data-cc-page="group-index"] .footer-newsletter-centered small {
            display: block;
            margin-top: 12px;
            font-size: 9px;
            color: #9a9296;
        }

        @media(max-width:560px) {
            html[data-cc-page="group-index"] .footer-newsletter-centered-inner {
                width: calc(100% - 30px);
                padding: 58px 0 62px;
            }

            html[data-cc-page="group-index"] .footer-newsletter-centered h2 {
                font-size: 40px;
            }

            html[data-cc-page="group-index"] .newsletter-form-centered {
                grid-template-columns: 1fr;
                gap: 9px;
            }

                html[data-cc-page="group-index"] .newsletter-form-centered input, html[data-cc-page="group-index"] .newsletter-form-centered button {
                    width: 100%;
                    height: 54px;
                }
        }



        /* =====================================================
                   V17 PINK DATE PICKER + CUSTOM RESORT SELECT + REFERENCE FOOTER
                   ===================================================== */

        /* Flatpickr - replace browser/library blue with Charmillion pink. */
        html[data-cc-page="group-index"] .flatpickr-calendar {
            font-family: var(--body) !important;
            border: 0 !important;
            border-radius: 2px !important;
            box-shadow: 0 18px 50px rgba(24,16,20,.18) !important;
            overflow: hidden;
        }

        html[data-cc-page="group-index"] .flatpickr-months {
            padding: 7px 5px 3px;
            background: #fff;
        }

            html[data-cc-page="group-index"] .flatpickr-months .flatpickr-month, html[data-cc-page="group-index"] .flatpickr-current-month .flatpickr-monthDropdown-months, html[data-cc-page="group-index"] .flatpickr-current-month input.cur-year {
                color: #211b1f !important;
                fill: #211b1f !important;
                font-weight: 600 !important;
            }

            html[data-cc-page="group-index"] .flatpickr-months .flatpickr-prev-month svg, html[data-cc-page="group-index"] .flatpickr-months .flatpickr-next-month svg {
                fill: #60575c !important;
            }

            html[data-cc-page="group-index"] .flatpickr-months .flatpickr-prev-month:hover svg, html[data-cc-page="group-index"] .flatpickr-months .flatpickr-next-month:hover svg {
                fill: var(--pink) !important;
            }

        html[data-cc-page="group-index"] span.flatpickr-weekday {
            color: #83777e !important;
            font-size: 10px !important;
            font-weight: 600 !important;
        }

        html[data-cc-page="group-index"] .flatpickr-day {
            border-radius: 50% !important;
            color: #2a2428 !important;
            transition: background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease !important;
        }

            html[data-cc-page="group-index"] .flatpickr-day:hover, html[data-cc-page="group-index"] .flatpickr-day:focus {
                background: rgba(169,0,97,.10) !important;
                border-color: rgba(169,0,97,.10) !important;
                color: var(--pink) !important;
                transform: translateY(-1px);
            }

            html[data-cc-page="group-index"] .flatpickr-day.today {
                border-color: var(--pink) !important;
                color: var(--pink) !important;
                font-weight: 700 !important;
            }

                html[data-cc-page="group-index"] .flatpickr-day.today:hover, html[data-cc-page="group-index"] .flatpickr-day.today:focus {
                    background: var(--pink) !important;
                    border-color: var(--pink) !important;
                    color: #fff !important;
                }

            html[data-cc-page="group-index"] .flatpickr-day.selected, html[data-cc-page="group-index"] .flatpickr-day.startRange, html[data-cc-page="group-index"] .flatpickr-day.endRange, html[data-cc-page="group-index"] .flatpickr-day.selected:hover, html[data-cc-page="group-index"] .flatpickr-day.startRange:hover, html[data-cc-page="group-index"] .flatpickr-day.endRange:hover, html[data-cc-page="group-index"] .flatpickr-day.selected:focus, html[data-cc-page="group-index"] .flatpickr-day.startRange:focus, html[data-cc-page="group-index"] .flatpickr-day.endRange:focus {
                background: var(--pink) !important;
                border-color: var(--pink) !important;
                color: #fff !important;
                box-shadow: none !important;
            }

            html[data-cc-page="group-index"] .flatpickr-day.inRange, html[data-cc-page="group-index"] .flatpickr-day.prevMonthDay.inRange, html[data-cc-page="group-index"] .flatpickr-day.nextMonthDay.inRange {
                background: rgba(169,0,97,.08) !important;
                border-color: transparent !important;
                box-shadow: -5px 0 0 rgba(169,0,97,.08),5px 0 0 rgba(169,0,97,.08) !important;
            }

        /* Resort selector - custom UI so selected/hover state is always brand pink. */
        html[data-cc-page="group-index"] .resort-select-field {
            z-index: 145;
        }

        html[data-cc-page="group-index"] .custom-resort-control {
            overflow: visible !important;
        }

        html[data-cc-page="group-index"] .resort-select-trigger {
            width: 100%;
            height: 100%;
            border: 0;
            outline: 0;
            background: transparent;
            color: #272126;
            text-align: left;
            padding: 0 39px 0 39px;
            font-size: 12px;
            cursor: pointer;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        html[data-cc-page="group-index"] .custom-resort-control.open {
            background: rgba(255,255,255,.90) !important;
            box-shadow: 0 0 0 3px rgba(169,0,97,.08) !important;
        }

            html[data-cc-page="group-index"] .custom-resort-control.open .down {
                color: var(--pink) !important;
                transform: translateY(-50%) rotate(180deg);
            }

        html[data-cc-page="group-index"] .resort-select-menu {
            position: absolute;
            left: 0;
            top: calc(100% + 10px);
            width: max(310px,100%);
            padding: 8px;
            background: #fff;
            box-shadow: 0 20px 52px rgba(28,18,23,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .2s ease;
            z-index: 300;
        }

            html[data-cc-page="group-index"] .resort-select-menu.open {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
                transform: none;
            }

            html[data-cc-page="group-index"] .resort-select-menu button {
                width: 100%;
                display: grid;
                gap: 3px;
                padding: 12px 13px;
                border: 0;
                border-bottom: 1px solid #eee9ec;
                background: #fff;
                color: #272126;
                text-align: left;
                transition: background .2s ease,color .2s ease,padding-left .2s ease;
            }

                html[data-cc-page="group-index"] .resort-select-menu button:last-child {
                    border-bottom: 0;
                }

                html[data-cc-page="group-index"] .resort-select-menu button span {
                    font-size: 11px;
                    font-weight: 600;
                }

                html[data-cc-page="group-index"] .resort-select-menu button small {
                    font-size: 8px;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    color: #91858c;
                }

                html[data-cc-page="group-index"] .resort-select-menu button:hover, html[data-cc-page="group-index"] .resort-select-menu button:focus-visible, html[data-cc-page="group-index"] .resort-select-menu button.selected {
                    background: rgba(169,0,97,.075);
                    color: var(--pink);
                    padding-left: 18px;
                    outline: 0;
                }

                    html[data-cc-page="group-index"] .resort-select-menu button.selected::after {
                        content: "\f00c";
                        font-family: "Font Awesome 6 Free";
                        font-weight: 900;
                        position: absolute;
                        right: 18px;
                        top: 50%;
                        transform: translateY(-50%);
                        color: var(--pink);
                    }

            html[data-cc-page="group-index"] .resort-select-menu button {
                position: relative;
            }

        /* One footer only - reference-inspired, more polished than the screenshot. */
        html[data-cc-page="group-index"] .footer-reference {
            background: #121214 !important;
            color: #fff;
            padding: 0 !important;
            position: relative;
            overflow: hidden;
        }

            html[data-cc-page="group-index"] .footer-reference::before {
                content: "" !important;
                display: block !important;
                position: absolute;
                left: -180px;
                bottom: -220px;
                width: 620px;
                height: 620px;
                background: radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
                pointer-events: none;
            }

            html[data-cc-page="group-index"] .footer-reference::after {
                display: none !important;
            }

        html[data-cc-page="group-index"] .footer-reference-main {
            position: relative;
            z-index: 2;
            display: grid;
            grid-template-columns: 1.05fr .72fr .95fr 1.55fr;
            gap: clamp(38px,4.8vw,78px);
            padding-top: 72px;
            padding-bottom: 70px;
        }

        html[data-cc-page="group-index"] .footer-reference-logo {
            display: inline-block;
        }

            html[data-cc-page="group-index"] .footer-reference-logo img {
                width: 190px;
                height: auto;
            }

        html[data-cc-page="group-index"] .footer-reference-brand > p {
            margin-top: 28px;
            max-width: 310px;
            font-size: 14px;
            line-height: 1.95;
            color: rgba(255,255,255,.72);
        }

        html[data-cc-page="group-index"] .footer-destination-line {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 20px;
            font-size: 8px;
            font-weight: 700;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: rgba(255,255,255,.82);
        }

            html[data-cc-page="group-index"] .footer-destination-line b {
                width: 3px;
                height: 3px;
                border-radius: 50%;
                background: var(--pink);
            }

        html[data-cc-page="group-index"] .footer-follow-label {
            margin-top: 32px;
            font-size: 8px;
            font-weight: 700;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.48);
        }

        html[data-cc-page="group-index"] .footer-reference-socials {
            display: flex;
            gap: 9px;
            margin-top: 14px;
        }

            html[data-cc-page="group-index"] .footer-reference-socials a {
                width: 39px;
                height: 39px;
                display: flex;
                align-items: center;
                justify-content: center;
                border-radius: 50%;
                border: 1px solid rgba(255,255,255,.17);
                color: #fff;
                font-size: 12px;
                transition: background .28s ease,border-color .28s ease,transform .28s ease;
            }

                html[data-cc-page="group-index"] .footer-reference-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    transform: translateY(-3px);
                }

        html[data-cc-page="group-index"] .footer-reference h4 {
            margin: 0 0 24px !important;
            font-size: 10px !important;
            font-weight: 700 !important;
            letter-spacing: .2em !important;
            text-transform: uppercase !important;
            color: #fff !important;
        }

        html[data-cc-page="group-index"] .footer-reference-column nav {
            display: grid;
            gap: 16px;
        }

            html[data-cc-page="group-index"] .footer-reference-column nav a {
                width: fit-content;
                font-size: 13px;
                line-height: 1.45;
                color: rgba(255,255,255,.72);
                transition: color .22s ease,transform .22s ease;
            }

                html[data-cc-page="group-index"] .footer-reference-column nav a:hover {
                    color: #fff;
                    transform: translateX(4px);
                }

        html[data-cc-page="group-index"] .footer-contact-cards {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 10px;
        }

        html[data-cc-page="group-index"] .footer-contact-card {
            min-width: 0;
            min-height: 76px;
            padding: 14px;
            display: grid;
            grid-template-columns: 38px minmax(0,1fr);
            gap: 12px;
            align-items: center;
            border: 1px solid rgba(255,255,255,.12);
            background: rgba(255,255,255,.025);
            transition: border-color .25s ease,background .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-index"] .footer-contact-card:hover {
                border-color: rgba(169,0,97,.62);
                background: rgba(169,0,97,.06);
                transform: translateY(-2px);
            }

        html[data-cc-page="group-index"] .footer-contact-icon {
            width: 38px;
            height: 38px;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 1px solid rgba(169,0,97,.58);
            color: var(--pink);
        }

        html[data-cc-page="group-index"] .footer-contact-card small {
            display: block;
            margin-bottom: 4px;
            font-size: 7px;
            font-weight: 700;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: rgba(255,255,255,.48);
        }

        html[data-cc-page="group-index"] .footer-contact-card strong {
            display: block;
            overflow-wrap: anywhere;
            font-size: 10px;
            line-height: 1.45;
            color: #fff;
            font-weight: 600;
        }

        html[data-cc-page="group-index"] .footer-reference-newsletter {
            margin-top: 30px;
        }

            html[data-cc-page="group-index"] .footer-reference-newsletter h4 {
                margin-bottom: 16px !important;
            }

            html[data-cc-page="group-index"] .footer-reference-newsletter > p {
                margin: 0 0 14px;
                font-size: 13px;
                line-height: 1.65;
                color: rgba(255,255,255,.68);
            }

        html[data-cc-page="group-index"] .footer-reference-form {
            display: grid;
            grid-template-columns: minmax(0,1fr) auto;
            min-height: 52px;
            border: 1px solid rgba(255,255,255,.15);
            background: rgba(255,255,255,.025);
        }

            html[data-cc-page="group-index"] .footer-reference-form:focus-within {
                border-color: rgba(169,0,97,.72);
            }

            html[data-cc-page="group-index"] .footer-reference-form input {
                min-width: 0;
                border: 0;
                outline: 0;
                background: transparent;
                color: #fff;
                padding: 0 16px;
                font-size: 12px;
            }

                html[data-cc-page="group-index"] .footer-reference-form input::placeholder {
                    color: rgba(255,255,255,.45);
                }

            html[data-cc-page="group-index"] .footer-reference-form button {
                position: relative;
                overflow: hidden;
                isolation: isolate;
                min-width: 142px;
                border: 0;
                background: var(--pink);
                color: #fff;
                padding: 0 18px;
                font-size: 9px;
                font-weight: 700;
                letter-spacing: .13em;
                text-transform: uppercase;
                transition: transform .25s ease,filter .25s ease;
            }

                html[data-cc-page="group-index"] .footer-reference-form button::before {
                    content: "";
                    position: absolute;
                    inset: 0;
                    z-index: -1;
                    background: var(--pink-dark);
                    transform: scaleX(0);
                    transform-origin: left;
                    transition: transform .4s cubic-bezier(.22,1,.36,1);
                }

                html[data-cc-page="group-index"] .footer-reference-form button:hover {
                    transform: translateY(-2px);
                    filter: brightness(1.06);
                }

                    html[data-cc-page="group-index"] .footer-reference-form button:hover::before {
                        transform: scaleX(1);
                    }

        html[data-cc-page="group-index"] .footer-reference-newsletter > small {
            display: block;
            margin-top: 9px;
            font-size: 8px;
            color: rgba(255,255,255,.38);
        }

            html[data-cc-page="group-index"] .footer-reference-newsletter > small a {
                color: rgba(255,255,255,.72);
                text-decoration: underline;
            }

        html[data-cc-page="group-index"] .footer-reference-bottom {
            position: relative;
            z-index: 2;
            background: #0c0c0d;
            border-top: 1px solid rgba(255,255,255,.06);
        }

            html[data-cc-page="group-index"] .footer-reference-bottom .container {
                min-height: 88px;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 28px;
                color: rgba(255,255,255,.56);
                font-size: 9px;
            }

                html[data-cc-page="group-index"] .footer-reference-bottom .container > div {
                    display: grid;
                    gap: 5px;
                }

        html[data-cc-page="group-index"] .footer-powered {
            font-size: 8px;
        }

        html[data-cc-page="group-index"] .footer-reference-bottom a {
            color: rgba(255,255,255,.82);
            transition: color .2s ease;
        }

            html[data-cc-page="group-index"] .footer-reference-bottom a:hover {
                color: var(--pink);
            }

        html[data-cc-page="group-index"] .footer-reference-bottom nav {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: 28px;
            font-size: 8px;
            font-weight: 700;
            letter-spacing: .08em;
            text-transform: uppercase;
        }

        @media(max-width:1180px) {
            html[data-cc-page="group-index"] .footer-reference-main {
                grid-template-columns: 1fr 1fr 1fr;
            }

            html[data-cc-page="group-index"] .footer-reference-reservations {
                grid-column: 1/-1;
            }

            html[data-cc-page="group-index"] .footer-contact-cards {
                grid-template-columns: 1fr 1fr;
            }

            html[data-cc-page="group-index"] .footer-reference-newsletter {
                max-width: 720px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .resort-select-menu {
                width: 100%;
                min-width: 280px;
            }

            html[data-cc-page="group-index"] .footer-reference-main {
                grid-template-columns: 1fr 1fr;
                gap: 46px 30px;
                padding-top: 58px;
                padding-bottom: 56px;
            }

            html[data-cc-page="group-index"] .footer-reference-brand, html[data-cc-page="group-index"] .footer-reference-reservations {
                grid-column: 1/-1;
            }

                html[data-cc-page="group-index"] .footer-reference-brand > p {
                    max-width: 500px;
                }

            html[data-cc-page="group-index"] .footer-reference-bottom .container {
                align-items: flex-start;
                flex-direction: column;
                justify-content: center;
                padding-top: 22px;
                padding-bottom: 22px;
            }

            html[data-cc-page="group-index"] .footer-reference-bottom nav {
                justify-content: flex-start;
                gap: 18px;
            }
        }

        @media(max-width:560px) {
            html[data-cc-page="group-index"] .resort-select-menu {
                left: 0;
                right: 0;
                width: auto;
                min-width: 0;
            }

            html[data-cc-page="group-index"] .footer-reference-main {
                grid-template-columns: 1fr;
                gap: 38px;
                padding-top: 50px;
                padding-bottom: 48px;
            }

            html[data-cc-page="group-index"] .footer-reference-brand, html[data-cc-page="group-index"] .footer-reference-reservations {
                grid-column: auto;
            }

            html[data-cc-page="group-index"] .footer-reference-logo img {
                width: 172px;
            }

            html[data-cc-page="group-index"] .footer-reference-column nav {
                gap: 13px;
            }

            html[data-cc-page="group-index"] .footer-contact-cards {
                grid-template-columns: 1fr;
            }

            html[data-cc-page="group-index"] .footer-reference-form {
                grid-template-columns: 1fr;
                gap: 8px;
                border: 0;
                background: transparent;
            }

                html[data-cc-page="group-index"] .footer-reference-form input {
                    height: 52px;
                    border: 1px solid rgba(255,255,255,.15);
                    background: rgba(255,255,255,.025);
                }

                html[data-cc-page="group-index"] .footer-reference-form button {
                    min-height: 52px;
                }
        }



        /* =====================================================
                   V18 DATE LIMITS + FOOTER CONTAINER ALIGNMENT
                   ===================================================== */

        /* Past dates: visually and functionally disabled. */
        html[data-cc-page="group-index"] .flatpickr-day.flatpickr-disabled, html[data-cc-page="group-index"] .flatpickr-day.flatpickr-disabled:hover, html[data-cc-page="group-index"] .flatpickr-day.prevMonthDay.flatpickr-disabled, html[data-cc-page="group-index"] .flatpickr-day.nextMonthDay.flatpickr-disabled, html[data-cc-page="group-index"] .flatpickr-day.notAllowed, html[data-cc-page="group-index"] .flatpickr-day.notAllowed:hover {
            color: #c9c3c6 !important;
            background: transparent !important;
            border-color: transparent !important;
            box-shadow: none !important;
            cursor: not-allowed !important;
            transform: none !important;
            opacity: .48 !important;
            pointer-events: none !important;
        }

        html[data-cc-page="group-index"] .flatpickr-prev-month.flatpickr-disabled, html[data-cc-page="group-index"] .flatpickr-next-month.flatpickr-disabled {
            opacity: .22 !important;
            cursor: default !important;
            pointer-events: none !important;
        }

        /* Keep the whole footer on exactly the same left/right rails as the copyright bar. */
        html[data-cc-page="group-index"] .footer-reference > .container.footer-reference-main {
            width: min(1420px,calc(100% - 80px)) !important;
            max-width: 1420px !important;
            margin-left: auto !important;
            margin-right: auto !important;
            padding-left: 0 !important;
            padding-right: 0 !important;
        }

        html[data-cc-page="group-index"] .footer-reference-bottom > .container {
            width: min(1420px,calc(100% - 80px)) !important;
            max-width: 1420px !important;
            margin-left: auto !important;
            margin-right: auto !important;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-index"] .footer-reference > .container.footer-reference-main, html[data-cc-page="group-index"] .footer-reference-bottom > .container {
                width: min(100% - 44px,1420px) !important;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .footer-reference > .container.footer-reference-main, html[data-cc-page="group-index"] .footer-reference-bottom > .container {
                width: calc(100% - 30px) !important;
            }
        }



        /* =====================================================
                   V19 STICKY LOGO + CLEAR BOOKING LABELS
                   ===================================================== */

        /* Larger horizontal logo in the desktop sticky header. */
        @media(min-width:1251px) {
            html[data-cc-page="group-index"] .header.sticky .brand {
                width: 250px !important;
                flex: 0 0 250px !important;
            }

            html[data-cc-page="group-index"] .header.sticky .brand-dark {
                width: 230px !important;
                max-height: 64px !important;
                object-fit: contain !important;
                object-position: left center !important;
            }
        }

        /* Keep the larger logo balanced on medium desktop widths. */
        @media(min-width:1101px) and (max-width:1250px) {
            html[data-cc-page="group-index"] .header.sticky .brand {
                width: 205px !important;
                flex: 0 0 205px !important;
            }

            html[data-cc-page="group-index"] .header.sticky .brand-dark {
                width: 192px !important;
                max-height: 54px !important;
            }
        }

        /* Booking labels: stronger contrast and easier scanning over the transparent panel. */
        html[data-cc-page="group-index"] .booking-card .field > label {
            color: #2b2428 !important;
            font-size: 10px !important;
            font-weight: 700 !important;
            letter-spacing: .135em !important;
            line-height: 1.2 !important;
            margin-bottom: 8px !important;
            opacity: 1 !important;
        }

        @media(max-width:767px) {
            html[data-cc-page="group-index"] .mobile-booking-modal .field > label {
                color: #2b2428 !important;
                font-size: 9px !important;
                font-weight: 700 !important;
                letter-spacing: .12em !important;
                margin-bottom: 7px !important;
                opacity: 1 !important;
            }
        }


        /* =====================================================
                   V20 MOBILE REVIEW - RESORT CARD / LOYALTY / OFFERS
                   Mobile only. Desktop and tablet remain unchanged.
                   ===================================================== */
        @media(max-width:767px) {
            /* 1) Resort cards occupy the full phone viewport width. */
            html[data-cc-page="group-index"] .resort-viewport {
                width: calc(100% + 30px) !important;
                margin-left: -15px !important;
                margin-right: -15px !important;
                overflow: hidden !important;
            }

            html[data-cc-page="group-index"] .resort-track {
                gap: 0 !important;
            }

            html[data-cc-page="group-index"] .resort-story {
                flex: 0 0 100vw !important;
                width: 100vw !important;
                max-width: 100vw !important;
            }

                /* Keep card content comfortably inside the full-width image. */
                html[data-cc-page="group-index"] .resort-story .story-copy {
                    left: 24px !important;
                    right: 24px !important;
                }

                html[data-cc-page="group-index"] .resort-story .story-index {
                    left: 20px !important;
                }

                html[data-cc-page="group-index"] .resort-story .story-link {
                    right: 20px !important;
                }

            /* 2) Loyalty: mobile-specific image treatment + centered content. */
            html[data-cc-page="group-index"] .loyalty {
                min-height: 590px !important;
                background-image: url("../images/Charmillion-Sea-Life-Hero-Banner.jpg"), url("https://charmillionresorts.com/images/uploads/Charmillion-Sea-Life-Resort-Lobby.jpg") !important;
                background-position: center center, center center !important;
                background-size: cover, cover !important;
                background-repeat: no-repeat, no-repeat !important;
                background-attachment: scroll, scroll !important;
                align-items: center !important;
            }

                html[data-cc-page="group-index"] .loyalty::after {
                    background: linear-gradient(180deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.56) 48%,rgba(0,0,0,.68) 100%) !important;
                }

                html[data-cc-page="group-index"] .loyalty .container {
                    display: flex !important;
                    justify-content: center !important;
                    align-items: center !important;
                }

            html[data-cc-page="group-index"] .loyalty-copy {
                width: min(100%,430px) !important;
                max-width: 430px !important;
                margin: 0 auto !important;
                text-align: center !important;
            }

                html[data-cc-page="group-index"] .loyalty-copy .eyebrow {
                    text-align: center !important;
                }

                html[data-cc-page="group-index"] .loyalty-copy h2 {
                    margin-left: auto !important;
                    margin-right: auto !important;
                }

                html[data-cc-page="group-index"] .loyalty-copy p {
                    margin-left: auto !important;
                    margin-right: auto !important;
                    max-width: 360px !important;
                }

                html[data-cc-page="group-index"] .loyalty-copy .btn {
                    margin-left: auto !important;
                    margin-right: auto !important;
                }

            /* 3) View All Offers centered on phone screens. */
            html[data-cc-page="group-index"] .offers-bottom {
                justify-content: center !important;
            }
        }


        /* =====================================================
                   V21 MOBILE RESORT CAROUSEL - EXACTLY ONE CARD PER VIEW
                   Mobile only: no previous/next card peeking at rest.
                   ===================================================== */
        @media(max-width:767px) {
            html[data-cc-page="group-index"] .resort-viewport {
                width: 100vw !important;
                max-width: 100vw !important;
                margin-left: calc(50% - 50vw) !important;
                margin-right: calc(50% - 50vw) !important;
                overflow: hidden !important;
                padding: 0 !important;
            }

            html[data-cc-page="group-index"] .resort-track {
                width: 100% !important;
                gap: 0 !important;
                padding: 0 !important;
            }

            html[data-cc-page="group-index"] .resort-story {
                flex: 0 0 100% !important;
                width: 100% !important;
                min-width: 100% !important;
                max-width: 100% !important;
                margin: 0 !important;
            }
        }



        /* =====================================================
                   V23 LANGUAGE DROPDOWN - DESKTOP + MOBILE
                   ===================================================== */
        html[data-cc-page="group-index"] .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="group-index"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-index"] .language-trigger:hover, html[data-cc-page="group-index"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="group-index"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="group-index"] .header.sticky .language-trigger:hover, html[data-cc-page="group-index"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="group-index"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="group-index"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="group-index"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="group-index"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="group-index"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-index"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-index"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-index"] .language-menu a:hover, html[data-cc-page="group-index"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="group-index"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="group-index"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="group-index"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="group-index"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="group-index"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="group-index"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="group-index"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="group-index"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="group-index"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-index"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="group-index"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="group-index"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="group-index"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="group-index"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="group-index"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="group-index"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="group-index"] .topbar-language .language-trigger:hover, html[data-cc-page="group-index"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-index"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="group-index"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="group-index"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="group-index"] .topbar-language .language-menu a:hover, html[data-cc-page="group-index"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="group-index"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="group-index"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="group-index"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="group-index"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="group-index"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="group-index"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="group-index"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="group-index"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="group-index"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="group-index"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="group-index"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="group-index"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="group-index"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="group-index"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="group-index"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="group-index"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="group-index"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="group-index"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-index"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="group-index"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="group-index"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="group-index"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="group-index"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="group-index"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="group-index"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="group-index"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="group-index"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-index"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="group-index"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="group-index"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="group-index"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-index"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-index"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-index"] .mobile-language-menu a:hover, html[data-cc-page="group-index"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="group-index"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="group-index"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="group-index"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-index"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="group-index"] .mobile-language-trigger, html[data-cc-page="group-index"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="group-index"] .mobile-language-menu {
                right: -43px;
            }
        }
    

/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="group-index"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="group-index"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="group-index"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-index"] .page-intro-grid>div, html[data-cc-page="group-index"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-index"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="group-index"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="group-index"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="group-index"] .page-intro .reveal-left, html[data-cc-page="group-index"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="group-index"] .page-intro .reveal-left.in-view, html[data-cc-page="group-index"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="group-index"] .section-heading h2, html[data-cc-page="group-index"] .rail-head h2, html[data-cc-page="group-index"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="group-index"] .section-heading p, html[data-cc-page="group-index"] .rail-head p, html[data-cc-page="group-index"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="group-index"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="group-index"] .page-intro-grid{padding:0 8px}html[data-cc-page="group-index"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="group-index"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="group-index"] .page-intro h2{font-size:38px!important}html[data-cc-page="group-index"] .page-intro p{font-size:13px!important}}

/* V8 footer separation rule */
html[data-cc-page="group-index"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="group-index"] .header-main{height:92px!important}
html[data-cc-page="group-index"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-index"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="group-index"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="group-index"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-index"] .menu{gap:26px!important}
html[data-cc-page="group-index"] .brand img{max-height:66px!important}
html[data-cc-page="group-index"] .hero .eyebrow, html[data-cc-page="group-index"] .hero-kicker, html[data-cc-page="group-index"] .hero-kicker.eyebrow, html[data-cc-page="group-index"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="group-index"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="group-index"] .menu{gap:18px!important}html[data-cc-page="group-index"] .menu>a, html[data-cc-page="group-index"] .menu-link{font-size:10px!important}html[data-cc-page="group-index"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-index"] .header-main{height:72px!important}html[data-cc-page="group-index"] .brand img{max-height:46px!important}html[data-cc-page="group-index"] .mobile-trigger{font-size:20px!important}}


/* --- group-menu-unified.css --- */
/* Final Demo - unified Group menu
   Reference: original index-group.html
*/
/* HEADER */
html[data-cc-page="group-index"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="group-index"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_groupindex .35s ease both
            }

        @keyframes drop_cc_groupindex {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="group-index"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="group-index"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="group-index"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="group-index"] .header-main {
            height: 102px
        }

            html[data-cc-page="group-index"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="group-index"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="group-index"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="group-index"] .brand-dark {
            display: none
        }

        html[data-cc-page="group-index"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="group-index"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="group-index"] .header-main {
            position: relative
        }

        html[data-cc-page="group-index"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="group-index"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="group-index"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="group-index"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="group-index"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="group-index"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-index"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="group-index"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="group-index"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-index"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="group-index"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="group-index"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="group-index"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-index"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="group-index"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="group-index"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="group-index"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="group-index"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="group-index"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="group-index"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="group-index"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="group-index"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-index"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="group-index"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="group-index"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-index"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="group-index"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="group-index"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="group-index"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="group-index"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="group-index"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="group-index"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="group-index"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="group-index"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="group-index"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="group-index"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-index"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="group-index"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="group-index"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="group-index"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="group-index"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="group-index"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="group-index"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="group-index"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="group-index"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="group-index"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="group-index"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="group-index"] .drawer.open {
                transform: none
            }

        html[data-cc-page="group-index"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="group-index"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="group-index"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="group-index"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="group-index"] .drawer-nav > a, html[data-cc-page="group-index"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="group-index"] .drawer-nav > a:hover, html[data-cc-page="group-index"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="group-index"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="group-index"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="group-index"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="group-index"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="group-index"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="group-index"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="group-index"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-index"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="group-index"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="group-index"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="group-index"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-index"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="group-index"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }


@media(max-width:1100px){
  html[data-cc-page="group-index"] .menu{gap:18px}
  html[data-cc-page="group-index"] .menu-link{font-size:11px}
  html[data-cc-page="group-index"] .header-book{margin-left:20px}
}
@media(max-width:820px){
  html[data-cc-page="group-index"] .header{position:absolute;background:rgba(255,255,255,.97);color:#111}
  html[data-cc-page="group-index"] .header-top, html[data-cc-page="group-index"] .menu, html[data-cc-page="group-index"] .header-book{display:none}
  html[data-cc-page="group-index"] .header-main{height:72px}
  html[data-cc-page="group-index"] .brand-light{display:none!important}
  html[data-cc-page="group-index"] .brand-dark{display:block!important}
  html[data-cc-page="group-index"] .brand img{width:125px;max-height:52px}
  html[data-cc-page="group-index"] .mobile-trigger{display:block}
}
/* V23-V25 language/mobile controls from reference */
html[data-cc-page="group-index"] 
        .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="group-index"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-index"] .language-trigger:hover, html[data-cc-page="group-index"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="group-index"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="group-index"] .header.sticky .language-trigger:hover, html[data-cc-page="group-index"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="group-index"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="group-index"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="group-index"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="group-index"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="group-index"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-index"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-index"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-index"] .language-menu a:hover, html[data-cc-page="group-index"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="group-index"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="group-index"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="group-index"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="group-index"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="group-index"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="group-index"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="group-index"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="group-index"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="group-index"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-index"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="group-index"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="group-index"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="group-index"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="group-index"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="group-index"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="group-index"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="group-index"] .topbar-language .language-trigger:hover, html[data-cc-page="group-index"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-index"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="group-index"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="group-index"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="group-index"] .topbar-language .language-menu a:hover, html[data-cc-page="group-index"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="group-index"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="group-index"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="group-index"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="group-index"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="group-index"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="group-index"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="group-index"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="group-index"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="group-index"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="group-index"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="group-index"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="group-index"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="group-index"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="group-index"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="group-index"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="group-index"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="group-index"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="group-index"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-index"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="group-index"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="group-index"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="group-index"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="group-index"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="group-index"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="group-index"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="group-index"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="group-index"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-index"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="group-index"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="group-index"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="group-index"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-index"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-index"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-index"] .mobile-language-menu a:hover, html[data-cc-page="group-index"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="group-index"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-index"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="group-index"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="group-index"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-index"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="group-index"] .mobile-language-trigger, html[data-cc-page="group-index"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="group-index"] .mobile-language-menu {
                right: -43px;
            }
        }

/* Final reference sizing */
html[data-cc-page="group-index"] .header-main{height:92px!important}
html[data-cc-page="group-index"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-index"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
html[data-cc-page="group-index"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-index"] .menu{gap:26px!important}
html[data-cc-page="group-index"] .brand img{max-height:66px!important}
@media(max-width:1200px){html[data-cc-page="group-index"] .menu{gap:18px!important}html[data-cc-page="group-index"] .menu-link{font-size:10px!important}html[data-cc-page="group-index"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-index"] .header-main{height:72px!important}html[data-cc-page="group-index"] .brand img{max-height:46px!important}html[data-cc-page="group-index"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="group-index"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-index"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="group-index"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-index"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="group-index"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="group-index"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="group-index"] .internal-banner .hero-inner, html[data-cc-page="group-index"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-index"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-index"] .internal-banner .hero-copy, html[data-cc-page="group-index"] .internal-banner .offers-page-hero-copy, html[data-cc-page="group-index"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="group-index"] .internal-banner .hero-kicker, html[data-cc-page="group-index"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="group-index"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="group-index"] .internal-banner .cl7-kicker, html[data-cc-page="group-index"] .internal-banner h1, html[data-cc-page="group-index"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="group-index"] .internal-banner .hero-kicker::before, html[data-cc-page="group-index"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="group-index"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="group-index"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-index"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="group-index"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="group-index"] .internal-banner .hero-inner, html[data-cc-page="group-index"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-index"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="group-index"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-index"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="group-index"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="group-index"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-index"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="group-index"] .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;
}
html[data-cc-page="group-index"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="group-index"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="group-index"] .footer-reference::after{display:none!important;}
html[data-cc-page="group-index"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="group-index"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="group-index"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="group-index"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="group-index"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="group-index"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="group-index"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="group-index"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="group-index"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="group-index"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="group-index"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="group-index"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="group-index"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="group-index"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="group-index"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="group-index"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="group-index"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="group-index"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="group-index"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="group-index"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="group-index"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="group-index"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="group-index"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="group-index"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="group-index"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="group-index"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="group-index"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="group-index"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="group-index"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="group-index"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="group-index"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="group-index"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="group-index"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="group-index"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="group-index"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="group-index"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="group-index"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="group-index"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="group-index"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="group-index"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="group-index"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="group-index"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="group-index"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="group-index"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-index"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="group-index"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="group-index"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-index"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="group-index"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="group-index"] .footer-reference-brand, html[data-cc-page="group-index"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-index"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="group-index"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="group-index"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="group-index"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-index"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="group-index"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="group-index"] .footer-reference-brand, html[data-cc-page="group-index"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="group-index"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="group-index"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="group-index"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="group-index"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="group-index"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="group-index"] .footer-reference-form button{min-height:52px;}
}

/* ============================================================
   PAGE: group-loyalty   (group_Loyalty.html)
   ============================================================ */
html[data-cc-page="group-loyalty"]{--pink:#A90061;--pink-dark:#6F0037;--ink:#171717;--muted:#6f6b6d;--paper:#f6f4f4;--line:rgba(23,23,23,.13);--white:#fff;--display:"Playfair Display",serif;--body:"Inter",sans-serif}
html[data-cc-page="group-loyalty"], html[data-cc-page="group-loyalty"] *{box-sizing:border-box;margin:0;padding:0}html[data-cc-page="group-loyalty"]{scroll-behavior:smooth}html[data-cc-page="group-loyalty"] body{font-family:var(--body);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}html[data-cc-page="group-loyalty"] a{text-decoration:none;color:inherit}html[data-cc-page="group-loyalty"] img, html[data-cc-page="group-loyalty"] video{display:block;width:100%}html[data-cc-page="group-loyalty"] button, html[data-cc-page="group-loyalty"] input, html[data-cc-page="group-loyalty"] textarea{font:inherit}html[data-cc-page="group-loyalty"] button{cursor:pointer}html[data-cc-page="group-loyalty"] .container{width:min(1420px,calc(100% - 80px));margin-inline:auto}html[data-cc-page="group-loyalty"] .eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--pink)}html[data-cc-page="group-loyalty"] .section-rule{display:inline-block;width:44px;height:2px;background:var(--pink);transform-origin:left;transform:scaleX(0);transition:transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-loyalty"] .in-view .section-rule, html[data-cc-page="group-loyalty"] .section-rule.in-view{transform:scaleX(1)}
html[data-cc-page="group-loyalty"] .btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .28s ease,color .28s ease,border-color .28s ease,filter .28s ease}html[data-cc-page="group-loyalty"] .btn::before{content:"";position:absolute;inset:0;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.22,1,.36,1);z-index:-1}html[data-cc-page="group-loyalty"] .btn:hover{transform:translateY(-3px);filter:brightness(1.05)}html[data-cc-page="group-loyalty"] .btn:hover::before{transform:scaleX(1)}html[data-cc-page="group-loyalty"] .btn-pink{background:var(--pink);color:#fff}html[data-cc-page="group-loyalty"] .btn-outline{border-color:currentColor;background:transparent}html[data-cc-page="group-loyalty"] .btn-white{background:#fff;color:#111}html[data-cc-page="group-loyalty"] .btn-white::before{background:var(--pink)}html[data-cc-page="group-loyalty"] .btn-white:hover{color:#fff;border-color:var(--pink)}
/* HEADER */
html[data-cc-page="group-loyalty"] .header{position:absolute;inset:0 0 auto;z-index:100;color:#fff;transition:background .35s ease,color .35s ease,box-shadow .35s ease}html[data-cc-page="group-loyalty"] .header.sticky{position:fixed;background:rgba(255,255,255,.97);color:#171717;box-shadow:0 8px 30px rgba(0,0,0,.08);backdrop-filter:blur(15px)}html[data-cc-page="group-loyalty"] .topbar{height:34px;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;letter-spacing:.05em}html[data-cc-page="group-loyalty"] .header.sticky .topbar{display:none}html[data-cc-page="group-loyalty"] .topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:25px}html[data-cc-page="group-loyalty"] .topbar-right{display:flex;align-items:center;gap:22px}html[data-cc-page="group-loyalty"] .header-main{height:102px}html[data-cc-page="group-loyalty"] .header-main .container{height:100%;display:flex;align-items:center}html[data-cc-page="group-loyalty"] .brand{width:190px;flex:0 0 auto}html[data-cc-page="group-loyalty"] .brand img{width:148px;max-height:80px;object-fit:contain}html[data-cc-page="group-loyalty"] .brand-dark{display:none}html[data-cc-page="group-loyalty"] .header.sticky .brand-light{display:none}html[data-cc-page="group-loyalty"] .header.sticky .brand-dark{display:block;width:185px;max-height:48px;object-fit:contain;object-position:left center}html[data-cc-page="group-loyalty"] .header.sticky .brand{width:210px}html[data-cc-page="group-loyalty"] .menu{margin-left:auto;display:flex;align-items:center;gap:30px;height:100%}html[data-cc-page="group-loyalty"] .menu a{height:100%;display:flex;align-items:center;position:relative;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}html[data-cc-page="group-loyalty"] .menu a::after{content:"";position:absolute;left:0;right:100%;bottom:27px;height:1px;background:var(--pink);transition:right .3s ease}html[data-cc-page="group-loyalty"] .menu a:hover::after, html[data-cc-page="group-loyalty"] .menu a.active::after{right:0}html[data-cc-page="group-loyalty"] .header-book{margin-left:32px}html[data-cc-page="group-loyalty"] .lang{position:relative}html[data-cc-page="group-loyalty"] .lang-button{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:7px}html[data-cc-page="group-loyalty"] .lang-button img{width:25px;height:15px;object-fit:cover}html[data-cc-page="group-loyalty"] .lang-menu{position:absolute;right:0;top:calc(100% + 10px);width:170px;background:#fff;color:#171717;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}html[data-cc-page="group-loyalty"] .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}html[data-cc-page="group-loyalty"] .lang-menu a{display:flex;align-items:center;gap:10px;padding:10px;font-size:11px}html[data-cc-page="group-loyalty"] .lang-menu a:hover{background:#faf5f8;color:var(--pink)}html[data-cc-page="group-loyalty"] .lang-menu img{width:25px;height:15px;object-fit:cover}html[data-cc-page="group-loyalty"] .mobile-actions{display:none;margin-left:auto;align-items:center;gap:10px}html[data-cc-page="group-loyalty"] .mobile-trigger{width:44px;height:44px;border:0;background:transparent;color:inherit;font-size:21px}html[data-cc-page="group-loyalty"] .mobile-lang .lang-menu{right:48px;top:52px}
html[data-cc-page="group-loyalty"] .drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;opacity:0;visibility:hidden;transition:.3s}html[data-cc-page="group-loyalty"] .drawer-overlay.open{opacity:1;visibility:visible}html[data-cc-page="group-loyalty"] .drawer{position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);background:#fff;color:#171717;z-index:510;padding:28px;transform:translateX(105%);transition:transform .38s cubic-bezier(.22,1,.36,1);overflow:auto}html[data-cc-page="group-loyalty"] .drawer.open{transform:none}html[data-cc-page="group-loyalty"] .drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #eee}html[data-cc-page="group-loyalty"] .drawer-head img{width:150px}html[data-cc-page="group-loyalty"] .drawer-close{width:40px;height:40px;border:0;background:#f3f3f3;border-radius:50%;font-size:18px}html[data-cc-page="group-loyalty"] .drawer-nav{display:grid;margin-top:18px}html[data-cc-page="group-loyalty"] .drawer-nav a{padding:15px 0;border-bottom:1px solid #eee;font-size:17px}html[data-cc-page="group-loyalty"] .drawer-nav a:hover{color:var(--pink)}html[data-cc-page="group-loyalty"] .drawer-contact{margin-top:28px;padding-top:22px;border-top:1px solid #eee}html[data-cc-page="group-loyalty"] .drawer-contact a{display:flex;align-items:center;gap:10px;font-size:12px;color:#555}html[data-cc-page="group-loyalty"] .drawer-social{display:flex;gap:8px;margin-top:18px}html[data-cc-page="group-loyalty"] .drawer-social a{width:38px;height:38px;border:1px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="group-loyalty"] .drawer .btn{width:100%;margin-top:24px}
/* HERO */
html[data-cc-page="group-loyalty"] .hero{position:relative;height:82svh;min-height:680px;color:#fff;background:#111;overflow:hidden}html[data-cc-page="group-loyalty"] .hero img.hero-bg{position:absolute;inset:0;height:100%;object-fit:cover;animation:kenburns_cc_grouployalty 9s ease-in-out both}html[data-cc-page="group-loyalty"] .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)}@keyframes kenburns_cc_grouployalty{from{transform:scale(1.03)}to{transform:scale(1.12) translateX(-1.2%)}}html[data-cc-page="group-loyalty"] .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding-bottom:90px}html[data-cc-page="group-loyalty"] .hero-copy{max-width:800px}html[data-cc-page="group-loyalty"] .hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}html[data-cc-page="group-loyalty"] .hero-kicker::before{content:"";width:46px;height:2px;background:var(--pink)}html[data-cc-page="group-loyalty"] .hero h1{font-family:var(--display);font-size:clamp(60px,6vw,96px);line-height:.96;font-weight:400;letter-spacing:-.045em}html[data-cc-page="group-loyalty"] .hero p{max-width:580px;margin-top:22px;font-size:15px;line-height:1.8;color:rgba(255,255,255,.88)}html[data-cc-page="group-loyalty"] .hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}html[data-cc-page="group-loyalty"] .hero-place{position:absolute;right:40px;bottom:38px;z-index:3;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75)}
/* MOTION */
html[data-cc-page="group-loyalty"] .reveal, html[data-cc-page="group-loyalty"] .reveal-left, html[data-cc-page="group-loyalty"] .reveal-right{opacity:0;transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-loyalty"] .reveal{transform:translateY(44px)}html[data-cc-page="group-loyalty"] .reveal-left{transform:translateX(-60px)}html[data-cc-page="group-loyalty"] .reveal-right{transform:translateX(60px)}html[data-cc-page="group-loyalty"] .reveal.in-view, html[data-cc-page="group-loyalty"] .reveal-left.in-view, html[data-cc-page="group-loyalty"] .reveal-right.in-view{opacity:1;transform:none}html[data-cc-page="group-loyalty"] .stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-loyalty"] .stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="group-loyalty"] .stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="group-loyalty"] .stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="group-loyalty"] .stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="group-loyalty"] .stagger.in-view>*:nth-child(5){transition-delay:.32s}html[data-cc-page="group-loyalty"] .image-reveal{position:relative;overflow:hidden;background:#111}html[data-cc-page="group-loyalty"] .image-reveal::after{content:"";position:absolute;inset:0;background:#111;transform:scaleX(1);transform-origin:right;transition:transform 1s cubic-bezier(.77,0,.18,1);z-index:2}html[data-cc-page="group-loyalty"] .image-reveal.in-view::after{transform:scaleX(0)}html[data-cc-page="group-loyalty"] .image-reveal img{height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}html[data-cc-page="group-loyalty"] .image-reveal.in-view img{transform:scale(1)}
/* COMMON SECTIONS */
html[data-cc-page="group-loyalty"] .intro-section{padding:150px 0}html[data-cc-page="group-loyalty"] .intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;align-items:start}html[data-cc-page="group-loyalty"] .intro-grid h2, html[data-cc-page="group-loyalty"] .section-heading h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);line-height:1;letter-spacing:-.04em;font-weight:400}html[data-cc-page="group-loyalty"] .intro-grid p, html[data-cc-page="group-loyalty"] .section-heading p{font-size:14px;line-height:1.9;color:var(--muted);max-width:620px}html[data-cc-page="group-loyalty"] .section-heading{margin-bottom:58px}html[data-cc-page="group-loyalty"] .section-heading .eyebrow{margin-bottom:16px}html[data-cc-page="group-loyalty"] .section-heading h2{max-width:850px}html[data-cc-page="group-loyalty"] .section-heading p{margin-top:20px}html[data-cc-page="group-loyalty"] .soft{background:var(--paper)}
/* FOOTER */
html[data-cc-page="group-loyalty"] .footer{background:#111113;color:#fff}html[data-cc-page="group-loyalty"] .footer-main{padding:72px 0 58px;display:grid;grid-template-columns:1.1fr .7fr .85fr 1.2fr;gap:70px}html[data-cc-page="group-loyalty"] .footer-logo{width:170px}html[data-cc-page="group-loyalty"] .footer-copy{font-size:12px;line-height:1.8;color:rgba(255,255,255,.56);max-width:320px;margin-top:22px}html[data-cc-page="group-loyalty"] .footer h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:20px}html[data-cc-page="group-loyalty"] .footer-links{display:grid;gap:11px}html[data-cc-page="group-loyalty"] .footer-links a, html[data-cc-page="group-loyalty"] .footer p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.68)}html[data-cc-page="group-loyalty"] .footer-links a:hover{color:#fff}html[data-cc-page="group-loyalty"] .footer-contact-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.14);padding:15px;margin-bottom:10px}html[data-cc-page="group-loyalty"] .footer-contact-card i{color:var(--pink)}html[data-cc-page="group-loyalty"] .newsletter{margin-top:22px}html[data-cc-page="group-loyalty"] .newsletter-form{display:flex;border:1px solid rgba(255,255,255,.18);min-height:48px}html[data-cc-page="group-loyalty"] .newsletter-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;padding:0 14px;outline:0}html[data-cc-page="group-loyalty"] .newsletter-form button{border:0;background:var(--pink);color:#fff;padding:0 18px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}html[data-cc-page="group-loyalty"] .footer-social{display:flex;gap:8px;margin-top:20px}html[data-cc-page="group-loyalty"] .footer-social a{width:37px;height:37px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center}html[data-cc-page="group-loyalty"] .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:22px 0 26px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:rgba(255,255,255,.4)}html[data-cc-page="group-loyalty"] .footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}html[data-cc-page="group-loyalty"] .scrolltop{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--pink);color:#fff;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}html[data-cc-page="group-loyalty"] .scrolltop.show{opacity:1;visibility:visible;transform:none}html[data-cc-page="group-loyalty"] .mobile-book{display:none}
@media(max-width:1050px){html[data-cc-page="group-loyalty"] .container{width:calc(100% - 44px)}html[data-cc-page="group-loyalty"] .menu{gap:18px}html[data-cc-page="group-loyalty"] .menu a{font-size:10px}html[data-cc-page="group-loyalty"] .header-book{margin-left:20px}html[data-cc-page="group-loyalty"] .intro-grid{gap:65px}html[data-cc-page="group-loyalty"] .footer-main{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:820px){html[data-cc-page="group-loyalty"] body{padding-bottom:68px}html[data-cc-page="group-loyalty"] .container{width:calc(100% - 30px)}html[data-cc-page="group-loyalty"] .header{background:rgba(255,255,255,.97);color:#171717}html[data-cc-page="group-loyalty"] .topbar, html[data-cc-page="group-loyalty"] .menu, html[data-cc-page="group-loyalty"] .header-book{display:none}html[data-cc-page="group-loyalty"] .header-main{height:72px}html[data-cc-page="group-loyalty"] .brand{width:180px}html[data-cc-page="group-loyalty"] .brand-light{display:none!important}html[data-cc-page="group-loyalty"] .brand-dark{display:block!important;width:160px!important;max-height:44px!important;object-fit:contain}html[data-cc-page="group-loyalty"] .mobile-actions{display:flex}html[data-cc-page="group-loyalty"] .hero{height:82svh;min-height:620px;padding-top:72px}html[data-cc-page="group-loyalty"] .hero-inner{padding-bottom:70px}html[data-cc-page="group-loyalty"] .hero h1{font-size:clamp(46px,12vw,62px)}html[data-cc-page="group-loyalty"] .hero p{font-size:13px;max-width:92%}html[data-cc-page="group-loyalty"] .hero-place{display:none}html[data-cc-page="group-loyalty"] .intro-section{padding:105px 0}html[data-cc-page="group-loyalty"] .intro-grid{grid-template-columns:1fr;gap:32px}html[data-cc-page="group-loyalty"] .intro-grid h2, html[data-cc-page="group-loyalty"] .section-heading h2{font-size:48px}html[data-cc-page="group-loyalty"] .section-heading{margin-bottom:40px}html[data-cc-page="group-loyalty"] .footer-main{grid-template-columns:1fr 1fr;gap:38px 28px;padding-top:55px}html[data-cc-page="group-loyalty"] .footer-brand{grid-column:1/3}html[data-cc-page="group-loyalty"] .mobile-book{position:fixed;left:12px;right:12px;bottom:10px;height:56px;z-index:400;border:0;background:var(--pink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}html[data-cc-page="group-loyalty"] .scrolltop{bottom:80px}}
@media(max-width:560px){html[data-cc-page="group-loyalty"] .hero{min-height:600px}html[data-cc-page="group-loyalty"] .hero h1{font-size:45px}html[data-cc-page="group-loyalty"] .hero-actions .btn{width:100%}html[data-cc-page="group-loyalty"] .intro-grid h2, html[data-cc-page="group-loyalty"] .section-heading h2{font-size:42px}html[data-cc-page="group-loyalty"] .footer-main{grid-template-columns:1fr}html[data-cc-page="group-loyalty"] .footer-brand{grid-column:auto}html[data-cc-page="group-loyalty"] .footer-bottom{display:block}html[data-cc-page="group-loyalty"] .footer-bottom nav{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html[data-cc-page="group-loyalty"], html[data-cc-page="group-loyalty"] *{scroll-behavior:auto!important}html[data-cc-page="group-loyalty"] .reveal, html[data-cc-page="group-loyalty"] .reveal-left, html[data-cc-page="group-loyalty"] .reveal-right, html[data-cc-page="group-loyalty"] .stagger>*{opacity:1!important;transform:none!important;transition:none!important}html[data-cc-page="group-loyalty"] .image-reveal::after{display:none}html[data-cc-page="group-loyalty"] .hero img.hero-bg{animation:none!important}}


html[data-cc-page="group-loyalty"] .about-manifesto{padding:92px 0 88px!important;text-align:center!important;background:#fff!important}html[data-cc-page="group-loyalty"] .about-manifesto .container{max-width:920px!important;margin:0 auto!important}html[data-cc-page="group-loyalty"] .about-manifesto .statement{font-family:var(--display)!important;font-size:clamp(40px,4.2vw,58px)!important;line-height:1.04!important;letter-spacing:-.035em!important;font-weight:400!important;color:#171717!important;max-width:920px!important;margin:0 auto!important}html[data-cc-page="group-loyalty"] .about-manifesto .statement em{font-style:italic!important;color:var(--pink)!important}html[data-cc-page="group-loyalty"] .about-manifesto .small-copy{display:block!important;max-width:860px!important;margin:38px auto 0!important;padding-top:0!important;border-top:0!important;text-align:center!important}html[data-cc-page="group-loyalty"] .about-manifesto .small-copy p{max-width:none!important;margin:0 auto!important;font-size:15px!important;line-height:1.9!important;color:#686467!important}html[data-cc-page="group-loyalty"] .about-collage{padding:0 0 160px}html[data-cc-page="group-loyalty"] .collage-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:end}html[data-cc-page="group-loyalty"] .collage-main{height:680px}html[data-cc-page="group-loyalty"] .collage-side{display:grid;gap:22px}html[data-cc-page="group-loyalty"] .collage-side .image-reveal:first-child{height:370px}html[data-cc-page="group-loyalty"] .collage-side .image-reveal:last-child{height:288px}html[data-cc-page="group-loyalty"] .philosophy{padding:150px 0;background:#111113;color:#fff}html[data-cc-page="group-loyalty"] .philosophy-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;margin-bottom:75px}html[data-cc-page="group-loyalty"] .philosophy h2{font-family:var(--display);font-size:clamp(54px,5vw,78px);line-height:1;font-weight:400}html[data-cc-page="group-loyalty"] .philosophy p{color:rgba(255,255,255,.6);font-size:14px;line-height:1.9;max-width:620px}html[data-cc-page="group-loyalty"] .philosophy-list{border-top:1px solid rgba(255,255,255,.18)}html[data-cc-page="group-loyalty"] .philosophy-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:40px;align-items:center;padding:34px 0;border-bottom:1px solid rgba(255,255,255,.14)}html[data-cc-page="group-loyalty"] .philosophy-row .num{font-family:var(--display);font-size:44px;color:var(--pink)}html[data-cc-page="group-loyalty"] .philosophy-row h3{font-family:var(--display);font-size:38px;font-weight:400}html[data-cc-page="group-loyalty"] .philosophy-row p{font-size:12px;line-height:1.8}html[data-cc-page="group-loyalty"] .about-collection{padding:155px 0}html[data-cc-page="group-loyalty"] .collection-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}html[data-cc-page="group-loyalty"] .collection-strip a{padding:34px 24px;border-right:1px solid var(--line);transition:background .3s ease,color .3s ease,transform .3s ease}html[data-cc-page="group-loyalty"] .collection-strip a:last-child{border-right:0}html[data-cc-page="group-loyalty"] .collection-strip a:hover{background:#171717;color:#fff;transform:translateY(-5px)}html[data-cc-page="group-loyalty"] .collection-strip small{display:block;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--pink);margin-bottom:12px}html[data-cc-page="group-loyalty"] .collection-strip strong{font-family:var(--display);font-size:27px;font-weight:400}html[data-cc-page="group-loyalty"] .about-visual-break{height:70vh;min-height:560px;position:relative;color:#fff;display:flex;align-items:flex-end;overflow:hidden}html[data-cc-page="group-loyalty"] .about-visual-break img{position:absolute;inset:0;height:100%;object-fit:cover}html[data-cc-page="group-loyalty"] .about-visual-break::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.65))}html[data-cc-page="group-loyalty"] .about-visual-break .container{position:relative;z-index:2;padding-bottom:70px}html[data-cc-page="group-loyalty"] .about-visual-break h2{font-family:var(--display);font-size:clamp(60px,6vw,94px);font-weight:400;line-height:.96;max-width:850px}html[data-cc-page="group-loyalty"] .about-cta{padding:140px 0}html[data-cc-page="group-loyalty"] .about-cta-inner{display:flex;justify-content:space-between;gap:60px;align-items:end;border-top:1px solid var(--line);padding-top:60px}html[data-cc-page="group-loyalty"] .about-cta h2{font-family:var(--display);font-size:58px;font-weight:400;max-width:650px;line-height:1}
@media(max-width:820px){html[data-cc-page="group-loyalty"] .about-manifesto{padding:72px 0 68px!important}html[data-cc-page="group-loyalty"] .about-manifesto .statement{font-size:clamp(34px,6vw,44px)!important}html[data-cc-page="group-loyalty"] .about-manifesto .small-copy{margin-top:28px!important}html[data-cc-page="group-loyalty"] .philosophy-head{grid-template-columns:1fr;gap:28px}html[data-cc-page="group-loyalty"] .collage-grid{grid-template-columns:1fr}html[data-cc-page="group-loyalty"] .collage-main{height:520px}html[data-cc-page="group-loyalty"] .collage-side{grid-template-columns:1fr 1fr}html[data-cc-page="group-loyalty"] .collage-side .image-reveal:first-child, html[data-cc-page="group-loyalty"] .collage-side .image-reveal:last-child{height:280px}html[data-cc-page="group-loyalty"] .philosophy{padding:105px 0}html[data-cc-page="group-loyalty"] .philosophy-row{grid-template-columns:70px 1fr;gap:18px}html[data-cc-page="group-loyalty"] .philosophy-row p{grid-column:2}html[data-cc-page="group-loyalty"] .collection-strip{grid-template-columns:1fr 1fr}html[data-cc-page="group-loyalty"] .collection-strip a:nth-child(2){border-right:0}html[data-cc-page="group-loyalty"] .collection-strip a:nth-child(-n+2){border-bottom:1px solid var(--line)}html[data-cc-page="group-loyalty"] .about-visual-break{min-height:500px}html[data-cc-page="group-loyalty"] .about-cta-inner{display:block}html[data-cc-page="group-loyalty"] .about-cta .btn{margin-top:30px}}
@media(max-width:560px){html[data-cc-page="group-loyalty"] .about-manifesto{padding:58px 0 54px!important}html[data-cc-page="group-loyalty"] .about-manifesto .statement{font-size:32px!important;line-height:1.1!important}html[data-cc-page="group-loyalty"] .about-manifesto .small-copy{margin-top:24px!important}html[data-cc-page="group-loyalty"] .about-manifesto .small-copy p{font-size:14px!important;line-height:1.75!important}html[data-cc-page="group-loyalty"] .collage-side{grid-template-columns:1fr}html[data-cc-page="group-loyalty"] .collection-strip{grid-template-columns:1fr}html[data-cc-page="group-loyalty"] .collection-strip a{border-right:0;border-bottom:1px solid var(--line)}html[data-cc-page="group-loyalty"] .philosophy-row h3{font-size:31px}html[data-cc-page="group-loyalty"] .about-visual-break h2{font-size:48px}html[data-cc-page="group-loyalty"] .about-cta h2{font-size:44px}}

/* Loyalty page */
html[data-cc-page="group-loyalty"] .loyalty-intro{padding:150px 0 145px;background:#fff}html[data-cc-page="group-loyalty"] .loyalty-intro-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:110px;align-items:end}html[data-cc-page="group-loyalty"] .loyalty-intro h2{font-family:var(--display);font-size:clamp(58px,6.7vw,96px);font-weight:400;line-height:.94;letter-spacing:-.055em}html[data-cc-page="group-loyalty"] .loyalty-intro h2 em{font-style:italic;color:var(--pink)}html[data-cc-page="group-loyalty"] .loyalty-intro-copy{max-width:540px}html[data-cc-page="group-loyalty"] .loyalty-intro-copy p{font-size:15px;line-height:1.9;color:var(--muted)}html[data-cc-page="group-loyalty"] .loyalty-intro-copy p+p{margin-top:18px}html[data-cc-page="group-loyalty"] .loyalty-benefits{padding:140px 0 155px;background:var(--paper)}html[data-cc-page="group-loyalty"] .loyalty-section-head{max-width:820px;margin-bottom:70px}html[data-cc-page="group-loyalty"] .loyalty-section-head h2{font-family:var(--display);font-size:clamp(50px,5vw,76px);font-weight:400;line-height:1;letter-spacing:-.04em;margin-top:16px}html[data-cc-page="group-loyalty"] .benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}html[data-cc-page="group-loyalty"] .benefit-card{min-height:360px;background:#fff;padding:38px 34px;display:flex;flex-direction:column;justify-content:space-between;border-top:2px solid transparent;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .35s ease,box-shadow .35s ease}html[data-cc-page="group-loyalty"] .benefit-card:hover{transform:translateY(-8px);border-color:var(--pink);box-shadow:0 24px 55px rgba(0,0,0,.08)}html[data-cc-page="group-loyalty"] .benefit-number{font-family:var(--display);font-size:54px;color:var(--pink);line-height:1}html[data-cc-page="group-loyalty"] .benefit-card h3{font-family:var(--display);font-size:34px;font-weight:400;line-height:1.05;margin-bottom:14px}html[data-cc-page="group-loyalty"] .benefit-card p{font-size:13px;line-height:1.8;color:var(--muted)}html[data-cc-page="group-loyalty"] .loyalty-visual{min-height:720px;background:#111 url('../images/Loyalty-Section-Background.jpg') center/cover no-repeat;position:relative;color:#fff;display:flex;align-items:center;overflow:hidden}html[data-cc-page="group-loyalty"] .loyalty-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.42) 56%,rgba(0,0,0,.12))}html[data-cc-page="group-loyalty"] .loyalty-visual .container{position:relative;z-index:2}html[data-cc-page="group-loyalty"] .loyalty-visual-copy{max-width:760px}html[data-cc-page="group-loyalty"] .loyalty-visual h2{font-family:var(--display);font-size:clamp(58px,6.4vw,92px);font-weight:400;line-height:.96;letter-spacing:-.05em}html[data-cc-page="group-loyalty"] .loyalty-visual p{max-width:500px;margin:24px 0 30px;font-size:14px;line-height:1.9;color:rgba(255,255,255,.74)}html[data-cc-page="group-loyalty"] .loyalty-steps{padding:145px 0;background:#fff}html[data-cc-page="group-loyalty"] .steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}html[data-cc-page="group-loyalty"] .step-item{padding:46px 38px 52px;border-right:1px solid var(--line)}html[data-cc-page="group-loyalty"] .step-item:last-child{border-right:0}html[data-cc-page="group-loyalty"] .step-no{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--pink);font-weight:600}html[data-cc-page="group-loyalty"] .step-item h3{font-family:var(--display);font-size:38px;font-weight:400;line-height:1.05;margin:28px 0 14px}html[data-cc-page="group-loyalty"] .step-item p{font-size:13px;line-height:1.8;color:var(--muted)}html[data-cc-page="group-loyalty"] .loyalty-join{padding:150px 0;background:#f7f5f4}html[data-cc-page="group-loyalty"] .loyalty-join-inner{display:grid;grid-template-columns:1fr auto;gap:70px;align-items:end}html[data-cc-page="group-loyalty"] .loyalty-join h2{font-family:var(--display);font-size:clamp(56px,6vw,88px);font-weight:400;line-height:.96;letter-spacing:-.05em}html[data-cc-page="group-loyalty"] .loyalty-join p{font-size:14px;line-height:1.85;color:var(--muted);max-width:620px;margin-top:22px}html[data-cc-page="group-loyalty"] .loyalty-join .btn{min-width:190px}@media(max-width:900px){html[data-cc-page="group-loyalty"] .loyalty-intro-grid{grid-template-columns:1fr;gap:35px}html[data-cc-page="group-loyalty"] .benefit-grid{grid-template-columns:1fr}html[data-cc-page="group-loyalty"] .benefit-card{min-height:260px}html[data-cc-page="group-loyalty"] .steps-grid{grid-template-columns:1fr}html[data-cc-page="group-loyalty"] .step-item{border-right:0;border-bottom:1px solid var(--line)}html[data-cc-page="group-loyalty"] .step-item:last-child{border-bottom:0}html[data-cc-page="group-loyalty"] .loyalty-join-inner{grid-template-columns:1fr;align-items:start}html[data-cc-page="group-loyalty"] .loyalty-visual{min-height:620px}}@media(max-width:560px){html[data-cc-page="group-loyalty"] .loyalty-intro, html[data-cc-page="group-loyalty"] .loyalty-benefits, html[data-cc-page="group-loyalty"] .loyalty-steps, html[data-cc-page="group-loyalty"] .loyalty-join{padding:95px 0}html[data-cc-page="group-loyalty"] .loyalty-intro h2, html[data-cc-page="group-loyalty"] .loyalty-visual h2, html[data-cc-page="group-loyalty"] .loyalty-join h2{font-size:48px}html[data-cc-page="group-loyalty"] .loyalty-section-head h2{font-size:44px}html[data-cc-page="group-loyalty"] .benefit-card{padding:30px 24px}html[data-cc-page="group-loyalty"] .step-item{padding:34px 0}html[data-cc-page="group-loyalty"] .loyalty-visual{min-height:560px}}


/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="group-loyalty"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="group-loyalty"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="group-loyalty"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-loyalty"] .page-intro-grid>div, html[data-cc-page="group-loyalty"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-loyalty"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="group-loyalty"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="group-loyalty"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="group-loyalty"] .page-intro .reveal-left, html[data-cc-page="group-loyalty"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="group-loyalty"] .page-intro .reveal-left.in-view, html[data-cc-page="group-loyalty"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="group-loyalty"] .section-heading h2, html[data-cc-page="group-loyalty"] .rail-head h2, html[data-cc-page="group-loyalty"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="group-loyalty"] .section-heading p, html[data-cc-page="group-loyalty"] .rail-head p, html[data-cc-page="group-loyalty"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="group-loyalty"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="group-loyalty"] .page-intro-grid{padding:0 8px}html[data-cc-page="group-loyalty"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="group-loyalty"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="group-loyalty"] .page-intro h2{font-size:38px!important}html[data-cc-page="group-loyalty"] .page-intro p{font-size:13px!important}}

html[data-cc-page="group-loyalty"] .loyalty-intro{padding:92px 0 88px!important}
html[data-cc-page="group-loyalty"] .loyalty-intro-grid{display:grid!important;grid-template-columns:1fr!important;gap:22px!important;max-width:900px;margin:0 auto;text-align:center!important;align-items:center!important}
html[data-cc-page="group-loyalty"] .loyalty-intro-grid>div{max-width:760px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-loyalty"] .loyalty-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important}
html[data-cc-page="group-loyalty"] .loyalty-intro-copy p{font-size:var(--inner-body)!important;line-height:1.82!important}
html[data-cc-page="group-loyalty"] .loyalty-section-head h2{font-size:var(--inner-section-title)!important}

/* V8 footer separation rule */
html[data-cc-page="group-loyalty"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="group-loyalty"] .header-main{height:92px!important}
html[data-cc-page="group-loyalty"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-loyalty"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="group-loyalty"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="group-loyalty"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-loyalty"] .menu{gap:26px!important}
html[data-cc-page="group-loyalty"] .brand img{max-height:66px!important}
html[data-cc-page="group-loyalty"] .hero .eyebrow, html[data-cc-page="group-loyalty"] .hero-kicker, html[data-cc-page="group-loyalty"] .hero-kicker.eyebrow, html[data-cc-page="group-loyalty"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="group-loyalty"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="group-loyalty"] .menu{gap:18px!important}html[data-cc-page="group-loyalty"] .menu>a, html[data-cc-page="group-loyalty"] .menu-link{font-size:10px!important}html[data-cc-page="group-loyalty"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-loyalty"] .header-main{height:72px!important}html[data-cc-page="group-loyalty"] .brand img{max-height:46px!important}html[data-cc-page="group-loyalty"] .mobile-trigger{font-size:20px!important}}


/* --- group-menu-unified.css --- */
/* Final Demo - unified Group menu
   Reference: original index-group.html
*/
/* HEADER */
html[data-cc-page="group-loyalty"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="group-loyalty"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_grouployalty .35s ease both
            }

        @keyframes drop_cc_grouployalty {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="group-loyalty"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="group-loyalty"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="group-loyalty"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="group-loyalty"] .header-main {
            height: 102px
        }

            html[data-cc-page="group-loyalty"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="group-loyalty"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="group-loyalty"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="group-loyalty"] .brand-dark {
            display: none
        }

        html[data-cc-page="group-loyalty"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="group-loyalty"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="group-loyalty"] .header-main {
            position: relative
        }

        html[data-cc-page="group-loyalty"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="group-loyalty"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="group-loyalty"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="group-loyalty"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="group-loyalty"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="group-loyalty"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-loyalty"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="group-loyalty"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="group-loyalty"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-loyalty"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="group-loyalty"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="group-loyalty"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="group-loyalty"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-loyalty"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="group-loyalty"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="group-loyalty"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="group-loyalty"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="group-loyalty"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="group-loyalty"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="group-loyalty"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="group-loyalty"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="group-loyalty"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-loyalty"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="group-loyalty"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="group-loyalty"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-loyalty"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="group-loyalty"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="group-loyalty"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="group-loyalty"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="group-loyalty"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="group-loyalty"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="group-loyalty"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="group-loyalty"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="group-loyalty"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="group-loyalty"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="group-loyalty"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-loyalty"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="group-loyalty"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="group-loyalty"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="group-loyalty"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="group-loyalty"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="group-loyalty"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="group-loyalty"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="group-loyalty"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="group-loyalty"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="group-loyalty"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="group-loyalty"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="group-loyalty"] .drawer.open {
                transform: none
            }

        html[data-cc-page="group-loyalty"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="group-loyalty"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="group-loyalty"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="group-loyalty"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="group-loyalty"] .drawer-nav > a, html[data-cc-page="group-loyalty"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="group-loyalty"] .drawer-nav > a:hover, html[data-cc-page="group-loyalty"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="group-loyalty"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="group-loyalty"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="group-loyalty"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="group-loyalty"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="group-loyalty"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="group-loyalty"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="group-loyalty"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-loyalty"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="group-loyalty"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="group-loyalty"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="group-loyalty"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-loyalty"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="group-loyalty"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }


@media(max-width:1100px){
  html[data-cc-page="group-loyalty"] .menu{gap:18px}
  html[data-cc-page="group-loyalty"] .menu-link{font-size:11px}
  html[data-cc-page="group-loyalty"] .header-book{margin-left:20px}
}
@media(max-width:820px){
  html[data-cc-page="group-loyalty"] .header{position:absolute;background:rgba(255,255,255,.97);color:#111}
  html[data-cc-page="group-loyalty"] .header-top, html[data-cc-page="group-loyalty"] .menu, html[data-cc-page="group-loyalty"] .header-book{display:none}
  html[data-cc-page="group-loyalty"] .header-main{height:72px}
  html[data-cc-page="group-loyalty"] .brand-light{display:none!important}
  html[data-cc-page="group-loyalty"] .brand-dark{display:block!important}
  html[data-cc-page="group-loyalty"] .brand img{width:125px;max-height:52px}
  html[data-cc-page="group-loyalty"] .mobile-trigger{display:block}
}
/* V23-V25 language/mobile controls from reference */
html[data-cc-page="group-loyalty"] 
        .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="group-loyalty"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-loyalty"] .language-trigger:hover, html[data-cc-page="group-loyalty"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="group-loyalty"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="group-loyalty"] .header.sticky .language-trigger:hover, html[data-cc-page="group-loyalty"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="group-loyalty"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="group-loyalty"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="group-loyalty"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="group-loyalty"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="group-loyalty"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-loyalty"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-loyalty"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-loyalty"] .language-menu a:hover, html[data-cc-page="group-loyalty"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="group-loyalty"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="group-loyalty"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="group-loyalty"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="group-loyalty"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="group-loyalty"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="group-loyalty"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="group-loyalty"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="group-loyalty"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="group-loyalty"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-loyalty"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="group-loyalty"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-loyalty"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="group-loyalty"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="group-loyalty"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="group-loyalty"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="group-loyalty"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="group-loyalty"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="group-loyalty"] .topbar-language .language-trigger:hover, html[data-cc-page="group-loyalty"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-loyalty"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="group-loyalty"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="group-loyalty"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="group-loyalty"] .topbar-language .language-menu a:hover, html[data-cc-page="group-loyalty"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="group-loyalty"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="group-loyalty"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="group-loyalty"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="group-loyalty"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="group-loyalty"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="group-loyalty"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="group-loyalty"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="group-loyalty"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="group-loyalty"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="group-loyalty"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="group-loyalty"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="group-loyalty"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="group-loyalty"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="group-loyalty"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="group-loyalty"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="group-loyalty"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="group-loyalty"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="group-loyalty"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-loyalty"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-loyalty"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="group-loyalty"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="group-loyalty"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="group-loyalty"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="group-loyalty"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="group-loyalty"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="group-loyalty"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="group-loyalty"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="group-loyalty"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-loyalty"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="group-loyalty"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="group-loyalty"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="group-loyalty"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-loyalty"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-loyalty"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-loyalty"] .mobile-language-menu a:hover, html[data-cc-page="group-loyalty"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="group-loyalty"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-loyalty"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="group-loyalty"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="group-loyalty"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-loyalty"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="group-loyalty"] .mobile-language-trigger, html[data-cc-page="group-loyalty"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="group-loyalty"] .mobile-language-menu {
                right: -43px;
            }
        }

/* Final reference sizing */
html[data-cc-page="group-loyalty"] .header-main{height:92px!important}
html[data-cc-page="group-loyalty"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-loyalty"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
html[data-cc-page="group-loyalty"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-loyalty"] .menu{gap:26px!important}
html[data-cc-page="group-loyalty"] .brand img{max-height:66px!important}
@media(max-width:1200px){html[data-cc-page="group-loyalty"] .menu{gap:18px!important}html[data-cc-page="group-loyalty"] .menu-link{font-size:10px!important}html[data-cc-page="group-loyalty"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-loyalty"] .header-main{height:72px!important}html[data-cc-page="group-loyalty"] .brand img{max-height:46px!important}html[data-cc-page="group-loyalty"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="group-loyalty"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-loyalty"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="group-loyalty"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-loyalty"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="group-loyalty"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="group-loyalty"] .internal-banner{
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
}
html[data-cc-page="group-loyalty"] .internal-banner .hero-inner, html[data-cc-page="group-loyalty"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-loyalty"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-loyalty"] .internal-banner .hero-copy, html[data-cc-page="group-loyalty"] .internal-banner .offers-page-hero-copy, html[data-cc-page="group-loyalty"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
}
html[data-cc-page="group-loyalty"] .internal-banner .hero-kicker, html[data-cc-page="group-loyalty"] .internal-banner .hero-kicker.eyebrow, html[data-cc-page="group-loyalty"] .internal-banner .offers-page-hero-copy .eyebrow, html[data-cc-page="group-loyalty"] .internal-banner .cl7-kicker, html[data-cc-page="group-loyalty"] .internal-banner h1, html[data-cc-page="group-loyalty"] .internal-banner .cl7-hero-title{
  color:#fff!important;
}
html[data-cc-page="group-loyalty"] .internal-banner .hero-kicker::before, html[data-cc-page="group-loyalty"] .internal-banner .offers-page-hero-copy .eyebrow::before, html[data-cc-page="group-loyalty"] .internal-banner .cl7-kicker::before{
  background:#fff!important;
}
html[data-cc-page="group-loyalty"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-loyalty"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
}

@media(max-width:820px){
  html[data-cc-page="group-loyalty"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="group-loyalty"] .internal-banner .hero-inner, html[data-cc-page="group-loyalty"] .internal-banner .offers-page-hero-inner, html[data-cc-page="group-loyalty"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="group-loyalty"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-loyalty"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="group-loyalty"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="group-loyalty"] .internal-banner .offers-page-hero h1, html[data-cc-page="group-loyalty"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="group-loyalty"] .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;
}
html[data-cc-page="group-loyalty"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="group-loyalty"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="group-loyalty"] .footer-reference::after{display:none!important;}
html[data-cc-page="group-loyalty"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="group-loyalty"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="group-loyalty"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="group-loyalty"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="group-loyalty"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="group-loyalty"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="group-loyalty"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="group-loyalty"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="group-loyalty"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="group-loyalty"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="group-loyalty"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="group-loyalty"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="group-loyalty"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="group-loyalty"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="group-loyalty"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="group-loyalty"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="group-loyalty"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="group-loyalty"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="group-loyalty"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="group-loyalty"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="group-loyalty"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="group-loyalty"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="group-loyalty"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="group-loyalty"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="group-loyalty"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="group-loyalty"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="group-loyalty"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="group-loyalty"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="group-loyalty"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="group-loyalty"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="group-loyalty"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="group-loyalty"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="group-loyalty"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="group-loyalty"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="group-loyalty"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="group-loyalty"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="group-loyalty"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="group-loyalty"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="group-loyalty"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="group-loyalty"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="group-loyalty"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="group-loyalty"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="group-loyalty"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="group-loyalty"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-loyalty"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="group-loyalty"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="group-loyalty"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-loyalty"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="group-loyalty"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="group-loyalty"] .footer-reference-brand, html[data-cc-page="group-loyalty"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-loyalty"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="group-loyalty"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="group-loyalty"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="group-loyalty"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-loyalty"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="group-loyalty"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="group-loyalty"] .footer-reference-brand, html[data-cc-page="group-loyalty"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="group-loyalty"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="group-loyalty"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="group-loyalty"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="group-loyalty"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="group-loyalty"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="group-loyalty"] .footer-reference-form button{min-height:52px;}
}


/* FINAL DEMO V10 - Loyalty editorial redesign */
html[data-cc-page="group-loyalty"] .loyalty-editorial-intro{padding:100px 0 96px!important;background:#fff!important}
html[data-cc-page="group-loyalty"] .loyalty-editorial-intro-inner{max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-loyalty"] .loyalty-editorial-intro h2{font-family:var(--display);font-size:clamp(42px,4.7vw,66px)!important;font-weight:400;line-height:1.02!important;letter-spacing:-.04em!important;margin:14px 0 22px!important}
html[data-cc-page="group-loyalty"] .loyalty-editorial-intro h2 em{font-style:italic;color:var(--pink)}
html[data-cc-page="group-loyalty"] .loyalty-editorial-intro p{max-width:720px;margin:0 auto;font-size:14px;line-height:1.85;color:var(--muted)}
html[data-cc-page="group-loyalty"] .loyalty-editorial-benefits{padding:0 0 120px;background:#fff}
html[data-cc-page="group-loyalty"] .loyalty-editorial-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:78px;align-items:center}
html[data-cc-page="group-loyalty"] .loyalty-editorial-image{position:relative;min-height:610px;overflow:hidden;background:#111}
html[data-cc-page="group-loyalty"] .loyalty-editorial-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-loyalty"] .loyalty-editorial-image:hover img{transform:scale(1.035)}
html[data-cc-page="group-loyalty"] .loyalty-editorial-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 35%,rgba(0,0,0,.62) 100%)}
html[data-cc-page="group-loyalty"] .loyalty-editorial-image-caption{position:absolute;left:38px;right:38px;bottom:34px;z-index:2;color:#fff;display:flex;flex-direction:column;gap:7px}
html[data-cc-page="group-loyalty"] .loyalty-editorial-image-caption span{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
html[data-cc-page="group-loyalty"] .loyalty-editorial-image-caption strong{font-family:var(--display);font-size:34px;font-weight:400;line-height:1.05}
html[data-cc-page="group-loyalty"] .loyalty-editorial-content{padding-right:24px}
html[data-cc-page="group-loyalty"] .loyalty-editorial-content h2{font-family:var(--display);font-size:clamp(42px,4.2vw,60px);font-weight:400;line-height:1.01;letter-spacing:-.04em;margin:14px 0 48px}
html[data-cc-page="group-loyalty"] .loyalty-editorial-benefit-list{display:flex;flex-direction:column;gap:36px}
html[data-cc-page="group-loyalty"] .loyalty-editorial-benefit{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start}
html[data-cc-page="group-loyalty"] .loyalty-editorial-no{font-family:var(--display);font-size:28px;line-height:1;color:var(--pink)}
html[data-cc-page="group-loyalty"] .loyalty-editorial-benefit h3{font-family:var(--display);font-size:28px;font-weight:400;line-height:1.05;margin-bottom:9px}
html[data-cc-page="group-loyalty"] .loyalty-editorial-benefit p{font-size:13.5px;line-height:1.75;color:var(--muted);max-width:420px}
html[data-cc-page="group-loyalty"] .loyalty-cinematic{position:relative;min-height:650px;display:flex;align-items:center;color:#fff;overflow:hidden}
html[data-cc-page="group-loyalty"] .loyalty-cinematic>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
html[data-cc-page="group-loyalty"] .loyalty-cinematic-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.44) 50%,rgba(0,0,0,.12) 100%)}
html[data-cc-page="group-loyalty"] .loyalty-cinematic-inner{position:relative;z-index:2;max-width:1420px}
html[data-cc-page="group-loyalty"] .loyalty-cinematic .eyebrow{color:#fff!important}
html[data-cc-page="group-loyalty"] .loyalty-cinematic h2{font-family:var(--display);font-size:clamp(48px,5.8vw,82px);font-weight:400;line-height:.98;letter-spacing:-.045em;max-width:820px;margin:14px 0 30px}
html[data-cc-page="group-loyalty"] .loyalty-flow{padding:110px 0 118px;background:#fff}
html[data-cc-page="group-loyalty"] .loyalty-flow-head{text-align:center;max-width:760px;margin:0 auto 64px}
html[data-cc-page="group-loyalty"] .loyalty-flow-head h2{font-family:var(--display);font-size:clamp(40px,4.2vw,58px);font-weight:400;line-height:1.03;letter-spacing:-.035em;margin-top:12px}
html[data-cc-page="group-loyalty"] .loyalty-flow-row{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:34px;max-width:1080px;margin:0 auto}
html[data-cc-page="group-loyalty"] .loyalty-flow-item{text-align:center}
html[data-cc-page="group-loyalty"] .loyalty-flow-item>span{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--pink);font-weight:700}
html[data-cc-page="group-loyalty"] .loyalty-flow-item h3{font-family:var(--display);font-size:34px;font-weight:400;line-height:1.05;margin:12px 0 8px}
html[data-cc-page="group-loyalty"] .loyalty-flow-item p{font-size:13px;line-height:1.65;color:var(--muted)}
html[data-cc-page="group-loyalty"] .loyalty-flow-arrow{font-size:22px;color:var(--pink);opacity:.75}
html[data-cc-page="group-loyalty"] .loyalty-final{padding:120px 0;background:#f6f4f4}
html[data-cc-page="group-loyalty"] .loyalty-final-inner{display:grid;grid-template-columns:1fr auto;gap:70px;align-items:end}
html[data-cc-page="group-loyalty"] .loyalty-final h2{font-family:var(--display);font-size:clamp(46px,5.2vw,72px);font-weight:400;line-height:.98;letter-spacing:-.04em;margin-top:13px}
html[data-cc-page="group-loyalty"] .loyalty-final-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;justify-content:flex-end}
html[data-cc-page="group-loyalty"] .loyalty-member-login{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.10em;text-transform:uppercase;color:var(--ink);padding:14px 0;position:relative}
html[data-cc-page="group-loyalty"] .loyalty-member-login:after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:var(--ink);transform-origin:left;transition:transform .3s ease}
html[data-cc-page="group-loyalty"] .loyalty-member-login:hover:after{transform:scaleX(.55)}
@media(max-width:1050px){html[data-cc-page="group-loyalty"] .loyalty-editorial-grid{grid-template-columns:1fr;gap:44px}html[data-cc-page="group-loyalty"] .loyalty-editorial-image{min-height:520px}html[data-cc-page="group-loyalty"] .loyalty-editorial-content{padding-right:0;max-width:760px}html[data-cc-page="group-loyalty"] .loyalty-final-inner{grid-template-columns:1fr;align-items:start}html[data-cc-page="group-loyalty"] .loyalty-final-actions{justify-content:flex-start}}
@media(max-width:760px){html[data-cc-page="group-loyalty"] .loyalty-editorial-intro{padding:72px 0 68px!important}html[data-cc-page="group-loyalty"] .loyalty-editorial-benefits{padding-bottom:82px}html[data-cc-page="group-loyalty"] .loyalty-editorial-image{min-height:430px}html[data-cc-page="group-loyalty"] .loyalty-editorial-image-caption{left:24px;right:24px;bottom:24px}html[data-cc-page="group-loyalty"] .loyalty-editorial-image-caption strong{font-size:28px}html[data-cc-page="group-loyalty"] .loyalty-editorial-content h2{margin-bottom:34px}html[data-cc-page="group-loyalty"] .loyalty-cinematic{min-height:540px}html[data-cc-page="group-loyalty"] .loyalty-flow{padding:82px 0 88px}html[data-cc-page="group-loyalty"] .loyalty-flow-row{grid-template-columns:1fr;gap:26px}html[data-cc-page="group-loyalty"] .loyalty-flow-arrow{transform:rotate(90deg)}html[data-cc-page="group-loyalty"] .loyalty-final{padding:86px 0}html[data-cc-page="group-loyalty"] .loyalty-final-actions{gap:18px}}
@media(max-width:560px){html[data-cc-page="group-loyalty"] .loyalty-editorial-intro h2{font-size:38px!important}html[data-cc-page="group-loyalty"] .loyalty-editorial-intro p{font-size:13px}html[data-cc-page="group-loyalty"] .loyalty-editorial-grid{gap:34px}html[data-cc-page="group-loyalty"] .loyalty-editorial-image{min-height:360px}html[data-cc-page="group-loyalty"] .loyalty-editorial-benefit{grid-template-columns:42px 1fr;gap:12px}html[data-cc-page="group-loyalty"] .loyalty-editorial-benefit h3{font-size:25px}html[data-cc-page="group-loyalty"] .loyalty-cinematic h2{font-size:44px}html[data-cc-page="group-loyalty"] .loyalty-final h2{font-size:42px}html[data-cc-page="group-loyalty"] .loyalty-final-actions{align-items:flex-start;flex-direction:column}}

/* ============================================================
   PAGE: group-meetings-events   (group_Meetings_Events.html)
   ============================================================ */
html[data-cc-page="group-meetings-events"] {
                    --pink: #A90061;
                    --pink-dark: #6F0037;
                    --ink: #171717;
                    --muted: #6d6d6d;
                    --paper: #f7f5f4;
                    --soft: #efefed;
                    --white: #fff;
                    --line: rgba(23,23,23,.14);
                    --display: "Playfair Display",serif;
                    --body: "Inter",sans-serif;
                }

                html[data-cc-page="group-meetings-events"], html[data-cc-page="group-meetings-events"] * {
                    box-sizing: border-box;
                    margin: 0;
                    padding: 0
                }

                html[data-cc-page="group-meetings-events"] {
                    scroll-behavior: smooth
                }

                html[data-cc-page="group-meetings-events"] body {
                    font-family: var(--body);
                    color: var(--ink);
                    background: #fff;
                    overflow-x: hidden;
                    -webkit-font-smoothing: antialiased
                }

                html[data-cc-page="group-meetings-events"] a {
                    text-decoration: none;
                    color: inherit
                }

                html[data-cc-page="group-meetings-events"] img, html[data-cc-page="group-meetings-events"] video {
                    display: block;
                    width: 100%
                }

                html[data-cc-page="group-meetings-events"] button, html[data-cc-page="group-meetings-events"] input, html[data-cc-page="group-meetings-events"] select {
                    font: inherit
                }

                html[data-cc-page="group-meetings-events"] button {
                    cursor: pointer
                }

                html[data-cc-page="group-meetings-events"] .container {
                    width: min(1420px,calc(100% - 80px));
                    margin-inline: auto
                }

                html[data-cc-page="group-meetings-events"] .eyebrow {
                    font-size: 11px;
                    letter-spacing: .22em;
                    text-transform: uppercase;
                    font-weight: 600
                }

                html[data-cc-page="group-meetings-events"] .btn {
                    display: inline-flex;
                    align-items: center;
                    justify-content: center;
                    gap: 12px;
                    min-height: 50px;
                    padding: 0 28px;
                    border: 1px solid transparent;
                    border-radius: 2px;
                    font-size: 13px;
                    font-weight: 600;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    transition: background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease
                }

                    html[data-cc-page="group-meetings-events"] .btn:hover {
                        transform: translateY(-2px)
                    }

                html[data-cc-page="group-meetings-events"] .btn-pink {
                    background: var(--pink);
                    color: #fff
                }

                    html[data-cc-page="group-meetings-events"] .btn-pink:hover {
                        background: var(--pink-dark)
                    }

                html[data-cc-page="group-meetings-events"] .btn-white {
                    background: #fff;
                    color: #111
                }

                    html[data-cc-page="group-meetings-events"] .btn-white:hover {
                        background: var(--pink);
                        color: #fff
                    }

                html[data-cc-page="group-meetings-events"] .btn-outline {
                    border-color: currentColor;
                    background: transparent
                }

                /* HEADER */
                html[data-cc-page="group-meetings-events"] .header {
                    position: absolute;
                    inset: 0 0 auto;
                    z-index: 100;
                    color: #fff;
                    transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
                }

                    html[data-cc-page="group-meetings-events"] .header.sticky {
                        position: fixed;
                        background: rgba(255,255,255,.97);
                        color: #111;
                        box-shadow: 0 8px 30px rgba(0,0,0,.08);
                        backdrop-filter: blur(18px);
                        animation: drop_cc_groupmeetingsevents .35s ease both
                    }

                @keyframes drop_cc_groupmeetingsevents {
                    from {
                        transform: translateY(-100%)
                    }

                    to {
                        transform: translateY(0)
                    }
                }

                html[data-cc-page="group-meetings-events"] .header-top {
                    height: 34px;
                    border-bottom: 1px solid rgba(255,255,255,.16);
                    font-size: 11px;
                    letter-spacing: .08em
                }

                html[data-cc-page="group-meetings-events"] .header.sticky .header-top {
                    display: none
                }

                html[data-cc-page="group-meetings-events"] .header-top .container {
                    height: 100%;
                    display: flex;
                    justify-content: flex-end;
                    align-items: center;
                    gap: 24px
                }

                html[data-cc-page="group-meetings-events"] .header-main {
                    height: 102px
                }

                    html[data-cc-page="group-meetings-events"] .header-main .container {
                        height: 100%;
                        display: flex;
                        align-items: center
                    }

                html[data-cc-page="group-meetings-events"] .brand {
                    width: 154px;
                    display: flex;
                    align-items: center;
                    justify-content: flex-start;
                    flex: 0 0 auto
                }

                    html[data-cc-page="group-meetings-events"] .brand img {
                        width: 138px;
                        max-height: 80px;
                        object-fit: contain
                    }

                html[data-cc-page="group-meetings-events"] .brand-dark {
                    display: none
                }

                html[data-cc-page="group-meetings-events"] .header.sticky .brand-light {
                    display: none
                }

                html[data-cc-page="group-meetings-events"] .header.sticky .brand-dark {
                    display: block
                }

                html[data-cc-page="group-meetings-events"] .header-main {
                    position: relative
                }

                html[data-cc-page="group-meetings-events"] .menu {
                    display: flex;
                    align-items: stretch;
                    gap: 32px;
                    margin-left: auto;
                    height: 100%
                }

                html[data-cc-page="group-meetings-events"] .menu-item {
                    position: relative;
                    display: flex;
                    align-items: center;
                    height: 100%
                }

                    html[data-cc-page="group-meetings-events"] .menu-item.has-mega {
                        position: static
                    }

                html[data-cc-page="group-meetings-events"] .menu-link {
                    height: 100%;
                    display: inline-flex;
                    align-items: center;
                    gap: 7px;
                    font-size: 13px;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    position: relative;
                    padding: 0 2px;
                    white-space: nowrap
                }

                    html[data-cc-page="group-meetings-events"] .menu-link::after {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 100%;
                        bottom: 27px;
                        height: 1px;
                        background: var(--pink);
                        transition: right .3s ease
                    }

                html[data-cc-page="group-meetings-events"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-meetings-events"] .menu-item:focus-within > .menu-link::after {
                    right: 0
                }

                html[data-cc-page="group-meetings-events"] .menu-link .menu-chevron {
                    font-size: 9px;
                    transition: transform .25s ease
                }

                html[data-cc-page="group-meetings-events"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-meetings-events"] .menu-item:focus-within > .menu-link .menu-chevron {
                    transform: rotate(180deg)
                }

                /* Resorts mega menu */
                html[data-cc-page="group-meetings-events"] .resorts-mega {
                    position: absolute;
                    top: calc(100% - 1px);
                    left: 50%;
                    width: min(1320px,calc(100vw - 70px));
                    transform: translate(-50%,18px);
                    background: #f7f5f4;
                    color: var(--ink);
                    padding: 28px;
                    box-shadow: 0 24px 70px rgba(0,0,0,.20);
                    border-top: 3px solid var(--pink);
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
                    z-index: 220
                }

                    html[data-cc-page="group-meetings-events"] .resorts-mega::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        top: -16px;
                        height: 16px;
                        background: transparent
                    }

                html[data-cc-page="group-meetings-events"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-meetings-events"] .menu-item.has-mega:focus-within .resorts-mega {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: translate(-50%,0)
                }

                html[data-cc-page="group-meetings-events"] .resorts-mega-inner {
                    display: grid;
                    grid-template-columns: 260px 1fr;
                    gap: 26px;
                    align-items: stretch
                }

                html[data-cc-page="group-meetings-events"] .mega-intro {
                    background: #171717;
                    color: #fff;
                    padding: 34px 30px;
                    display: flex;
                    flex-direction: column;
                    justify-content: space-between;
                    min-height: 235px
                }

                    html[data-cc-page="group-meetings-events"] .mega-intro .eyebrow {
                        color: rgba(255,255,255,.55);
                        margin-bottom: 14px
                    }

                    html[data-cc-page="group-meetings-events"] .mega-intro h3 {
                        font-family: var(--display);
                        font-size: 38px;
                        line-height: 1.02;
                        font-weight: 400;
                        letter-spacing: -.02em;
                        margin-bottom: 16px
                    }

                    html[data-cc-page="group-meetings-events"] .mega-intro p {
                        font-size: 11px;
                        line-height: 1.7;
                        color: rgba(255,255,255,.68);
                        max-width: 210px
                    }

                html[data-cc-page="group-meetings-events"] .mega-intro-link {
                    display: inline-flex;
                    align-items: center;
                    gap: 10px;
                    margin-top: 24px;
                    font-size: 10px;
                    font-weight: 600;
                    letter-spacing: .12em;
                    text-transform: uppercase;
                    color: #fff
                }

                    html[data-cc-page="group-meetings-events"] .mega-intro-link i {
                        transition: transform .25s ease
                    }

                    html[data-cc-page="group-meetings-events"] .mega-intro-link:hover i {
                        transform: translateX(5px)
                    }

                html[data-cc-page="group-meetings-events"] .mega-grid {
                    display: grid;
                    grid-template-columns: repeat(4,minmax(0,1fr));
                    gap: 14px
                }

                html[data-cc-page="group-meetings-events"] .mega-resort {
                    position: relative;
                    min-height: 235px;
                    overflow: hidden;
                    background: #222;
                    color: #fff
                }

                    html[data-cc-page="group-meetings-events"] .mega-resort img {
                        height: 100%;
                        object-fit: cover;
                        transition: transform .65s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-meetings-events"] .mega-resort::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                        transition: background .35s ease
                    }

                html[data-cc-page="group-meetings-events"] .mega-resort-copy {
                    position: absolute;
                    z-index: 2;
                    left: 18px;
                    right: 18px;
                    bottom: 16px
                }

                html[data-cc-page="group-meetings-events"] .mega-resort small {
                    display: block;
                    font-size: 8px;
                    letter-spacing: .16em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.72);
                    margin-bottom: 6px
                }

                html[data-cc-page="group-meetings-events"] .mega-resort strong {
                    display: block;
                    font-family: var(--display);
                    font-size: 23px;
                    line-height: 1.05;
                    font-weight: 400
                }

                html[data-cc-page="group-meetings-events"] .mega-resort .mega-arrow {
                    position: absolute;
                    z-index: 3;
                    right: 16px;
                    top: 16px;
                    width: 34px;
                    height: 34px;
                    border: 1px solid rgba(255,255,255,.6);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border-radius: 50%;
                    font-size: 10px;
                    transform: translateY(-4px);
                    opacity: 0;
                    transition: .3s ease
                }

                html[data-cc-page="group-meetings-events"] .mega-resort:hover img {
                    transform: scale(1.065)
                }

                html[data-cc-page="group-meetings-events"] .mega-resort:hover::after {
                    background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
                }

                html[data-cc-page="group-meetings-events"] .mega-resort:hover .mega-arrow {
                    opacity: 1;
                    transform: none;
                    background: var(--pink);
                    border-color: var(--pink)
                }

                /* Normal dropdown menu */
                html[data-cc-page="group-meetings-events"] .dropdown-menu {
                    position: absolute;
                    top: calc(100% - 1px);
                    left: -18px;
                    width: 235px;
                    background: #fff;
                    color: #171717;
                    padding: 9px 0;
                    border-top: 3px solid var(--pink);
                    box-shadow: 0 18px 45px rgba(0,0,0,.16);
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transform: translateY(14px);
                    transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
                    z-index: 230
                }

                    html[data-cc-page="group-meetings-events"] .dropdown-menu::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        top: -15px;
                        height: 15px;
                        background: transparent
                    }

                html[data-cc-page="group-meetings-events"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-meetings-events"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: none
                }

                html[data-cc-page="group-meetings-events"] .dropdown-menu a {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 14px;
                    padding: 12px 18px;
                    font-size: 11px;
                    line-height: 1.35;
                    letter-spacing: .05em;
                    text-transform: uppercase;
                    border-bottom: 1px solid #eee;
                    transition: color .2s ease,padding-left .2s ease,background .2s ease
                }

                    html[data-cc-page="group-meetings-events"] .dropdown-menu a:last-child {
                        border-bottom: 0
                    }

                    html[data-cc-page="group-meetings-events"] .dropdown-menu a::after {
                        display: none !important
                    }

                    html[data-cc-page="group-meetings-events"] .dropdown-menu a:hover {
                        color: var(--pink);
                        background: #faf7f9;
                        padding-left: 23px
                    }

                    html[data-cc-page="group-meetings-events"] .dropdown-menu a i {
                        font-size: 9px;
                        color: #aaa
                    }

                html[data-cc-page="group-meetings-events"] .header-book {
                    margin-left: 34px
                }

                html[data-cc-page="group-meetings-events"] .mobile-trigger {
                    display: none;
                    margin-left: auto;
                    width: 44px;
                    height: 44px;
                    border: 0;
                    background: transparent;
                    color: inherit;
                    font-size: 23px
                }

                /* mobile drawer */
                html[data-cc-page="group-meetings-events"] .drawer-overlay {
                    position: fixed;
                    inset: 0;
                    background: rgba(0,0,0,.58);
                    z-index: 500;
                    opacity: 0;
                    visibility: hidden;
                    transition: .3s
                }

                    html[data-cc-page="group-meetings-events"] .drawer-overlay.open {
                        opacity: 1;
                        visibility: visible
                    }

                html[data-cc-page="group-meetings-events"] .drawer {
                    position: fixed;
                    right: 0;
                    top: 0;
                    bottom: 0;
                    width: min(390px,92vw);
                    background: #fff;
                    z-index: 510;
                    padding: 28px;
                    transform: translateX(105%);
                    transition: transform .4s cubic-bezier(.22,1,.36,1);
                    overflow: auto
                }

                    html[data-cc-page="group-meetings-events"] .drawer.open {
                        transform: none
                    }

                html[data-cc-page="group-meetings-events"] .drawer-head {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    padding-bottom: 24px;
                    border-bottom: 1px solid #ddd
                }

                    html[data-cc-page="group-meetings-events"] .drawer-head img {
                        width: 132px;
                        filter: invert(1)
                    }

                html[data-cc-page="group-meetings-events"] .drawer-close {
                    width: 42px;
                    height: 42px;
                    border: 0;
                    background: #f2f2f2;
                    border-radius: 50%;
                    font-size: 18px
                }

                html[data-cc-page="group-meetings-events"] .drawer-nav {
                    display: grid;
                    margin-top: 22px
                }

                    html[data-cc-page="group-meetings-events"] .drawer-nav > a, html[data-cc-page="group-meetings-events"] .drawer-toggle {
                        width: 100%;
                        padding: 16px 0;
                        border: 0;
                        border-bottom: 1px solid #eee;
                        background: transparent;
                        color: #171717;
                        font-size: 17px;
                        text-align: left;
                        display: flex;
                        align-items: center;
                        justify-content: space-between;
                        gap: 12px
                    }

                        html[data-cc-page="group-meetings-events"] .drawer-nav > a:hover, html[data-cc-page="group-meetings-events"] .drawer-toggle:hover {
                            color: var(--pink)
                        }

                        html[data-cc-page="group-meetings-events"] .drawer-toggle i {
                            font-size: 12px;
                            transition: transform .25s ease
                        }

                html[data-cc-page="group-meetings-events"] .drawer-group.open > .drawer-toggle i {
                    transform: rotate(180deg)
                }

                html[data-cc-page="group-meetings-events"] .drawer-sub {
                    display: grid;
                    grid-template-rows: 0fr;
                    transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
                    background: #fafafa
                }

                    html[data-cc-page="group-meetings-events"] .drawer-sub > div {
                        overflow: hidden
                    }

                html[data-cc-page="group-meetings-events"] .drawer-group.open > .drawer-sub {
                    grid-template-rows: 1fr
                }

                html[data-cc-page="group-meetings-events"] .drawer-sub a {
                    display: block;
                    padding: 12px 16px;
                    border-bottom: 1px solid #eee;
                    font-size: 13px;
                    color: #555
                }

                    html[data-cc-page="group-meetings-events"] .drawer-sub a:hover {
                        color: var(--pink)
                    }

                html[data-cc-page="group-meetings-events"] .drawer-resort-list {
                    padding: 8px 0
                }

                html[data-cc-page="group-meetings-events"] .drawer-resort {
                    display: grid !important;
                    grid-template-columns: 66px 1fr;
                    gap: 12px;
                    align-items: center;
                    padding: 9px 10px !important
                }

                    html[data-cc-page="group-meetings-events"] .drawer-resort img {
                        width: 66px;
                        height: 48px;
                        object-fit: cover
                    }

                    html[data-cc-page="group-meetings-events"] .drawer-resort strong {
                        font-family: var(--display);
                        font-size: 16px;
                        font-weight: 400;
                        color: #222
                    }

                    html[data-cc-page="group-meetings-events"] .drawer-resort small {
                        display: block;
                        font-size: 8px;
                        letter-spacing: .1em;
                        text-transform: uppercase;
                        color: #999;
                        margin-top: 3px
                    }

                html[data-cc-page="group-meetings-events"] .drawer .btn {
                    width: 100%;
                    margin-top: 25px
                }

                /* HERO */
                html[data-cc-page="group-meetings-events"] .hero {
                    position: relative;
                    height: 100svh;
                    min-height: 760px;
                    background: #111;
                    overflow: hidden;
                    color: #fff
                }

                html[data-cc-page="group-meetings-events"] .hero-slides {
                    position: absolute;
                    inset: 0
                }

                html[data-cc-page="group-meetings-events"] .hero-slide {
                    position: absolute;
                    inset: 0;
                    opacity: 0;
                    visibility: hidden;
                    transition: opacity 1.15s ease,visibility 1.15s ease
                }

                    html[data-cc-page="group-meetings-events"] .hero-slide.active {
                        opacity: 1;
                        visibility: visible;
                        z-index: 2
                    }

                    html[data-cc-page="group-meetings-events"] .hero-slide img {
                        height: 100%;
                        object-fit: cover;
                        transform: scale(1.035);
                        will-change: transform;
                        transform-origin: center center
                    }

                    html[data-cc-page="group-meetings-events"] .hero-slide.active img {
                        animation: heroKenBurnsA_cc_groupmeetingsevents 7.2s ease-in-out both
                    }

                    html[data-cc-page="group-meetings-events"] .hero-slide:nth-child(even).active img {
                        animation-name: heroKenBurnsB_cc_groupmeetingsevents
                    }

                    html[data-cc-page="group-meetings-events"] .hero-slide:nth-child(3).active img {
                        animation-name: heroKenBurnsC_cc_groupmeetingsevents
                    }

                @keyframes heroKenBurnsA_cc_groupmeetingsevents {
                    0% {
                        transform: scale(1.035) translate3d(0,0,0)
                    }

                    100% {
                        transform: scale(1.14) translate3d(-1.4%,-1.1%,0)
                    }
                }

                @keyframes heroKenBurnsB_cc_groupmeetingsevents {
                    0% {
                        transform: scale(1.04) translate3d(-1.2%,0,0)
                    }

                    100% {
                        transform: scale(1.145) translate3d(1.2%,-1%,0)
                    }
                }

                @keyframes heroKenBurnsC_cc_groupmeetingsevents {
                    0% {
                        transform: scale(1.04) translate3d(0,-.5%,0)
                    }

                    100% {
                        transform: scale(1.15) translate3d(-.8%,1%,0)
                    }
                }

                html[data-cc-page="group-meetings-events"] .hero::after {
                    content: "";
                    position: absolute;
                    inset: 0;
                    z-index: 3;
                    background: linear-gradient(180deg,rgba(0,0,0,.64) 0%,rgba(0,0,0,.16) 38%,rgba(0,0,0,.06) 58%,rgba(0,0,0,.62) 100%),linear-gradient(90deg,rgba(0,0,0,.35),transparent 48%);
                    pointer-events: none
                }

                html[data-cc-page="group-meetings-events"] .hero-content {
                    position: relative;
                    z-index: 4;
                    height: 100%;
                    display: flex;
                    align-items: flex-end;
                    padding-bottom: 125px
                }

                html[data-cc-page="group-meetings-events"] .hero-copy {
                    max-width: 680px;
                    color: #fff
                }

                html[data-cc-page="group-meetings-events"] .hero-kicker {
                    display: flex;
                    align-items: center;
                    gap: 13px;
                    margin-bottom: 17px;
                    opacity: .9
                }

                    html[data-cc-page="group-meetings-events"] .hero-kicker::before {
                        content: "";
                        width: 44px;
                        height: 2px;
                        background: var(--pink)
                    }

                html[data-cc-page="group-meetings-events"] .hero-title {
                    font-family: var(--display);
                    font-size: clamp(52px,5.6vw,92px);
                    line-height: .96;
                    font-weight: 400;
                    letter-spacing: -.035em;
                    max-width: 760px
                }

                html[data-cc-page="group-meetings-events"] .hero-subtitle {
                    font-size: 15px;
                    line-height: 1.7;
                    margin-top: 19px;
                    max-width: 480px;
                    color: rgba(255,255,255,.9)
                }

                html[data-cc-page="group-meetings-events"] .hero-actions {
                    display: flex;
                    align-items: center;
                    gap: 14px;
                    margin-top: 28px
                }

                html[data-cc-page="group-meetings-events"] .hero-copy.animate .hero-kicker, html[data-cc-page="group-meetings-events"] .hero-copy.animate .hero-title, html[data-cc-page="group-meetings-events"] .hero-copy.animate .hero-subtitle, html[data-cc-page="group-meetings-events"] .hero-copy.animate .hero-actions {
                    animation: heroUp_cc_groupmeetingsevents .9s cubic-bezier(.22,1,.36,1) both
                }

                html[data-cc-page="group-meetings-events"] .hero-copy.animate .hero-title {
                    animation-delay: .08s
                }

                html[data-cc-page="group-meetings-events"] .hero-copy.animate .hero-subtitle {
                    animation-delay: .17s
                }

                html[data-cc-page="group-meetings-events"] .hero-copy.animate .hero-actions {
                    animation-delay: .26s
                }

                @keyframes heroUp_cc_groupmeetingsevents {
                    from {
                        opacity: 0;
                        transform: translateY(45px)
                    }

                    to {
                        opacity: 1;
                        transform: none
                    }
                }

                html[data-cc-page="group-meetings-events"] .hero-control {
                    position: absolute;
                    z-index: 26;
                    right: 42px;
                    bottom: 112px;
                    display: flex;
                    align-items: center;
                    gap: 10px
                }

                html[data-cc-page="group-meetings-events"] .hero-arrow {
                    width: 52px;
                    height: 52px;
                    border: 1px solid rgba(255,255,255,.55);
                    background: rgba(0,0,0,.16);
                    color: #fff;
                    transition: .25s
                }

                    html[data-cc-page="group-meetings-events"] .hero-arrow:hover {
                        background: var(--pink);
                        border-color: var(--pink)
                    }

                html[data-cc-page="group-meetings-events"] .hero-count {
                    position: absolute;
                    z-index: 6;
                    right: 46px;
                    top: 50%;
                    transform: translateY(-50%);
                    display: grid;
                    gap: 13px
                }

                    html[data-cc-page="group-meetings-events"] .hero-count button {
                        width: 32px;
                        height: 32px;
                        border: 0;
                        background: transparent;
                        color: rgba(255,255,255,.6);
                        font-size: 11px;
                        position: relative
                    }

                        html[data-cc-page="group-meetings-events"] .hero-count button::after {
                            content: "";
                            position: absolute;
                            right: -14px;
                            top: 50%;
                            width: 0;
                            height: 1px;
                            background: #fff;
                            transition: .3s
                        }

                        html[data-cc-page="group-meetings-events"] .hero-count button.active {
                            color: #fff
                        }

                            html[data-cc-page="group-meetings-events"] .hero-count button.active::after {
                                width: 22px
                            }

                /* BOOKING DOCK */
                html[data-cc-page="group-meetings-events"] .booking-shell {
                    position: relative;
                    z-index: 30;
                    margin-top: -62px
                }

                html[data-cc-page="group-meetings-events"] .booking-card {
                    background: #fff;
                    box-shadow: 0 20px 55px rgba(0,0,0,.14);
                    padding: 18px 20px;
                    border-radius: 2px;
                    position: relative
                }

                html[data-cc-page="group-meetings-events"] .booking-form {
                    display: grid;
                    grid-template-columns: 1.25fr 1fr 1fr 1.35fr .82fr auto;
                    gap: 10px;
                    align-items: end
                }

                html[data-cc-page="group-meetings-events"] .field {
                    position: relative;
                    min-width: 0
                }

                    html[data-cc-page="group-meetings-events"] .field label {
                        display: block;
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .16em;
                        text-transform: uppercase;
                        margin-bottom: 7px;
                        color: #777
                    }

                html[data-cc-page="group-meetings-events"] .control {
                    height: 50px;
                    border: 1px solid #e0e0e0;
                    display: flex;
                    align-items: center;
                    position: relative;
                    background: #fafafa;
                    transition: .25s;
                    width: 100%
                }

                    html[data-cc-page="group-meetings-events"] .control:focus-within, html[data-cc-page="group-meetings-events"] .control.is-open {
                        border-color: var(--pink);
                        background: #fff;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.07)
                    }

                    html[data-cc-page="group-meetings-events"] .control > i {
                        position: absolute;
                        left: 14px;
                        color: var(--pink);
                        font-size: 13px;
                        z-index: 2;
                        pointer-events: none
                    }

                    html[data-cc-page="group-meetings-events"] .control input, html[data-cc-page="group-meetings-events"] .control select {
                        height: 100%;
                        width: 100%;
                        padding: 0 38px 0 38px;
                        border: 0;
                        background: transparent;
                        outline: 0;
                        appearance: none;
                        -webkit-appearance: none;
                        font-size: 12px;
                        color: #222;
                        min-width: 0
                    }

                    html[data-cc-page="group-meetings-events"] .control .down {
                        position: absolute;
                        right: 13px;
                        top: 50%;
                        transform: translateY(-50%);
                        width: 20px;
                        height: 20px;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        color: #777;
                        font-size: 10px;
                        pointer-events: none;
                        z-index: 3
                    }

                        html[data-cc-page="group-meetings-events"] .control .down i {
                            position: static !important;
                            left: auto !important;
                            color: inherit !important;
                            font-size: 10px !important;
                            pointer-events: none !important
                        }

                html[data-cc-page="group-meetings-events"] .guest-trigger {
                    border: 1px solid #e0e0e0;
                    background: #fafafa;
                    border-radius: 0;
                    text-align: left;
                    cursor: pointer;
                    padding: 0 40px 0 40px;
                    font-size: 12px;
                    color: #222;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis
                }

                    html[data-cc-page="group-meetings-events"] .guest-trigger .guest-summary {
                        display: block;
                        overflow: hidden;
                        text-overflow: ellipsis;
                        white-space: nowrap;
                        width: 100%
                    }

                html[data-cc-page="group-meetings-events"] .guest-popover {
                    position: absolute;
                    left: 0;
                    top: calc(100% + 12px);
                    width: 390px;
                    max-width: min(390px,calc(100vw - 40px));
                    background: #fff;
                    border: 1px solid #e8e8e8;
                    box-shadow: 0 22px 55px rgba(0,0,0,.18);
                    padding: 20px;
                    z-index: 120;
                    opacity: 0;
                    visibility: hidden;
                    transform: translateY(8px);
                    transition: .22s ease
                }

                    html[data-cc-page="group-meetings-events"] .guest-popover.open {
                        opacity: 1;
                        visibility: visible;
                        transform: none
                    }

                    html[data-cc-page="group-meetings-events"] .guest-popover::before {
                        content: "";
                        position: absolute;
                        top: -7px;
                        left: 28px;
                        width: 12px;
                        height: 12px;
                        background: #fff;
                        border-left: 1px solid #e8e8e8;
                        border-top: 1px solid #e8e8e8;
                        transform: rotate(45deg)
                    }

                html[data-cc-page="group-meetings-events"] .guest-popover-head {
                    display: flex;
                    align-items: flex-start;
                    justify-content: space-between;
                    gap: 18px;
                    padding-bottom: 15px;
                    margin-bottom: 4px;
                    border-bottom: 1px solid #eee
                }

                    html[data-cc-page="group-meetings-events"] .guest-popover-head strong {
                        display: block;
                        font-family: var(--display);
                        font-size: 24px;
                        line-height: 1;
                        font-weight: 400;
                        color: #222
                    }

                    html[data-cc-page="group-meetings-events"] .guest-popover-head span {
                        display: block;
                        font-size: 10px;
                        line-height: 1.55;
                        color: #888;
                        margin-top: 6px
                    }

                html[data-cc-page="group-meetings-events"] .guest-close {
                    width: 30px;
                    height: 30px;
                    border: 0;
                    background: #f4f4f4;
                    color: #444;
                    border-radius: 50%
                }

                html[data-cc-page="group-meetings-events"] .rooms-container {
                    max-height: 360px;
                    overflow: auto;
                    padding-right: 3px
                }

                html[data-cc-page="group-meetings-events"] .room-block {
                    padding: 17px 0;
                    border-bottom: 1px solid #ededed
                }

                html[data-cc-page="group-meetings-events"] .room-head {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    margin-bottom: 13px
                }

                    html[data-cc-page="group-meetings-events"] .room-head strong {
                        font-size: 11px;
                        letter-spacing: .1em;
                        text-transform: uppercase
                    }

                html[data-cc-page="group-meetings-events"] .remove-room {
                    border: 0;
                    background: transparent;
                    color: #9a9a9a;
                    font-size: 10px;
                    text-decoration: underline
                }

                    html[data-cc-page="group-meetings-events"] .remove-room:hover {
                        color: var(--pink)
                    }

                html[data-cc-page="group-meetings-events"] .guest-row {
                    display: grid;
                    grid-template-columns: 1fr auto;
                    align-items: center;
                    gap: 16px;
                    margin: 10px 0
                }

                html[data-cc-page="group-meetings-events"] .guest-row-label strong {
                    display: block;
                    font-size: 12px;
                    font-weight: 500;
                    color: #242424
                }

                html[data-cc-page="group-meetings-events"] .guest-row-label span {
                    display: block;
                    font-size: 9px;
                    color: #929292;
                    margin-top: 1px
                }

                html[data-cc-page="group-meetings-events"] .stepper {
                    display: flex;
                    align-items: center;
                    gap: 12px
                }

                    html[data-cc-page="group-meetings-events"] .stepper button {
                        width: 30px;
                        height: 30px;
                        border: 1px solid #ddd;
                        background: #fff;
                        color: #222;
                        border-radius: 50%;
                        font-size: 12px;
                        transition: .2s
                    }

                        html[data-cc-page="group-meetings-events"] .stepper button:hover:not(:disabled) {
                            border-color: var(--pink);
                            color: var(--pink)
                        }

                        html[data-cc-page="group-meetings-events"] .stepper button:disabled {
                            opacity: .35;
                            cursor: not-allowed
                        }

                    html[data-cc-page="group-meetings-events"] .stepper output {
                        min-width: 18px;
                        text-align: center;
                        font-size: 12px;
                        color: #222
                    }

                html[data-cc-page="group-meetings-events"] .child-ages {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    gap: 8px;
                    margin-top: 12px
                }

                html[data-cc-page="group-meetings-events"] .child-age label {
                    font-size: 8px;
                    margin-bottom: 5px;
                    color: #8a8a8a
                }

                html[data-cc-page="group-meetings-events"] .child-age select {
                    width: 100%;
                    height: 38px;
                    border: 1px solid #ddd;
                    background: #fafafa;
                    padding: 0 28px 0 10px;
                    font-size: 10px;
                    outline: 0;
                    appearance: none;
                    -webkit-appearance: none
                }

                html[data-cc-page="group-meetings-events"] .child-age {
                    position: relative
                }

                    html[data-cc-page="group-meetings-events"] .child-age::after {
                        content: "\f107";
                        font-family: "Font Awesome 6 Free";
                        font-weight: 900;
                        position: absolute;
                        right: 10px;
                        bottom: 12px;
                        font-size: 9px;
                        color: #777;
                        pointer-events: none
                    }

                html[data-cc-page="group-meetings-events"] .guest-actions {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 10px;
                    padding-top: 16px
                }

                html[data-cc-page="group-meetings-events"] .add-room {
                    border: 0;
                    background: transparent;
                    color: var(--pink);
                    font-size: 10px;
                    font-weight: 600;
                    letter-spacing: .08em;
                    text-transform: uppercase
                }

                    html[data-cc-page="group-meetings-events"] .add-room:disabled {
                        opacity: .4;
                        cursor: not-allowed
                    }

                html[data-cc-page="group-meetings-events"] .guest-done {
                    height: 38px;
                    border: 0;
                    background: #171717;
                    color: #fff;
                    padding: 0 20px;
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .1em;
                    text-transform: uppercase
                }

                    html[data-cc-page="group-meetings-events"] .guest-done:hover {
                        background: var(--pink)
                    }

                html[data-cc-page="group-meetings-events"] .booking-submit {
                    height: 50px;
                    border: 0;
                    background: var(--pink);
                    color: #fff;
                    padding: 0 24px;
                    font-size: 11px;
                    font-weight: 600;
                    letter-spacing: .1em;
                    text-transform: uppercase;
                    white-space: nowrap;
                    transition: .3s
                }

                    html[data-cc-page="group-meetings-events"] .booking-submit:hover {
                        background: var(--pink-dark)
                    }

                /* MOTION */
                html[data-cc-page="group-meetings-events"] .reveal {
                    opacity: 0;
                    transform: translateY(58px) scale(.985);
                    filter: blur(7px);
                    transition: opacity 1s cubic-bezier(.22,1,.36,1),transform 1.05s cubic-bezier(.22,1,.36,1),filter .9s ease;
                    transition-delay: var(--delay,0ms)
                }

                html[data-cc-page="group-meetings-events"] .reveal-left {
                    opacity: 0;
                    transform: translateX(-72px);
                    filter: blur(6px);
                    transition: opacity 1.05s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .9s ease;
                    transition-delay: var(--delay,0ms)
                }

                html[data-cc-page="group-meetings-events"] .reveal-right {
                    opacity: 0;
                    transform: translateX(72px);
                    filter: blur(6px);
                    transition: opacity 1.05s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .9s ease;
                    transition-delay: var(--delay,0ms)
                }

                    html[data-cc-page="group-meetings-events"] .reveal.in-view, html[data-cc-page="group-meetings-events"] .reveal-left.in-view, html[data-cc-page="group-meetings-events"] .reveal-right.in-view {
                        opacity: 1;
                        transform: none;
                        filter: blur(0)
                    }

                    html[data-cc-page="group-meetings-events"] .reveal img, html[data-cc-page="group-meetings-events"] .reveal-left img, html[data-cc-page="group-meetings-events"] .reveal-right img {
                        transition: transform 1.35s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-meetings-events"] .reveal:not(.in-view) > img, html[data-cc-page="group-meetings-events"] .reveal-left:not(.in-view) > img, html[data-cc-page="group-meetings-events"] .reveal-right:not(.in-view) > img {
                        transform: scale(1.045)
                    }

                    html[data-cc-page="group-meetings-events"] .reveal.in-view > img, html[data-cc-page="group-meetings-events"] .reveal-left.in-view > img, html[data-cc-page="group-meetings-events"] .reveal-right.in-view > img {
                        transform: scale(1)
                    }

                /* BRAND STORY / COLLECTION INTRO */
                html[data-cc-page="group-meetings-events"] .brand-story {
                    padding: 145px 0 155px;
                    background: #fff;
                    position: relative;
                    overflow: hidden
                }

                    html[data-cc-page="group-meetings-events"] .brand-story::before {
                        content: "04";
                        position: absolute;
                        left: -18px;
                        top: 28px;
                        font-family: var(--display);
                        font-size: clamp(190px,23vw,360px);
                        line-height: .82;
                        letter-spacing: -.09em;
                        color: #f3f0f1;
                        z-index: 0;
                        pointer-events: none
                    }

                html[data-cc-page="group-meetings-events"] .brand-story-grid {
                    position: relative;
                    z-index: 2;
                    display: grid;
                    grid-template-columns: .9fr 1.15fr;
                    gap: 100px;
                    align-items: center
                }

                html[data-cc-page="group-meetings-events"] .brand-story-copy {
                    padding-left: 55px
                }

                    html[data-cc-page="group-meetings-events"] .brand-story-copy .eyebrow {
                        color: var(--pink);
                        margin-bottom: 22px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-copy h2 {
                        font-family: var(--display);
                        font-size: clamp(55px,5.8vw,88px);
                        line-height: .98;
                        font-weight: 400;
                        letter-spacing: -.045em;
                        max-width: 690px
                    }

                        html[data-cc-page="group-meetings-events"] .brand-story-copy h2 em {
                            font-style: italic;
                            color: var(--pink)
                        }

                    html[data-cc-page="group-meetings-events"] .brand-story-copy p {
                        font-size: 14px;
                        line-height: 1.9;
                        color: var(--muted);
                        max-width: 510px;
                        margin-top: 28px
                    }

                html[data-cc-page="group-meetings-events"] .brand-story-visual {
                    position: relative;
                    min-height: 610px
                }

                html[data-cc-page="group-meetings-events"] .brand-story-main-image {
                    position: absolute;
                    right: 0;
                    top: 0;
                    width: 92%;
                    height: 560px;
                    overflow: hidden;
                    background: #111
                }

                    html[data-cc-page="group-meetings-events"] .brand-story-main-image::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,transparent 48%,rgba(25,0,15,.44) 100%);
                        pointer-events: none
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-main-image img {
                        height: 100%;
                        object-fit: cover;
                        transform: scale(1.04);
                        transition: transform 1.8s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-main-image.in-view img {
                        transform: scale(1)
                    }

                html[data-cc-page="group-meetings-events"] .brand-story-note {
                    position: absolute;
                    left: 8%;
                    bottom: 50px;
                    width: min(620px,72%);
                    color: #fff;
                    padding: 30px 46px 30px 30px;
                    z-index: 3;
                    background: linear-gradient(90deg,rgba(169,0,97,.96) 0%,rgba(169,0,97,.72) 58%,rgba(169,0,97,0) 100%)
                }

                    html[data-cc-page="group-meetings-events"] .brand-story-note strong {
                        display: block;
                        font-family: var(--display);
                        font-size: 36px;
                        line-height: 1;
                        font-weight: 400;
                        margin-bottom: 11px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-note p {
                        font-size: 11px;
                        line-height: 1.7;
                        color: rgba(255,255,255,.82);
                        max-width: 430px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-note span {
                        display: block;
                        margin-top: 18px;
                        color: #fff;
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .15em;
                        text-transform: uppercase
                    }

                html[data-cc-page="group-meetings-events"] .brand-story-stamp {
                    position: absolute;
                    right: 22px;
                    bottom: 20px;
                    width: 118px;
                    height: 118px;
                    border-radius: 50%;
                    background: #fff;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    text-align: center;
                    box-shadow: 0 15px 35px rgba(0,0,0,.12);
                    z-index: 4
                }

                    html[data-cc-page="group-meetings-events"] .brand-story-stamp strong {
                        font-family: var(--display);
                        font-size: 38px;
                        line-height: .8;
                        font-weight: 400;
                        color: var(--pink)
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-stamp small {
                        display: block;
                        font-size: 8px;
                        line-height: 1.35;
                        letter-spacing: .1em;
                        text-transform: uppercase;
                        color: #555;
                        margin-top: 7px
                    }

                /* RESORT STORIES */
                html[data-cc-page="group-meetings-events"] .resorts {
                    padding: 0 0 150px;
                    background: var(--paper);
                    overflow: hidden
                }

                html[data-cc-page="group-meetings-events"] .resort-head {
                    display: flex;
                    align-items: flex-end;
                    justify-content: space-between;
                    padding: 110px 0 52px
                }

                    html[data-cc-page="group-meetings-events"] .resort-head .small-title {
                        font-family: var(--display);
                        font-size: 48px;
                        font-weight: 400;
                        line-height: 1.1
                    }

                        html[data-cc-page="group-meetings-events"] .resort-head .small-title span {
                            display: block;
                            font-family: var(--body);
                            font-size: 11px;
                            letter-spacing: .18em;
                            text-transform: uppercase;
                            color: var(--pink);
                            margin-bottom: 12px
                        }

                html[data-cc-page="group-meetings-events"] .resort-nav {
                    display: flex;
                    gap: 8px
                }

                    html[data-cc-page="group-meetings-events"] .resort-nav button {
                        width: 48px;
                        height: 48px;
                        border: 1px solid #ccc;
                        background: transparent
                    }

                        html[data-cc-page="group-meetings-events"] .resort-nav button:hover {
                            border-color: var(--pink);
                            color: var(--pink)
                        }

                html[data-cc-page="group-meetings-events"] .resort-viewport {
                    overflow: hidden;
                    cursor: grab;
                    touch-action: pan-y;
                    user-select: none;
                    -webkit-user-select: none
                }

                    html[data-cc-page="group-meetings-events"] .resort-viewport.is-dragging {
                        cursor: grabbing
                    }

                html[data-cc-page="group-meetings-events"] .resort-track {
                    display: flex;
                    gap: 24px;
                    transition: transform .7s cubic-bezier(.22,1,.36,1);
                    will-change: transform
                }

                    html[data-cc-page="group-meetings-events"] .resort-track.is-dragging {
                        transition: none
                    }

                html[data-cc-page="group-meetings-events"] .resort-story {
                    flex: 0 0 min(1040px,76vw);
                    height: 565px;
                    position: relative;
                    overflow: hidden;
                    background: #111;
                    color: #fff
                }

                    html[data-cc-page="group-meetings-events"] .resort-story img {
                        height: 100%;
                        object-fit: cover;
                        transition: transform 1.6s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-meetings-events"] .resort-story:hover img {
                        transform: scale(1.035)
                    }

                    html[data-cc-page="group-meetings-events"] .resort-story::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,transparent 28%,rgba(0,0,0,.08) 48%,rgba(0,0,0,.72) 100%)
                    }

                html[data-cc-page="group-meetings-events"] .story-index {
                    position: absolute;
                    z-index: 2;
                    top: 32px;
                    left: 34px;
                    font-size: 10px;
                    letter-spacing: .16em;
                    text-transform: uppercase;
                    background: rgba(0,0,0,.28);
                    backdrop-filter: blur(8px);
                    padding: 9px 12px
                }

                html[data-cc-page="group-meetings-events"] .story-copy {
                    position: absolute;
                    z-index: 2;
                    left: 46px;
                    right: 46px;
                    bottom: 42px;
                    display: flex;
                    align-items: flex-end;
                    justify-content: space-between;
                    gap: 30px
                }

                    html[data-cc-page="group-meetings-events"] .story-copy h3 {
                        font-family: var(--display);
                        font-size: clamp(45px,4.4vw,72px);
                        line-height: 1;
                        font-weight: 400;
                        max-width: 700px;
                        letter-spacing: -.03em
                    }

                    html[data-cc-page="group-meetings-events"] .story-copy p {
                        font-size: 13px;
                        line-height: 1.7;
                        max-width: 330px;
                        color: rgba(255,255,255,.84);
                        margin-bottom: 5px
                    }

                html[data-cc-page="group-meetings-events"] .story-link {
                    position: absolute;
                    right: 38px;
                    top: 34px;
                    z-index: 2;
                    width: 54px;
                    height: 54px;
                    border-radius: 50%;
                    border: 1px solid rgba(255,255,255,.65);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    transition: .3s
                }

                    html[data-cc-page="group-meetings-events"] .story-link:hover {
                        background: #fff;
                        color: var(--pink);
                        transform: rotate(-35deg)
                    }

                html[data-cc-page="group-meetings-events"] .resort-controls-bottom {
                    display: grid;
                    grid-template-columns: auto 1fr auto;
                    align-items: center;
                    gap: 22px;
                    margin-top: 28px
                }

                html[data-cc-page="group-meetings-events"] .resort-drag-hint {
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: #8b8b8b;
                    white-space: nowrap
                }

                html[data-cc-page="group-meetings-events"] .resort-progress {
                    height: 18px;
                    position: relative;
                    cursor: pointer;
                    display: flex;
                    align-items: center;
                    touch-action: none
                }

                    html[data-cc-page="group-meetings-events"] .resort-progress::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        height: 2px;
                        background: #d6d3d4
                    }

                    html[data-cc-page="group-meetings-events"] .resort-progress span {
                        position: absolute;
                        left: 0;
                        height: 4px;
                        width: 25%;
                        background: var(--pink);
                        transition: transform .55s cubic-bezier(.22,1,.36,1);
                        z-index: 2
                    }

                    html[data-cc-page="group-meetings-events"] .resort-progress:hover span {
                        height: 6px
                    }

                html[data-cc-page="group-meetings-events"] .resort-bottom-nav {
                    display: flex;
                    gap: 7px
                }

                    html[data-cc-page="group-meetings-events"] .resort-bottom-nav button {
                        width: 44px;
                        height: 44px;
                        border: 1px solid #c8c5c6;
                        background: transparent;
                        transition: .25s
                    }

                        html[data-cc-page="group-meetings-events"] .resort-bottom-nav button:hover {
                            background: var(--pink);
                            border-color: var(--pink);
                            color: #fff
                        }

                /* LOYALTY CHAPTER */
                html[data-cc-page="group-meetings-events"] .loyalty {
                    min-height: 740px;
                    position: relative;
                    background-color: #090909;
                    background-image: url("../images/Loyalty-Section-Background.jpg"),url("https://charmillionresorts.com/images/uploads/Charmillion-Club-Resort-lobby.jpg");
                    background-position: center,center;
                    background-size: cover,cover;
                    background-repeat: no-repeat,no-repeat;
                    background-attachment: fixed,fixed;
                    color: #fff;
                    display: flex;
                    align-items: center;
                    overflow: hidden
                }

                    html[data-cc-page="group-meetings-events"] .loyalty::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.58) 48%,rgba(0,0,0,.08) 100%)
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty .container {
                        position: relative;
                        z-index: 2
                    }

                html[data-cc-page="group-meetings-events"] .loyalty-copy {
                    max-width: 710px
                }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy .eyebrow {
                        color: #fff;
                        margin-bottom: 25px
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy h2 {
                        font-family: var(--display);
                        font-size: clamp(54px,6vw,86px);
                        font-weight: 400;
                        line-height: 1.02;
                        letter-spacing: -.04em
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy p {
                        font-size: 15px;
                        line-height: 1.8;
                        color: rgba(255,255,255,.8);
                        max-width: 480px;
                        margin: 24px 0 30px
                    }

                html[data-cc-page="group-meetings-events"] .loyalty-ring {
                    position: absolute;
                    right: -80px;
                    top: 50%;
                    width: 420px;
                    height: 420px;
                    border: 1px solid rgba(255,255,255,.16);
                    border-radius: 50%;
                    transform: translateY(-50%)
                }

                    html[data-cc-page="group-meetings-events"] .loyalty-ring::before, html[data-cc-page="group-meetings-events"] .loyalty-ring::after {
                        content: "";
                        position: absolute;
                        border: 1px solid rgba(255,255,255,.11);
                        border-radius: 50%;
                        inset: 55px
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-ring::after {
                        inset: 110px
                    }

                /* OFFERS MOSAIC */
                html[data-cc-page="group-meetings-events"] .offers {
                    padding: 150px 0;
                    background: #fff
                }

                html[data-cc-page="group-meetings-events"] .offers-intro {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    gap: 90px;
                    align-items: end;
                    margin-bottom: 62px
                }

                    html[data-cc-page="group-meetings-events"] .offers-intro h2 {
                        font-family: var(--display);
                        font-size: clamp(50px,5vw,76px);
                        line-height: 1.02;
                        font-weight: 400;
                        letter-spacing: -.035em
                    }

                html[data-cc-page="group-meetings-events"] .offers-intro-copy {
                    max-width: 510px;
                    margin-left: auto
                }

                    html[data-cc-page="group-meetings-events"] .offers-intro-copy .eyebrow {
                        color: var(--pink);
                        margin-bottom: 18px
                    }

                    html[data-cc-page="group-meetings-events"] .offers-intro-copy p {
                        font-size: 14px;
                        line-height: 1.8;
                        color: var(--muted)
                    }

                html[data-cc-page="group-meetings-events"] .offer-mosaic {
                    display: grid;
                    grid-template-columns: 1.25fr .75fr;
                    grid-template-rows: 310px 310px;
                    gap: 22px
                }

                html[data-cc-page="group-meetings-events"] .offer-tile {
                    position: relative;
                    overflow: hidden;
                    background: #111;
                    color: #fff
                }

                    html[data-cc-page="group-meetings-events"] .offer-tile.featured {
                        grid-row: 1/3
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile img {
                        height: 100%;
                        object-fit: cover;
                        transition: transform .8s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile:hover img {
                        transform: scale(1.045)
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,transparent 30%,rgba(0,0,0,.72) 100%)
                    }

                html[data-cc-page="group-meetings-events"] .offer-content {
                    position: absolute;
                    z-index: 2;
                    left: 30px;
                    right: 30px;
                    bottom: 28px
                }

                    html[data-cc-page="group-meetings-events"] .offer-content span {
                        font-size: 9px;
                        letter-spacing: .16em;
                        text-transform: uppercase;
                        color: rgba(255,255,255,.72)
                    }

                    html[data-cc-page="group-meetings-events"] .offer-content h3 {
                        font-family: var(--display);
                        font-size: 38px;
                        line-height: 1.05;
                        font-weight: 400;
                        margin-top: 6px
                    }

                html[data-cc-page="group-meetings-events"] .featured .offer-content h3 {
                    font-size: 58px
                }

                html[data-cc-page="group-meetings-events"] .offer-arrow {
                    position: absolute;
                    z-index: 2;
                    right: 25px;
                    top: 25px;
                    width: 44px;
                    height: 44px;
                    border: 1px solid rgba(255,255,255,.65);
                    border-radius: 50%;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    transition: .3s
                }

                html[data-cc-page="group-meetings-events"] .offer-tile:hover .offer-arrow {
                    background: #fff;
                    color: var(--pink);
                    transform: rotate(-35deg)
                }

                html[data-cc-page="group-meetings-events"] .offer-strip {
                    display: grid;
                    grid-template-columns: repeat(2,1fr);
                    gap: 22px;
                    margin-top: 22px
                }

                    html[data-cc-page="group-meetings-events"] .offer-strip .offer-tile {
                        height: 280px
                    }

                html[data-cc-page="group-meetings-events"] .offers-bottom {
                    display: flex;
                    justify-content: flex-end;
                    margin-top: 32px
                }

                /* MEET / CELEBRATE - expanded destination chapter */
                html[data-cc-page="group-meetings-events"] .gather {
                    background: var(--paper);
                    padding: 155px 0 165px;
                    overflow: hidden
                }

                html[data-cc-page="group-meetings-events"] .gather-head {
                    display: grid;
                    grid-template-columns: 1.05fr .95fr;
                    gap: 90px;
                    align-items: end;
                    margin-bottom: 58px
                }

                    html[data-cc-page="group-meetings-events"] .gather-head h2 {
                        font-family: var(--display);
                        font-size: clamp(54px,5.7vw,84px);
                        font-weight: 400;
                        line-height: .98;
                        letter-spacing: -.045em;
                        max-width: 760px
                    }

                html[data-cc-page="group-meetings-events"] .gather-head-copy {
                    max-width: 530px;
                    margin-left: auto
                }

                    html[data-cc-page="group-meetings-events"] .gather-head-copy .eyebrow {
                        color: var(--pink);
                        margin-bottom: 18px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-head-copy p {
                        font-size: 14px;
                        line-height: 1.85;
                        color: var(--muted)
                    }

                html[data-cc-page="group-meetings-events"] .gather-scenes {
                    display: grid;
                    grid-template-columns: 1.08fr .92fr;
                    gap: 24px
                }

                html[data-cc-page="group-meetings-events"] .gather-scene {
                    position: relative;
                    min-height: 650px;
                    overflow: hidden;
                    background: #111;
                    color: #fff
                }

                    html[data-cc-page="group-meetings-events"] .gather-scene.secondary {
                        min-height: 650px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene img {
                        position: absolute;
                        inset: 0;
                        width: 100%;
                        height: 100%;
                        object-fit: cover;
                        transition: transform 1.25s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene:hover img {
                        transform: scale(1.045)
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,rgba(0,0,0,.08) 18%,rgba(0,0,0,.18) 45%,rgba(0,0,0,.82) 100%)
                    }

                html[data-cc-page="group-meetings-events"] .gather-scene-content {
                    position: absolute;
                    z-index: 2;
                    left: 42px;
                    right: 42px;
                    bottom: 40px
                }

                html[data-cc-page="group-meetings-events"] .gather-scene-index {
                    position: absolute;
                    z-index: 2;
                    top: 28px;
                    left: 30px;
                    font-size: 10px;
                    letter-spacing: .18em;
                    text-transform: uppercase;
                    background: rgba(0,0,0,.28);
                    backdrop-filter: blur(8px);
                    padding: 9px 12px
                }

                html[data-cc-page="group-meetings-events"] .gather-scene-content .eyebrow {
                    color: rgba(255,255,255,.72);
                    margin-bottom: 12px
                }

                html[data-cc-page="group-meetings-events"] .gather-scene-content h3 {
                    font-family: var(--display);
                    font-size: clamp(44px,4.5vw,68px);
                    line-height: 1;
                    font-weight: 400;
                    letter-spacing: -.035em;
                    max-width: 600px
                }

                html[data-cc-page="group-meetings-events"] .gather-scene-content p {
                    font-size: 13px;
                    line-height: 1.8;
                    color: rgba(255,255,255,.78);
                    max-width: 520px;
                    margin: 17px 0 24px
                }

                html[data-cc-page="group-meetings-events"] .gather-scene-link {
                    display: inline-flex;
                    align-items: center;
                    gap: 10px;
                    color: #fff;
                    font-size: 11px;
                    font-weight: 600;
                    text-transform: uppercase;
                    letter-spacing: .12em;
                    border-bottom: 1px solid rgba(255,255,255,.65);
                    padding-bottom: 5px;
                    transition: .25s
                }

                    html[data-cc-page="group-meetings-events"] .gather-scene-link:hover {
                        color: #fff;
                        border-color: #fff;
                        gap: 16px
                    }

                html[data-cc-page="group-meetings-events"] .gather-footer {
                    margin-top: 24px;
                    background: #181818;
                    color: #fff;
                    padding: 34px 42px;
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 30px
                }

                html[data-cc-page="group-meetings-events"] .gather-footer-copy {
                    display: flex;
                    align-items: center;
                    gap: 34px
                }

                html[data-cc-page="group-meetings-events"] .gather-footer strong {
                    font-family: var(--display);
                    font-size: 30px;
                    font-weight: 400;
                    line-height: 1.1
                }

                html[data-cc-page="group-meetings-events"] .gather-footer span {
                    font-size: 12px;
                    line-height: 1.7;
                    color: rgba(255,255,255,.62);
                    max-width: 500px
                }

                html[data-cc-page="group-meetings-events"] .gather-footer .btn {
                    flex: 0 0 auto
                }

                /* SEEN AT CHARMILLION - draggable media collection */
                html[data-cc-page="group-meetings-events"] .social {
                    padding: 120px 0 125px;
                    background: #0f0f0f;
                    color: #fff;
                    overflow: hidden
                }

                html[data-cc-page="group-meetings-events"] .social-head {
                    display: flex;
                    align-items: flex-end;
                    justify-content: space-between;
                    margin-bottom: 42px
                }

                    html[data-cc-page="group-meetings-events"] .social-head h2 {
                        font-family: var(--display);
                        font-size: clamp(48px,5vw,74px);
                        font-weight: 400;
                        line-height: 1.02
                    }

                html[data-cc-page="group-meetings-events"] .social-head-right {
                    display: flex;
                    align-items: flex-end;
                    gap: 30px
                }

                html[data-cc-page="group-meetings-events"] .social-head p {
                    font-size: 12px;
                    color: rgba(255,255,255,.6);
                    max-width: 320px;
                    line-height: 1.7;
                    text-align: right
                }

                html[data-cc-page="group-meetings-events"] .media-nav {
                    display: flex;
                    gap: 7px
                }

                    html[data-cc-page="group-meetings-events"] .media-nav button {
                        width: 46px;
                        height: 46px;
                        border: 1px solid rgba(255,255,255,.32);
                        background: transparent;
                        color: #fff;
                        transition: .25s
                    }

                        html[data-cc-page="group-meetings-events"] .media-nav button:hover {
                            background: var(--pink);
                            border-color: var(--pink)
                        }

                html[data-cc-page="group-meetings-events"] .social-viewport {
                    overflow-x: auto;
                    overflow-y: hidden;
                    scrollbar-width: none;
                    cursor: grab;
                    touch-action: pan-y;
                    scroll-behavior: smooth;
                    scroll-snap-type: x proximity;
                    padding: 0 max(40px,calc((100vw - 1420px)/2));
                    user-select: none;
                    -webkit-user-select: none
                }

                    html[data-cc-page="group-meetings-events"] .social-viewport::-webkit-scrollbar {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .social-viewport.is-dragging {
                        cursor: grabbing;
                        scroll-behavior: auto
                    }

                html[data-cc-page="group-meetings-events"] .social-track {
                    display: flex;
                    gap: 18px;
                    width: max-content;
                    padding-right: 40px
                }

                html[data-cc-page="group-meetings-events"] .social-card {
                    width: 300px;
                    height: 390px;
                    flex: 0 0 auto;
                    position: relative;
                    overflow: hidden;
                    background: #222;
                    scroll-snap-align: start
                }

                    html[data-cc-page="group-meetings-events"] .social-card.wide {
                        width: 450px
                    }

                    html[data-cc-page="group-meetings-events"] .social-card.short {
                        height: 330px;
                        margin-top: 30px
                    }

                    html[data-cc-page="group-meetings-events"] .social-card img, html[data-cc-page="group-meetings-events"] .social-card video {
                        height: 100%;
                        object-fit: cover;
                        transition: transform .7s ease
                    }

                    html[data-cc-page="group-meetings-events"] .social-card:hover img, html[data-cc-page="group-meetings-events"] .social-card:hover video {
                        transform: scale(1.04)
                    }

                    html[data-cc-page="group-meetings-events"] .social-card::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,transparent 60%,rgba(0,0,0,.64) 100%)
                    }

                    html[data-cc-page="group-meetings-events"] .social-card span {
                        position: absolute;
                        z-index: 2;
                        left: 18px;
                        bottom: 16px;
                        font-size: 10px;
                        letter-spacing: .08em
                    }

                html[data-cc-page="group-meetings-events"] .social-controls {
                    display: grid;
                    grid-template-columns: auto 1fr;
                    gap: 24px;
                    align-items: center;
                    margin-top: 28px
                }

                html[data-cc-page="group-meetings-events"] .social-drag-hint {
                    font-size: 9px;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.5);
                    white-space: nowrap
                }

                html[data-cc-page="group-meetings-events"] .social-progress {
                    height: 2px;
                    background: rgba(255,255,255,.18);
                    position: relative;
                    overflow: hidden
                }

                    html[data-cc-page="group-meetings-events"] .social-progress span {
                        position: absolute;
                        left: 0;
                        top: 0;
                        bottom: 0;
                        width: 22%;
                        background: var(--pink);
                        transform: translateX(0);
                        transition: transform .15s linear
                    }

                /* NEWS & EVENTS - image first cards */
                html[data-cc-page="group-meetings-events"] .newsroom {
                    padding: 125px 0 135px;
                    background: #f4f2f2;
                    overflow: hidden
                }

                html[data-cc-page="group-meetings-events"] .newsroom-head {
                    display: grid;
                    grid-template-columns: 1fr .85fr;
                    gap: 80px;
                    align-items: end;
                    margin-bottom: 48px
                }

                    html[data-cc-page="group-meetings-events"] .newsroom-head .eyebrow {
                        color: var(--pink);
                        margin-bottom: 18px
                    }

                    html[data-cc-page="group-meetings-events"] .newsroom-head h2 {
                        font-family: var(--display);
                        font-size: clamp(54px,5.5vw,82px);
                        font-weight: 400;
                        line-height: .98;
                        letter-spacing: -.04em
                    }

                    html[data-cc-page="group-meetings-events"] .newsroom-head p {
                        font-size: 13px;
                        line-height: 1.85;
                        color: var(--muted);
                        max-width: 480px;
                        margin-left: auto
                    }

                html[data-cc-page="group-meetings-events"] .newsroom-head-actions {
                    display: flex;
                    align-items: center;
                    justify-content: flex-end;
                    gap: 24px;
                    margin-top: 20px
                }

                html[data-cc-page="group-meetings-events"] .newsroom-viewall {
                    display: inline-flex;
                    align-items: center;
                    gap: 12px;
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: var(--pink)
                }

                    html[data-cc-page="group-meetings-events"] .newsroom-viewall i {
                        transition: .25s
                    }

                    html[data-cc-page="group-meetings-events"] .newsroom-viewall:hover i {
                        transform: translateX(5px)
                    }

                html[data-cc-page="group-meetings-events"] .news-viewport {
                    overflow-x: auto;
                    overflow-y: hidden;
                    scrollbar-width: none;
                    cursor: grab;
                    touch-action: pan-y;
                    scroll-behavior: smooth;
                    scroll-snap-type: x mandatory;
                    user-select: none;
                    -webkit-user-select: none;
                    padding-bottom: 4px
                }

                    html[data-cc-page="group-meetings-events"] .news-viewport::-webkit-scrollbar {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .news-viewport.is-dragging {
                        cursor: grabbing;
                        scroll-behavior: auto
                    }

                html[data-cc-page="group-meetings-events"] .news-track {
                    display: flex;
                    gap: 22px;
                    width: max-content
                }

                html[data-cc-page="group-meetings-events"] .news-card {
                    width: min(400px,31vw);
                    min-width: 330px;
                    background: #fff;
                    scroll-snap-align: start;
                    display: flex;
                    flex-direction: column;
                    transition: transform .35s ease,box-shadow .35s ease
                }

                    html[data-cc-page="group-meetings-events"] .news-card:hover {
                        transform: translateY(-5px);
                        box-shadow: 0 18px 50px rgba(0,0,0,.08)
                    }

                html[data-cc-page="group-meetings-events"] .news-card-image {
                    height: 265px;
                    overflow: hidden;
                    background: #ddd
                }

                    html[data-cc-page="group-meetings-events"] .news-card-image img {
                        height: 100%;
                        object-fit: cover;
                        transition: transform .8s cubic-bezier(.22,1,.36,1)
                    }

                html[data-cc-page="group-meetings-events"] .news-card:hover .news-card-image img {
                    transform: scale(1.045)
                }

                html[data-cc-page="group-meetings-events"] .news-card-body {
                    padding: 26px 27px 29px;
                    display: flex;
                    flex-direction: column;
                    flex: 1
                }

                html[data-cc-page="group-meetings-events"] .news-meta {
                    display: flex;
                    align-items: center;
                    gap: 12px;
                    font-size: 8px;
                    font-weight: 600;
                    letter-spacing: .15em;
                    text-transform: uppercase;
                    color: #8b8b8b;
                    margin-bottom: 17px
                }

                    html[data-cc-page="group-meetings-events"] .news-meta .type {
                        color: var(--pink);
                        background: rgba(169,0,97,.07);
                        padding: 6px 8px
                    }

                html[data-cc-page="group-meetings-events"] .news-card h3 {
                    font-family: var(--display);
                    font-size: 32px;
                    line-height: 1.08;
                    font-weight: 400;
                    letter-spacing: -.025em;
                    color: #222
                }

                html[data-cc-page="group-meetings-events"] .news-card p {
                    font-size: 11px;
                    line-height: 1.75;
                    color: #777;
                    margin-top: 13px;
                    max-width: 350px
                }

                html[data-cc-page="group-meetings-events"] .news-link {
                    display: inline-flex;
                    align-items: center;
                    gap: 12px;
                    margin-top: auto;
                    padding-top: 24px;
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: var(--pink)
                }

                    html[data-cc-page="group-meetings-events"] .news-link i {
                        transition: .25s
                    }

                    html[data-cc-page="group-meetings-events"] .news-link:hover i {
                        transform: translateX(5px)
                    }

                html[data-cc-page="group-meetings-events"] .news-controls {
                    display: grid;
                    grid-template-columns: auto 1fr auto;
                    gap: 22px;
                    align-items: center;
                    margin-top: 28px
                }

                html[data-cc-page="group-meetings-events"] .news-drag-hint {
                    font-size: 9px;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: #8b8b8b;
                    white-space: nowrap
                }

                html[data-cc-page="group-meetings-events"] .news-progress {
                    height: 2px;
                    background: #d6d3d4;
                    position: relative;
                    overflow: hidden
                }

                    html[data-cc-page="group-meetings-events"] .news-progress span {
                        position: absolute;
                        left: 0;
                        top: 0;
                        bottom: 0;
                        width: 28%;
                        background: var(--pink);
                        transition: transform .15s linear
                    }

                html[data-cc-page="group-meetings-events"] .news-bottom-nav {
                    display: flex;
                    gap: 7px
                }

                    html[data-cc-page="group-meetings-events"] .news-bottom-nav button {
                        width: 44px;
                        height: 44px;
                        border: 1px solid #c8c5c6;
                        background: transparent;
                        transition: .25s
                    }

                        html[data-cc-page="group-meetings-events"] .news-bottom-nav button:hover {
                            background: var(--pink);
                            border-color: var(--pink);
                            color: #fff
                        }

                /* MODERN FOOTER */
                html[data-cc-page="group-meetings-events"] .footer {
                    position: relative;
                    background: #0a0a0b;
                    color: #fff;
                    padding: 0 0 24px;
                    overflow: hidden
                }

                    html[data-cc-page="group-meetings-events"] .footer::before {
                        content: "";
                        position: absolute;
                        right: -190px;
                        top: 130px;
                        width: 520px;
                        height: 520px;
                        border: 1px solid rgba(169,0,97,.18);
                        border-radius: 50%;
                        pointer-events: none
                    }

                    html[data-cc-page="group-meetings-events"] .footer::after {
                        content: "";
                        position: absolute;
                        right: -95px;
                        top: 225px;
                        width: 330px;
                        height: 330px;
                        border: 1px solid rgba(169,0,97,.12);
                        border-radius: 50%;
                        pointer-events: none
                    }

                    html[data-cc-page="group-meetings-events"] .footer .container {
                        position: relative;
                        z-index: 2
                    }

                html[data-cc-page="group-meetings-events"] .footer-newsletter {
                    transform: translateY(-1px);
                    background: linear-gradient(115deg,var(--pink) 0%,var(--pink-dark) 72%);
                    display: grid;
                    grid-template-columns: .9fr 1.1fr;
                    gap: 70px;
                    align-items: center;
                    padding: 48px 54px;
                    margin-bottom: 68px
                }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter .eyebrow {
                        color: rgba(255,255,255,.72);
                        margin-bottom: 12px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter h2 {
                        font-family: var(--display);
                        font-size: clamp(38px,4.2vw,60px);
                        line-height: 1;
                        font-weight: 400;
                        letter-spacing: -.03em
                    }

                html[data-cc-page="group-meetings-events"] .newsletter-copy p {
                    font-size: 12px;
                    line-height: 1.75;
                    color: rgba(255,255,255,.76);
                    margin-top: 14px;
                    max-width: 500px
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form {
                    display: flex;
                    align-items: stretch;
                    border-bottom: 1px solid rgba(255,255,255,.65);
                    min-height: 58px
                }

                    html[data-cc-page="group-meetings-events"] .newsletter-form input {
                        flex: 1;
                        min-width: 0;
                        border: 0;
                        background: transparent;
                        color: #fff;
                        outline: 0;
                        font-size: 13px;
                        padding: 0 8px
                    }

                        html[data-cc-page="group-meetings-events"] .newsletter-form input::placeholder {
                            color: rgba(255,255,255,.62)
                        }

                    html[data-cc-page="group-meetings-events"] .newsletter-form button {
                        border: 0;
                        background: #fff;
                        color: #171717;
                        padding: 0 24px;
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .14em;
                        text-transform: uppercase;
                        transition: .25s
                    }

                        html[data-cc-page="group-meetings-events"] .newsletter-form button:hover {
                            background: #171717;
                            color: #fff
                        }

                html[data-cc-page="group-meetings-events"] .newsletter-note {
                    font-size: 9px !important;
                    color: rgba(255,255,255,.58) !important;
                    margin-top: 11px !important
                }

                html[data-cc-page="group-meetings-events"] .footer-grid {
                    display: grid;
                    grid-template-columns: 1.35fr .72fr .82fr 1fr;
                    gap: 72px;
                    padding-bottom: 58px
                }

                html[data-cc-page="group-meetings-events"] .footer-brand-copy {
                    font-size: 12px;
                    line-height: 1.8;
                    color: rgba(255,255,255,.58);
                    max-width: 290px;
                    margin-top: 22px
                }

                html[data-cc-page="group-meetings-events"] .footer-logo {
                    width: 154px
                }

                html[data-cc-page="group-meetings-events"] .footer h4 {
                    font-size: 9px;
                    text-transform: uppercase;
                    letter-spacing: .19em;
                    color: rgba(255,255,255,.46);
                    margin-bottom: 22px
                }

                html[data-cc-page="group-meetings-events"] .footer-links {
                    display: grid;
                    gap: 12px
                }

                    html[data-cc-page="group-meetings-events"] .footer-links a, html[data-cc-page="group-meetings-events"] .footer p, html[data-cc-page="group-meetings-events"] .footer a.contact {
                        font-size: 12px;
                        line-height: 1.7;
                        color: rgba(255,255,255,.68);
                        transition: .25s
                    }

                        html[data-cc-page="group-meetings-events"] .footer-links a:hover, html[data-cc-page="group-meetings-events"] .footer a.contact:hover {
                            color: #fff;
                            transform: translateX(3px)
                        }

                html[data-cc-page="group-meetings-events"] .footer-contact {
                    display: grid;
                    gap: 7px
                }

                html[data-cc-page="group-meetings-events"] .footer-location {
                    margin-top: 22px !important
                }

                html[data-cc-page="group-meetings-events"] .social-icons {
                    display: flex;
                    gap: 10px;
                    margin-top: 24px
                }

                    html[data-cc-page="group-meetings-events"] .social-icons a {
                        width: 40px;
                        height: 40px;
                        border: 1px solid rgba(255,255,255,.22);
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        border-radius: 50%;
                        font-size: 13px;
                        transition: .3s
                    }

                        html[data-cc-page="group-meetings-events"] .social-icons a:hover {
                            background: var(--pink);
                            border-color: var(--pink);
                            transform: translateY(-3px)
                        }

                html[data-cc-page="group-meetings-events"] .green-star {
                    width: 92px;
                    margin-top: 24px
                }

                html[data-cc-page="group-meetings-events"] .footer-bottom {
                    border-top: 1px solid rgba(255,255,255,.12);
                    padding-top: 22px;
                    display: flex;
                    justify-content: space-between;
                    gap: 20px;
                    flex-wrap: wrap;
                    font-size: 9px;
                    letter-spacing: .03em;
                    color: rgba(255,255,255,.4)
                }

                    html[data-cc-page="group-meetings-events"] .footer-bottom nav {
                        display: flex;
                        gap: 22px;
                        flex-wrap: wrap
                    }

                    html[data-cc-page="group-meetings-events"] .footer-bottom a:hover {
                        color: #fff
                    }

                html[data-cc-page="group-meetings-events"] .scrolltop {
                    position: fixed;
                    right: 22px;
                    bottom: 22px;
                    z-index: 80;
                    width: 42px;
                    height: 42px;
                    border: 0;
                    border-radius: 50%;
                    background: var(--pink);
                    color: #fff;
                    opacity: 0;
                    visibility: hidden;
                    transform: translateY(12px);
                    transition: .3s
                }

                    html[data-cc-page="group-meetings-events"] .scrolltop.show {
                        opacity: 1;
                        visibility: visible;
                        transform: none
                    }

                html[data-cc-page="group-meetings-events"] .mobile-book {
                    display: none
                }

                @media(max-width:1100px) {
                    html[data-cc-page="group-meetings-events"] .container {
                        width: min(100% - 44px,1420px)
                    }

                    html[data-cc-page="group-meetings-events"] .menu {
                        gap: 18px
                    }

                    html[data-cc-page="group-meetings-events"] .menu-link {
                        font-size: 11px
                    }

                    html[data-cc-page="group-meetings-events"] .header-book {
                        margin-left: 20px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-form {
                        grid-template-columns: repeat(3,1fr)
                    }

                    html[data-cc-page="group-meetings-events"] .booking-submit {
                        width: 100%
                    }

                    html[data-cc-page="group-meetings-events"] .guest-popover {
                        width: 430px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-grid {
                        gap: 60px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-copy {
                        padding-left: 20px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-visual {
                        min-height: 560px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-main-image {
                        height: 510px
                    }

                    html[data-cc-page="group-meetings-events"] .news-card {
                        width: 360px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter {
                        gap: 42px;
                        padding: 42px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-grid {
                        gap: 45px
                    }

                    html[data-cc-page="group-meetings-events"] .manifesto-grid {
                        gap: 70px
                    }

                    html[data-cc-page="group-meetings-events"] .resort-story {
                        height: 535px;
                        flex-basis: 80vw
                    }

                    html[data-cc-page="group-meetings-events"] .offer-mosaic {
                        grid-template-rows: 270px 270px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scenes {
                        gap: 20px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene, html[data-cc-page="group-meetings-events"] .gather-scene.secondary {
                        min-height: 590px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene-content {
                        left: 32px;
                        right: 32px;
                        bottom: 32px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-footer {
                        padding: 30px 32px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-grid {
                        grid-template-columns: 1.15fr 1fr 1fr;
                        gap: 45px
                    }

                        html[data-cc-page="group-meetings-events"] .footer-grid > div:last-child {
                            grid-column: 2/4
                        }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter {
                        grid-template-columns: 1fr 1fr
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-meetings-events"] body {
                        padding-bottom: 56px
                    }

                    html[data-cc-page="group-meetings-events"] .container {
                        width: calc(100% - 30px)
                    }

                    html[data-cc-page="group-meetings-events"] .header {
                        position: absolute;
                        background: rgba(255,255,255,.97);
                        color: #111
                    }

                    html[data-cc-page="group-meetings-events"] .header-top, html[data-cc-page="group-meetings-events"] .menu, html[data-cc-page="group-meetings-events"] .header-book {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .header-main {
                        height: 72px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-light {
                        display: none !important
                    }

                    html[data-cc-page="group-meetings-events"] .brand-dark {
                        display: block !important
                    }

                    html[data-cc-page="group-meetings-events"] .brand img {
                        width: 125px;
                        max-height: 52px
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-trigger {
                        display: block
                    }

                    html[data-cc-page="group-meetings-events"] .hero {
                        height: 700px;
                        min-height: 700px;
                        padding-top: 72px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-content {
                        padding-bottom: 92px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-copy {
                        max-width: 90%
                    }

                    html[data-cc-page="group-meetings-events"] .hero-title {
                        font-size: 52px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-subtitle {
                        font-size: 13px;
                        max-width: 360px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-count {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .hero-control {
                        right: 15px;
                        bottom: 18px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-arrow {
                        width: 44px;
                        height: 44px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story {
                        padding: 105px 0 110px
                    }

                        html[data-cc-page="group-meetings-events"] .brand-story::before {
                            font-size: 230px;
                            top: 55px
                        }

                    html[data-cc-page="group-meetings-events"] .brand-story-grid {
                        grid-template-columns: 1fr;
                        gap: 55px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-copy {
                        padding-left: 0
                    }

                        html[data-cc-page="group-meetings-events"] .brand-story-copy h2 {
                            font-size: 58px
                        }

                    html[data-cc-page="group-meetings-events"] .brand-story-visual {
                        min-height: 540px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-main-image {
                        width: 94%;
                        height: 500px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-note {
                        left: 6%;
                        bottom: 34px;
                        width: 76%
                    }

                    html[data-cc-page="group-meetings-events"] .newsroom {
                        padding: 100px 0 110px
                    }

                    html[data-cc-page="group-meetings-events"] .newsroom-head {
                        grid-template-columns: 1fr;
                        gap: 25px
                    }

                        html[data-cc-page="group-meetings-events"] .newsroom-head p {
                            margin: 0
                        }

                    html[data-cc-page="group-meetings-events"] .newsroom-head-actions {
                        justify-content: flex-start
                    }

                    html[data-cc-page="group-meetings-events"] .news-card {
                        width: 360px;
                        min-width: 360px
                    }

                    html[data-cc-page="group-meetings-events"] .resorts {
                        padding-bottom: 100px
                    }

                    html[data-cc-page="group-meetings-events"] .resort-head {
                        padding: 85px 0 40px
                    }

                        html[data-cc-page="group-meetings-events"] .resort-head .small-title {
                            font-size: 40px
                        }

                    html[data-cc-page="group-meetings-events"] .resort-story {
                        height: 505px;
                        flex-basis: 88vw
                    }

                    html[data-cc-page="group-meetings-events"] .resort-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .story-copy {
                        left: 28px;
                        right: 28px;
                        bottom: 28px;
                        display: block
                    }

                        html[data-cc-page="group-meetings-events"] .story-copy h3 {
                            font-size: 48px
                        }

                        html[data-cc-page="group-meetings-events"] .story-copy p {
                            margin-top: 14px
                        }

                    html[data-cc-page="group-meetings-events"] .story-link {
                        top: 20px;
                        right: 20px
                    }

                    html[data-cc-page="group-meetings-events"] .story-index {
                        top: 20px;
                        left: 20px
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty {
                        min-height: 620px;
                        background-attachment: scroll
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-ring {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy h2 {
                        font-size: 56px
                    }

                    html[data-cc-page="group-meetings-events"] .offers {
                        padding: 105px 0
                    }

                    html[data-cc-page="group-meetings-events"] .offers-intro {
                        grid-template-columns: 1fr;
                        gap: 30px;
                        margin-bottom: 42px
                    }

                        html[data-cc-page="group-meetings-events"] .offers-intro h2 {
                            font-size: 54px
                        }

                    html[data-cc-page="group-meetings-events"] .offers-intro-copy {
                        margin: 0
                    }

                    html[data-cc-page="group-meetings-events"] .offer-mosaic {
                        grid-template-columns: 1fr;
                        grid-template-rows: none
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile, html[data-cc-page="group-meetings-events"] .offer-tile.featured {
                        grid-row: auto;
                        height: 430px
                    }

                    html[data-cc-page="group-meetings-events"] .featured .offer-content h3, html[data-cc-page="group-meetings-events"] .offer-content h3 {
                        font-size: 42px
                    }

                    html[data-cc-page="group-meetings-events"] .offer-strip {
                        grid-template-columns: 1fr 1fr
                    }

                        html[data-cc-page="group-meetings-events"] .offer-strip .offer-tile {
                            height: 280px
                        }

                    html[data-cc-page="group-meetings-events"] .gather {
                        padding: 105px 0
                    }

                    html[data-cc-page="group-meetings-events"] .gather-head {
                        grid-template-columns: 1fr;
                        gap: 26px;
                        margin-bottom: 40px
                    }

                        html[data-cc-page="group-meetings-events"] .gather-head h2 {
                            font-size: 56px
                        }

                    html[data-cc-page="group-meetings-events"] .gather-head-copy {
                        margin: 0
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scenes {
                        grid-template-columns: 1fr
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene, html[data-cc-page="group-meetings-events"] .gather-scene.secondary {
                        min-height: 520px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene-content {
                        left: 28px;
                        right: 28px;
                        bottom: 28px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-footer {
                        align-items: flex-start;
                        flex-direction: column
                    }

                    html[data-cc-page="group-meetings-events"] .gather-footer-copy {
                        align-items: flex-start;
                        flex-direction: column;
                        gap: 10px
                    }

                    html[data-cc-page="group-meetings-events"] .social {
                        padding: 95px 0 100px
                    }

                    html[data-cc-page="group-meetings-events"] .social-head {
                        display: block
                    }

                        html[data-cc-page="group-meetings-events"] .social-head h2 {
                            font-size: 52px
                        }

                    html[data-cc-page="group-meetings-events"] .social-head-right {
                        margin-top: 22px;
                        justify-content: space-between;
                        align-items: center
                    }

                    html[data-cc-page="group-meetings-events"] .social-head p {
                        text-align: left;
                        margin: 0
                    }

                    html[data-cc-page="group-meetings-events"] .social-viewport {
                        padding-left: 15px;
                        padding-right: 15px
                    }

                    html[data-cc-page="group-meetings-events"] .social-card {
                        width: 260px;
                        height: 350px
                    }

                        html[data-cc-page="group-meetings-events"] .social-card.wide {
                            width: 390px
                        }

                        html[data-cc-page="group-meetings-events"] .social-card.short {
                            height: 290px;
                            margin-top: 30px
                        }

                    html[data-cc-page="group-meetings-events"] .social-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter {
                        grid-template-columns: 1fr;
                        gap: 28px;
                        padding: 36px 32px;
                        margin-bottom: 55px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-grid {
                        grid-template-columns: 1fr 1fr
                    }

                        html[data-cc-page="group-meetings-events"] .footer-grid > div:last-child {
                            grid-column: auto
                        }

                    html[data-cc-page="group-meetings-events"] .mobile-book {
                        position: fixed;
                        left: 0;
                        right: 0;
                        bottom: 0;
                        height: 56px;
                        z-index: 400;
                        background: var(--pink);
                        color: #fff;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        border: 0;
                        font-size: 12px;
                        font-weight: 600;
                        text-transform: uppercase;
                        letter-spacing: .12em
                    }

                    html[data-cc-page="group-meetings-events"] .scrolltop {
                        bottom: 70px
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-meetings-events"] .hero {
                        height: 640px;
                        min-height: 640px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-content {
                        padding-bottom: 82px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-title {
                        font-size: 43px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-copy {
                        max-width: 100%
                    }

                    html[data-cc-page="group-meetings-events"] .hero-kicker {
                        font-size: 9px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-subtitle {
                        font-size: 12px;
                        line-height: 1.6
                    }

                    html[data-cc-page="group-meetings-events"] .hero-actions .btn {
                        min-height: 44px;
                        padding: 0 18px;
                        font-size: 10px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story::before {
                        font-size: 170px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-copy h2 {
                        font-size: 46px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-copy p {
                        font-size: 13px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-visual {
                        min-height: 455px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-main-image {
                        width: 100%;
                        height: 420px
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-note {
                        left: 0;
                        bottom: 25px;
                        width: 88%;
                        min-width: 0;
                        padding: 24px 34px 24px 22px
                    }

                        html[data-cc-page="group-meetings-events"] .brand-story-note strong {
                            font-size: 29px
                        }

                    html[data-cc-page="group-meetings-events"] .brand-story-stamp {
                        width: 94px;
                        height: 94px;
                        right: 8px
                    }

                        html[data-cc-page="group-meetings-events"] .brand-story-stamp strong {
                            font-size: 31px
                        }

                    html[data-cc-page="group-meetings-events"] .newsroom-head h2 {
                        font-size: 46px
                    }

                    html[data-cc-page="group-meetings-events"] .news-card {
                        width: 84vw;
                        min-width: 280px
                    }

                    html[data-cc-page="group-meetings-events"] .news-card-image {
                        height: 230px
                    }

                    html[data-cc-page="group-meetings-events"] .news-card-body {
                        padding: 23px
                    }

                    html[data-cc-page="group-meetings-events"] .news-card h3 {
                        font-size: 29px
                    }

                    html[data-cc-page="group-meetings-events"] .news-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .resort-head {
                        align-items: flex-end
                    }

                        html[data-cc-page="group-meetings-events"] .resort-head .small-title {
                            font-size: 34px
                        }

                    html[data-cc-page="group-meetings-events"] .resort-nav button {
                        width: 42px;
                        height: 42px
                    }

                    html[data-cc-page="group-meetings-events"] .resort-story {
                        height: 470px;
                        flex-basis: 92vw
                    }

                    html[data-cc-page="group-meetings-events"] .resort-controls-bottom {
                        grid-template-columns: 1fr auto
                    }

                    html[data-cc-page="group-meetings-events"] .resort-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .story-copy h3 {
                        font-size: 40px
                    }

                    html[data-cc-page="group-meetings-events"] .story-copy p {
                        font-size: 11px;
                        max-width: 270px
                    }

                    html[data-cc-page="group-meetings-events"] .story-link {
                        width: 46px;
                        height: 46px
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty {
                        min-height: 560px
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy h2 {
                        font-size: 46px
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy p {
                        font-size: 13px
                    }

                    html[data-cc-page="group-meetings-events"] .offers-intro h2 {
                        font-size: 44px
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile, html[data-cc-page="group-meetings-events"] .offer-tile.featured {
                        height: 390px
                    }

                    html[data-cc-page="group-meetings-events"] .offer-strip {
                        grid-template-columns: 1fr
                    }

                        html[data-cc-page="group-meetings-events"] .offer-strip .offer-tile {
                            height: 330px
                        }

                    html[data-cc-page="group-meetings-events"] .offer-content h3, html[data-cc-page="group-meetings-events"] .featured .offer-content h3 {
                        font-size: 38px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-head h2 {
                        font-size: 46px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene, html[data-cc-page="group-meetings-events"] .gather-scene.secondary {
                        min-height: 460px
                    }

                    html[data-cc-page="group-meetings-events"] .gather-scene-content {
                        left: 22px;
                        right: 22px;
                        bottom: 24px
                    }

                        html[data-cc-page="group-meetings-events"] .gather-scene-content h3 {
                            font-size: 40px
                        }

                    html[data-cc-page="group-meetings-events"] .gather-footer {
                        padding: 26px 22px
                    }

                        html[data-cc-page="group-meetings-events"] .gather-footer strong {
                            font-size: 27px
                        }

                    html[data-cc-page="group-meetings-events"] .social-head h2 {
                        font-size: 44px
                    }

                    html[data-cc-page="group-meetings-events"] .social-head-right {
                        align-items: flex-start
                    }

                        html[data-cc-page="group-meetings-events"] .social-head-right .media-nav {
                            flex: 0 0 auto
                        }

                    html[data-cc-page="group-meetings-events"] .social-card {
                        width: 230px;
                        height: 320px
                    }

                        html[data-cc-page="group-meetings-events"] .social-card.wide {
                            width: 330px
                        }

                    html[data-cc-page="group-meetings-events"] .social-controls {
                        grid-template-columns: 1fr
                    }

                    html[data-cc-page="group-meetings-events"] .social-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter {
                        margin-inline: -15px;
                        padding: 34px 22px
                    }

                        html[data-cc-page="group-meetings-events"] .footer-newsletter h2 {
                            font-size: 38px
                        }

                    html[data-cc-page="group-meetings-events"] .newsletter-form {
                        min-height: 54px
                    }

                        html[data-cc-page="group-meetings-events"] .newsletter-form button {
                            padding: 0 16px
                        }

                    html[data-cc-page="group-meetings-events"] .footer-grid {
                        grid-template-columns: 1fr;
                        gap: 36px
                    }

                    html[data-cc-page="group-meetings-events"] .footer {
                        padding-top: 0
                    }

                    html[data-cc-page="group-meetings-events"] .footer-bottom {
                        display: block
                    }

                        html[data-cc-page="group-meetings-events"] .footer-bottom nav {
                            margin-top: 12px;
                            gap: 13px
                        }
                }

                @media(prefers-reduced-motion:reduce) {
                    html[data-cc-page="group-meetings-events"], html[data-cc-page="group-meetings-events"] * {
                        scroll-behavior: auto !important
                    }

                    html[data-cc-page="group-meetings-events"] .reveal, html[data-cc-page="group-meetings-events"] .reveal-left, html[data-cc-page="group-meetings-events"] .reveal-right {
                        opacity: 1 !important;
                        transform: none !important;
                        filter: none !important;
                        transition: none !important
                    }

                    html[data-cc-page="group-meetings-events"] .hero-slide img {
                        animation: none !important;
                        transition: none !important
                    }

                    html[data-cc-page="group-meetings-events"] .hero-copy * {
                        animation: none !important
                    }

                    html[data-cc-page="group-meetings-events"] .brand-story-main-image img {
                        transform: none !important
                    }
                }

                /* =====================================================
           Image Asset Safety
        ===================================================== */
                html[data-cc-page="group-meetings-events"] img[data-asset-fallback-used="true"] {
                    opacity: 1 !important;
                    visibility: visible !important;
                }


                /* =====================================================
           V8 REVIEW CHANGES
        ===================================================== */

                /* Premium refill hover: lift + animated fill + brightness */
                html[data-cc-page="group-meetings-events"] .btn, html[data-cc-page="group-meetings-events"] .booking-submit, html[data-cc-page="group-meetings-events"] .guest-done, html[data-cc-page="group-meetings-events"] .newsletter-form button, html[data-cc-page="group-meetings-events"] .hero-arrow, html[data-cc-page="group-meetings-events"] .resort-nav button, html[data-cc-page="group-meetings-events"] .resort-bottom-nav button, html[data-cc-page="group-meetings-events"] .media-nav button, html[data-cc-page="group-meetings-events"] .news-bottom-nav button {
                    transition: background-size .42s cubic-bezier(.22,1,.36,1),color .28s ease,border-color .28s ease,transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease !important
                }

                html[data-cc-page="group-meetings-events"] .btn-pink, html[data-cc-page="group-meetings-events"] .booking-submit {
                    background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                    background-repeat: no-repeat;
                    background-position: left top;
                    background-size: 0 100%;
                    background-color: var(--pink) !important
                }

                html[data-cc-page="group-meetings-events"] .btn-white {
                    background-image: linear-gradient(90deg,var(--pink),var(--pink));
                    background-repeat: no-repeat;
                    background-position: left top;
                    background-size: 0 100%;
                    background-color: #fff !important;
                    color: #111
                }

                html[data-cc-page="group-meetings-events"] .btn-outline {
                    background-image: linear-gradient(90deg,var(--pink),var(--pink));
                    background-repeat: no-repeat;
                    background-position: left top;
                    background-size: 0 100%
                }

                html[data-cc-page="group-meetings-events"] .btn:hover, html[data-cc-page="group-meetings-events"] .booking-submit:hover, html[data-cc-page="group-meetings-events"] .guest-done:hover, html[data-cc-page="group-meetings-events"] .newsletter-form button:hover, html[data-cc-page="group-meetings-events"] .hero-arrow:hover, html[data-cc-page="group-meetings-events"] .resort-nav button:hover, html[data-cc-page="group-meetings-events"] .resort-bottom-nav button:hover, html[data-cc-page="group-meetings-events"] .media-nav button:hover, html[data-cc-page="group-meetings-events"] .news-bottom-nav button:hover {
                    transform: translateY(-3px);
                    filter: brightness(1.08);
                    box-shadow: 0 12px 28px rgba(0,0,0,.13)
                }

                html[data-cc-page="group-meetings-events"] .btn-pink:hover, html[data-cc-page="group-meetings-events"] .booking-submit:hover, html[data-cc-page="group-meetings-events"] .btn-white:hover, html[data-cc-page="group-meetings-events"] .btn-outline:hover {
                    background-size: 100% 100% !important
                }

                html[data-cc-page="group-meetings-events"] .btn-white:hover, html[data-cc-page="group-meetings-events"] .btn-outline:hover {
                    color: #fff !important;
                    border-color: var(--pink) !important
                }

                /* Sticky horizontal logo */
                html[data-cc-page="group-meetings-events"] .header.sticky .brand {
                    width: 205px
                }

                html[data-cc-page="group-meetings-events"] .header.sticky .brand-dark {
                    width: 190px;
                    max-height: 46px;
                    object-fit: contain;
                    object-position: left center
                }

                /* Booking dock - visible above the fold and remains available while browsing */
                html[data-cc-page="group-meetings-events"] .booking-shell {
                    position: sticky;
                    top: 102px;
                    z-index: 92;
                    margin-top: -62px
                }

                html[data-cc-page="group-meetings-events"] .booking-card {
                    transition: box-shadow .3s ease,transform .3s ease
                }

                html[data-cc-page="group-meetings-events"] .booking-shell.is-stuck .booking-card {
                    box-shadow: 0 14px 38px rgba(0,0,0,.16)
                }

                /* Offers - black stage with cinematic image reveal every time the tile re-enters view */
                html[data-cc-page="group-meetings-events"] .offer-tile {
                    background: #090909;
                    isolation: isolate
                }

                    html[data-cc-page="group-meetings-events"] .offer-tile img {
                        clip-path: inset(0 100% 0 0);
                        transform: scale(1.08);
                        transition: clip-path 1.12s cubic-bezier(.77,0,.18,1),transform 1.45s cubic-bezier(.22,1,.36,1) !important;
                        will-change: clip-path,transform
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile:nth-child(even) img, html[data-cc-page="group-meetings-events"] .offer-strip .offer-tile:nth-child(odd) img {
                        clip-path: inset(0 0 0 100%)
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile.in-view img {
                        clip-path: inset(0 0 0 0);
                        transform: scale(1)
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile::before {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: #090909;
                        z-index: 1;
                        transform: scaleX(1);
                        transform-origin: right center;
                        transition: transform 1.08s cubic-bezier(.77,0,.18,1);
                        pointer-events: none
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile:nth-child(even)::before, html[data-cc-page="group-meetings-events"] .offer-strip .offer-tile:nth-child(odd)::before {
                        transform-origin: left center
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile.in-view::before {
                        transform: scaleX(0)
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile::after, html[data-cc-page="group-meetings-events"] .offer-content, html[data-cc-page="group-meetings-events"] .offer-arrow {
                        z-index: 2
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile:hover img {
                        transform: scale(1.035)
                    }

                /* Drag rails: disable native image/link drag and make the navigation line a real control */
                html[data-cc-page="group-meetings-events"] .social-card, html[data-cc-page="group-meetings-events"] .news-card {
                    cursor: grab
                }

                html[data-cc-page="group-meetings-events"] .social-viewport.is-dragging, html[data-cc-page="group-meetings-events"] .news-viewport.is-dragging, html[data-cc-page="group-meetings-events"] .social-viewport.is-dragging .social-card, html[data-cc-page="group-meetings-events"] .news-viewport.is-dragging .news-card {
                    cursor: grabbing;
                    scroll-snap-type: none !important
                }

                html[data-cc-page="group-meetings-events"] .social-card img, html[data-cc-page="group-meetings-events"] .social-card video, html[data-cc-page="group-meetings-events"] .news-card img {
                    pointer-events: none;
                    -webkit-user-drag: none;
                    user-select: none
                }

                html[data-cc-page="group-meetings-events"] .social-controls {
                    display: block;
                    margin-top: 28px
                }

                html[data-cc-page="group-meetings-events"] .social-progress, html[data-cc-page="group-meetings-events"] .news-progress {
                    height: 22px;
                    background: transparent;
                    position: relative;
                    overflow: visible;
                    cursor: pointer;
                    touch-action: none;
                    display: flex;
                    align-items: center
                }

                    html[data-cc-page="group-meetings-events"] .social-progress::before, html[data-cc-page="group-meetings-events"] .news-progress::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        height: 2px;
                        background: rgba(255,255,255,.20)
                    }

                    html[data-cc-page="group-meetings-events"] .news-progress::before {
                        background: #d6d3d4
                    }

                    html[data-cc-page="group-meetings-events"] .social-progress span, html[data-cc-page="group-meetings-events"] .news-progress span {
                        position: absolute;
                        left: 0;
                        top: 50%;
                        height: 4px;
                        transform: translateY(-50%);
                        background: var(--pink);
                        transition: left .08s linear,width .18s ease,transform .08s linear;
                        border-radius: 10px
                    }

                    html[data-cc-page="group-meetings-events"] .social-progress:hover span, html[data-cc-page="group-meetings-events"] .news-progress:hover span {
                        height: 6px
                    }

                html[data-cc-page="group-meetings-events"] .news-controls {
                    grid-template-columns: 1fr auto;
                    gap: 22px
                }

                html[data-cc-page="group-meetings-events"] .resort-controls-bottom {
                    grid-template-columns: 1fr auto
                }

                /* Footer - restrained editorial layout, no floating/gradient card */
                html[data-cc-page="group-meetings-events"] .footer {
                    background: #0d0d0e;
                    padding: 0 0 26px
                }

                    html[data-cc-page="group-meetings-events"] .footer::before, html[data-cc-page="group-meetings-events"] .footer::after {
                        display: none
                    }

                html[data-cc-page="group-meetings-events"] .footer-newsletter {
                    transform: none;
                    background: transparent;
                    display: grid;
                    grid-template-columns: .8fr 1.2fr;
                    gap: 90px;
                    align-items: end;
                    padding: 62px 0 52px;
                    margin: 0;
                    border-top: 1px solid rgba(255,255,255,.13);
                    border-bottom: 1px solid rgba(255,255,255,.13)
                }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter .eyebrow {
                        color: var(--pink);
                        margin-bottom: 15px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter h2 {
                        font-size: clamp(38px,4vw,58px);
                        line-height: 1.02
                    }

                html[data-cc-page="group-meetings-events"] .newsletter-side {
                    display: grid;
                    grid-template-columns: minmax(190px,.72fr) minmax(360px,1.28fr);
                    column-gap: 40px;
                    align-items: end
                }

                    html[data-cc-page="group-meetings-events"] .newsletter-side > p {
                        font-size: 12px;
                        line-height: 1.75;
                        color: rgba(255,255,255,.56);
                        margin: 0 0 8px;
                        max-width: 340px
                    }

                html[data-cc-page="group-meetings-events"] .newsletter-form {
                    min-height: 52px;
                    border: 1px solid rgba(255,255,255,.24);
                    background: transparent;
                    padding-left: 4px
                }

                    html[data-cc-page="group-meetings-events"] .newsletter-form:focus-within {
                        border-color: rgba(255,255,255,.55)
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-form input {
                        padding: 0 16px;
                        color: #fff
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-form button {
                        background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                        background-repeat: no-repeat;
                        background-position: left top;
                        background-size: 0 100%;
                        background-color: var(--pink);
                        color: #fff;
                        min-width: 142px
                    }

                        html[data-cc-page="group-meetings-events"] .newsletter-form button:hover {
                            background-size: 100% 100%;
                            color: #fff
                        }

                html[data-cc-page="group-meetings-events"] .newsletter-note {
                    grid-column: 2;
                    font-size: 9px !important;
                    color: rgba(255,255,255,.38) !important;
                    margin: 9px 0 0 !important
                }

                html[data-cc-page="group-meetings-events"] .footer-main {
                    display: grid;
                    grid-template-columns: 1.05fr 1.8fr;
                    gap: 100px;
                    padding: 64px 0 58px
                }

                html[data-cc-page="group-meetings-events"] .footer-identity {
                    max-width: 330px
                }

                html[data-cc-page="group-meetings-events"] .footer-logo {
                    width: 165px
                }

                html[data-cc-page="group-meetings-events"] .footer-brand-copy {
                    margin-top: 24px;
                    max-width: 310px
                }

                html[data-cc-page="group-meetings-events"] .footer-grid {
                    display: grid;
                    grid-template-columns: repeat(3,1fr);
                    gap: 60px;
                    padding: 0
                }

                    html[data-cc-page="group-meetings-events"] .footer-grid > div:last-child {
                        grid-column: auto
                    }

                html[data-cc-page="group-meetings-events"] .footer h4 {
                    margin-bottom: 20px
                }

                html[data-cc-page="group-meetings-events"] .footer-location {
                    margin-top: 0 !important
                }

                html[data-cc-page="group-meetings-events"] .green-star {
                    width: 78px;
                    margin-top: 20px
                }

                html[data-cc-page="group-meetings-events"] .social-icons {
                    margin-top: 28px
                }

                    html[data-cc-page="group-meetings-events"] .social-icons a {
                        width: 38px;
                        height: 38px
                    }

                html[data-cc-page="group-meetings-events"] .footer-bottom {
                    padding-top: 22px
                }

                /* Replayed motion remains visible and resets each time elements leave the viewport */
                html[data-cc-page="group-meetings-events"] .reveal, html[data-cc-page="group-meetings-events"] .reveal-left, html[data-cc-page="group-meetings-events"] .reveal-right {
                    transition-duration: 1.05s,1.15s,.95s
                }

                    html[data-cc-page="group-meetings-events"] .reveal:not(.in-view), html[data-cc-page="group-meetings-events"] .reveal-left:not(.in-view), html[data-cc-page="group-meetings-events"] .reveal-right:not(.in-view) {
                        will-change: opacity,transform,filter
                    }

                @media(max-width:1100px) {
                    html[data-cc-page="group-meetings-events"] .header.sticky .brand {
                        width: 180px
                    }

                    html[data-cc-page="group-meetings-events"] .header.sticky .brand-dark {
                        width: 168px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        top: 102px;
                        margin-top: -62px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-form {
                        grid-template-columns: 1.1fr 1fr 1fr 1.25fr;
                        gap: 9px
                    }

                        html[data-cc-page="group-meetings-events"] .booking-form > .field:nth-of-type(5) {
                            grid-column: 1/3
                        }

                    html[data-cc-page="group-meetings-events"] .booking-submit {
                        grid-column: 3/5
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter {
                        gap: 55px
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-side {
                        grid-template-columns: 1fr
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-note {
                        grid-column: 1
                    }

                    html[data-cc-page="group-meetings-events"] .footer-main {
                        gap: 60px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-grid {
                        gap: 38px
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-meetings-events"] body {
                        padding-bottom: 0
                    }

                    html[data-cc-page="group-meetings-events"] .header.sticky .brand, html[data-cc-page="group-meetings-events"] .brand {
                        width: 175px
                    }

                    html[data-cc-page="group-meetings-events"] .header.sticky .brand-dark, html[data-cc-page="group-meetings-events"] .brand-dark {
                        width: 165px !important;
                        max-height: 42px !important
                    }

                    html[data-cc-page="group-meetings-events"] .hero {
                        height: 760px;
                        min-height: 760px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-content {
                        padding-bottom: 300px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 255px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        display: block !important;
                        position: sticky;
                        top: 72px;
                        z-index: 94;
                        margin-top: -238px;
                        margin-bottom: 34px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card {
                        padding: 13px;
                        border-radius: 0;
                        box-shadow: 0 16px 38px rgba(0,0,0,.18)
                    }

                    html[data-cc-page="group-meetings-events"] .booking-form {
                        grid-template-columns: 1fr 1fr;
                        gap: 8px
                    }

                        html[data-cc-page="group-meetings-events"] .booking-form > .field:nth-of-type(1), html[data-cc-page="group-meetings-events"] .booking-form > .field:nth-of-type(4) {
                            grid-column: 1/3
                        }

                        html[data-cc-page="group-meetings-events"] .booking-form > .field:nth-of-type(5) {
                            grid-column: 1/2
                        }

                    html[data-cc-page="group-meetings-events"] .booking-submit {
                        grid-column: 2/3;
                        height: 48px;
                        align-self: end
                    }

                    html[data-cc-page="group-meetings-events"] .field label {
                        font-size: 8px;
                        margin-bottom: 5px
                    }

                    html[data-cc-page="group-meetings-events"] .control, html[data-cc-page="group-meetings-events"] .guest-trigger {
                        height: 46px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-submit {
                        height: 46px
                    }

                    html[data-cc-page="group-meetings-events"] .guest-popover {
                        position: fixed;
                        left: 15px;
                        right: 15px;
                        top: auto;
                        bottom: 18px;
                        width: auto;
                        max-width: none;
                        max-height: 72vh;
                        overflow: auto;
                        z-index: 520
                    }

                        html[data-cc-page="group-meetings-events"] .guest-popover::before {
                            display: none
                        }

                    html[data-cc-page="group-meetings-events"] .rooms-container {
                        max-height: 46vh
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-book {
                        display: none !important
                    }

                    html[data-cc-page="group-meetings-events"] .social-controls {
                        margin-top: 20px
                    }

                    html[data-cc-page="group-meetings-events"] .news-controls {
                        grid-template-columns: 1fr auto
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter {
                        grid-template-columns: 1fr;
                        gap: 25px;
                        padding: 48px 0 42px
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-side {
                        grid-template-columns: 1fr;
                        gap: 18px
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-note {
                        grid-column: 1
                    }

                    html[data-cc-page="group-meetings-events"] .footer-main {
                        grid-template-columns: 1fr;
                        gap: 48px;
                        padding: 50px 0
                    }

                    html[data-cc-page="group-meetings-events"] .footer-grid {
                        grid-template-columns: repeat(3,1fr);
                        gap: 28px
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-meetings-events"] .header.sticky .brand, html[data-cc-page="group-meetings-events"] .brand {
                        width: 160px
                    }

                    html[data-cc-page="group-meetings-events"] .header.sticky .brand-dark, html[data-cc-page="group-meetings-events"] .brand-dark {
                        width: 150px !important
                    }

                    html[data-cc-page="group-meetings-events"] .hero {
                        height: 790px;
                        min-height: 790px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-content {
                        padding-bottom: 335px
                    }

                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 290px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        top: 72px;
                        margin-top: -280px;
                        margin-bottom: 30px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card {
                        padding: 11px
                    }

                    html[data-cc-page="group-meetings-events"] .booking-form {
                        grid-template-columns: 1fr 1fr;
                        gap: 7px
                    }

                        html[data-cc-page="group-meetings-events"] .booking-form > .field:nth-of-type(1), html[data-cc-page="group-meetings-events"] .booking-form > .field:nth-of-type(4) {
                            grid-column: 1/3
                        }

                        html[data-cc-page="group-meetings-events"] .booking-form > .field:nth-of-type(5) {
                            grid-column: 1/2
                        }

                    html[data-cc-page="group-meetings-events"] .booking-submit {
                        grid-column: 2/3;
                        padding: 0 10px;
                        font-size: 9px
                    }

                    html[data-cc-page="group-meetings-events"] .control input, html[data-cc-page="group-meetings-events"] .control select {
                        font-size: 10px;
                        padding-left: 34px
                    }

                    html[data-cc-page="group-meetings-events"] .guest-trigger {
                        font-size: 10px;
                        padding-left: 34px
                    }

                    html[data-cc-page="group-meetings-events"] .control > i {
                        left: 11px
                    }

                    html[data-cc-page="group-meetings-events"] .control .down {
                        right: 8px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter h2 {
                        font-size: 40px
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-form {
                        min-height: 50px
                    }

                        html[data-cc-page="group-meetings-events"] .newsletter-form button {
                            min-width: 118px;
                            padding: 0 12px
                        }

                    html[data-cc-page="group-meetings-events"] .footer-grid {
                        grid-template-columns: 1fr 1fr;
                        gap: 36px 28px
                    }

                        html[data-cc-page="group-meetings-events"] .footer-grid > div:last-child {
                            grid-column: 1/3
                        }

                    html[data-cc-page="group-meetings-events"] .footer-main {
                        padding-bottom: 44px
                    }
                }


                /* =====================================================
           V9 BOOKING POSITION FIX - ABOVE THE FOLD, NEVER STICKY
           ===================================================== */
                html[data-cc-page="group-meetings-events"] .booking-shell {
                    position: relative !important;
                    top: auto !important;
                    z-index: 30 !important;
                    margin-top: -102px !important;
                    margin-bottom: 48px !important;
                }

                    html[data-cc-page="group-meetings-events"] .booking-shell .booking-card, html[data-cc-page="group-meetings-events"] .booking-shell .booking-card.reveal {
                        opacity: 1 !important;
                        transform: none !important;
                        filter: none !important;
                        visibility: visible !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell.is-stuck .booking-card {
                        box-shadow: 0 20px 55px rgba(0,0,0,.14) !important
                    }

                @media(max-width:1100px) {
                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        position: relative !important;
                        top: auto !important;
                        margin-top: -154px !important;
                        margin-bottom: 46px !important;
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .hero {
                        height: 100svh !important;
                        min-height: 700px !important
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        display: block !important;
                        position: relative !important;
                        top: auto !important;
                        margin-top: -238px !important;
                        margin-bottom: 42px !important;
                        z-index: 30 !important;
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-meetings-events"] .hero {
                        height: 100svh !important;
                        min-height: 680px !important
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        position: relative !important;
                        top: auto !important;
                        margin-top: -270px !important;
                        margin-bottom: 38px !important;
                    }
                }



                /* V10 - True mouse drag for Seen at Charmillion + News */
                html[data-cc-page="group-meetings-events"] .social-viewport, html[data-cc-page="group-meetings-events"] .news-viewport {
                    cursor: grab;
                    user-select: none;
                    -webkit-user-select: none;
                    overscroll-behavior-x: contain;
                }

                    html[data-cc-page="group-meetings-events"] .social-viewport.is-dragging, html[data-cc-page="group-meetings-events"] .news-viewport.is-dragging {
                        cursor: grabbing !important;
                        scroll-behavior: auto !important;
                        scroll-snap-type: none !important;
                    }

                html[data-cc-page="group-meetings-events"] .social-track, html[data-cc-page="group-meetings-events"] .news-track {
                    user-select: none;
                    -webkit-user-select: none
                }

                html[data-cc-page="group-meetings-events"] .social-card, html[data-cc-page="group-meetings-events"] .news-card, html[data-cc-page="group-meetings-events"] .social-card img, html[data-cc-page="group-meetings-events"] .social-card video, html[data-cc-page="group-meetings-events"] .news-card img {
                    -webkit-user-drag: none;
                    user-drag: none;
                }

                html[data-cc-page="group-meetings-events"] .social-progress, html[data-cc-page="group-meetings-events"] .news-progress {
                    height: 20px;
                    background: transparent;
                    overflow: visible;
                    display: flex;
                    align-items: center;
                    cursor: pointer;
                    touch-action: none;
                    position: relative;
                }

                    html[data-cc-page="group-meetings-events"] .social-progress::before, html[data-cc-page="group-meetings-events"] .news-progress::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        height: 2px;
                        background: rgba(255,255,255,.18);
                    }

                    html[data-cc-page="group-meetings-events"] .news-progress::before {
                        background: #d6d3d4
                    }

                    html[data-cc-page="group-meetings-events"] .social-progress span, html[data-cc-page="group-meetings-events"] .news-progress span {
                        top: auto;
                        bottom: auto;
                        height: 4px;
                        min-width: 42px;
                        background: var(--pink);
                        transition: left .12s linear,width .2s ease,height .2s ease;
                        z-index: 2;
                    }

                    html[data-cc-page="group-meetings-events"] .social-progress:hover span, html[data-cc-page="group-meetings-events"] .news-progress:hover span {
                        height: 6px
                    }

                /* V10 - New clean footer */
                html[data-cc-page="group-meetings-events"] .footer {
                    background: #111113;
                    color: #fff;
                    padding: 0;
                    overflow: hidden
                }

                    html[data-cc-page="group-meetings-events"] .footer::before, html[data-cc-page="group-meetings-events"] .footer::after {
                        display: none !important
                    }

                    html[data-cc-page="group-meetings-events"] .footer > .container {
                        width: auto;
                        max-width: none
                    }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-clean {
                    background: #fff;
                    color: #1d1d1f;
                    border-top: 1px solid #ece9ea
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-inner {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    gap: 100px;
                    align-items: end;
                    padding-top: 72px;
                    padding-bottom: 72px
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-heading .eyebrow {
                    color: var(--pink);
                    margin-bottom: 16px
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-heading h2 {
                    font-family: var(--display);
                    font-size: clamp(44px,4.8vw,68px);
                    font-weight: 400;
                    line-height: .98;
                    letter-spacing: -.035em
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-action {
                    max-width: 590px;
                    margin-left: auto;
                    width: 100%
                }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter-action > p {
                        font-size: 13px;
                        line-height: 1.8;
                        color: #666;
                        max-width: 510px;
                        margin-bottom: 24px
                    }

                html[data-cc-page="group-meetings-events"] .newsletter-form-clean {
                    display: flex;
                    align-items: stretch;
                    border-bottom: 1px solid #bdb8ba;
                    min-height: 58px
                }

                    html[data-cc-page="group-meetings-events"] .newsletter-form-clean input {
                        flex: 1;
                        min-width: 0;
                        border: 0;
                        background: transparent;
                        outline: 0;
                        padding: 0 14px 0 0;
                        font: inherit;
                        font-size: 13px;
                        color: #222
                    }

                        html[data-cc-page="group-meetings-events"] .newsletter-form-clean input::placeholder {
                            color: #989395
                        }

                    html[data-cc-page="group-meetings-events"] .newsletter-form-clean button {
                        position: relative;
                        overflow: hidden;
                        isolation: isolate;
                        border: 0;
                        background: var(--pink);
                        color: #fff;
                        min-width: 150px;
                        padding: 0 22px;
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .14em;
                        text-transform: uppercase;
                        transition: transform .3s ease,filter .3s ease
                    }

                        html[data-cc-page="group-meetings-events"] .newsletter-form-clean button::before {
                            content: "";
                            position: absolute;
                            inset: 0;
                            background: var(--pink-dark);
                            transform: scaleX(0);
                            transform-origin: left;
                            transition: transform .38s cubic-bezier(.22,1,.36,1);
                            z-index: -1
                        }

                        html[data-cc-page="group-meetings-events"] .newsletter-form-clean button:hover {
                            transform: translateY(-2px);
                            filter: brightness(1.08)
                        }

                            html[data-cc-page="group-meetings-events"] .newsletter-form-clean button:hover::before {
                                transform: scaleX(1)
                            }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-action small {
                    display: block;
                    margin-top: 11px;
                    font-size: 9px;
                    color: #9b9698
                }

                html[data-cc-page="group-meetings-events"] .footer-core {
                    background: #111113
                }

                    html[data-cc-page="group-meetings-events"] .footer-core > .container {
                        padding-top: 66px
                    }

                html[data-cc-page="group-meetings-events"] .footer-topline {
                    display: grid;
                    grid-template-columns: 1fr auto;
                    gap: 80px;
                    align-items: start;
                    padding-bottom: 50px;
                    border-bottom: 1px solid rgba(255,255,255,.12)
                }

                html[data-cc-page="group-meetings-events"] .footer-identity {
                    max-width: 430px
                }

                html[data-cc-page="group-meetings-events"] .footer-logo {
                    width: 176px;
                    height: auto
                }

                html[data-cc-page="group-meetings-events"] .footer-identity p {
                    font-size: 12px;
                    line-height: 1.8;
                    color: rgba(255,255,255,.55);
                    margin-top: 22px;
                    max-width: 390px
                }

                html[data-cc-page="group-meetings-events"] .footer-primary-contact {
                    display: grid;
                    justify-items: end;
                    gap: 6px;
                    text-align: right
                }

                    html[data-cc-page="group-meetings-events"] .footer-primary-contact span, html[data-cc-page="group-meetings-events"] .footer h4 {
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .17em;
                        text-transform: uppercase;
                        color: rgba(255,255,255,.42)
                    }

                    html[data-cc-page="group-meetings-events"] .footer-primary-contact a {
                        font-family: var(--display);
                        font-size: 21px;
                        line-height: 1.25;
                        color: #fff;
                        transition: color .25s ease
                    }

                        html[data-cc-page="group-meetings-events"] .footer-primary-contact a:hover {
                            color: var(--pink)
                        }

                html[data-cc-page="group-meetings-events"] .footer-navigation {
                    display: grid;
                    grid-template-columns: 1fr 1fr 1fr 1.05fr;
                    gap: 70px;
                    padding: 52px 0 58px
                }

                html[data-cc-page="group-meetings-events"] .footer h4 {
                    margin-bottom: 20px
                }

                html[data-cc-page="group-meetings-events"] .footer-links {
                    display: grid;
                    gap: 11px
                }

                    html[data-cc-page="group-meetings-events"] .footer-links a, html[data-cc-page="group-meetings-events"] .footer-place {
                        font-size: 12px;
                        line-height: 1.7;
                        color: rgba(255,255,255,.67);
                        transition: color .25s ease,transform .25s ease
                    }

                        html[data-cc-page="group-meetings-events"] .footer-links a:hover {
                            color: #fff;
                            transform: translateX(3px)
                        }

                html[data-cc-page="group-meetings-events"] .footer-place {
                    max-width: 190px
                }

                html[data-cc-page="group-meetings-events"] .footer-community .social-icons {
                    display: flex;
                    gap: 9px;
                    margin: 0 0 26px
                }

                html[data-cc-page="group-meetings-events"] .social-icons a {
                    width: 39px;
                    height: 39px;
                    border: 1px solid rgba(255,255,255,.20);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border-radius: 50%;
                    font-size: 12px;
                    transition: transform .28s ease,background .28s ease,border-color .28s ease
                }

                    html[data-cc-page="group-meetings-events"] .social-icons a:hover {
                        background: var(--pink);
                        border-color: var(--pink);
                        transform: translateY(-3px)
                    }

                html[data-cc-page="group-meetings-events"] .green-star {
                    width: 78px;
                    height: auto;
                    margin: 0
                }

                html[data-cc-page="group-meetings-events"] .footer-bottom {
                    border-top: 1px solid rgba(255,255,255,.11);
                    padding: 22px 0 26px;
                    display: flex;
                    justify-content: space-between;
                    gap: 20px;
                    flex-wrap: wrap;
                    font-size: 9px;
                    color: rgba(255,255,255,.38)
                }

                    html[data-cc-page="group-meetings-events"] .footer-bottom nav {
                        display: flex;
                        gap: 22px;
                        flex-wrap: wrap
                    }

                    html[data-cc-page="group-meetings-events"] .footer-bottom a {
                        transition: color .25s
                    }

                        html[data-cc-page="group-meetings-events"] .footer-bottom a:hover {
                            color: #fff
                        }

                html[data-cc-page="group-meetings-events"] .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
                }

                @media(max-width:900px) {
                    html[data-cc-page="group-meetings-events"] .footer-newsletter-inner {
                        grid-template-columns: 1fr;
                        gap: 32px;
                        padding-top: 58px;
                        padding-bottom: 58px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter-action {
                        margin: 0;
                        max-width: none
                    }

                    html[data-cc-page="group-meetings-events"] .footer-topline {
                        grid-template-columns: 1fr;
                        gap: 35px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-primary-contact {
                        justify-items: start;
                        text-align: left
                    }

                    html[data-cc-page="group-meetings-events"] .footer-navigation {
                        grid-template-columns: 1fr 1fr;
                        gap: 42px 32px
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-meetings-events"] .footer-newsletter-inner {
                        padding-top: 48px;
                        padding-bottom: 48px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter-heading h2 {
                        font-size: 42px
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-form-clean {
                        min-height: 54px
                    }

                        html[data-cc-page="group-meetings-events"] .newsletter-form-clean button {
                            min-width: 122px;
                            padding: 0 14px
                        }

                    html[data-cc-page="group-meetings-events"] .footer-core > .container {
                        padding-top: 50px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-primary-contact a {
                        font-size: 18px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-navigation {
                        grid-template-columns: 1fr 1fr;
                        gap: 38px 24px;
                        padding: 42px 0 48px
                    }

                    html[data-cc-page="group-meetings-events"] .footer-community {
                        grid-column: 1/3
                    }

                    html[data-cc-page="group-meetings-events"] .footer-bottom {
                        display: block
                    }

                        html[data-cc-page="group-meetings-events"] .footer-bottom nav {
                            margin-top: 13px;
                            gap: 13px
                        }
                }



                /* =====================================================
           V11 MOBILE BOOKING - FIXED BOOK NOW + BOTTOM SHEET
           ===================================================== */
                html[data-cc-page="group-meetings-events"] .mobile-booking-modal {
                    display: none
                }

                @media(max-width:767px) {
                    html[data-cc-page="group-meetings-events"] body {
                        padding-bottom: calc(66px + env(safe-area-inset-bottom,0px)) !important
                    }

                    html[data-cc-page="group-meetings-events"] .hero {
                        height: 100svh !important;
                        min-height: 660px !important
                    }

                    html[data-cc-page="group-meetings-events"] .hero-content {
                        padding-bottom: 112px !important
                    }

                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 84px !important
                    }

                    /* The full booking dock is desktop/tablet only on phone screens. */
                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        display: none !important
                    }

                    /* Persistent mobile reservation CTA. */
                    html[data-cc-page="group-meetings-events"] .mobile-book {
                        display: flex !important;
                        position: fixed !important;
                        left: 12px !important;
                        right: 12px !important;
                        bottom: calc(10px + env(safe-area-inset-bottom,0px)) !important;
                        width: auto !important;
                        height: 56px !important;
                        z-index: 990 !important;
                        border: 0 !important;
                        border-radius: 2px !important;
                        background: var(--pink) !important;
                        color: #fff !important;
                        align-items: center !important;
                        justify-content: center !important;
                        gap: 11px !important;
                        box-shadow: 0 14px 34px rgba(45,0,27,.28) !important;
                        font-size: 11px !important;
                        font-weight: 700 !important;
                        letter-spacing: .15em !important;
                        text-transform: uppercase !important;
                    }

                        html[data-cc-page="group-meetings-events"] .mobile-book::after {
                            content: "\f061";
                            font-family: "Font Awesome 6 Free";
                            font-weight: 900;
                            font-size: 11px
                        }

                        html[data-cc-page="group-meetings-events"] .mobile-book:hover, html[data-cc-page="group-meetings-events"] .mobile-book:focus-visible {
                            transform: translateY(-2px);
                            filter: brightness(1.06)
                        }

                    html[data-cc-page="group-meetings-events"] .scrolltop {
                        bottom: calc(82px + env(safe-area-inset-bottom,0px)) !important
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal {
                        position: fixed;
                        inset: 0;
                        z-index: 1100;
                        display: block;
                        visibility: hidden;
                        opacity: 0;
                        pointer-events: none;
                        transition: opacity .28s ease,visibility .28s ease;
                    }

                        html[data-cc-page="group-meetings-events"] .mobile-booking-modal.open {
                            visibility: visible;
                            opacity: 1;
                            pointer-events: auto
                        }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-backdrop {
                        position: absolute;
                        inset: 0;
                        border: 0;
                        background: rgba(8,5,7,.58);
                        backdrop-filter: blur(3px);
                        -webkit-backdrop-filter: blur(3px)
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-sheet {
                        position: absolute;
                        left: 0;
                        right: 0;
                        bottom: 0;
                        max-height: min(91svh,820px);
                        overflow: auto;
                        overscroll-behavior: contain;
                        background: #fff;
                        box-shadow: 0 -24px 60px rgba(0,0,0,.23);
                        transform: translateY(102%);
                        transition: transform .42s cubic-bezier(.22,1,.36,1);
                        padding-bottom: calc(18px + env(safe-area-inset-bottom,0px));
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal.open .mobile-booking-sheet {
                        transform: none
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-head {
                        position: sticky;
                        top: 0;
                        z-index: 8;
                        display: flex;
                        align-items: center;
                        justify-content: space-between;
                        gap: 20px;
                        padding: 20px 20px 17px;
                        background: rgba(255,255,255,.97);
                        border-bottom: 1px solid #ece8ea;
                        backdrop-filter: blur(12px);
                        -webkit-backdrop-filter: blur(12px)
                    }

                        html[data-cc-page="group-meetings-events"] .mobile-booking-head span {
                            display: block;
                            margin-bottom: 4px;
                            color: var(--pink);
                            font-size: 8px;
                            font-weight: 700;
                            letter-spacing: .18em;
                            text-transform: uppercase
                        }

                        html[data-cc-page="group-meetings-events"] .mobile-booking-head h3 {
                            font-family: var(--display);
                            font-size: 31px;
                            line-height: 1;
                            font-weight: 400;
                            letter-spacing: -.025em;
                            color: #171317
                        }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-close {
                        flex: 0 0 auto;
                        width: 42px;
                        height: 42px;
                        border: 1px solid #e7e1e4;
                        border-radius: 50%;
                        background: #fff;
                        color: #211b1f;
                        font-size: 15px
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-body {
                        padding: 18px 16px 4px
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-card, html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-card.reveal {
                        opacity: 1 !important;
                        visibility: visible !important;
                        transform: none !important;
                        filter: none !important;
                        box-shadow: none !important;
                        padding: 0 !important;
                        border-radius: 0 !important;
                        background: #fff !important;
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-form {
                        display: grid !important;
                        grid-template-columns: 1fr 1fr !important;
                        gap: 12px !important;
                        align-items: end !important
                    }

                        html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-form > .field {
                            grid-column: auto !important
                        }

                            html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-form > .field:nth-of-type(1), html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-form > .field:nth-of-type(4), html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-form > .field:nth-of-type(5) {
                                grid-column: 1/-1 !important
                            }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-submit {
                        grid-column: 1/-1 !important;
                        width: 100% !important;
                        height: 54px !important;
                        margin-top: 2px !important;
                        font-size: 10px !important
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .field label {
                        font-size: 8px !important;
                        margin-bottom: 6px !important
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .control, html[data-cc-page="group-meetings-events"] .mobile-booking-modal .guest-trigger {
                        height: 50px !important
                    }

                        html[data-cc-page="group-meetings-events"] .mobile-booking-modal .control input, html[data-cc-page="group-meetings-events"] .mobile-booking-modal .control select, html[data-cc-page="group-meetings-events"] .mobile-booking-modal .guest-trigger {
                            font-size: 11px !important
                        }

                    /* Rooms & Guests opens above the booking sheet and stays usable. */
                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .guest-popover {
                        position: fixed !important;
                        left: 12px !important;
                        right: 12px !important;
                        top: auto !important;
                        bottom: calc(12px + env(safe-area-inset-bottom,0px)) !important;
                        width: auto !important;
                        max-width: none !important;
                        max-height: 78svh !important;
                        overflow: auto !important;
                        z-index: 1160 !important;
                        padding: 18px !important;
                        border-radius: 2px !important;
                        box-shadow: 0 24px 65px rgba(0,0,0,.27) !important;
                    }

                        html[data-cc-page="group-meetings-events"] .mobile-booking-modal .guest-popover::before {
                            display: none !important
                        }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .rooms-container {
                        max-height: 50svh !important
                    }

                    html[data-cc-page="group-meetings-events"] body.booking-modal-open {
                        overflow: hidden !important
                    }

                        html[data-cc-page="group-meetings-events"] body.booking-modal-open .mobile-book {
                            opacity: 0;
                            pointer-events: none;
                            transform: translateY(12px)
                        }
                }

                @media(max-width:420px) {
                    html[data-cc-page="group-meetings-events"] .mobile-booking-body {
                        padding-left: 13px;
                        padding-right: 13px
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-head {
                        padding-left: 16px;
                        padding-right: 16px
                    }

                        html[data-cc-page="group-meetings-events"] .mobile-booking-head h3 {
                            font-size: 28px
                        }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .booking-form {
                        gap: 10px !important
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .control input, html[data-cc-page="group-meetings-events"] .mobile-booking-modal .control select {
                        padding-left: 34px !important;
                        padding-right: 31px !important
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .guest-trigger {
                        padding-left: 34px !important;
                        padding-right: 31px !important
                    }
                }

                /* =====================================================
                   V12 REVIEW FIXES
                   1) Booking fully visible above the fold on desktop/tablet
                   2) Hero white CTA keeps readable text through refill hover
                   3) Offers use a deliberate black curtain reveal, not clip refresh
                   ===================================================== */

                /* 1. BOOKING - fully visible inside the first viewport */
                @media(min-width:1101px) {
                    html[data-cc-page="group-meetings-events"] .hero-content {
                        padding-bottom: 220px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 192px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        position: relative !important;
                        top: auto !important;
                        margin-top: -188px !important;
                        margin-bottom: 58px !important;
                        z-index: 32 !important;
                    }
                }

                @media(min-width:821px) and (max-width:1100px) {
                    html[data-cc-page="group-meetings-events"] .hero-content {
                        padding-bottom: 270px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 224px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        position: relative !important;
                        top: auto !important;
                        margin-top: -226px !important;
                        margin-bottom: 54px !important;
                        z-index: 32 !important;
                    }
                }

                @media(min-width:768px) and (max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .hero-content {
                        padding-bottom: 315px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 272px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        display: block !important;
                        position: relative !important;
                        top: auto !important;
                        margin-top: -280px !important;
                        margin-bottom: 48px !important;
                        z-index: 32 !important;
                    }
                }

                /* 2. HERO CTA - robust refill with readable text from start to finish */
                html[data-cc-page="group-meetings-events"] .hero-actions .btn-white {
                    position: relative;
                    overflow: hidden;
                    background-color: #fff !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-repeat: no-repeat !important;
                    background-position: left center !important;
                    background-size: 0 100% !important;
                    color: #111 !important;
                    border-color: #fff !important;
                    transition: background-size .46s cubic-bezier(.22,1,.36,1),
                                color .22s ease,
                                border-color .22s ease,
                                transform .28s cubic-bezier(.22,1,.36,1),
                                filter .28s ease,
                                box-shadow .28s ease !important;
                }

                html[data-cc-page="group-meetings-events"] .hero-actions .btn-white:hover, html[data-cc-page="group-meetings-events"] .hero-actions .btn-white:focus-visible {
                    background-color: #fff !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-repeat: no-repeat !important;
                    background-position: left center !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                    border-color: var(--pink) !important;
                    transform: translateY(-3px);
                    filter: brightness(1.06);
                    box-shadow: 0 12px 28px rgba(0,0,0,.18);
                }

                html[data-cc-page="group-meetings-events"] .hero-actions .btn-white i {
                    color: currentColor !important;
                }

                /* 3. OFFERS - clear cinematic black curtain reveal */
                html[data-cc-page="group-meetings-events"] .offer-tile.reveal, html[data-cc-page="group-meetings-events"] .offer-tile.reveal-left, html[data-cc-page="group-meetings-events"] .offer-tile.reveal-right {
                    opacity: 1 !important;
                    transform: none !important;
                    filter: none !important;
                    visibility: visible !important;
                    background: #080808 !important;
                }

                html[data-cc-page="group-meetings-events"] .offer-tile img {
                    clip-path: none !important;
                    opacity: 1 !important;
                    transform: scale(1.085) !important;
                    transition: transform 1.65s cubic-bezier(.22,1,.36,1) !important;
                    will-change: transform;
                }

                html[data-cc-page="group-meetings-events"] .offer-tile.in-view img {
                    clip-path: none !important;
                    transform: scale(1) !important;
                }

                html[data-cc-page="group-meetings-events"] .offer-tile::before {
                    content: "" !important;
                    display: block !important;
                    position: absolute !important;
                    inset: 0 !important;
                    z-index: 3 !important;
                    background: #080808 !important;
                    transform: scaleX(1) !important;
                    transform-origin: right center !important;
                    transition: transform 1.38s cubic-bezier(.77,0,.18,1) .10s !important;
                    pointer-events: none !important;
                    will-change: transform;
                }

                html[data-cc-page="group-meetings-events"] .offer-tile:nth-child(even)::before, html[data-cc-page="group-meetings-events"] .offer-strip .offer-tile:nth-child(even)::before {
                    transform-origin: left center !important;
                }

                html[data-cc-page="group-meetings-events"] .offer-tile.in-view::before {
                    transform: scaleX(0) !important;
                }

                /* Keep the content hidden for a fraction of a second while the curtain starts moving,
                   then bring it in deliberately instead of flashing with the image. */
                html[data-cc-page="group-meetings-events"] .offer-tile .offer-content, html[data-cc-page="group-meetings-events"] .offer-tile .offer-arrow {
                    opacity: 0;
                    transform: translateY(12px);
                    transition: opacity .55s ease .62s,transform .65s cubic-bezier(.22,1,.36,1) .62s !important;
                    z-index: 5 !important;
                }

                html[data-cc-page="group-meetings-events"] .offer-tile .offer-arrow {
                    transform: translateY(-8px);
                }

                html[data-cc-page="group-meetings-events"] .offer-tile.in-view .offer-content, html[data-cc-page="group-meetings-events"] .offer-tile.in-view .offer-arrow {
                    opacity: 1;
                    transform: none;
                }

                html[data-cc-page="group-meetings-events"] .offer-tile::after {
                    z-index: 4 !important;
                }

                html[data-cc-page="group-meetings-events"] .offer-tile:hover img {
                    transform: scale(1.035) !important;
                }

                @media(prefers-reduced-motion:reduce) {
                    html[data-cc-page="group-meetings-events"] .offer-tile::before {
                        transform: scaleX(0) !important;
                        transition: none !important;
                    }

                    html[data-cc-page="group-meetings-events"] .offer-tile img, html[data-cc-page="group-meetings-events"] .offer-tile .offer-content, html[data-cc-page="group-meetings-events"] .offer-tile .offer-arrow {
                        opacity: 1 !important;
                        transform: none !important;
                        transition: none !important;
                    }
                }


                /* =====================================================
                   V13 HERO SAFE AREA + FROSTED BOOKING DOCK
                   1) Compact hero typography keeps copy clear of header/logo
                   2) Booking becomes a light glass panel so the hero remains visible
                   ===================================================== */

                /* HERO COPY - keep a deliberate safe area below the header without
                   pushing the CTA into the booking dock. Wider copy means long hero
                   headlines use fewer lines and sit naturally lower in the image. */
                @media(min-width:1101px) {
                    html[data-cc-page="group-meetings-events"] .hero-copy {
                        max-width: 880px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-title {
                        max-width: 860px !important;
                        font-size: clamp(64px,4.8vw,82px) !important;
                        line-height: .94 !important;
                        letter-spacing: -.038em !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-kicker {
                        margin-bottom: 14px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-subtitle {
                        max-width: 540px !important;
                        margin-top: 16px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-actions {
                        margin-top: 23px !important;
                    }
                }

                @media(min-width:821px) and (max-width:1100px) {
                    html[data-cc-page="group-meetings-events"] .hero-copy {
                        max-width: 720px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-title {
                        max-width: 710px !important;
                        font-size: clamp(56px,6.2vw,68px) !important;
                        line-height: .95 !important;
                    }
                }

                @media(min-width:768px) and (max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .hero-copy {
                        max-width: 620px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .hero-title {
                        max-width: 610px !important;
                        font-size: 54px !important;
                        line-height: .96 !important;
                    }
                }

                /* BOOKING - light frosted glass instead of a solid white slab. */
                @media(min-width:768px) {
                    html[data-cc-page="group-meetings-events"] .booking-card {
                        background: rgba(255,255,255,.76) !important;
                        border: 1px solid rgba(255,255,255,.72) !important;
                        box-shadow: 0 20px 52px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.62) !important;
                        backdrop-filter: blur(18px) saturate(128%) !important;
                        -webkit-backdrop-filter: blur(18px) saturate(128%) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card::before {
                        content: "";
                        position: absolute;
                        inset: 0;
                        border: 1px solid rgba(255,255,255,.34);
                        pointer-events: none;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .field label {
                        color: rgba(35,27,31,.66) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .control, html[data-cc-page="group-meetings-events"] .booking-card .guest-trigger {
                        background: rgba(255,255,255,.62) !important;
                        border-color: rgba(58,45,51,.16) !important;
                        box-shadow: inset 0 1px 0 rgba(255,255,255,.58) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .control:focus-within, html[data-cc-page="group-meetings-events"] .booking-card .control.is-open, html[data-cc-page="group-meetings-events"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.90) !important;
                        border-color: rgba(169,0,97,.52) !important;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.08), inset 0 1px 0 rgba(255,255,255,.72) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .control input, html[data-cc-page="group-meetings-events"] .booking-card .control select, html[data-cc-page="group-meetings-events"] .booking-card .guest-trigger {
                        color: #272126 !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .control input::placeholder {
                        color: rgba(39,33,38,.55) !important;
                    }
                }

    

                /* =====================================================
                   V14 CLEAR BOOKING PANEL + TRUE PINK REFILL
                   - No blur / no haze: hero image remains clearly visible
                   - Pink CTAs keep their refill animation on hover
                   ===================================================== */

                /* Booking panel: lower white opacity with ZERO blur/haze. */
                @media(min-width:768px) {
                    html[data-cc-page="group-meetings-events"] .booking-card {
                        background: rgba(255,255,255,.46) !important;
                        border: 1px solid rgba(255,255,255,.64) !important;
                        box-shadow: 0 18px 44px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.36) !important;
                        backdrop-filter: none !important;
                        -webkit-backdrop-filter: none !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card::before {
                        border-color: rgba(255,255,255,.24) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .field label {
                        color: rgba(29,23,27,.72) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .control, html[data-cc-page="group-meetings-events"] .booking-card .guest-trigger {
                        background: rgba(255,255,255,.72) !important;
                        border-color: rgba(49,39,44,.18) !important;
                        box-shadow: none !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .control:focus-within, html[data-cc-page="group-meetings-events"] .booking-card .control.is-open, html[data-cc-page="group-meetings-events"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.90) !important;
                        border-color: rgba(169,0,97,.58) !important;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.08) !important;
                    }
                }

                /* True refill for buttons that start pink. The explicit hover
                   background-image prevents older background shorthands from
                   cancelling the animation. */
                html[data-cc-page="group-meetings-events"] .btn-pink, html[data-cc-page="group-meetings-events"] .booking-submit {
                    position: relative;
                    overflow: hidden;
                    background-color: var(--pink) !important;
                    background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                    background-repeat: no-repeat !important;
                    background-position: left top !important;
                    background-size: 0 100% !important;
                    color: #fff !important;
                    transition: background-size .46s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease,border-color .28s ease !important;
                }

                html[data-cc-page="group-meetings-events"] .btn-pink:hover, html[data-cc-page="group-meetings-events"] .btn-pink:focus-visible, html[data-cc-page="group-meetings-events"] .booking-submit:hover, html[data-cc-page="group-meetings-events"] .booking-submit:focus-visible {
                    background-color: var(--pink) !important;
                    background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                    transform: translateY(-3px) !important;
                    filter: brightness(1.08) !important;
                    box-shadow: 0 12px 28px rgba(91,0,52,.22) !important;
                }

                /* Mobile persistent Book Now gets the same refill behavior. */
                @media(max-width:767px) {
                    html[data-cc-page="group-meetings-events"] .mobile-book {
                        background-color: var(--pink) !important;
                        background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                        background-repeat: no-repeat !important;
                        background-position: left top !important;
                        background-size: 0 100% !important;
                        transition: background-size .46s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease !important;
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-book:hover, html[data-cc-page="group-meetings-events"] .mobile-book:focus-visible {
                        background-color: var(--pink) !important;
                        background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                        background-size: 100% 100% !important;
                        color: #fff !important;
                    }
                }

    

                /* =====================================================
                   V15 NEWSLETTER FIELD + BORDERLESS BOOKING + SPACING
                   - Newsletter uses a calm tinted field instead of an underline-only input
                   - Booking card/controls are borderless while keeping the clear hero image visible
                   - Booking dock sits slightly lower with more breathing room from hero navigation
                   ===================================================== */

                /* 1) NEWSLETTER - soft brand-tinted field, no underline treatment */
                html[data-cc-page="group-meetings-events"] .newsletter-form-clean {
                    display: grid !important;
                    grid-template-columns: minmax(0,1fr) auto !important;
                    gap: 10px !important;
                    align-items: stretch !important;
                    min-height: 58px !important;
                    border: 0 !important;
                    background: transparent !important;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-clean input {
                    width: 100% !important;
                    min-width: 0 !important;
                    height: 58px !important;
                    padding: 0 20px !important;
                    border: 0 !important;
                    outline: 0 !important;
                    background: #f3eff1 !important;
                    color: #211d20 !important;
                    box-shadow: inset 0 0 0 1px rgba(73,55,65,.05) !important;
                    transition: background .25s ease,box-shadow .25s ease !important;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-clean input::placeholder {
                    color: #8f858b !important;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-clean input:focus {
                    background: #eee7eb !important;
                    box-shadow: inset 0 0 0 1px rgba(169,0,97,.22) !important;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-clean button {
                    min-width: 154px !important;
                    height: 58px !important;
                    border: 0 !important;
                    background-color: #171717 !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-repeat: no-repeat !important;
                    background-position: left top !important;
                    background-size: 0 100% !important;
                    color: #fff !important;
                    transition: background-size .44s cubic-bezier(.22,1,.36,1),transform .28s ease,filter .28s ease,box-shadow .28s ease !important;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-clean button:hover, html[data-cc-page="group-meetings-events"] .newsletter-form-clean button:focus-visible {
                    background-color: #171717 !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                    transform: translateY(-2px) !important;
                    filter: brightness(1.05) !important;
                    box-shadow: 0 10px 24px rgba(0,0,0,.12) !important;
                }

                /* 2) BOOKING - keep the approved transparent background, remove visible borders */
                @media(min-width:768px) {
                    html[data-cc-page="group-meetings-events"] .booking-card {
                        background: rgba(255,255,255,.46) !important;
                        border: 0 !important;
                        box-shadow: 0 18px 44px rgba(0,0,0,.13) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card::before {
                        display: none !important;
                        content: none !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .control, html[data-cc-page="group-meetings-events"] .booking-card .guest-trigger {
                        background: rgba(255,255,255,.76) !important;
                        border: 0 !important;
                        box-shadow: 0 1px 0 rgba(255,255,255,.56),0 5px 16px rgba(24,14,20,.045) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-card .control:focus-within, html[data-cc-page="group-meetings-events"] .booking-card .control.is-open, html[data-cc-page="group-meetings-events"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.93) !important;
                        border: 0 !important;
                        box-shadow: 0 0 0 2px rgba(169,0,97,.20),0 6px 18px rgba(24,14,20,.06) !important;
                    }
                }

                /* 3) BOOKING POSITION - slightly lower, arrows slightly higher for clear separation */
                @media(min-width:1101px) {
                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 204px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        margin-top: -172px !important;
                        margin-bottom: 58px !important;
                    }
                }

                @media(min-width:821px) and (max-width:1100px) {
                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 236px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        margin-top: -210px !important;
                        margin-bottom: 54px !important;
                    }
                }

                @media(min-width:768px) and (max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .hero-control {
                        bottom: 285px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .booking-shell {
                        margin-top: -265px !important;
                        margin-bottom: 48px !important;
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-meetings-events"] .newsletter-form-clean {
                        grid-template-columns: 1fr !important;
                        gap: 9px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-form-clean input, html[data-cc-page="group-meetings-events"] .newsletter-form-clean button {
                        width: 100% !important;
                        height: 54px !important;
                    }
                }


                /* =====================================================
                   V16 SECOND NEWSLETTER CONCEPT - CENTERED / STACKED
                   Added below the current newsletter for direct visual comparison.
                   ===================================================== */
                html[data-cc-page="group-meetings-events"] .footer-newsletter-centered {
                    background: #f7f5f4;
                    color: #1c191b;
                    border-top: 1px solid #ebe6e8;
                    border-bottom: 1px solid #ebe6e8;
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-centered-inner {
                    width: min(760px,calc(100% - 40px));
                    margin-inline: auto;
                    padding: 76px 0 82px;
                    text-align: center;
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-centered .eyebrow {
                    color: var(--pink);
                    margin-bottom: 16px;
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-centered h2 {
                    font-family: var(--display);
                    font-size: clamp(42px,4.6vw,66px);
                    line-height: 1.02;
                    font-weight: 400;
                    letter-spacing: -.035em;
                    max-width: 720px;
                    margin-inline: auto;
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-centered p {
                    max-width: 560px;
                    margin: 20px auto 30px;
                    font-size: 13px;
                    line-height: 1.8;
                    color: #6f686c;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-centered {
                    width: min(620px,100%);
                    margin-inline: auto;
                    display: grid;
                    grid-template-columns: minmax(0,1fr) auto;
                    gap: 10px;
                    align-items: stretch;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-centered input {
                    width: 100%;
                    min-width: 0;
                    height: 58px;
                    border: 1px solid #d8d1d4;
                    background: #fff;
                    color: #211d20;
                    outline: 0;
                    padding: 0 20px;
                    font-size: 13px;
                    transition: border-color .25s ease,box-shadow .25s ease,background .25s ease;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-centered input::placeholder {
                    color: #968d92;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-centered input:focus {
                    border-color: rgba(169,0,97,.46);
                    box-shadow: 0 0 0 3px rgba(169,0,97,.07);
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-centered button {
                    min-width: 154px;
                    height: 58px;
                    border: 0;
                    background-color: var(--pink);
                    background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                    background-repeat: no-repeat;
                    background-position: left top;
                    background-size: 0 100%;
                    color: #fff;
                    padding: 0 24px;
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    transition: background-size .44s cubic-bezier(.22,1,.36,1),transform .28s ease,filter .28s ease,box-shadow .28s ease;
                }

                html[data-cc-page="group-meetings-events"] .newsletter-form-centered button:hover, html[data-cc-page="group-meetings-events"] .newsletter-form-centered button:focus-visible {
                    background-size: 100% 100%;
                    transform: translateY(-2px);
                    filter: brightness(1.06);
                    box-shadow: 0 10px 24px rgba(91,0,52,.18);
                }

                html[data-cc-page="group-meetings-events"] .footer-newsletter-centered small {
                    display: block;
                    margin-top: 12px;
                    font-size: 9px;
                    color: #9a9296;
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-meetings-events"] .footer-newsletter-centered-inner {
                        width: calc(100% - 30px);
                        padding: 58px 0 62px;
                    }

                    html[data-cc-page="group-meetings-events"] .footer-newsletter-centered h2 {
                        font-size: 40px;
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-form-centered {
                        grid-template-columns: 1fr;
                        gap: 9px;
                    }

                    html[data-cc-page="group-meetings-events"] .newsletter-form-centered input, html[data-cc-page="group-meetings-events"] .newsletter-form-centered button {
                        width: 100%;
                        height: 54px;
                    }
                }



                /* =====================================================
                   V17 PINK DATE PICKER + CUSTOM RESORT SELECT + REFERENCE FOOTER
                   ===================================================== */

                /* Flatpickr - replace browser/library blue with Charmillion pink. */
                html[data-cc-page="group-meetings-events"] .flatpickr-calendar {
                    font-family: var(--body) !important;
                    border: 0 !important;
                    border-radius: 2px !important;
                    box-shadow: 0 18px 50px rgba(24,16,20,.18) !important;
                    overflow: hidden;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-months {
                    padding: 7px 5px 3px;
                    background: #fff;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-month, html[data-cc-page="group-meetings-events"] .flatpickr-current-month .flatpickr-monthDropdown-months, html[data-cc-page="group-meetings-events"] .flatpickr-current-month input.cur-year {
                    color: #211b1f !important;
                    fill: #211b1f !important;
                    font-weight: 600 !important;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-prev-month svg, html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-next-month svg {
                    fill: #60575c !important;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-prev-month:hover svg, html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-next-month:hover svg {
                    fill: var(--pink) !important;
                }

                html[data-cc-page="group-meetings-events"] span.flatpickr-weekday {
                    color: #83777e !important;
                    font-size: 10px !important;
                    font-weight: 600 !important;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-day {
                    border-radius: 50% !important;
                    color: #2a2428 !important;
                    transition: background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease !important;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-day:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day:focus {
                    background: rgba(169,0,97,.10) !important;
                    border-color: rgba(169,0,97,.10) !important;
                    color: var(--pink) !important;
                    transform: translateY(-1px);
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-day.today {
                    border-color: var(--pink) !important;
                    color: var(--pink) !important;
                    font-weight: 700 !important;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-day.today:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day.today:focus {
                    background: var(--pink) !important;
                    border-color: var(--pink) !important;
                    color: #fff !important;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-day.selected, html[data-cc-page="group-meetings-events"] .flatpickr-day.startRange, html[data-cc-page="group-meetings-events"] .flatpickr-day.endRange, html[data-cc-page="group-meetings-events"] .flatpickr-day.selected:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day.startRange:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day.endRange:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day.selected:focus, html[data-cc-page="group-meetings-events"] .flatpickr-day.startRange:focus, html[data-cc-page="group-meetings-events"] .flatpickr-day.endRange:focus {
                    background: var(--pink) !important;
                    border-color: var(--pink) !important;
                    color: #fff !important;
                    box-shadow: none !important;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-day.inRange, html[data-cc-page="group-meetings-events"] .flatpickr-day.prevMonthDay.inRange, html[data-cc-page="group-meetings-events"] .flatpickr-day.nextMonthDay.inRange {
                    background: rgba(169,0,97,.08) !important;
                    border-color: transparent !important;
                    box-shadow: -5px 0 0 rgba(169,0,97,.08),5px 0 0 rgba(169,0,97,.08) !important;
                }

                /* Resort selector - custom UI so selected/hover state is always brand pink. */
                html[data-cc-page="group-meetings-events"] .resort-select-field {
                    z-index: 145;
                }

                html[data-cc-page="group-meetings-events"] .custom-resort-control {
                    overflow: visible !important;
                }

                html[data-cc-page="group-meetings-events"] .resort-select-trigger {
                    width: 100%;
                    height: 100%;
                    border: 0;
                    outline: 0;
                    background: transparent;
                    color: #272126;
                    text-align: left;
                    padding: 0 39px 0 39px;
                    font-size: 12px;
                    cursor: pointer;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis;
                }

                html[data-cc-page="group-meetings-events"] .custom-resort-control.open {
                    background: rgba(255,255,255,.90) !important;
                    box-shadow: 0 0 0 3px rgba(169,0,97,.08) !important;
                }

                html[data-cc-page="group-meetings-events"] .custom-resort-control.open .down {
                    color: var(--pink) !important;
                    transform: translateY(-50%) rotate(180deg);
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu {
                    position: absolute;
                    left: 0;
                    top: calc(100% + 10px);
                    width: max(310px,100%);
                    padding: 8px;
                    background: #fff;
                    box-shadow: 0 20px 52px rgba(28,18,23,.20);
                    border-top: 3px solid var(--pink);
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transform: translateY(8px);
                    transition: opacity .2s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .2s ease;
                    z-index: 250;
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu.open {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: none;
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu button {
                    width: 100%;
                    display: grid;
                    gap: 3px;
                    padding: 12px 13px;
                    border: 0;
                    border-bottom: 1px solid #eee9ec;
                    background: #fff;
                    color: #272126;
                    text-align: left;
                    transition: background .2s ease,color .2s ease,padding-left .2s ease;
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu button:last-child {
                    border-bottom: 0;
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu button span {
                    font-size: 11px;
                    font-weight: 600;
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu button small {
                    font-size: 8px;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    color: #91858c;
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu button:hover, html[data-cc-page="group-meetings-events"] .resort-select-menu button:focus-visible, html[data-cc-page="group-meetings-events"] .resort-select-menu button.selected {
                    background: rgba(169,0,97,.075);
                    color: var(--pink);
                    padding-left: 18px;
                    outline: 0;
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu button.selected::after {
                    content: "\f00c";
                    font-family: "Font Awesome 6 Free";
                    font-weight: 900;
                    position: absolute;
                    right: 18px;
                    color: var(--pink);
                }

                html[data-cc-page="group-meetings-events"] .resort-select-menu button {
                    position: relative;
                }

                /* One footer only - reference-inspired, more polished than the screenshot. */
                html[data-cc-page="group-meetings-events"] .footer-reference {
                    background: #121214 !important;
                    color: #fff;
                    padding: 0 !important;
                    position: relative;
                    overflow: hidden;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference::before {
                    content: "" !important;
                    display: block !important;
                    position: absolute;
                    left: -180px;
                    bottom: -220px;
                    width: 620px;
                    height: 620px;
                    background: radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
                    pointer-events: none;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference::after {
                    display: none !important;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-main {
                    position: relative;
                    z-index: 2;
                    display: grid;
                    grid-template-columns: 1.05fr .72fr .95fr 1.55fr;
                    gap: clamp(38px,4.8vw,78px);
                    padding-top: 72px;
                    padding-bottom: 70px;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-logo {
                    display: inline-block;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-logo img {
                    width: 190px;
                    height: auto;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-brand > p {
                    margin-top: 28px;
                    max-width: 310px;
                    font-size: 14px;
                    line-height: 1.95;
                    color: rgba(255,255,255,.72);
                }

                html[data-cc-page="group-meetings-events"] .footer-destination-line {
                    display: flex;
                    align-items: center;
                    flex-wrap: wrap;
                    gap: 10px;
                    margin-top: 20px;
                    font-size: 8px;
                    font-weight: 700;
                    letter-spacing: .12em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.82);
                }

                html[data-cc-page="group-meetings-events"] .footer-destination-line b {
                    width: 3px;
                    height: 3px;
                    border-radius: 50%;
                    background: var(--pink);
                }

                html[data-cc-page="group-meetings-events"] .footer-follow-label {
                    margin-top: 32px;
                    font-size: 8px;
                    font-weight: 700;
                    letter-spacing: .16em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.48);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-socials {
                    display: flex;
                    gap: 9px;
                    margin-top: 14px;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-socials a {
                    width: 39px;
                    height: 39px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border-radius: 50%;
                    border: 1px solid rgba(255,255,255,.17);
                    color: #fff;
                    font-size: 12px;
                    transition: background .28s ease,border-color .28s ease,transform .28s ease;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    transform: translateY(-3px);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference h4 {
                    margin: 0 0 24px !important;
                    font-size: 10px !important;
                    font-weight: 700 !important;
                    letter-spacing: .2em !important;
                    text-transform: uppercase !important;
                    color: #fff !important;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-column nav {
                    display: grid;
                    gap: 16px;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-column nav a {
                    width: fit-content;
                    font-size: 13px;
                    line-height: 1.45;
                    color: rgba(255,255,255,.72);
                    transition: color .22s ease,transform .22s ease;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-column nav a:hover {
                    color: #fff;
                    transform: translateX(4px);
                }

                html[data-cc-page="group-meetings-events"] .footer-contact-cards {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    gap: 10px;
                }

                html[data-cc-page="group-meetings-events"] .footer-contact-card {
                    min-width: 0;
                    min-height: 76px;
                    padding: 14px;
                    display: grid;
                    grid-template-columns: 38px minmax(0,1fr);
                    gap: 12px;
                    align-items: center;
                    border: 1px solid rgba(255,255,255,.12);
                    background: rgba(255,255,255,.025);
                    transition: border-color .25s ease,background .25s ease,transform .25s ease;
                }

                html[data-cc-page="group-meetings-events"] .footer-contact-card:hover {
                    border-color: rgba(169,0,97,.62);
                    background: rgba(169,0,97,.06);
                    transform: translateY(-2px);
                }

                html[data-cc-page="group-meetings-events"] .footer-contact-icon {
                    width: 38px;
                    height: 38px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border: 1px solid rgba(169,0,97,.58);
                    color: var(--pink);
                }

                html[data-cc-page="group-meetings-events"] .footer-contact-card small {
                    display: block;
                    margin-bottom: 4px;
                    font-size: 7px;
                    font-weight: 700;
                    letter-spacing: .12em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.48);
                }

                html[data-cc-page="group-meetings-events"] .footer-contact-card strong {
                    display: block;
                    overflow-wrap: anywhere;
                    font-size: 10px;
                    line-height: 1.45;
                    color: #fff;
                    font-weight: 600;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-newsletter {
                    margin-top: 30px;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-newsletter h4 {
                    margin-bottom: 16px !important;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-newsletter > p {
                    margin: 0 0 14px;
                    font-size: 13px;
                    line-height: 1.65;
                    color: rgba(255,255,255,.68);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-form {
                    display: grid;
                    grid-template-columns: minmax(0,1fr) auto;
                    min-height: 52px;
                    border: 1px solid rgba(255,255,255,.15);
                    background: rgba(255,255,255,.025);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-form:focus-within {
                    border-color: rgba(169,0,97,.72);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-form input {
                    min-width: 0;
                    border: 0;
                    outline: 0;
                    background: transparent;
                    color: #fff;
                    padding: 0 16px;
                    font-size: 12px;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-form input::placeholder {
                    color: rgba(255,255,255,.45);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-form button {
                    position: relative;
                    overflow: hidden;
                    isolation: isolate;
                    min-width: 142px;
                    border: 0;
                    background: var(--pink);
                    color: #fff;
                    padding: 0 18px;
                    font-size: 9px;
                    font-weight: 700;
                    letter-spacing: .13em;
                    text-transform: uppercase;
                    transition: transform .25s ease,filter .25s ease;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-form button::before {
                    content: "";
                    position: absolute;
                    inset: 0;
                    z-index: -1;
                    background: var(--pink-dark);
                    transform: scaleX(0);
                    transform-origin: left;
                    transition: transform .4s cubic-bezier(.22,1,.36,1);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-form button:hover {
                    transform: translateY(-2px);
                    filter: brightness(1.06);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-form button:hover::before {
                    transform: scaleX(1);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-newsletter > small {
                    display: block;
                    margin-top: 9px;
                    font-size: 8px;
                    color: rgba(255,255,255,.38);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-newsletter > small a {
                    color: rgba(255,255,255,.72);
                    text-decoration: underline;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-bottom {
                    position: relative;
                    z-index: 2;
                    background: #0c0c0d;
                    border-top: 1px solid rgba(255,255,255,.06);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-bottom .container {
                    min-height: 88px;
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 28px;
                    color: rgba(255,255,255,.56);
                    font-size: 9px;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-bottom .container > div {
                    display: grid;
                    gap: 5px;
                }

                html[data-cc-page="group-meetings-events"] .footer-powered {
                    font-size: 8px;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-bottom a {
                    color: rgba(255,255,255,.82);
                    transition: color .2s ease;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-bottom a:hover {
                    color: var(--pink);
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-bottom nav {
                    display: flex;
                    flex-wrap: wrap;
                    justify-content: flex-end;
                    gap: 28px;
                    font-size: 8px;
                    font-weight: 700;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                }

                @media(max-width:1180px) {
                    html[data-cc-page="group-meetings-events"] .footer-reference-main {
                        grid-template-columns: 1fr 1fr 1fr;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-reservations {
                        grid-column: 1/-1;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-contact-cards {
                        grid-template-columns: 1fr 1fr;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-newsletter {
                        max-width: 720px;
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .resort-select-menu {
                        width: 100%;
                        min-width: 280px;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-main {
                        grid-template-columns: 1fr 1fr;
                        gap: 46px 30px;
                        padding-top: 58px;
                        padding-bottom: 56px;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-brand, html[data-cc-page="group-meetings-events"] .footer-reference-reservations {
                        grid-column: 1/-1;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-brand > p {
                        max-width: 500px;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-bottom .container {
                        align-items: flex-start;
                        flex-direction: column;
                        justify-content: center;
                        padding-top: 22px;
                        padding-bottom: 22px;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-bottom nav {
                        justify-content: flex-start;
                        gap: 18px;
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-meetings-events"] .resort-select-menu {
                        left: 0;
                        right: 0;
                        width: auto;
                        min-width: 0;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-main {
                        grid-template-columns: 1fr;
                        gap: 38px;
                        padding-top: 50px;
                        padding-bottom: 48px;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-brand, html[data-cc-page="group-meetings-events"] .footer-reference-reservations {
                        grid-column: auto;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-logo img {
                        width: 172px;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-column nav {
                        gap: 13px;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-contact-cards {
                        grid-template-columns: 1fr;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-form {
                        grid-template-columns: 1fr;
                        gap: 8px;
                        border: 0;
                        background: transparent;
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-form input {
                        height: 52px;
                        border: 1px solid rgba(255,255,255,.15);
                        background: rgba(255,255,255,.025);
                    }
                    html[data-cc-page="group-meetings-events"] .footer-reference-form button {
                        min-height: 52px;
                    }
                }

    

                /* =====================================================
                   V18 DATE LIMITS + FOOTER CONTAINER ALIGNMENT
                   ===================================================== */

                /* Past dates: visually and functionally disabled. */
                html[data-cc-page="group-meetings-events"] .flatpickr-day.flatpickr-disabled, html[data-cc-page="group-meetings-events"] .flatpickr-day.flatpickr-disabled:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day.prevMonthDay.flatpickr-disabled, html[data-cc-page="group-meetings-events"] .flatpickr-day.nextMonthDay.flatpickr-disabled, html[data-cc-page="group-meetings-events"] .flatpickr-day.notAllowed, html[data-cc-page="group-meetings-events"] .flatpickr-day.notAllowed:hover {
                    color: #c9c3c6 !important;
                    background: transparent !important;
                    border-color: transparent !important;
                    box-shadow: none !important;
                    cursor: not-allowed !important;
                    transform: none !important;
                    opacity: .48 !important;
                    pointer-events: none !important;
                }

                html[data-cc-page="group-meetings-events"] .flatpickr-prev-month.flatpickr-disabled, html[data-cc-page="group-meetings-events"] .flatpickr-next-month.flatpickr-disabled {
                    opacity: .22 !important;
                    cursor: default !important;
                    pointer-events: none !important;
                }

                /* Keep the whole footer on exactly the same left/right rails as the copyright bar. */
                html[data-cc-page="group-meetings-events"] .footer-reference > .container.footer-reference-main {
                    width: min(1420px,calc(100% - 80px)) !important;
                    max-width: 1420px !important;
                    margin-left: auto !important;
                    margin-right: auto !important;
                    padding-left: 0 !important;
                    padding-right: 0 !important;
                }

                html[data-cc-page="group-meetings-events"] .footer-reference-bottom > .container {
                    width: min(1420px,calc(100% - 80px)) !important;
                    max-width: 1420px !important;
                    margin-left: auto !important;
                    margin-right: auto !important;
                }

                @media(max-width:1100px) {
                    html[data-cc-page="group-meetings-events"] .footer-reference > .container.footer-reference-main, html[data-cc-page="group-meetings-events"] .footer-reference-bottom > .container {
                        width: min(100% - 44px,1420px) !important;
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .footer-reference > .container.footer-reference-main, html[data-cc-page="group-meetings-events"] .footer-reference-bottom > .container {
                        width: calc(100% - 30px) !important;
                    }
                }

    

                /* =====================================================
                   V19 STICKY LOGO + CLEAR BOOKING LABELS
                   ===================================================== */

                /* Larger horizontal logo in the desktop sticky header. */
                @media(min-width:1251px) {
                    html[data-cc-page="group-meetings-events"] .header.sticky .brand {
                        width: 250px !important;
                        flex: 0 0 250px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .header.sticky .brand-dark {
                        width: 230px !important;
                        max-height: 64px !important;
                        object-fit: contain !important;
                        object-position: left center !important;
                    }
                }

                /* Keep the larger logo balanced on medium desktop widths. */
                @media(min-width:1101px) and (max-width:1250px) {
                    html[data-cc-page="group-meetings-events"] .header.sticky .brand {
                        width: 205px !important;
                        flex: 0 0 205px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .header.sticky .brand-dark {
                        width: 192px !important;
                        max-height: 54px !important;
                    }
                }

                /* Booking labels: stronger contrast and easier scanning over the transparent panel. */
                html[data-cc-page="group-meetings-events"] .booking-card .field > label {
                    color: #2b2428 !important;
                    font-size: 10px !important;
                    font-weight: 700 !important;
                    letter-spacing: .135em !important;
                    line-height: 1.2 !important;
                    margin-bottom: 8px !important;
                    opacity: 1 !important;
                }

                @media(max-width:767px) {
                    html[data-cc-page="group-meetings-events"] .mobile-booking-modal .field > label {
                        color: #2b2428 !important;
                        font-size: 9px !important;
                        font-weight: 700 !important;
                        letter-spacing: .12em !important;
                        margin-bottom: 7px !important;
                        opacity: 1 !important;
                    }
                }


                /* =====================================================
                   V20 MOBILE REVIEW - RESORT CARD / LOYALTY / OFFERS
                   Mobile only. Desktop and tablet remain unchanged.
                   ===================================================== */
                @media(max-width:767px) {
                    /* 1) Resort cards occupy the full phone viewport width. */
                    html[data-cc-page="group-meetings-events"] .resort-viewport {
                        width: calc(100% + 30px) !important;
                        margin-left: -15px !important;
                        margin-right: -15px !important;
                        overflow: hidden !important;
                    }

                    html[data-cc-page="group-meetings-events"] .resort-track {
                        gap: 0 !important;
                    }

                    html[data-cc-page="group-meetings-events"] .resort-story {
                        flex: 0 0 100vw !important;
                        width: 100vw !important;
                        max-width: 100vw !important;
                    }

                    /* Keep card content comfortably inside the full-width image. */
                    html[data-cc-page="group-meetings-events"] .resort-story .story-copy {
                        left: 24px !important;
                        right: 24px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .resort-story .story-index {
                        left: 20px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .resort-story .story-link {
                        right: 20px !important;
                    }

                    /* 2) Loyalty: mobile-specific image treatment + centered content. */
                    html[data-cc-page="group-meetings-events"] .loyalty {
                        min-height: 590px !important;
                        background-image: url("../images/Charmillion-Sea-Life-Hero-Banner.jpg"),
                                          url("https://charmillionresorts.com/images/uploads/Charmillion-Sea-Life-Resort-Lobby.jpg") !important;
                        background-position: center center, center center !important;
                        background-size: cover, cover !important;
                        background-repeat: no-repeat, no-repeat !important;
                        background-attachment: scroll, scroll !important;
                        align-items: center !important;
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty::after {
                        background: linear-gradient(180deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.56) 48%,rgba(0,0,0,.68) 100%) !important;
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty .container {
                        display: flex !important;
                        justify-content: center !important;
                        align-items: center !important;
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy {
                        width: min(100%,430px) !important;
                        max-width: 430px !important;
                        margin: 0 auto !important;
                        text-align: center !important;
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy .eyebrow {
                        text-align: center !important;
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy h2 {
                        margin-left: auto !important;
                        margin-right: auto !important;
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy p {
                        margin-left: auto !important;
                        margin-right: auto !important;
                        max-width: 360px !important;
                    }

                    html[data-cc-page="group-meetings-events"] .loyalty-copy .btn {
                        margin-left: auto !important;
                        margin-right: auto !important;
                    }

                    /* 3) View All Offers centered on phone screens. */
                    html[data-cc-page="group-meetings-events"] .offers-bottom {
                        justify-content: center !important;
                    }
                }


                /* =====================================================
                   V21 MOBILE RESORT CAROUSEL - EXACTLY ONE CARD PER VIEW
                   Mobile only: no previous/next card peeking at rest.
                   ===================================================== */
                @media(max-width:767px) {
                    html[data-cc-page="group-meetings-events"] .resort-viewport {
                        width: 100vw !important;
                        max-width: 100vw !important;
                        margin-left: calc(50% - 50vw) !important;
                        margin-right: calc(50% - 50vw) !important;
                        overflow: hidden !important;
                        padding: 0 !important;
                    }

                    html[data-cc-page="group-meetings-events"] .resort-track {
                        width: 100% !important;
                        gap: 0 !important;
                        padding: 0 !important;
                    }

                    html[data-cc-page="group-meetings-events"] .resort-story {
                        flex: 0 0 100% !important;
                        width: 100% !important;
                        min-width: 100% !important;
                        max-width: 100% !important;
                        margin: 0 !important;
                    }
                }

    

                /* =====================================================
                   V23 LANGUAGE DROPDOWN - DESKTOP + MOBILE
                   ===================================================== */
                html[data-cc-page="group-meetings-events"] .language-switcher {
                    position: relative;
                    flex: 0 0 auto;
                    margin-left: 18px;
                }

                html[data-cc-page="group-meetings-events"] .language-trigger {
                    height: 44px;
                    min-width: 82px;
                    padding: 0 12px;
                    border: 1px solid rgba(255,255,255,.32);
                    background: rgba(255,255,255,.07);
                    color: inherit;
                    display: inline-flex;
                    align-items: center;
                    justify-content: center;
                    gap: 8px;
                    font-size: 11px;
                    font-weight: 600;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
                }

                html[data-cc-page="group-meetings-events"] .language-trigger:hover, html[data-cc-page="group-meetings-events"] .language-switcher.open .language-trigger {
                    background: rgba(169,0,97,.12);
                    border-color: var(--pink);
                    transform: translateY(-1px);
                }

                html[data-cc-page="group-meetings-events"] .header.sticky .language-trigger {
                    background: #fff;
                    border-color: #dedede;
                    color: #171717;
                }

                html[data-cc-page="group-meetings-events"] .header.sticky .language-trigger:hover, html[data-cc-page="group-meetings-events"] .header.sticky .language-switcher.open .language-trigger {
                    color: var(--pink);
                    border-color: var(--pink);
                    background: #fff;
                }

                html[data-cc-page="group-meetings-events"] .language-flag {
                    font-size: 17px;
                    line-height: 1;
                    letter-spacing: 0;
                }

                html[data-cc-page="group-meetings-events"] .language-trigger .fa-angle-down {
                    font-size: 9px;
                    transition: transform .25s ease;
                }

                html[data-cc-page="group-meetings-events"] .language-switcher.open .language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                }

                html[data-cc-page="group-meetings-events"] .language-menu {
                    position: absolute;
                    top: calc(100% + 12px);
                    right: 0;
                    width: 205px;
                    background: #fff;
                    color: #171717;
                    border-top: 3px solid var(--pink);
                    box-shadow: 0 18px 45px rgba(0,0,0,.16);
                    padding: 7px 0;
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transform: translateY(9px);
                    transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
                    z-index: 245;
                }

                html[data-cc-page="group-meetings-events"] .language-switcher.open .language-menu {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: none;
                }

                html[data-cc-page="group-meetings-events"] .language-menu a {
                    display: grid;
                    grid-template-columns: 28px 1fr auto;
                    align-items: center;
                    gap: 10px;
                    min-height: 48px;
                    padding: 8px 14px;
                    border-bottom: 1px solid #eee;
                    transition: background .2s ease,color .2s ease,padding-left .2s ease;
                }

                html[data-cc-page="group-meetings-events"] .language-menu a:last-child {
                    border-bottom: 0;
                }

                html[data-cc-page="group-meetings-events"] .language-menu a:hover, html[data-cc-page="group-meetings-events"] .language-menu a.is-current {
                    background: #faf6f8;
                    color: var(--pink);
                    padding-left: 18px;
                }

                html[data-cc-page="group-meetings-events"] .language-menu .language-name {
                    font-size: 12px;
                    font-weight: 500;
                    letter-spacing: .02em;
                    text-transform: none;
                }

                html[data-cc-page="group-meetings-events"] .language-menu .language-code {
                    font-size: 9px;
                    font-weight: 700;
                    letter-spacing: .12em;
                    color: #9b9b9b;
                }

                html[data-cc-page="group-meetings-events"] .language-menu a.is-current .language-code {
                    color: var(--pink);
                }

                html[data-cc-page="group-meetings-events"] .drawer-language {
                    margin-top: 18px;
                    padding-top: 18px;
                    border-top: 1px solid #eee;
                }

                html[data-cc-page="group-meetings-events"] .drawer-language .drawer-toggle {
                    padding-top: 12px;
                    padding-bottom: 12px;
                }

                html[data-cc-page="group-meetings-events"] .drawer-language-current {
                    display: inline-flex;
                    align-items: center;
                    gap: 9px;
                }

                html[data-cc-page="group-meetings-events"] .drawer-language-list a {
                    display: grid !important;
                    grid-template-columns: 28px 1fr auto;
                    align-items: center;
                    gap: 10px;
                    padding: 12px 16px !important;
                }

                html[data-cc-page="group-meetings-events"] .drawer-language-list a.is-current {
                    color: var(--pink);
                    background: #faf6f8;
                }

                html[data-cc-page="group-meetings-events"] .drawer-language-list .language-code {
                    font-size: 9px;
                    font-weight: 700;
                    letter-spacing: .12em;
                    color: #999;
                }

                @media(max-width:1100px) {
                    html[data-cc-page="group-meetings-events"] .language-switcher {
                        margin-left: 12px;
                    }
                    html[data-cc-page="group-meetings-events"] .language-trigger {
                        min-width: 74px;
                        padding: 0 10px;
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .language-switcher {
                        display: none;
                    }
                }



                /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
                html[data-cc-page="group-meetings-events"] .language-flag-img {
                    display: block;
                    width: 24px;
                    height: 15px;
                    object-fit: cover;
                    border-radius: 1px;
                    box-shadow: 0 0 0 1px rgba(0,0,0,.12);
                    flex: 0 0 auto;
                }

                html[data-cc-page="group-meetings-events"] .header-top .container {
                    gap: 18px;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language {
                    margin-left: 2px !important;
                    height: 100%;
                    display: flex;
                    align-items: center;
                    position: relative;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language::before {
                    content: "";
                    width: 1px;
                    height: 13px;
                    background: rgba(255,255,255,.25);
                    margin-right: 12px;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-trigger {
                    min-width: 48px;
                    width: auto;
                    height: 26px;
                    padding: 0 7px;
                    gap: 7px;
                    border: 0;
                    background: transparent;
                    color: #fff;
                    border-radius: 2px;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-trigger:hover, html[data-cc-page="group-meetings-events"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-menu {
                    top: calc(100% + 7px);
                    right: 0;
                    width: 184px;
                    padding: 6px 0;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-menu a:hover, html[data-cc-page="group-meetings-events"] .topbar-language .language-menu a.is-current {
                    padding-left: 17px;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

                /* V24: remove the old main-row desktop language control completely. */
                html[data-cc-page="group-meetings-events"] .header-main > .container > .language-switcher {
                    display: none !important;
                }

                html[data-cc-page="group-meetings-events"] .drawer-language-current {
                    display: inline-flex;
                    align-items: center;
                    gap: 10px;
                }

                html[data-cc-page="group-meetings-events"] .drawer-language-list a {
                    display: grid !important;
                    grid-template-columns: 32px 1fr !important;
                    gap: 11px !important;
                    align-items: center;
                    padding: 12px 16px !important;
                }

                html[data-cc-page="group-meetings-events"] .drawer-language-list .language-flag-img {
                    width: 26px;
                    height: 17px;
                }

                html[data-cc-page="group-meetings-events"] .drawer-connect {
                    margin-top: 22px;
                    padding-top: 22px;
                    border-top: 1px solid #ececec;
                }

                html[data-cc-page="group-meetings-events"] .drawer-email {
                    display: grid;
                    grid-template-columns: 42px minmax(0,1fr);
                    align-items: center;
                    gap: 12px;
                    padding: 13px 0;
                    color: #1c1c1c;
                }

                html[data-cc-page="group-meetings-events"] .drawer-contact-icon {
                    width: 42px;
                    height: 42px;
                    border-radius: 50%;
                    background: rgba(169,0,97,.08);
                    color: var(--pink);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-size: 14px;
                }

                html[data-cc-page="group-meetings-events"] .drawer-email-copy {
                    min-width: 0;
                }

                html[data-cc-page="group-meetings-events"] .drawer-email-copy small {
                    display: block;
                    margin-bottom: 4px;
                    font-size: 8px;
                    font-weight: 600;
                    letter-spacing: .16em;
                    text-transform: uppercase;
                    color: #9a9a9a;
                }

                html[data-cc-page="group-meetings-events"] .drawer-email-copy strong {
                    display: block;
                    overflow: hidden;
                    text-overflow: ellipsis;
                    white-space: nowrap;
                    font-size: 11px;
                    font-weight: 500;
                    color: #2a2a2a;
                }

                html[data-cc-page="group-meetings-events"] .drawer-email:hover .drawer-email-copy strong {
                    color: var(--pink);
                }

                html[data-cc-page="group-meetings-events"] .drawer-social-row {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 15px;
                    margin-top: 14px;
                }

                html[data-cc-page="group-meetings-events"] .drawer-social-label {
                    font-size: 8px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: #949494;
                }

                html[data-cc-page="group-meetings-events"] .drawer-socials {
                    display: flex;
                    align-items: center;
                    gap: 8px;
                }

                html[data-cc-page="group-meetings-events"] .drawer-socials a {
                    width: 36px;
                    height: 36px;
                    border: 1px solid #dfdfdf;
                    border-radius: 50%;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    color: #363636;
                    font-size: 12px;
                    transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
                }

                html[data-cc-page="group-meetings-events"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

                html[data-cc-page="group-meetings-events"] .drawer .drawer-book-now {
                    margin-top: 22px;
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .topbar-language {
                        display: none !important;
                    }
                }

                @media(max-width:390px) {
                    html[data-cc-page="group-meetings-events"] .drawer {
                        padding-left: 22px;
                        padding-right: 22px;
                    }

                    html[data-cc-page="group-meetings-events"] .drawer-social-row {
                        align-items: flex-start;
                        flex-direction: column;
                    }

                    html[data-cc-page="group-meetings-events"] .drawer-socials {
                        width: 100%;
                    }
                }



                /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
                html[data-cc-page="group-meetings-events"] .mobile-header-actions {
                    display: none;
                    margin-left: auto;
                    align-items: center;
                    gap: 7px;
                    position: relative;
                    z-index: 260;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-switcher {
                    position: relative;
                    display: none;
                    align-items: center;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-trigger {
                    width: 48px;
                    height: 44px;
                    padding: 0;
                    border: 0;
                    background: transparent;
                    color: #171717;
                    display: inline-flex;
                    align-items: center;
                    justify-content: center;
                    gap: 6px;
                    border-radius: 2px;
                    transition: background .25s ease,color .25s ease;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-trigger .language-flag-img {
                    width: 25px;
                    height: 16px;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-trigger .fa-angle-down {
                    font-size: 8px;
                    color: #777;
                    transition: transform .25s ease,color .25s ease;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-meetings-events"] .mobile-language-trigger:hover {
                    background: rgba(169,0,97,.06);
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-menu {
                    position: absolute;
                    right: 0;
                    top: calc(100% + 8px);
                    width: 188px;
                    padding: 6px 0;
                    background: #fff;
                    color: #171717;
                    border-top: 3px solid var(--pink);
                    box-shadow: 0 18px 45px rgba(0,0,0,.18);
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transform: translateY(8px);
                    transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
                    z-index: 290;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-switcher.open .mobile-language-menu {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: none;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-menu a {
                    min-height: 46px;
                    padding: 8px 14px;
                    display: grid;
                    grid-template-columns: 32px 1fr;
                    align-items: center;
                    gap: 10px;
                    border-bottom: 1px solid #eee;
                    font-size: 11px;
                    font-weight: 500;
                    color: #242424;
                    transition: background .2s ease,color .2s ease,padding-left .2s ease;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-menu a:last-child {
                    border-bottom: 0;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-menu a:hover, html[data-cc-page="group-meetings-events"] .mobile-language-menu a.is-current {
                    color: var(--pink);
                    background: #faf6f8;
                    padding-left: 18px;
                }

                html[data-cc-page="group-meetings-events"] .mobile-language-menu .language-flag-img {
                    width: 27px;
                    height: 17px;
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-meetings-events"] .mobile-header-actions {
                        display: flex;
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-header-actions .mobile-trigger {
                        display: block;
                        margin-left: 0;
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-language-switcher {
                        display: flex;
                    }
                }

                @media(max-width:390px) {
                    html[data-cc-page="group-meetings-events"] .mobile-header-actions {
                        gap: 3px;
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-language-trigger, html[data-cc-page="group-meetings-events"] .mobile-header-actions .mobile-trigger {
                        width: 42px;
                    }

                    html[data-cc-page="group-meetings-events"] .mobile-language-menu {
                        right: -43px;
                    }
                }

    

/* =========================================================
   MEETINGS & WEDDINGS - CONCEPT 07 / CLEAN LUXURY
   ========================================================= */
html[data-cc-page="group-meetings-events"] .cl7-page{background:#fff;color:var(--ink)}
html[data-cc-page="group-meetings-events"] .cl7-section{position:relative}
html[data-cc-page="group-meetings-events"] .cl7-kicker{display:flex;align-items:center;gap:14px;color:var(--pink);font-size:10px;font-weight:700;letter-spacing:.20em;text-transform:uppercase}
html[data-cc-page="group-meetings-events"] .cl7-kicker:before{content:"";width:34px;height:1px;background:currentColor}
html[data-cc-page="group-meetings-events"] .cl7-display{font-family:var(--display);font-weight:400;letter-spacing:-.04em}
html[data-cc-page="group-meetings-events"] .cl7-copy{font-size:14px;line-height:1.85;color:#6f6b6d}

/* Hero: controlled, quiet, never collides with header */
html[data-cc-page="group-meetings-events"] .cl7-hero{height:min(78vh,780px);min-height:650px;position:relative;overflow:hidden;background:#111;color:#fff}
html[data-cc-page="group-meetings-events"] .cl7-hero-media{position:absolute;inset:0}
html[data-cc-page="group-meetings-events"] .cl7-hero-media img{height:100%;object-fit:cover;object-position:center 48%;transform:scale(1.055);animation:cl7HeroMove_cc_groupmeetingsevents 10s ease-in-out both}
@keyframes cl7HeroMove_cc_groupmeetingsevents{0%{transform:scale(1.055) translate3d(0,0,0)}100%{transform:scale(1.12) translate3d(-1.2%,-.8%,0)}}
html[data-cc-page="group-meetings-events"] .cl7-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.18) 37%,rgba(0,0,0,.50) 100%),linear-gradient(90deg,rgba(0,0,0,.54),rgba(0,0,0,.06) 63%);z-index:1}
html[data-cc-page="group-meetings-events"] .cl7-hero-inner{height:100%;position:relative;z-index:2;display:flex;align-items:flex-end;padding-top:170px;padding-bottom:88px}
html[data-cc-page="group-meetings-events"] .cl7-hero-copy{max-width:760px}
html[data-cc-page="group-meetings-events"] .cl7-hero .cl7-kicker{color:#fff;margin-bottom:18px;opacity:.92}
html[data-cc-page="group-meetings-events"] .cl7-hero-title{font-family:var(--display);font-size:clamp(54px,5.1vw,76px);line-height:.98;font-weight:400;letter-spacing:-.045em;max-width:760px}
html[data-cc-page="group-meetings-events"] .cl7-hero-sub{max-width:560px;margin-top:20px;font-size:14px;line-height:1.78;color:rgba(255,255,255,.82)}
html[data-cc-page="group-meetings-events"] .cl7-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
html[data-cc-page="group-meetings-events"] .cl7-hero-fact{position:absolute;right:0;bottom:0;z-index:3;display:flex;background:rgba(17,17,18,.92);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
html[data-cc-page="group-meetings-events"] .cl7-hero-fact div{min-width:155px;padding:24px 26px;border-left:1px solid rgba(255,255,255,.14)}
html[data-cc-page="group-meetings-events"] .cl7-hero-fact strong{display:block;font-family:var(--display);font-size:34px;font-weight:400;line-height:1;color:#fff}
html[data-cc-page="group-meetings-events"] .cl7-hero-fact span{display:block;margin-top:6px;font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}

/* Opening statement */
html[data-cc-page="group-meetings-events"] .cl7-intro{padding:112px 0 96px;border-bottom:1px solid #ece9ea}
html[data-cc-page="group-meetings-events"] .cl7-intro-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:100px;align-items:start}
html[data-cc-page="group-meetings-events"] .cl7-intro-title{font-size:clamp(46px,4.8vw,70px);line-height:1.01}
html[data-cc-page="group-meetings-events"] .cl7-intro-copy{max-width:650px;padding-top:12px}
html[data-cc-page="group-meetings-events"] .cl7-intro-copy p+p{margin-top:17px}
html[data-cc-page="group-meetings-events"] .cl7-mini-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:32px;border-top:1px solid #ded9db;border-bottom:1px solid #ded9db}
html[data-cc-page="group-meetings-events"] .cl7-mini-fact{padding:20px 18px 20px 0;border-right:1px solid #ded9db}
html[data-cc-page="group-meetings-events"] .cl7-mini-fact:last-child{border-right:0;padding-left:20px}
html[data-cc-page="group-meetings-events"] .cl7-mini-fact:nth-child(2){padding-left:20px}
html[data-cc-page="group-meetings-events"] .cl7-mini-fact strong{display:block;font-family:var(--display);font-size:29px;font-weight:400;color:#1d1b1c}
html[data-cc-page="group-meetings-events"] .cl7-mini-fact span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#8a8587}

/* Meeting hotels: editorial rows, not cards */
html[data-cc-page="group-meetings-events"] .cl7-hotels{padding:115px 0 130px;background:#fff}
html[data-cc-page="group-meetings-events"] .cl7-hotels-head{display:grid;grid-template-columns:1fr .72fr;gap:70px;align-items:end;margin-bottom:58px}
html[data-cc-page="group-meetings-events"] .cl7-hotels-head h2{font-size:clamp(48px,4.8vw,70px);line-height:1}
html[data-cc-page="group-meetings-events"] .cl7-hotels-head p{max-width:470px;margin-left:auto}
html[data-cc-page="group-meetings-events"] .cl7-venue{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);align-items:center;min-height:480px;margin-bottom:58px;position:relative}
html[data-cc-page="group-meetings-events"] .cl7-venue:last-child{margin-bottom:0}
html[data-cc-page="group-meetings-events"] .cl7-venue.reverse{grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr)}
html[data-cc-page="group-meetings-events"] .cl7-venue.reverse .cl7-venue-media{order:2}html[data-cc-page="group-meetings-events"] .cl7-venue.reverse .cl7-venue-copy{order:1;padding-left:0;padding-right:76px}
html[data-cc-page="group-meetings-events"] .cl7-venue-media{height:480px;position:relative;overflow:hidden;background:#ddd}
html[data-cc-page="group-meetings-events"] .cl7-venue-media img{height:100%;object-fit:cover;transition:transform 1.3s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-meetings-events"] .cl7-venue:hover .cl7-venue-media img{transform:scale(1.025)}
html[data-cc-page="group-meetings-events"] .cl7-venue-copy{padding-left:76px}
html[data-cc-page="group-meetings-events"] .cl7-venue-topline{display:flex;align-items:center;gap:16px;margin-bottom:18px}
html[data-cc-page="group-meetings-events"] .cl7-venue-no{font-family:var(--display);font-size:48px;line-height:1;color:#d9d3d6;transition:color .35s ease,transform .55s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-meetings-events"] .cl7-venue.in-view .cl7-venue-no{color:var(--pink);transform:translateY(-3px)}
html[data-cc-page="group-meetings-events"] .cl7-venue-label{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#7f7a7c}
html[data-cc-page="group-meetings-events"] .cl7-venue h3{font-size:clamp(38px,3.7vw,56px);line-height:1.02;margin-bottom:18px}
html[data-cc-page="group-meetings-events"] .cl7-venue-copy p{max-width:480px}
html[data-cc-page="group-meetings-events"] .cl7-venue-meta{display:flex;gap:26px;flex-wrap:wrap;margin:24px 0 28px;padding-top:20px;border-top:1px solid #e4e0e2}
html[data-cc-page="group-meetings-events"] .cl7-venue-meta span{font-size:10px;color:#797476}html[data-cc-page="group-meetings-events"] .cl7-venue-meta b{display:block;margin-bottom:3px;font-size:12px;color:#1d1b1c;font-weight:600}
html[data-cc-page="group-meetings-events"] .cl7-text-link{display:inline-flex;align-items:center;gap:11px;color:var(--pink);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid rgba(169,0,97,.35);padding-bottom:5px;transition:gap .25s ease,border-color .25s ease}
html[data-cc-page="group-meetings-events"] .cl7-text-link:hover{gap:17px;border-color:var(--pink)}

/* image curtain: clear and intentional */
html[data-cc-page="group-meetings-events"] .cl7-media-reveal{position:relative;isolation:isolate}
html[data-cc-page="group-meetings-events"] .cl7-media-reveal:after{content:"";position:absolute;inset:0;background:#171516;z-index:4;transform:scaleX(1);transform-origin:right;transition:transform 1.05s cubic-bezier(.77,0,.18,1)}
html[data-cc-page="group-meetings-events"] .cl7-media-reveal.from-right:after{transform-origin:left}
html[data-cc-page="group-meetings-events"] .cl7-media-reveal.in-view:after{transform:scaleX(0)}

/* MICE: elegant dark band, line-based support list */
html[data-cc-page="group-meetings-events"] .cl7-mice{background:#161516;color:#fff;padding:120px 0}
html[data-cc-page="group-meetings-events"] .cl7-mice-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:90px;align-items:start}
html[data-cc-page="group-meetings-events"] .cl7-mice-intro{position:sticky;top:135px}
html[data-cc-page="group-meetings-events"] .cl7-mice .cl7-kicker{color:#d8a7c2;margin-bottom:18px}
html[data-cc-page="group-meetings-events"] .cl7-mice h2{font-size:clamp(48px,4.7vw,68px);line-height:1.02;margin-bottom:20px}
html[data-cc-page="group-meetings-events"] .cl7-mice-intro p{color:rgba(255,255,255,.62);max-width:470px}
html[data-cc-page="group-meetings-events"] .cl7-support-list{border-top:1px solid rgba(255,255,255,.18)}
html[data-cc-page="group-meetings-events"] .cl7-support-item{display:grid;grid-template-columns:56px 1fr auto;gap:20px;align-items:center;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.14);position:relative;overflow:hidden}
html[data-cc-page="group-meetings-events"] .cl7-support-item:before{content:"";position:absolute;left:0;bottom:-1px;width:0;height:1px;background:var(--pink);transition:width .65s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-meetings-events"] .cl7-support-item.in-view:before{width:100%}
html[data-cc-page="group-meetings-events"] .cl7-support-icon{width:42px;height:42px;border:1px solid rgba(255,255,255,.22);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;transition:background .3s ease,border-color .3s ease,transform .5s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-meetings-events"] .cl7-support-item.in-view .cl7-support-icon{transform:rotate(360deg)}
html[data-cc-page="group-meetings-events"] .cl7-support-item:hover .cl7-support-icon{background:var(--pink);border-color:var(--pink)}
html[data-cc-page="group-meetings-events"] .cl7-support-item strong{font-family:var(--display);font-size:24px;font-weight:400}html[data-cc-page="group-meetings-events"] .cl7-support-item p{font-size:11px;line-height:1.65;color:rgba(255,255,255,.52);margin-top:4px}
html[data-cc-page="group-meetings-events"] .cl7-support-item>span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.35)}

/* Occasions, simple typographic field */
html[data-cc-page="group-meetings-events"] .cl7-occasions{padding:105px 0 118px;background:#fff}
html[data-cc-page="group-meetings-events"] .cl7-occasions-head{display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:end;margin-bottom:48px}
html[data-cc-page="group-meetings-events"] .cl7-occasions h2{font-size:clamp(46px,4.5vw,66px);line-height:1.02}html[data-cc-page="group-meetings-events"] .cl7-occasions-head p{max-width:460px;margin-left:auto}
html[data-cc-page="group-meetings-events"] .cl7-occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ddd8da;border-left:1px solid #ddd8da}
html[data-cc-page="group-meetings-events"] .cl7-occasion{min-height:135px;padding:26px;border-right:1px solid #ddd8da;border-bottom:1px solid #ddd8da;display:flex;flex-direction:column;justify-content:space-between;background:#fff;transition:background .3s ease,transform .4s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-meetings-events"] .cl7-occasion:hover{background:#faf7f9;transform:translateY(-4px)}
html[data-cc-page="group-meetings-events"] .cl7-occasion span{font-size:9px;letter-spacing:.14em;color:var(--pink)}html[data-cc-page="group-meetings-events"] .cl7-occasion strong{font-family:var(--display);font-size:27px;font-weight:400}

/* Weddings: one cinematic image + restrained floating panel */
html[data-cc-page="group-meetings-events"] .cl7-weddings{padding:0 0 130px;background:#fff}
html[data-cc-page="group-meetings-events"] .cl7-wedding-stage{height:660px;position:relative;overflow:hidden;background:#ddd}
html[data-cc-page="group-meetings-events"] .cl7-wedding-stage img{height:100%;object-fit:cover;object-position:center 42%;transition:transform 1.5s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-meetings-events"] .cl7-wedding-stage.in-view img{transform:scale(1.02)}
html[data-cc-page="group-meetings-events"] .cl7-wedding-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.07),transparent 50%),linear-gradient(180deg,transparent 55%,rgba(0,0,0,.32));z-index:1}
html[data-cc-page="group-meetings-events"] .cl7-wedding-panel{position:absolute;z-index:3;left:7%;bottom:-1px;width:min(540px,48%);background:#fff;padding:42px 46px 46px;box-shadow:0 18px 45px rgba(0,0,0,.10)}
html[data-cc-page="group-meetings-events"] .cl7-wedding-panel h2{font-size:clamp(44px,4.2vw,62px);line-height:1.02;margin:16px 0 18px}html[data-cc-page="group-meetings-events"] .cl7-wedding-panel p{margin-bottom:25px}

/* RFP: split, clean, no grey block */
html[data-cc-page="group-meetings-events"] .cl7-rfp{padding:125px 0 135px;background:#f7f5f4}
html[data-cc-page="group-meetings-events"] .cl7-rfp-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}
html[data-cc-page="group-meetings-events"] .cl7-rfp-intro{padding-top:12px}html[data-cc-page="group-meetings-events"] .cl7-rfp-intro h2{font-size:clamp(48px,4.8vw,68px);line-height:1.01;margin:18px 0 20px}html[data-cc-page="group-meetings-events"] .cl7-rfp-intro p{max-width:440px}
html[data-cc-page="group-meetings-events"] .cl7-rfp-contact{margin-top:34px;padding-top:26px;border-top:1px solid #dcd7d9;display:grid;gap:12px}html[data-cc-page="group-meetings-events"] .cl7-rfp-contact a{font-size:12px;color:#4e4a4c}html[data-cc-page="group-meetings-events"] .cl7-rfp-contact i{width:22px;color:var(--pink)}
html[data-cc-page="group-meetings-events"] .cl7-form{background:#fff;padding:38px 40px;box-shadow:0 16px 42px rgba(0,0,0,.06)}
html[data-cc-page="group-meetings-events"] .cl7-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}html[data-cc-page="group-meetings-events"] .cl7-form-field.full{grid-column:1/-1}
html[data-cc-page="group-meetings-events"] .cl7-form-field label{display:block;margin-bottom:7px;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#706b6d}
html[data-cc-page="group-meetings-events"] .cl7-form-field input, html[data-cc-page="group-meetings-events"] .cl7-form-field select, html[data-cc-page="group-meetings-events"] .cl7-form-field textarea{width:100%;border:0;border-bottom:1px solid #cfc9cc;background:#fff;outline:0;padding:12px 1px;font:inherit;font-size:12px;color:#222;transition:border-color .25s ease}
html[data-cc-page="group-meetings-events"] .cl7-form-field input:focus, html[data-cc-page="group-meetings-events"] .cl7-form-field select:focus, html[data-cc-page="group-meetings-events"] .cl7-form-field textarea:focus{border-color:var(--pink)}
html[data-cc-page="group-meetings-events"] .cl7-form-field textarea{min-height:92px;resize:vertical}html[data-cc-page="group-meetings-events"] .cl7-form-submit{margin-top:26px;display:flex;justify-content:flex-end}

/* Replayed object motion */
html[data-cc-page="group-meetings-events"] .cl7-motion{opacity:0;transform:translateY(46px);filter:blur(5px);transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .95s cubic-bezier(.22,1,.36,1),filter .75s ease;transition-delay:var(--d,0ms)}
html[data-cc-page="group-meetings-events"] .cl7-motion.left{transform:translate(-58px,18px)}html[data-cc-page="group-meetings-events"] .cl7-motion.right{transform:translate(58px,18px)}html[data-cc-page="group-meetings-events"] .cl7-motion.scale{transform:scale(.94) translateY(20px)}
html[data-cc-page="group-meetings-events"] .cl7-motion.in-view{opacity:1;transform:none;filter:blur(0)}
html[data-cc-page="group-meetings-events"] .cl7-stagger>*{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .7s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-meetings-events"] .cl7-stagger.in-view>*{opacity:1;transform:none}html[data-cc-page="group-meetings-events"] .cl7-stagger.in-view>*:nth-child(2){transition-delay:.08s}html[data-cc-page="group-meetings-events"] .cl7-stagger.in-view>*:nth-child(3){transition-delay:.16s}html[data-cc-page="group-meetings-events"] .cl7-stagger.in-view>*:nth-child(4){transition-delay:.24s}html[data-cc-page="group-meetings-events"] .cl7-stagger.in-view>*:nth-child(5){transition-delay:.32s}

@media(max-width:1100px){
 html[data-cc-page="group-meetings-events"] .cl7-hero-inner{padding-top:150px}html[data-cc-page="group-meetings-events"] .cl7-hero-title{font-size:64px}
 html[data-cc-page="group-meetings-events"] .cl7-intro-grid, html[data-cc-page="group-meetings-events"] .cl7-mice-grid, html[data-cc-page="group-meetings-events"] .cl7-rfp-grid{gap:60px}
 html[data-cc-page="group-meetings-events"] .cl7-venue-copy{padding-left:48px}html[data-cc-page="group-meetings-events"] .cl7-venue.reverse .cl7-venue-copy{padding-right:48px}
 html[data-cc-page="group-meetings-events"] .cl7-wedding-panel{left:5%;width:55%}
}
@media(max-width:820px){
 html[data-cc-page="group-meetings-events"] .cl7-hero{height:680px;min-height:680px;padding-top:72px}html[data-cc-page="group-meetings-events"] .cl7-hero-inner{padding-top:92px;padding-bottom:72px}html[data-cc-page="group-meetings-events"] .cl7-hero-title{font-size:52px;max-width:600px}html[data-cc-page="group-meetings-events"] .cl7-hero-sub{max-width:440px}html[data-cc-page="group-meetings-events"] .cl7-hero-fact{display:none}
 html[data-cc-page="group-meetings-events"] .cl7-intro, html[data-cc-page="group-meetings-events"] .cl7-hotels, html[data-cc-page="group-meetings-events"] .cl7-mice, html[data-cc-page="group-meetings-events"] .cl7-occasions, html[data-cc-page="group-meetings-events"] .cl7-rfp{padding-top:88px;padding-bottom:92px}
 html[data-cc-page="group-meetings-events"] .cl7-intro-grid, html[data-cc-page="group-meetings-events"] .cl7-hotels-head, html[data-cc-page="group-meetings-events"] .cl7-mice-grid, html[data-cc-page="group-meetings-events"] .cl7-occasions-head, html[data-cc-page="group-meetings-events"] .cl7-rfp-grid{grid-template-columns:1fr;gap:30px}html[data-cc-page="group-meetings-events"] .cl7-hotels-head p, html[data-cc-page="group-meetings-events"] .cl7-occasions-head p{margin:0}
 html[data-cc-page="group-meetings-events"] .cl7-mini-facts{grid-template-columns:1fr 1fr 1fr}
 html[data-cc-page="group-meetings-events"] .cl7-venue, html[data-cc-page="group-meetings-events"] .cl7-venue.reverse{grid-template-columns:1fr;min-height:0;margin-bottom:72px}html[data-cc-page="group-meetings-events"] .cl7-venue.reverse .cl7-venue-media, html[data-cc-page="group-meetings-events"] .cl7-venue.reverse .cl7-venue-copy{order:initial}html[data-cc-page="group-meetings-events"] .cl7-venue-media{height:430px}html[data-cc-page="group-meetings-events"] .cl7-venue-copy, html[data-cc-page="group-meetings-events"] .cl7-venue.reverse .cl7-venue-copy{padding:30px 0 0}
 html[data-cc-page="group-meetings-events"] .cl7-mice-intro{position:relative;top:auto;margin-bottom:24px}html[data-cc-page="group-meetings-events"] .cl7-support-item{grid-template-columns:50px 1fr}html[data-cc-page="group-meetings-events"] .cl7-support-item>span{display:none}
 html[data-cc-page="group-meetings-events"] .cl7-occasion-grid{grid-template-columns:1fr 1fr}
 html[data-cc-page="group-meetings-events"] .cl7-wedding-stage{height:620px}html[data-cc-page="group-meetings-events"] .cl7-wedding-panel{left:24px;right:24px;bottom:24px;width:auto;padding:34px}
 html[data-cc-page="group-meetings-events"] .cl7-form{padding:30px}
}
@media(max-width:560px){
 html[data-cc-page="group-meetings-events"] .cl7-hero{height:640px;min-height:640px}html[data-cc-page="group-meetings-events"] .cl7-hero-inner{padding-top:78px;padding-bottom:58px}html[data-cc-page="group-meetings-events"] .cl7-hero-title{font-size:43px;line-height:1.02}html[data-cc-page="group-meetings-events"] .cl7-hero-sub{font-size:12px;line-height:1.65}html[data-cc-page="group-meetings-events"] .cl7-hero-actions .btn{min-height:45px;padding:0 18px;font-size:9px}
 html[data-cc-page="group-meetings-events"] .cl7-intro, html[data-cc-page="group-meetings-events"] .cl7-hotels, html[data-cc-page="group-meetings-events"] .cl7-mice, html[data-cc-page="group-meetings-events"] .cl7-occasions, html[data-cc-page="group-meetings-events"] .cl7-rfp{padding-top:72px;padding-bottom:76px}html[data-cc-page="group-meetings-events"] .cl7-intro-title, html[data-cc-page="group-meetings-events"] .cl7-hotels-head h2, html[data-cc-page="group-meetings-events"] .cl7-mice h2, html[data-cc-page="group-meetings-events"] .cl7-occasions h2, html[data-cc-page="group-meetings-events"] .cl7-rfp-intro h2{font-size:42px}
 html[data-cc-page="group-meetings-events"] .cl7-mini-facts{grid-template-columns:1fr}html[data-cc-page="group-meetings-events"] .cl7-mini-fact, html[data-cc-page="group-meetings-events"] .cl7-mini-fact:nth-child(2), html[data-cc-page="group-meetings-events"] .cl7-mini-fact:last-child{padding:16px 0;border-right:0;border-bottom:1px solid #ded9db}html[data-cc-page="group-meetings-events"] .cl7-mini-fact:last-child{border-bottom:0}
 html[data-cc-page="group-meetings-events"] .cl7-venue-media{height:340px}html[data-cc-page="group-meetings-events"] .cl7-venue-no{font-size:40px}html[data-cc-page="group-meetings-events"] .cl7-venue h3{font-size:38px}html[data-cc-page="group-meetings-events"] .cl7-venue-meta{gap:18px}
 html[data-cc-page="group-meetings-events"] .cl7-support-item{padding:21px 0}html[data-cc-page="group-meetings-events"] .cl7-support-item strong{font-size:21px}html[data-cc-page="group-meetings-events"] .cl7-support-item p{font-size:10px}
 html[data-cc-page="group-meetings-events"] .cl7-occasion-grid{grid-template-columns:1fr}html[data-cc-page="group-meetings-events"] .cl7-occasion{min-height:110px}
 html[data-cc-page="group-meetings-events"] .cl7-weddings{padding-bottom:88px}html[data-cc-page="group-meetings-events"] .cl7-wedding-stage{height:590px}html[data-cc-page="group-meetings-events"] .cl7-wedding-panel{left:15px;right:15px;bottom:15px;padding:28px 24px}html[data-cc-page="group-meetings-events"] .cl7-wedding-panel h2{font-size:40px}
 html[data-cc-page="group-meetings-events"] .cl7-form{padding:26px 20px}html[data-cc-page="group-meetings-events"] .cl7-form-grid{grid-template-columns:1fr}html[data-cc-page="group-meetings-events"] .cl7-form-field.full{grid-column:auto}html[data-cc-page="group-meetings-events"] .cl7-form-submit{justify-content:stretch}html[data-cc-page="group-meetings-events"] .cl7-form-submit .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){html[data-cc-page="group-meetings-events"] .cl7-motion, html[data-cc-page="group-meetings-events"] .cl7-stagger>*{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}html[data-cc-page="group-meetings-events"] .cl7-media-reveal:after{display:none}html[data-cc-page="group-meetings-events"] .cl7-hero-media img{animation:none!important}html[data-cc-page="group-meetings-events"] .cl7-support-item.in-view .cl7-support-icon{transform:none!important}}

/* =========================================================
   CONCEPT 08 - CLEAR TEXT OBJECT MOTION + REPLAY
   Text objects animate independently from image reveals.
   ========================================================= */
html[data-cc-page="group-meetings-events"] .cl7-text-motion{
    opacity:0;
    transform:translate3d(0,34px,0);
    filter:blur(4px);
    transition:
        opacity .72s cubic-bezier(.22,1,.36,1),
        transform .88s cubic-bezier(.22,1,.36,1),
        filter .68s ease;
    transition-delay:var(--text-delay,0ms);
    will-change:opacity,transform,filter;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-kicker{
    transform:translate3d(-30px,0,0);
    filter:blur(2px);
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-title{
    transform:translate3d(0,54px,0) scale(.985);
    filter:blur(6px);
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-copy{
    transform:translate3d(0,28px,0);
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-meta{
    transform:translate3d(0,22px,0) scale(.975);
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-action{
    transform:translate3d(0,22px,0) scale(.94);
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-number{
    transform:translate3d(0,28px,0) scale(.82);
    transform-origin:left bottom;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.in-view{
    opacity:1;
    transform:none;
    filter:blur(0);
}
/* Give hero text a more deliberate sequential entrance as well. */
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger > *{
    opacity:0;
    transform:translateY(40px);
    filter:blur(5px);
    transition:opacity .70s ease,transform .88s cubic-bezier(.22,1,.36,1),filter .68s ease;
}
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger.in-view > *{opacity:1;transform:none;filter:blur(0)}
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger.in-view > *:nth-child(1){transition-delay:.05s}
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger.in-view > *:nth-child(2){transition-delay:.16s}
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger.in-view > *:nth-child(3){transition-delay:.29s}
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger.in-view > *:nth-child(4){transition-delay:.41s}

/* Venue copy should visibly sequence after the image curtain. */
html[data-cc-page="group-meetings-events"] .cl7-venue-copy .cl7-text-motion.text-title{transition-delay:calc(var(--text-delay,0ms) + 80ms)}
html[data-cc-page="group-meetings-events"] .cl7-venue-copy .cl7-text-motion.text-copy{transition-delay:calc(var(--text-delay,0ms) + 120ms)}
html[data-cc-page="group-meetings-events"] .cl7-venue-copy .cl7-text-motion.text-meta{transition-delay:calc(var(--text-delay,0ms) + 150ms)}
html[data-cc-page="group-meetings-events"] .cl7-venue-copy .cl7-text-motion.text-action{transition-delay:calc(var(--text-delay,0ms) + 190ms)}

/* Support rows: animate their internal textual objects, not just the row. */
html[data-cc-page="group-meetings-events"] .cl7-support-item .cl7-text-motion{transition-duration:.62s,.78s,.58s}
html[data-cc-page="group-meetings-events"] .cl7-support-item .cl7-support-icon{transition-delay:var(--d,0ms)}

/* Small cards feel alive through number + title sequencing. */
html[data-cc-page="group-meetings-events"] .cl7-occasion .cl7-text-motion:first-child{transition-delay:calc(var(--text-delay,0ms) + 40ms)}
html[data-cc-page="group-meetings-events"] .cl7-occasion .cl7-text-motion:last-child{transition-delay:calc(var(--text-delay,0ms) + 120ms)}

/* RFP form fields enter in a clean cascade. */
html[data-cc-page="group-meetings-events"] .cl7-form-field.cl7-text-motion{transform:translate3d(0,24px,0);filter:blur(2px)}
html[data-cc-page="group-meetings-events"] .cl7-form-submit.cl7-text-motion{display:flex}

@media(max-width:820px){
    html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-title{transform:translate3d(0,38px,0) scale(.99)}
    html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-kicker{transform:translate3d(-22px,0,0)}
}
@media(prefers-reduced-motion:reduce){
    html[data-cc-page="group-meetings-events"] .cl7-text-motion, html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger > *{
        opacity:1!important;
        transform:none!important;
        filter:none!important;
        transition:none!important;
    }
}



/* =========================================================
   CONCEPT 09 - CRISP TEXT MOTION + CLEAN HERO
   No blur or scale on textual/form motion. Motion remains
   visible and replays through the existing observers.
   ========================================================= */

/* Keep all page/object reveals sharp. */
html[data-cc-page="group-meetings-events"] .cl7-motion, html[data-cc-page="group-meetings-events"] .cl7-motion.left, html[data-cc-page="group-meetings-events"] .cl7-motion.right, html[data-cc-page="group-meetings-events"] .cl7-motion.scale {
    filter: none !important;
    transition-property: opacity, transform !important;
}
html[data-cc-page="group-meetings-events"] .cl7-motion.in-view {
    filter: none !important;
}

/* Text objects: crisp from first frame, motion only. */
html[data-cc-page="group-meetings-events"] .cl7-text-motion {
    filter: none !important;
    transition-property: opacity, transform !important;
    will-change: opacity, transform !important;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-kicker {
    transform: translate3d(-28px,0,0) !important;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-title {
    transform: translate3d(0,44px,0) !important;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-copy {
    transform: translate3d(0,26px,0) !important;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-meta {
    transform: translate3d(0,22px,0) !important;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-action {
    transform: translate3d(0,20px,0) !important;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-number {
    transform: translate3d(0,28px,0) !important;
    transform-origin: left bottom !important;
}
html[data-cc-page="group-meetings-events"] .cl7-text-motion.in-view {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
}

/* Hero text sequence: no blur, no scale. */
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger > * {
    filter: none !important;
    transform: translate3d(0,38px,0) !important;
    transition-property: opacity, transform !important;
}
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger > .cl7-kicker {
    transform: translate3d(-26px,0,0) !important;
}
html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger.in-view > * {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
}

/* RFP form: crisp while entering. */
html[data-cc-page="group-meetings-events"] .cl7-form.cl7-motion, html[data-cc-page="group-meetings-events"] .cl7-form-field.cl7-text-motion, html[data-cc-page="group-meetings-events"] .cl7-form-submit.cl7-text-motion, html[data-cc-page="group-meetings-events"] .cl7-form input, html[data-cc-page="group-meetings-events"] .cl7-form select, html[data-cc-page="group-meetings-events"] .cl7-form textarea, html[data-cc-page="group-meetings-events"] .cl7-form label {
    filter: none !important;
}
html[data-cc-page="group-meetings-events"] .cl7-form-field.cl7-text-motion {
    transform: translate3d(0,22px,0) !important;
}
html[data-cc-page="group-meetings-events"] .cl7-form-field.cl7-text-motion.in-view, html[data-cc-page="group-meetings-events"] .cl7-form-submit.cl7-text-motion.in-view {
    transform: none !important;
}

/* Hero is intentionally text-only now. */
html[data-cc-page="group-meetings-events"] .cl7-hero-copy {
    max-width: 760px;
}

@media(max-width:820px){
    html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-title { transform: translate3d(0,32px,0) !important; }
    html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-kicker { transform: translate3d(-20px,0,0) !important; }
    html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger > * { transform: translate3d(0,30px,0) !important; }
    html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger > .cl7-kicker { transform: translate3d(-20px,0,0) !important; }
}

@media(prefers-reduced-motion:reduce){
    html[data-cc-page="group-meetings-events"] .cl7-motion, html[data-cc-page="group-meetings-events"] .cl7-text-motion, html[data-cc-page="group-meetings-events"] .cl7-hero-copy.cl7-stagger > * {
        opacity:1 !important;
        transform:none !important;
        filter:none !important;
        transition:none !important;
    }
}


/* =========================================================
   CONCEPT 10 - RFP FORM LEGIBILITY + BRANDED DROPDOWNS
   ========================================================= */

/* Larger, clearer form typography */
html[data-cc-page="group-meetings-events"] .cl7-form-field label{
    margin-bottom:9px !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    letter-spacing:.105em !important;
    color:#4f4a4c !important;
}
html[data-cc-page="group-meetings-events"] .cl7-form-field input, html[data-cc-page="group-meetings-events"] .cl7-form-field textarea{
    min-height:49px !important;
    padding:13px 2px !important;
    font-size:14px !important;
    line-height:1.5 !important;
    color:#1f1c1e !important;
    border-bottom:1px solid #c8c1c4 !important;
}
html[data-cc-page="group-meetings-events"] .cl7-form-field textarea{
    min-height:118px !important;
    padding-top:14px !important;
}
html[data-cc-page="group-meetings-events"] .cl7-form-field input::placeholder, html[data-cc-page="group-meetings-events"] .cl7-form-field textarea::placeholder{
    color:#989194 !important;
    opacity:1 !important;
    font-size:13px !important;
}
html[data-cc-page="group-meetings-events"] .cl7-form-field input:focus, html[data-cc-page="group-meetings-events"] .cl7-form-field textarea:focus{
    border-color:var(--pink) !important;
    box-shadow:0 2px 0 rgba(169,0,97,.09) !important;
}
html[data-cc-page="group-meetings-events"] .cl7-form-submit .btn{
    min-height:52px !important;
    padding-inline:28px !important;
    font-size:11px !important;
}

/* Hide only selects enhanced by the custom branded control. */
html[data-cc-page="group-meetings-events"] .cl7-form-field select.cl7-select-native{
    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;
    opacity:0 !important;
    pointer-events:none !important;
}
html[data-cc-page="group-meetings-events"] .cl7-custom-select{
    position:relative;
    width:100%;
}
html[data-cc-page="group-meetings-events"] .cl7-select-trigger{
    position:relative;
    width:100%;
    min-height:49px;
    border:0;
    border-bottom:1px solid #c8c1c4;
    background:#fff;
    color:#1f1c1e;
    padding:13px 42px 13px 2px;
    text-align:left;
    font-family:var(--body);
    font-size:14px;
    font-weight:400;
    line-height:1.5;
    outline:0;
    transition:border-color .22s ease,box-shadow .22s ease,color .22s ease;
}
html[data-cc-page="group-meetings-events"] .cl7-select-trigger::after{
    content:"";
    position:absolute;
    right:8px;
    top:50%;
    width:8px;
    height:8px;
    border-right:1.5px solid #696366;
    border-bottom:1.5px solid #696366;
    transform:translateY(-68%) rotate(45deg);
    transition:transform .25s ease,border-color .25s ease;
    pointer-events:none;
}
html[data-cc-page="group-meetings-events"] .cl7-custom-select.open .cl7-select-trigger, html[data-cc-page="group-meetings-events"] .cl7-select-trigger:focus-visible{
    border-color:var(--pink);
    box-shadow:0 2px 0 rgba(169,0,97,.09);
    color:#171317;
}
html[data-cc-page="group-meetings-events"] .cl7-custom-select.open .cl7-select-trigger::after{
    border-color:var(--pink);
    transform:translateY(-25%) rotate(225deg);
}
html[data-cc-page="group-meetings-events"] .cl7-select-menu{
    position:absolute;
    z-index:80;
    left:0;
    right:0;
    top:calc(100% + 7px);
    background:#fff;
    border:1px solid #eadfe5;
    box-shadow:0 18px 46px rgba(31,16,24,.14);
    padding:6px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(8px);
    transition:opacity .2s ease,transform .24s cubic-bezier(.22,1,.36,1),visibility .2s ease;
    max-height:280px;
    overflow:auto;
}
html[data-cc-page="group-meetings-events"] .cl7-custom-select.open .cl7-select-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
}
html[data-cc-page="group-meetings-events"] .cl7-select-option{
    display:flex;
    align-items:center;
    width:100%;
    min-height:42px;
    border:0;
    background:#fff;
    color:#373234;
    padding:10px 12px;
    text-align:left;
    font-family:var(--body);
    font-size:13px;
    line-height:1.35;
    transition:background .18s ease,color .18s ease,padding-left .18s ease;
}
html[data-cc-page="group-meetings-events"] .cl7-select-option:hover, html[data-cc-page="group-meetings-events"] .cl7-select-option:focus-visible{
    outline:0;
    background:rgba(169,0,97,.075);
    color:var(--pink);
    padding-left:16px;
}
html[data-cc-page="group-meetings-events"] .cl7-select-option.is-selected{
    background:var(--pink);
    color:#fff;
    font-weight:600;
}
html[data-cc-page="group-meetings-events"] .cl7-select-option.is-selected:hover, html[data-cc-page="group-meetings-events"] .cl7-select-option.is-selected:focus-visible{
    background:var(--pink-dark);
    color:#fff;
}

/* Native browser accent where applicable; no default blue focus ring. */
html[data-cc-page="group-meetings-events"] .cl7-form input, html[data-cc-page="group-meetings-events"] .cl7-form textarea, html[data-cc-page="group-meetings-events"] .cl7-form select{
    accent-color:var(--pink);
}
html[data-cc-page="group-meetings-events"] .cl7-form *:focus-visible{
    outline-color:var(--pink);
}

@media(max-width:560px){
    html[data-cc-page="group-meetings-events"] .cl7-form-field label{font-size:10px !important;letter-spacing:.095em !important}
    html[data-cc-page="group-meetings-events"] .cl7-form-field input, html[data-cc-page="group-meetings-events"] .cl7-form-field textarea, html[data-cc-page="group-meetings-events"] .cl7-select-trigger{font-size:13px !important}
    html[data-cc-page="group-meetings-events"] .cl7-select-option{font-size:13px}
}


/* =========================================================
   CONCEPT 11 - RESTORED RFP LAYOUT + BOOKING-STYLE CALENDAR
   ========================================================= */
html[data-cc-page="group-meetings-events"] .cl7-form, html[data-cc-page="group-meetings-events"] .cl7-form-grid{overflow:visible !important}
html[data-cc-page="group-meetings-events"] .cl7-form-grid{gap:24px 20px !important}
html[data-cc-page="group-meetings-events"] .cl7-form-field{position:relative;min-width:0;z-index:1}
html[data-cc-page="group-meetings-events"] .cl7-form-field.dropdown-active{z-index:220}
html[data-cc-page="group-meetings-events"] .cl7-form-field label{font-size:11px !important;font-weight:700 !important;letter-spacing:.10em !important;color:#514b4e !important;margin-bottom:10px !important}
html[data-cc-page="group-meetings-events"] .cl7-form-field input, html[data-cc-page="group-meetings-events"] .cl7-form-field textarea, html[data-cc-page="group-meetings-events"] .cl7-select-trigger{font-size:14px !important;color:#1f1b1d !important}
html[data-cc-page="group-meetings-events"] .cl7-custom-select{position:relative;width:100%;overflow:visible}
html[data-cc-page="group-meetings-events"] .cl7-select-trigger{display:flex;align-items:center;width:100%;height:50px;min-height:50px;border:0;border-bottom:1px solid #c9c2c5;background:#fff;padding:0 42px 0 2px;line-height:1.35;text-align:left;cursor:pointer;outline:0}
html[data-cc-page="group-meetings-events"] .cl7-select-trigger span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-cc-page="group-meetings-events"] .cl7-select-trigger::after{right:9px}
html[data-cc-page="group-meetings-events"] .cl7-custom-select.open .cl7-select-trigger{border-color:var(--pink);box-shadow:0 2px 0 rgba(169,0,97,.08)}
html[data-cc-page="group-meetings-events"] .cl7-select-menu{left:0;right:auto;top:calc(100% + 8px);width:100%;min-width:100%;max-height:230px;padding:6px;background:#fff;border:1px solid #e8dfe3;border-top:3px solid var(--pink);box-shadow:0 20px 48px rgba(30,15,23,.18);z-index:999;overflow:auto}
html[data-cc-page="group-meetings-events"] .cl7-select-option{min-height:44px;padding:11px 12px;font-size:13px !important;background:#fff}
html[data-cc-page="group-meetings-events"] .cl7-select-option:hover, html[data-cc-page="group-meetings-events"] .cl7-select-option:focus-visible{background:rgba(169,0,97,.07);color:var(--pink);padding-left:16px}
html[data-cc-page="group-meetings-events"] .cl7-select-option.is-selected{background:var(--pink);color:#fff}
html[data-cc-page="group-meetings-events"] .cl7-select-option.is-selected:hover, html[data-cc-page="group-meetings-events"] .cl7-select-option.is-selected:focus-visible{background:var(--pink-dark);color:#fff}
html[data-cc-page="group-meetings-events"] .cl7-date-control{position:relative}
html[data-cc-page="group-meetings-events"] .cl7-date-control input{padding-right:40px !important;cursor:pointer}
html[data-cc-page="group-meetings-events"] .cl7-date-control>i{position:absolute;right:7px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--pink);pointer-events:none}
/* Flatpickr is intentionally the same visual language as the homepage booking form. */
html[data-cc-page="group-meetings-events"] .flatpickr-calendar{font-family:var(--body) !important;border:0 !important;box-shadow:0 22px 60px rgba(25,16,20,.20) !important;border-top:3px solid var(--pink) !important}
html[data-cc-page="group-meetings-events"] .flatpickr-months{background:#fff !important}
html[data-cc-page="group-meetings-events"] .flatpickr-current-month, html[data-cc-page="group-meetings-events"] .flatpickr-current-month input.cur-year, html[data-cc-page="group-meetings-events"] .flatpickr-current-month .flatpickr-monthDropdown-months{font-family:var(--body) !important;font-size:14px !important;color:#222 !important}
html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-prev-month svg, html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-next-month svg{fill:#595154 !important}
html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-prev-month:hover svg, html[data-cc-page="group-meetings-events"] .flatpickr-months .flatpickr-next-month:hover svg{fill:var(--pink) !important}
html[data-cc-page="group-meetings-events"] span.flatpickr-weekday{font-size:10px !important;font-weight:700 !important;color:#70686b !important}
html[data-cc-page="group-meetings-events"] .flatpickr-day{font-size:12px !important;border-radius:0 !important;color:#312c2f !important}
html[data-cc-page="group-meetings-events"] .flatpickr-day:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day:focus{background:rgba(169,0,97,.08) !important;border-color:rgba(169,0,97,.08) !important;color:var(--pink) !important}
html[data-cc-page="group-meetings-events"] .flatpickr-day.today{border-color:var(--pink) !important;color:var(--pink) !important}
html[data-cc-page="group-meetings-events"] .flatpickr-day.today:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day.today:focus{background:var(--pink) !important;color:#fff !important}
html[data-cc-page="group-meetings-events"] .flatpickr-day.selected, html[data-cc-page="group-meetings-events"] .flatpickr-day.startRange, html[data-cc-page="group-meetings-events"] .flatpickr-day.endRange, html[data-cc-page="group-meetings-events"] .flatpickr-day.selected:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day.selected:focus{background:var(--pink) !important;border-color:var(--pink) !important;color:#fff !important}
html[data-cc-page="group-meetings-events"] .flatpickr-day.flatpickr-disabled, html[data-cc-page="group-meetings-events"] .flatpickr-day.flatpickr-disabled:hover, html[data-cc-page="group-meetings-events"] .flatpickr-day.prevMonthDay.flatpickr-disabled, html[data-cc-page="group-meetings-events"] .flatpickr-day.nextMonthDay.flatpickr-disabled{color:#d0c9cc !important;background:transparent !important;border-color:transparent !important;cursor:not-allowed !important}
@media(max-width:560px){html[data-cc-page="group-meetings-events"] .cl7-form-grid{gap:20px !important}html[data-cc-page="group-meetings-events"] .cl7-form-field label{font-size:10px !important}html[data-cc-page="group-meetings-events"] .cl7-form-field input, html[data-cc-page="group-meetings-events"] .cl7-form-field textarea, html[data-cc-page="group-meetings-events"] .cl7-select-trigger{font-size:13px !important}html[data-cc-page="group-meetings-events"] .cl7-select-menu{max-height:210px}}


/* =========================================================
   CONCEPT 12 - MOBILE LAYOUT REFINEMENT ONLY
   Keeps desktop/tablet untouched.
   ========================================================= */
@media(max-width:560px){
    /* Keep section starts clear of the fixed mobile header. */
    html[data-cc-page="group-meetings-events"] .cl7-section{scroll-margin-top:88px}

    /* Meeting hotel chapters - compact, balanced mobile typography. */
    html[data-cc-page="group-meetings-events"] .cl7-hotels{padding-top:64px !important;padding-bottom:82px !important}
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head{gap:18px !important;margin-bottom:34px !important}
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head h2{font-size:38px !important;line-height:1.02 !important}
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head p{font-size:12px !important;line-height:1.65 !important}

    html[data-cc-page="group-meetings-events"] .cl7-venue, html[data-cc-page="group-meetings-events"] .cl7-venue.reverse{margin-bottom:54px !important}
    html[data-cc-page="group-meetings-events"] .cl7-venue-media{height:300px !important}
    html[data-cc-page="group-meetings-events"] .cl7-venue-copy, html[data-cc-page="group-meetings-events"] .cl7-venue.reverse .cl7-venue-copy{padding:22px 0 0 !important}
    html[data-cc-page="group-meetings-events"] .cl7-venue-topline{
        display:flex !important;
        align-items:center !important;
        gap:11px !important;
        margin-bottom:13px !important;
        min-height:28px;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-no{
        flex:0 0 auto;
        font-size:29px !important;
        line-height:1 !important;
        margin:0 !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-label{
        font-size:8px !important;
        line-height:1.25 !important;
        letter-spacing:.14em !important;
        margin:0 !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue h3{
        font-size:31px !important;
        line-height:1.02 !important;
        letter-spacing:-.025em !important;
        margin:0 0 12px !important;
        max-width:310px;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-copy>p{
        font-size:12px !important;
        line-height:1.62 !important;
        max-width:none !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-meta{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:12px !important;
        margin:18px 0 20px !important;
        padding-top:16px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-meta span{font-size:9px !important;line-height:1.45 !important}
    html[data-cc-page="group-meetings-events"] .cl7-venue-meta b{font-size:10px !important;margin-bottom:3px !important}
    html[data-cc-page="group-meetings-events"] .cl7-text-link{font-size:9px !important}

    /* Prevent the individual text motion from visually separating number/label. */
    html[data-cc-page="group-meetings-events"] .cl7-venue-topline .cl7-text-motion{
        transform:translate3d(0,14px,0) !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-topline .cl7-text-motion.in-view{
        transform:none !important;
    }

    /* Event possibilities - two compact columns instead of a very tall list. */
    html[data-cc-page="group-meetings-events"] .cl7-occasions{
        padding-top:64px !important;
        padding-bottom:96px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasions-head{
        gap:16px !important;
        margin-bottom:28px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasions h2{
        font-size:36px !important;
        line-height:1.02 !important;
        max-width:320px;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasions-head p{
        font-size:11px !important;
        line-height:1.6 !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasion-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        width:100%;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasion{
        min-height:96px !important;
        padding:15px 14px !important;
        justify-content:space-between !important;
        gap:12px;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasion span{
        font-size:8px !important;
        line-height:1 !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasion strong{
        font-size:19px !important;
        line-height:1.08 !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasion .cl7-text-motion{
        transform:translate3d(0,16px,0) !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasion .cl7-text-motion.in-view{
        transform:none !important;
    }

    /* A little more breathing room above the next dark chapter. */
    html[data-cc-page="group-meetings-events"] .cl7-mice{padding-top:78px !important;padding-bottom:96px !important}

    /* Fixed Book Now remains available without sacrificing the page ending. */
    html[data-cc-page="group-meetings-events"] body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px)) !important}
}

@media(max-width:380px){
    html[data-cc-page="group-meetings-events"] .cl7-venue h3{font-size:29px !important}
    html[data-cc-page="group-meetings-events"] .cl7-occasion{padding:14px 12px !important}
    html[data-cc-page="group-meetings-events"] .cl7-occasion strong{font-size:18px !important}
}


/* =========================================================
   CONCEPT 13 - MOBILE TYPOGRAPHY / ANIMATION ANTI-OVERLAP
   Mobile only. Desktop and tablet layouts remain untouched.
   ========================================================= */
@media(max-width:560px){
    /* Text motion must never visually collide with the following copy. */
    html[data-cc-page="group-meetings-events"] .cl7-text-motion, html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-title, html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-copy, html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-meta, html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-action, html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-number, html[data-cc-page="group-meetings-events"] .cl7-venue-topline .cl7-text-motion, html[data-cc-page="group-meetings-events"] .cl7-occasion .cl7-text-motion{
        filter:none !important;
        transform:translate3d(0,7px,0) !important;
        transition-property:opacity,transform !important;
        transition-duration:.48s,.62s !important;
        will-change:opacity,transform !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-text-motion.text-kicker{
        transform:translate3d(-9px,0,0) !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-text-motion.in-view, html[data-cc-page="group-meetings-events"] .cl7-venue-topline .cl7-text-motion.in-view, html[data-cc-page="group-meetings-events"] .cl7-occasion .cl7-text-motion.in-view{
        opacity:1 !important;
        transform:none !important;
    }

    /* Avoid the generic stagger transform stacking on top of text-object motion. */
    html[data-cc-page="group-meetings-events"] .cl7-stagger > .cl7-text-motion{
        transform:translate3d(0,7px,0) !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-stagger.in-view > .cl7-text-motion, html[data-cc-page="group-meetings-events"] .cl7-stagger > .cl7-text-motion.in-view{
        transform:none !important;
    }

    /* Meeting Hotels heading block. */
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head{
        display:grid !important;
        grid-template-columns:1fr !important;
        row-gap:20px !important;
        align-items:start !important;
        margin-bottom:34px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head > .cl7-motion{
        min-width:0;
        overflow:visible;
    }
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head .cl7-kicker{
        margin:0 0 16px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head h2{
        display:block !important;
        position:relative !important;
        font-size:36px !important;
        line-height:1.08 !important;
        letter-spacing:-.035em !important;
        margin:0 !important;
        padding:0 !important;
        max-width:100% !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head > p{
        display:block !important;
        position:relative !important;
        font-size:12px !important;
        line-height:1.68 !important;
        margin:0 !important;
        padding:0 !important;
        max-width:100% !important;
    }

    /* Individual hotel copy: preserve a real text flow between title and paragraph. */
    html[data-cc-page="group-meetings-events"] .cl7-venue-copy, html[data-cc-page="group-meetings-events"] .cl7-venue.reverse .cl7-venue-copy{
        display:block !important;
        position:relative !important;
        padding-top:24px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-topline{
        margin:0 0 15px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue h3{
        display:block !important;
        position:relative !important;
        font-size:30px !important;
        line-height:1.08 !important;
        letter-spacing:-.028em !important;
        margin:0 0 15px !important;
        padding:0 !important;
        max-width:100% !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-copy > p{
        display:block !important;
        position:relative !important;
        font-size:12px !important;
        line-height:1.68 !important;
        margin:0 !important;
        padding:0 !important;
        max-width:100% !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-venue-meta{
        margin-top:20px !important;
    }

    /* Event support intro. */
    html[data-cc-page="group-meetings-events"] .cl7-mice-grid{
        gap:28px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-mice-intro{
        display:block !important;
        position:relative !important;
        margin:0 0 8px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-mice-intro .cl7-kicker{
        margin:0 0 17px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-mice-intro h2{
        display:block !important;
        position:relative !important;
        font-size:35px !important;
        line-height:1.08 !important;
        letter-spacing:-.035em !important;
        margin:0 0 16px !important;
        padding:0 !important;
        max-width:100% !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-mice-intro > p{
        display:block !important;
        position:relative !important;
        font-size:12px !important;
        line-height:1.7 !important;
        margin:0 !important;
        padding:0 !important;
        max-width:100% !important;
    }

    /* Event possibilities heading and description. */
    html[data-cc-page="group-meetings-events"] .cl7-occasions-head{
        display:grid !important;
        grid-template-columns:1fr !important;
        row-gap:20px !important;
        align-items:start !important;
        margin-bottom:30px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasions-head .cl7-kicker{
        margin:0 0 16px !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasions h2{
        display:block !important;
        position:relative !important;
        font-size:34px !important;
        line-height:1.08 !important;
        letter-spacing:-.035em !important;
        margin:0 !important;
        padding:0 !important;
        max-width:100% !important;
    }
    html[data-cc-page="group-meetings-events"] .cl7-occasions-head > p{
        display:block !important;
        position:relative !important;
        font-size:11px !important;
        line-height:1.68 !important;
        margin:0 !important;
        padding:0 !important;
        max-width:100% !important;
    }

    /* Keep fixed CTA away from the last visible content on short phones. */
    html[data-cc-page="group-meetings-events"] .cl7-rfp, html[data-cc-page="group-meetings-events"] .footer-reference{
        scroll-margin-bottom:90px;
    }
    html[data-cc-page="group-meetings-events"] body{
        padding-bottom:calc(88px + env(safe-area-inset-bottom,0px)) !important;
    }
}

@media(max-width:380px){
    html[data-cc-page="group-meetings-events"] .cl7-hotels-head h2{font-size:34px !important}
    html[data-cc-page="group-meetings-events"] .cl7-venue h3{font-size:28px !important}
    html[data-cc-page="group-meetings-events"] .cl7-mice-intro h2{font-size:33px !important}
    html[data-cc-page="group-meetings-events"] .cl7-occasions h2{font-size:32px !important}
}


/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="group-meetings-events"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="group-meetings-events"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="group-meetings-events"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-meetings-events"] .page-intro-grid>div, html[data-cc-page="group-meetings-events"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-meetings-events"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="group-meetings-events"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="group-meetings-events"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="group-meetings-events"] .page-intro .reveal-left, html[data-cc-page="group-meetings-events"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="group-meetings-events"] .page-intro .reveal-left.in-view, html[data-cc-page="group-meetings-events"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="group-meetings-events"] .section-heading h2, html[data-cc-page="group-meetings-events"] .rail-head h2, html[data-cc-page="group-meetings-events"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="group-meetings-events"] .section-heading p, html[data-cc-page="group-meetings-events"] .rail-head p, html[data-cc-page="group-meetings-events"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="group-meetings-events"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="group-meetings-events"] .page-intro-grid{padding:0 8px}html[data-cc-page="group-meetings-events"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="group-meetings-events"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="group-meetings-events"] .page-intro h2{font-size:38px!important}html[data-cc-page="group-meetings-events"] .page-intro p{font-size:13px!important}}

html[data-cc-page="group-meetings-events"] .cl7-intro{padding:92px 0 88px!important}
html[data-cc-page="group-meetings-events"] .cl7-intro-grid{display:grid!important;grid-template-columns:1fr!important;gap:22px!important;max-width:940px;margin:0 auto;text-align:center!important;align-items:center!important}
html[data-cc-page="group-meetings-events"] .cl7-intro-grid>div{max-width:800px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-meetings-events"] .cl7-intro-title{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important}
html[data-cc-page="group-meetings-events"] .cl7-intro .cl7-copy{font-size:var(--inner-body)!important;line-height:1.82!important}
html[data-cc-page="group-meetings-events"] .cl7-intro .cl7-motion.left, html[data-cc-page="group-meetings-events"] .cl7-intro .cl7-motion.right{transform:translateY(22px)!important}
html[data-cc-page="group-meetings-events"] .cl7-intro .cl7-motion.in-view{transform:none!important}
html[data-cc-page="group-meetings-events"] .cl7-hotels-head .cl7-display, html[data-cc-page="group-meetings-events"] .cl7-mice .cl7-display, html[data-cc-page="group-meetings-events"] .cl7-occasions .cl7-display{font-size:var(--inner-section-title)!important}

/* V8 footer separation rule */
html[data-cc-page="group-meetings-events"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="group-meetings-events"] .header-main{height:92px!important}
html[data-cc-page="group-meetings-events"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-meetings-events"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="group-meetings-events"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="group-meetings-events"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-meetings-events"] .menu{gap:26px!important}
html[data-cc-page="group-meetings-events"] .brand img{max-height:66px!important}
html[data-cc-page="group-meetings-events"] .hero .eyebrow, html[data-cc-page="group-meetings-events"] .hero-kicker, html[data-cc-page="group-meetings-events"] .hero-kicker.eyebrow, html[data-cc-page="group-meetings-events"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="group-meetings-events"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="group-meetings-events"] .menu{gap:18px!important}html[data-cc-page="group-meetings-events"] .menu>a, html[data-cc-page="group-meetings-events"] .menu-link{font-size:10px!important}html[data-cc-page="group-meetings-events"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-meetings-events"] .header-main{height:72px!important}html[data-cc-page="group-meetings-events"] .brand img{max-height:46px!important}html[data-cc-page="group-meetings-events"] .mobile-trigger{font-size:20px!important}}


/* --- group-menu-unified.css --- */
/* Final Demo - unified Group menu
   Reference: original index-group.html
*/
/* HEADER */
html[data-cc-page="group-meetings-events"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="group-meetings-events"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_groupmeetingsevents .35s ease both
            }

        @keyframes drop_cc_groupmeetingsevents {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="group-meetings-events"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="group-meetings-events"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="group-meetings-events"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="group-meetings-events"] .header-main {
            height: 102px
        }

            html[data-cc-page="group-meetings-events"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="group-meetings-events"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="group-meetings-events"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="group-meetings-events"] .brand-dark {
            display: none
        }

        html[data-cc-page="group-meetings-events"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="group-meetings-events"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="group-meetings-events"] .header-main {
            position: relative
        }

        html[data-cc-page="group-meetings-events"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="group-meetings-events"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="group-meetings-events"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="group-meetings-events"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="group-meetings-events"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="group-meetings-events"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-meetings-events"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="group-meetings-events"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="group-meetings-events"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-meetings-events"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="group-meetings-events"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="group-meetings-events"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="group-meetings-events"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-meetings-events"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="group-meetings-events"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="group-meetings-events"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="group-meetings-events"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="group-meetings-events"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="group-meetings-events"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="group-meetings-events"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="group-meetings-events"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="group-meetings-events"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-meetings-events"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="group-meetings-events"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="group-meetings-events"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-meetings-events"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="group-meetings-events"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="group-meetings-events"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="group-meetings-events"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="group-meetings-events"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="group-meetings-events"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="group-meetings-events"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="group-meetings-events"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="group-meetings-events"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="group-meetings-events"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="group-meetings-events"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-meetings-events"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="group-meetings-events"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="group-meetings-events"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="group-meetings-events"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="group-meetings-events"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="group-meetings-events"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="group-meetings-events"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="group-meetings-events"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="group-meetings-events"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="group-meetings-events"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="group-meetings-events"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="group-meetings-events"] .drawer.open {
                transform: none
            }

        html[data-cc-page="group-meetings-events"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="group-meetings-events"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="group-meetings-events"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="group-meetings-events"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="group-meetings-events"] .drawer-nav > a, html[data-cc-page="group-meetings-events"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="group-meetings-events"] .drawer-nav > a:hover, html[data-cc-page="group-meetings-events"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="group-meetings-events"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="group-meetings-events"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="group-meetings-events"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="group-meetings-events"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="group-meetings-events"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="group-meetings-events"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="group-meetings-events"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-meetings-events"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="group-meetings-events"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="group-meetings-events"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="group-meetings-events"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-meetings-events"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="group-meetings-events"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }


@media(max-width:1100px){
  html[data-cc-page="group-meetings-events"] .menu{gap:18px}
  html[data-cc-page="group-meetings-events"] .menu-link{font-size:11px}
  html[data-cc-page="group-meetings-events"] .header-book{margin-left:20px}
}
@media(max-width:820px){
  html[data-cc-page="group-meetings-events"] .header{position:absolute;background:rgba(255,255,255,.97);color:#111}
  html[data-cc-page="group-meetings-events"] .header-top, html[data-cc-page="group-meetings-events"] .menu, html[data-cc-page="group-meetings-events"] .header-book{display:none}
  html[data-cc-page="group-meetings-events"] .header-main{height:72px}
  html[data-cc-page="group-meetings-events"] .brand-light{display:none!important}
  html[data-cc-page="group-meetings-events"] .brand-dark{display:block!important}
  html[data-cc-page="group-meetings-events"] .brand img{width:125px;max-height:52px}
  html[data-cc-page="group-meetings-events"] .mobile-trigger{display:block}
}
/* V23-V25 language/mobile controls from reference */
html[data-cc-page="group-meetings-events"] 
        .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="group-meetings-events"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-meetings-events"] .language-trigger:hover, html[data-cc-page="group-meetings-events"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="group-meetings-events"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="group-meetings-events"] .header.sticky .language-trigger:hover, html[data-cc-page="group-meetings-events"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="group-meetings-events"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="group-meetings-events"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="group-meetings-events"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="group-meetings-events"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="group-meetings-events"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-meetings-events"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-meetings-events"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-meetings-events"] .language-menu a:hover, html[data-cc-page="group-meetings-events"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="group-meetings-events"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="group-meetings-events"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="group-meetings-events"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="group-meetings-events"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="group-meetings-events"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="group-meetings-events"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="group-meetings-events"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="group-meetings-events"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="group-meetings-events"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-meetings-events"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="group-meetings-events"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-meetings-events"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="group-meetings-events"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="group-meetings-events"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="group-meetings-events"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="group-meetings-events"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="group-meetings-events"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-trigger:hover, html[data-cc-page="group-meetings-events"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="group-meetings-events"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="group-meetings-events"] .topbar-language .language-menu a:hover, html[data-cc-page="group-meetings-events"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="group-meetings-events"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="group-meetings-events"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="group-meetings-events"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="group-meetings-events"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="group-meetings-events"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="group-meetings-events"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="group-meetings-events"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="group-meetings-events"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="group-meetings-events"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="group-meetings-events"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="group-meetings-events"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="group-meetings-events"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="group-meetings-events"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="group-meetings-events"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="group-meetings-events"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="group-meetings-events"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="group-meetings-events"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="group-meetings-events"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-meetings-events"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-meetings-events"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="group-meetings-events"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="group-meetings-events"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="group-meetings-events"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="group-meetings-events"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="group-meetings-events"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="group-meetings-events"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="group-meetings-events"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="group-meetings-events"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-meetings-events"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="group-meetings-events"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="group-meetings-events"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="group-meetings-events"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-meetings-events"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-meetings-events"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-meetings-events"] .mobile-language-menu a:hover, html[data-cc-page="group-meetings-events"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="group-meetings-events"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-meetings-events"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="group-meetings-events"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="group-meetings-events"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-meetings-events"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="group-meetings-events"] .mobile-language-trigger, html[data-cc-page="group-meetings-events"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="group-meetings-events"] .mobile-language-menu {
                right: -43px;
            }
        }

/* Final reference sizing */
html[data-cc-page="group-meetings-events"] .header-main{height:92px!important}
html[data-cc-page="group-meetings-events"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-meetings-events"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
html[data-cc-page="group-meetings-events"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-meetings-events"] .menu{gap:26px!important}
html[data-cc-page="group-meetings-events"] .brand img{max-height:66px!important}
@media(max-width:1200px){html[data-cc-page="group-meetings-events"] .menu{gap:18px!important}html[data-cc-page="group-meetings-events"] .menu-link{font-size:10px!important}html[data-cc-page="group-meetings-events"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-meetings-events"] .header-main{height:72px!important}html[data-cc-page="group-meetings-events"] .brand img{max-height:46px!important}html[data-cc-page="group-meetings-events"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="group-meetings-events"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-meetings-events"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-meetings-events"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="group-meetings-events"] .internal-banner{
  position:relative!important;
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
  background:#111!important;
  overflow:hidden!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner img.hero-bg,
html[data-cc-page="group-meetings-events"] .hero.internal-banner img.hero-bg,
html[data-cc-page="group-meetings-events"] .cl7-hero.internal-banner img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  z-index:0!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner::after,
html[data-cc-page="group-meetings-events"] .hero.internal-banner::after,
html[data-cc-page="group-meetings-events"] .cl7-hero.internal-banner::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)!important;
  pointer-events:none!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner .hero-inner,
html[data-cc-page="group-meetings-events"] .internal-banner .offers-page-hero-inner,
html[data-cc-page="group-meetings-events"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner .hero-copy,
html[data-cc-page="group-meetings-events"] .internal-banner .offers-page-hero-copy,
html[data-cc-page="group-meetings-events"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner .hero-kicker,
html[data-cc-page="group-meetings-events"] .internal-banner .hero-kicker.eyebrow,
html[data-cc-page="group-meetings-events"] .internal-banner .offers-page-hero-copy .eyebrow,
html[data-cc-page="group-meetings-events"] .internal-banner .cl7-kicker{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin-bottom:20px!important;
  color:#fff!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner .hero-kicker::before,
html[data-cc-page="group-meetings-events"] .internal-banner .offers-page-hero-copy .eyebrow::before,
html[data-cc-page="group-meetings-events"] .internal-banner .cl7-kicker::before{
  content:""!important;
  width:46px!important;
  height:2px!important;
  background:#fff!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner h1,
html[data-cc-page="group-meetings-events"] .internal-banner .hero-title,
html[data-cc-page="group-meetings-events"] .internal-banner .offers-page-hero h1,
html[data-cc-page="group-meetings-events"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
  color:#fff!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner .stagger>*{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1);
}
html[data-cc-page="group-meetings-events"] .internal-banner .stagger.in-view>*{
  opacity:1!important;
  transform:none!important;
}
html[data-cc-page="group-meetings-events"] .internal-banner .stagger.in-view>*:nth-child(2){transition-delay:.08s}
html[data-cc-page="group-meetings-events"] .internal-banner .stagger.in-view>*:nth-child(3){transition-delay:.16s}
html[data-cc-page="group-meetings-events"] .internal-banner .stagger.in-view>*:nth-child(4){transition-delay:.24s}
html[data-cc-page="group-meetings-events"] .internal-banner .stagger.in-view>*:nth-child(5){transition-delay:.32s}

@media(max-width:820px){
  html[data-cc-page="group-meetings-events"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="group-meetings-events"] .internal-banner .hero-inner,
  html[data-cc-page="group-meetings-events"] .internal-banner .offers-page-hero-inner,
  html[data-cc-page="group-meetings-events"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="group-meetings-events"] .internal-banner h1,
  html[data-cc-page="group-meetings-events"] .internal-banner .hero-title,
  html[data-cc-page="group-meetings-events"] .internal-banner .offers-page-hero h1,
  html[data-cc-page="group-meetings-events"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="group-meetings-events"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="group-meetings-events"] .internal-banner h1,
  html[data-cc-page="group-meetings-events"] .internal-banner .hero-title,
  html[data-cc-page="group-meetings-events"] .internal-banner .offers-page-hero h1,
  html[data-cc-page="group-meetings-events"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="group-meetings-events"] .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;
}
html[data-cc-page="group-meetings-events"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="group-meetings-events"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="group-meetings-events"] .footer-reference::after{display:none!important;}
html[data-cc-page="group-meetings-events"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="group-meetings-events"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="group-meetings-events"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="group-meetings-events"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="group-meetings-events"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="group-meetings-events"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="group-meetings-events"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="group-meetings-events"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="group-meetings-events"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="group-meetings-events"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="group-meetings-events"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="group-meetings-events"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="group-meetings-events"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="group-meetings-events"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="group-meetings-events"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="group-meetings-events"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="group-meetings-events"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="group-meetings-events"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="group-meetings-events"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="group-meetings-events"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="group-meetings-events"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="group-meetings-events"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="group-meetings-events"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="group-meetings-events"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="group-meetings-events"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="group-meetings-events"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="group-meetings-events"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="group-meetings-events"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="group-meetings-events"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="group-meetings-events"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="group-meetings-events"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="group-meetings-events"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="group-meetings-events"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="group-meetings-events"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="group-meetings-events"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="group-meetings-events"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="group-meetings-events"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="group-meetings-events"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-meetings-events"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="group-meetings-events"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="group-meetings-events"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-meetings-events"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="group-meetings-events"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="group-meetings-events"] .footer-reference-brand, html[data-cc-page="group-meetings-events"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-meetings-events"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="group-meetings-events"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="group-meetings-events"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="group-meetings-events"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-meetings-events"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="group-meetings-events"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="group-meetings-events"] .footer-reference-brand, html[data-cc-page="group-meetings-events"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="group-meetings-events"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="group-meetings-events"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="group-meetings-events"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="group-meetings-events"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="group-meetings-events"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="group-meetings-events"] .footer-reference-form button{min-height:52px;}
}

/* ============================================================
   PAGE: group-offers   (group_Offers.html)
   ============================================================ */
html[data-cc-page="group-offers"] {
                    --pink: #A90061;
                    --pink-dark: #6F0037;
                    --ink: #171717;
                    --muted: #6d6d6d;
                    --paper: #f7f5f4;
                    --soft: #efefed;
                    --white: #fff;
                    --line: rgba(23,23,23,.14);
                    --display: "Playfair Display",serif;
                    --body: "Inter",sans-serif;
                }

                html[data-cc-page="group-offers"], html[data-cc-page="group-offers"] * {
                    box-sizing: border-box;
                    margin: 0;
                    padding: 0
                }

                html[data-cc-page="group-offers"] {
                    scroll-behavior: smooth
                }

                html[data-cc-page="group-offers"] body {
                    font-family: var(--body);
                    color: var(--ink);
                    background: #fff;
                    overflow-x: hidden;
                    -webkit-font-smoothing: antialiased
                }

                html[data-cc-page="group-offers"] a {
                    text-decoration: none;
                    color: inherit
                }

                html[data-cc-page="group-offers"] img, html[data-cc-page="group-offers"] video {
                    display: block;
                    width: 100%
                }

                html[data-cc-page="group-offers"] button, html[data-cc-page="group-offers"] input, html[data-cc-page="group-offers"] select {
                    font: inherit
                }

                html[data-cc-page="group-offers"] button {
                    cursor: pointer
                }

                html[data-cc-page="group-offers"] .container {
                    width: min(1420px,calc(100% - 80px));
                    margin-inline: auto
                }

                html[data-cc-page="group-offers"] .eyebrow {
                    font-size: 11px;
                    letter-spacing: .22em;
                    text-transform: uppercase;
                    font-weight: 600
                }

                html[data-cc-page="group-offers"] .btn {
                    display: inline-flex;
                    align-items: center;
                    justify-content: center;
                    gap: 12px;
                    min-height: 50px;
                    padding: 0 28px;
                    border: 1px solid transparent;
                    border-radius: 2px;
                    font-size: 13px;
                    font-weight: 600;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    transition: background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease
                }

                    html[data-cc-page="group-offers"] .btn:hover {
                        transform: translateY(-2px)
                    }

                html[data-cc-page="group-offers"] .btn-pink {
                    background: var(--pink);
                    color: #fff
                }

                    html[data-cc-page="group-offers"] .btn-pink:hover {
                        background: var(--pink-dark)
                    }

                html[data-cc-page="group-offers"] .btn-white {
                    background: #fff;
                    color: #111
                }

                    html[data-cc-page="group-offers"] .btn-white:hover {
                        background: var(--pink);
                        color: #fff
                    }

                html[data-cc-page="group-offers"] .btn-outline {
                    border-color: currentColor;
                    background: transparent
                }

                /* HEADER */
                html[data-cc-page="group-offers"] .header {
                    position: absolute;
                    inset: 0 0 auto;
                    z-index: 100;
                    color: #fff;
                    transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
                }

                    html[data-cc-page="group-offers"] .header.sticky {
                        position: fixed;
                        background: rgba(255,255,255,.97);
                        color: #111;
                        box-shadow: 0 8px 30px rgba(0,0,0,.08);
                        backdrop-filter: blur(18px);
                        animation: drop_cc_groupoffers .35s ease both
                    }

                @keyframes drop_cc_groupoffers {
                    from {
                        transform: translateY(-100%)
                    }

                    to {
                        transform: translateY(0)
                    }
                }

                html[data-cc-page="group-offers"] .header-top {
                    height: 34px;
                    border-bottom: 1px solid rgba(255,255,255,.16);
                    font-size: 11px;
                    letter-spacing: .08em
                }

                html[data-cc-page="group-offers"] .header.sticky .header-top {
                    display: none
                }

                html[data-cc-page="group-offers"] .header-top .container {
                    height: 100%;
                    display: flex;
                    justify-content: flex-end;
                    align-items: center;
                    gap: 24px
                }

                html[data-cc-page="group-offers"] .header-main {
                    height: 102px
                }

                    html[data-cc-page="group-offers"] .header-main .container {
                        height: 100%;
                        display: flex;
                        align-items: center
                    }

                html[data-cc-page="group-offers"] .brand {
                    width: 154px;
                    display: flex;
                    align-items: center;
                    justify-content: flex-start;
                    flex: 0 0 auto
                }

                    html[data-cc-page="group-offers"] .brand img {
                        width: 138px;
                        max-height: 80px;
                        object-fit: contain
                    }

                html[data-cc-page="group-offers"] .brand-dark {
                    display: none
                }

                html[data-cc-page="group-offers"] .header.sticky .brand-light {
                    display: none
                }

                html[data-cc-page="group-offers"] .header.sticky .brand-dark {
                    display: block
                }

                html[data-cc-page="group-offers"] .header-main {
                    position: relative
                }

                html[data-cc-page="group-offers"] .menu {
                    display: flex;
                    align-items: stretch;
                    gap: 32px;
                    margin-left: auto;
                    height: 100%
                }

                html[data-cc-page="group-offers"] .menu-item {
                    position: relative;
                    display: flex;
                    align-items: center;
                    height: 100%
                }

                    html[data-cc-page="group-offers"] .menu-item.has-mega {
                        position: static
                    }

                html[data-cc-page="group-offers"] .menu-link {
                    height: 100%;
                    display: inline-flex;
                    align-items: center;
                    gap: 7px;
                    font-size: 13px;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    position: relative;
                    padding: 0 2px;
                    white-space: nowrap
                }

                    html[data-cc-page="group-offers"] .menu-link::after {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 100%;
                        bottom: 27px;
                        height: 1px;
                        background: var(--pink);
                        transition: right .3s ease
                    }

                html[data-cc-page="group-offers"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-offers"] .menu-item:focus-within > .menu-link::after {
                    right: 0
                }

                html[data-cc-page="group-offers"] .menu-link .menu-chevron {
                    font-size: 9px;
                    transition: transform .25s ease
                }

                html[data-cc-page="group-offers"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-offers"] .menu-item:focus-within > .menu-link .menu-chevron {
                    transform: rotate(180deg)
                }

                /* Resorts mega menu */
                html[data-cc-page="group-offers"] .resorts-mega {
                    position: absolute;
                    top: calc(100% - 1px);
                    left: 50%;
                    width: min(1320px,calc(100vw - 70px));
                    transform: translate(-50%,18px);
                    background: #f7f5f4;
                    color: var(--ink);
                    padding: 28px;
                    box-shadow: 0 24px 70px rgba(0,0,0,.20);
                    border-top: 3px solid var(--pink);
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
                    z-index: 220
                }

                    html[data-cc-page="group-offers"] .resorts-mega::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        top: -16px;
                        height: 16px;
                        background: transparent
                    }

                html[data-cc-page="group-offers"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-offers"] .menu-item.has-mega:focus-within .resorts-mega {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: translate(-50%,0)
                }

                html[data-cc-page="group-offers"] .resorts-mega-inner {
                    display: grid;
                    grid-template-columns: 260px 1fr;
                    gap: 26px;
                    align-items: stretch
                }

                html[data-cc-page="group-offers"] .mega-intro {
                    background: #171717;
                    color: #fff;
                    padding: 34px 30px;
                    display: flex;
                    flex-direction: column;
                    justify-content: space-between;
                    min-height: 235px
                }

                    html[data-cc-page="group-offers"] .mega-intro .eyebrow {
                        color: rgba(255,255,255,.55);
                        margin-bottom: 14px
                    }

                    html[data-cc-page="group-offers"] .mega-intro h3 {
                        font-family: var(--display);
                        font-size: 38px;
                        line-height: 1.02;
                        font-weight: 400;
                        letter-spacing: -.02em;
                        margin-bottom: 16px
                    }

                    html[data-cc-page="group-offers"] .mega-intro p {
                        font-size: 11px;
                        line-height: 1.7;
                        color: rgba(255,255,255,.68);
                        max-width: 210px
                    }

                html[data-cc-page="group-offers"] .mega-intro-link {
                    display: inline-flex;
                    align-items: center;
                    gap: 10px;
                    margin-top: 24px;
                    font-size: 10px;
                    font-weight: 600;
                    letter-spacing: .12em;
                    text-transform: uppercase;
                    color: #fff
                }

                    html[data-cc-page="group-offers"] .mega-intro-link i {
                        transition: transform .25s ease
                    }

                    html[data-cc-page="group-offers"] .mega-intro-link:hover i {
                        transform: translateX(5px)
                    }

                html[data-cc-page="group-offers"] .mega-grid {
                    display: grid;
                    grid-template-columns: repeat(4,minmax(0,1fr));
                    gap: 14px
                }

                html[data-cc-page="group-offers"] .mega-resort {
                    position: relative;
                    min-height: 235px;
                    overflow: hidden;
                    background: #222;
                    color: #fff
                }

                    html[data-cc-page="group-offers"] .mega-resort img {
                        height: 100%;
                        object-fit: cover;
                        transition: transform .65s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-offers"] .mega-resort::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                        transition: background .35s ease
                    }

                html[data-cc-page="group-offers"] .mega-resort-copy {
                    position: absolute;
                    z-index: 2;
                    left: 18px;
                    right: 18px;
                    bottom: 16px
                }

                html[data-cc-page="group-offers"] .mega-resort small {
                    display: block;
                    font-size: 8px;
                    letter-spacing: .16em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.72);
                    margin-bottom: 6px
                }

                html[data-cc-page="group-offers"] .mega-resort strong {
                    display: block;
                    font-family: var(--display);
                    font-size: 23px;
                    line-height: 1.05;
                    font-weight: 400
                }

                html[data-cc-page="group-offers"] .mega-resort .mega-arrow {
                    position: absolute;
                    z-index: 3;
                    right: 16px;
                    top: 16px;
                    width: 34px;
                    height: 34px;
                    border: 1px solid rgba(255,255,255,.6);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border-radius: 50%;
                    font-size: 10px;
                    transform: translateY(-4px);
                    opacity: 0;
                    transition: .3s ease
                }

                html[data-cc-page="group-offers"] .mega-resort:hover img {
                    transform: scale(1.065)
                }

                html[data-cc-page="group-offers"] .mega-resort:hover::after {
                    background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
                }

                html[data-cc-page="group-offers"] .mega-resort:hover .mega-arrow {
                    opacity: 1;
                    transform: none;
                    background: var(--pink);
                    border-color: var(--pink)
                }

                /* Normal dropdown menu */
                html[data-cc-page="group-offers"] .dropdown-menu {
                    position: absolute;
                    top: calc(100% - 1px);
                    left: -18px;
                    width: 235px;
                    background: #fff;
                    color: #171717;
                    padding: 9px 0;
                    border-top: 3px solid var(--pink);
                    box-shadow: 0 18px 45px rgba(0,0,0,.16);
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transform: translateY(14px);
                    transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
                    z-index: 230
                }

                    html[data-cc-page="group-offers"] .dropdown-menu::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        top: -15px;
                        height: 15px;
                        background: transparent
                    }

                html[data-cc-page="group-offers"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-offers"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: none
                }

                html[data-cc-page="group-offers"] .dropdown-menu a {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 14px;
                    padding: 12px 18px;
                    font-size: 11px;
                    line-height: 1.35;
                    letter-spacing: .05em;
                    text-transform: uppercase;
                    border-bottom: 1px solid #eee;
                    transition: color .2s ease,padding-left .2s ease,background .2s ease
                }

                    html[data-cc-page="group-offers"] .dropdown-menu a:last-child {
                        border-bottom: 0
                    }

                    html[data-cc-page="group-offers"] .dropdown-menu a::after {
                        display: none !important
                    }

                    html[data-cc-page="group-offers"] .dropdown-menu a:hover {
                        color: var(--pink);
                        background: #faf7f9;
                        padding-left: 23px
                    }

                    html[data-cc-page="group-offers"] .dropdown-menu a i {
                        font-size: 9px;
                        color: #aaa
                    }

                html[data-cc-page="group-offers"] .header-book {
                    margin-left: 34px
                }

                html[data-cc-page="group-offers"] .mobile-trigger {
                    display: none;
                    margin-left: auto;
                    width: 44px;
                    height: 44px;
                    border: 0;
                    background: transparent;
                    color: inherit;
                    font-size: 23px
                }

                /* mobile drawer */
                html[data-cc-page="group-offers"] .drawer-overlay {
                    position: fixed;
                    inset: 0;
                    background: rgba(0,0,0,.58);
                    z-index: 500;
                    opacity: 0;
                    visibility: hidden;
                    transition: .3s
                }

                    html[data-cc-page="group-offers"] .drawer-overlay.open {
                        opacity: 1;
                        visibility: visible
                    }

                html[data-cc-page="group-offers"] .drawer {
                    position: fixed;
                    right: 0;
                    top: 0;
                    bottom: 0;
                    width: min(390px,92vw);
                    background: #fff;
                    z-index: 510;
                    padding: 28px;
                    transform: translateX(105%);
                    transition: transform .4s cubic-bezier(.22,1,.36,1);
                    overflow: auto
                }

                    html[data-cc-page="group-offers"] .drawer.open {
                        transform: none
                    }

                html[data-cc-page="group-offers"] .drawer-head {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    padding-bottom: 24px;
                    border-bottom: 1px solid #ddd
                }

                    html[data-cc-page="group-offers"] .drawer-head img {
                        width: 132px;
                        filter: invert(1)
                    }

                html[data-cc-page="group-offers"] .drawer-close {
                    width: 42px;
                    height: 42px;
                    border: 0;
                    background: #f2f2f2;
                    border-radius: 50%;
                    font-size: 18px
                }

                html[data-cc-page="group-offers"] .drawer-nav {
                    display: grid;
                    margin-top: 22px
                }

                    html[data-cc-page="group-offers"] .drawer-nav > a, html[data-cc-page="group-offers"] .drawer-toggle {
                        width: 100%;
                        padding: 16px 0;
                        border: 0;
                        border-bottom: 1px solid #eee;
                        background: transparent;
                        color: #171717;
                        font-size: 17px;
                        text-align: left;
                        display: flex;
                        align-items: center;
                        justify-content: space-between;
                        gap: 12px
                    }

                        html[data-cc-page="group-offers"] .drawer-nav > a:hover, html[data-cc-page="group-offers"] .drawer-toggle:hover {
                            color: var(--pink)
                        }

                        html[data-cc-page="group-offers"] .drawer-toggle i {
                            font-size: 12px;
                            transition: transform .25s ease
                        }

                html[data-cc-page="group-offers"] .drawer-group.open > .drawer-toggle i {
                    transform: rotate(180deg)
                }

                html[data-cc-page="group-offers"] .drawer-sub {
                    display: grid;
                    grid-template-rows: 0fr;
                    transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
                    background: #fafafa
                }

                    html[data-cc-page="group-offers"] .drawer-sub > div {
                        overflow: hidden
                    }

                html[data-cc-page="group-offers"] .drawer-group.open > .drawer-sub {
                    grid-template-rows: 1fr
                }

                html[data-cc-page="group-offers"] .drawer-sub a {
                    display: block;
                    padding: 12px 16px;
                    border-bottom: 1px solid #eee;
                    font-size: 13px;
                    color: #555
                }

                    html[data-cc-page="group-offers"] .drawer-sub a:hover {
                        color: var(--pink)
                    }

                html[data-cc-page="group-offers"] .drawer-resort-list {
                    padding: 8px 0
                }

                html[data-cc-page="group-offers"] .drawer-resort {
                    display: grid !important;
                    grid-template-columns: 66px 1fr;
                    gap: 12px;
                    align-items: center;
                    padding: 9px 10px !important
                }

                    html[data-cc-page="group-offers"] .drawer-resort img {
                        width: 66px;
                        height: 48px;
                        object-fit: cover
                    }

                    html[data-cc-page="group-offers"] .drawer-resort strong {
                        font-family: var(--display);
                        font-size: 16px;
                        font-weight: 400;
                        color: #222
                    }

                    html[data-cc-page="group-offers"] .drawer-resort small {
                        display: block;
                        font-size: 8px;
                        letter-spacing: .1em;
                        text-transform: uppercase;
                        color: #999;
                        margin-top: 3px
                    }

                html[data-cc-page="group-offers"] .drawer .btn {
                    width: 100%;
                    margin-top: 25px
                }

                /* HERO */
                html[data-cc-page="group-offers"] .hero {
                    position: relative;
                    height: 100svh;
                    min-height: 760px;
                    background: #111;
                    overflow: hidden;
                    color: #fff
                }

                html[data-cc-page="group-offers"] .hero-slides {
                    position: absolute;
                    inset: 0
                }

                html[data-cc-page="group-offers"] .hero-slide {
                    position: absolute;
                    inset: 0;
                    opacity: 0;
                    visibility: hidden;
                    transition: opacity 1.15s ease,visibility 1.15s ease
                }

                    html[data-cc-page="group-offers"] .hero-slide.active {
                        opacity: 1;
                        visibility: visible;
                        z-index: 2
                    }

                    html[data-cc-page="group-offers"] .hero-slide img {
                        height: 100%;
                        object-fit: cover;
                        transform: scale(1.035);
                        will-change: transform;
                        transform-origin: center center
                    }

                    html[data-cc-page="group-offers"] .hero-slide.active img {
                        animation: heroKenBurnsA_cc_groupoffers 7.2s ease-in-out both
                    }

                    html[data-cc-page="group-offers"] .hero-slide:nth-child(even).active img {
                        animation-name: heroKenBurnsB_cc_groupoffers
                    }

                    html[data-cc-page="group-offers"] .hero-slide:nth-child(3).active img {
                        animation-name: heroKenBurnsC_cc_groupoffers
                    }

                @keyframes heroKenBurnsA_cc_groupoffers {
                    0% {
                        transform: scale(1.035) translate3d(0,0,0)
                    }

                    100% {
                        transform: scale(1.14) translate3d(-1.4%,-1.1%,0)
                    }
                }

                @keyframes heroKenBurnsB_cc_groupoffers {
                    0% {
                        transform: scale(1.04) translate3d(-1.2%,0,0)
                    }

                    100% {
                        transform: scale(1.145) translate3d(1.2%,-1%,0)
                    }
                }

                @keyframes heroKenBurnsC_cc_groupoffers {
                    0% {
                        transform: scale(1.04) translate3d(0,-.5%,0)
                    }

                    100% {
                        transform: scale(1.15) translate3d(-.8%,1%,0)
                    }
                }

                html[data-cc-page="group-offers"] .hero::after {
                    content: "";
                    position: absolute;
                    inset: 0;
                    z-index: 3;
                    background: linear-gradient(180deg,rgba(0,0,0,.64) 0%,rgba(0,0,0,.16) 38%,rgba(0,0,0,.06) 58%,rgba(0,0,0,.62) 100%),linear-gradient(90deg,rgba(0,0,0,.35),transparent 48%);
                    pointer-events: none
                }

                html[data-cc-page="group-offers"] .hero-content {
                    position: relative;
                    z-index: 4;
                    height: 100%;
                    display: flex;
                    align-items: flex-end;
                    padding-bottom: 125px
                }

                html[data-cc-page="group-offers"] .hero-copy {
                    max-width: 680px;
                    color: #fff
                }

                html[data-cc-page="group-offers"] .hero-kicker {
                    display: flex;
                    align-items: center;
                    gap: 13px;
                    margin-bottom: 17px;
                    opacity: .9
                }

                    html[data-cc-page="group-offers"] .hero-kicker::before {
                        content: "";
                        width: 44px;
                        height: 2px;
                        background: var(--pink)
                    }

                html[data-cc-page="group-offers"] .hero-title {
                    font-family: var(--display);
                    font-size: clamp(52px,5.6vw,92px);
                    line-height: .96;
                    font-weight: 400;
                    letter-spacing: -.035em;
                    max-width: 760px
                }

                html[data-cc-page="group-offers"] .hero-subtitle {
                    font-size: 15px;
                    line-height: 1.7;
                    margin-top: 19px;
                    max-width: 480px;
                    color: rgba(255,255,255,.9)
                }

                html[data-cc-page="group-offers"] .hero-actions {
                    display: flex;
                    align-items: center;
                    gap: 14px;
                    margin-top: 28px
                }

                html[data-cc-page="group-offers"] .hero-copy.animate .hero-kicker, html[data-cc-page="group-offers"] .hero-copy.animate .hero-title, html[data-cc-page="group-offers"] .hero-copy.animate .hero-subtitle, html[data-cc-page="group-offers"] .hero-copy.animate .hero-actions {
                    animation: heroUp_cc_groupoffers .9s cubic-bezier(.22,1,.36,1) both
                }

                html[data-cc-page="group-offers"] .hero-copy.animate .hero-title {
                    animation-delay: .08s
                }

                html[data-cc-page="group-offers"] .hero-copy.animate .hero-subtitle {
                    animation-delay: .17s
                }

                html[data-cc-page="group-offers"] .hero-copy.animate .hero-actions {
                    animation-delay: .26s
                }

                @keyframes heroUp_cc_groupoffers {
                    from {
                        opacity: 0;
                        transform: translateY(45px)
                    }

                    to {
                        opacity: 1;
                        transform: none
                    }
                }

                html[data-cc-page="group-offers"] .hero-control {
                    position: absolute;
                    z-index: 26;
                    right: 42px;
                    bottom: 112px;
                    display: flex;
                    align-items: center;
                    gap: 10px
                }

                html[data-cc-page="group-offers"] .hero-arrow {
                    width: 52px;
                    height: 52px;
                    border: 1px solid rgba(255,255,255,.55);
                    background: rgba(0,0,0,.16);
                    color: #fff;
                    transition: .25s
                }

                    html[data-cc-page="group-offers"] .hero-arrow:hover {
                        background: var(--pink);
                        border-color: var(--pink)
                    }

                html[data-cc-page="group-offers"] .hero-count {
                    position: absolute;
                    z-index: 6;
                    right: 46px;
                    top: 50%;
                    transform: translateY(-50%);
                    display: grid;
                    gap: 13px
                }

                    html[data-cc-page="group-offers"] .hero-count button {
                        width: 32px;
                        height: 32px;
                        border: 0;
                        background: transparent;
                        color: rgba(255,255,255,.6);
                        font-size: 11px;
                        position: relative
                    }

                        html[data-cc-page="group-offers"] .hero-count button::after {
                            content: "";
                            position: absolute;
                            right: -14px;
                            top: 50%;
                            width: 0;
                            height: 1px;
                            background: #fff;
                            transition: .3s
                        }

                        html[data-cc-page="group-offers"] .hero-count button.active {
                            color: #fff
                        }

                            html[data-cc-page="group-offers"] .hero-count button.active::after {
                                width: 22px
                            }

                /* BOOKING DOCK */
                html[data-cc-page="group-offers"] .booking-shell {
                    position: relative;
                    z-index: 30;
                    margin-top: -62px
                }

                html[data-cc-page="group-offers"] .booking-card {
                    background: #fff;
                    box-shadow: 0 20px 55px rgba(0,0,0,.14);
                    padding: 18px 20px;
                    border-radius: 2px;
                    position: relative
                }

                html[data-cc-page="group-offers"] .booking-form {
                    display: grid;
                    grid-template-columns: 1.25fr 1fr 1fr 1.35fr .82fr auto;
                    gap: 10px;
                    align-items: end
                }

                html[data-cc-page="group-offers"] .field {
                    position: relative;
                    min-width: 0
                }

                    html[data-cc-page="group-offers"] .field label {
                        display: block;
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .16em;
                        text-transform: uppercase;
                        margin-bottom: 7px;
                        color: #777
                    }

                html[data-cc-page="group-offers"] .control {
                    height: 50px;
                    border: 1px solid #e0e0e0;
                    display: flex;
                    align-items: center;
                    position: relative;
                    background: #fafafa;
                    transition: .25s;
                    width: 100%
                }

                    html[data-cc-page="group-offers"] .control:focus-within, html[data-cc-page="group-offers"] .control.is-open {
                        border-color: var(--pink);
                        background: #fff;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.07)
                    }

                    html[data-cc-page="group-offers"] .control > i {
                        position: absolute;
                        left: 14px;
                        color: var(--pink);
                        font-size: 13px;
                        z-index: 2;
                        pointer-events: none
                    }

                    html[data-cc-page="group-offers"] .control input, html[data-cc-page="group-offers"] .control select {
                        height: 100%;
                        width: 100%;
                        padding: 0 38px 0 38px;
                        border: 0;
                        background: transparent;
                        outline: 0;
                        appearance: none;
                        -webkit-appearance: none;
                        font-size: 12px;
                        color: #222;
                        min-width: 0
                    }

                    html[data-cc-page="group-offers"] .control .down {
                        position: absolute;
                        right: 13px;
                        top: 50%;
                        transform: translateY(-50%);
                        width: 20px;
                        height: 20px;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        color: #777;
                        font-size: 10px;
                        pointer-events: none;
                        z-index: 3
                    }

                        html[data-cc-page="group-offers"] .control .down i {
                            position: static !important;
                            left: auto !important;
                            color: inherit !important;
                            font-size: 10px !important;
                            pointer-events: none !important
                        }

                html[data-cc-page="group-offers"] .guest-trigger {
                    border: 1px solid #e0e0e0;
                    background: #fafafa;
                    border-radius: 0;
                    text-align: left;
                    cursor: pointer;
                    padding: 0 40px 0 40px;
                    font-size: 12px;
                    color: #222;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis
                }

                    html[data-cc-page="group-offers"] .guest-trigger .guest-summary {
                        display: block;
                        overflow: hidden;
                        text-overflow: ellipsis;
                        white-space: nowrap;
                        width: 100%
                    }

                html[data-cc-page="group-offers"] .guest-popover {
                    position: absolute;
                    left: 0;
                    top: calc(100% + 12px);
                    width: 390px;
                    max-width: min(390px,calc(100vw - 40px));
                    background: #fff;
                    border: 1px solid #e8e8e8;
                    box-shadow: 0 22px 55px rgba(0,0,0,.18);
                    padding: 20px;
                    z-index: 120;
                    opacity: 0;
                    visibility: hidden;
                    transform: translateY(8px);
                    transition: .22s ease
                }

                    html[data-cc-page="group-offers"] .guest-popover.open {
                        opacity: 1;
                        visibility: visible;
                        transform: none
                    }

                    html[data-cc-page="group-offers"] .guest-popover::before {
                        content: "";
                        position: absolute;
                        top: -7px;
                        left: 28px;
                        width: 12px;
                        height: 12px;
                        background: #fff;
                        border-left: 1px solid #e8e8e8;
                        border-top: 1px solid #e8e8e8;
                        transform: rotate(45deg)
                    }

                html[data-cc-page="group-offers"] .guest-popover-head {
                    display: flex;
                    align-items: flex-start;
                    justify-content: space-between;
                    gap: 18px;
                    padding-bottom: 15px;
                    margin-bottom: 4px;
                    border-bottom: 1px solid #eee
                }

                    html[data-cc-page="group-offers"] .guest-popover-head strong {
                        display: block;
                        font-family: var(--display);
                        font-size: 24px;
                        line-height: 1;
                        font-weight: 400;
                        color: #222
                    }

                    html[data-cc-page="group-offers"] .guest-popover-head span {
                        display: block;
                        font-size: 10px;
                        line-height: 1.55;
                        color: #888;
                        margin-top: 6px
                    }

                html[data-cc-page="group-offers"] .guest-close {
                    width: 30px;
                    height: 30px;
                    border: 0;
                    background: #f4f4f4;
                    color: #444;
                    border-radius: 50%
                }

                html[data-cc-page="group-offers"] .rooms-container {
                    max-height: 360px;
                    overflow: auto;
                    padding-right: 3px
                }

                html[data-cc-page="group-offers"] .room-block {
                    padding: 17px 0;
                    border-bottom: 1px solid #ededed
                }

                html[data-cc-page="group-offers"] .room-head {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    margin-bottom: 13px
                }

                    html[data-cc-page="group-offers"] .room-head strong {
                        font-size: 11px;
                        letter-spacing: .1em;
                        text-transform: uppercase
                    }

                html[data-cc-page="group-offers"] .remove-room {
                    border: 0;
                    background: transparent;
                    color: #9a9a9a;
                    font-size: 10px;
                    text-decoration: underline
                }

                    html[data-cc-page="group-offers"] .remove-room:hover {
                        color: var(--pink)
                    }

                html[data-cc-page="group-offers"] .guest-row {
                    display: grid;
                    grid-template-columns: 1fr auto;
                    align-items: center;
                    gap: 16px;
                    margin: 10px 0
                }

                html[data-cc-page="group-offers"] .guest-row-label strong {
                    display: block;
                    font-size: 12px;
                    font-weight: 500;
                    color: #242424
                }

                html[data-cc-page="group-offers"] .guest-row-label span {
                    display: block;
                    font-size: 9px;
                    color: #929292;
                    margin-top: 1px
                }

                html[data-cc-page="group-offers"] .stepper {
                    display: flex;
                    align-items: center;
                    gap: 12px
                }

                    html[data-cc-page="group-offers"] .stepper button {
                        width: 30px;
                        height: 30px;
                        border: 1px solid #ddd;
                        background: #fff;
                        color: #222;
                        border-radius: 50%;
                        font-size: 12px;
                        transition: .2s
                    }

                        html[data-cc-page="group-offers"] .stepper button:hover:not(:disabled) {
                            border-color: var(--pink);
                            color: var(--pink)
                        }

                        html[data-cc-page="group-offers"] .stepper button:disabled {
                            opacity: .35;
                            cursor: not-allowed
                        }

                    html[data-cc-page="group-offers"] .stepper output {
                        min-width: 18px;
                        text-align: center;
                        font-size: 12px;
                        color: #222
                    }

                html[data-cc-page="group-offers"] .child-ages {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    gap: 8px;
                    margin-top: 12px
                }

                html[data-cc-page="group-offers"] .child-age label {
                    font-size: 8px;
                    margin-bottom: 5px;
                    color: #8a8a8a
                }

                html[data-cc-page="group-offers"] .child-age select {
                    width: 100%;
                    height: 38px;
                    border: 1px solid #ddd;
                    background: #fafafa;
                    padding: 0 28px 0 10px;
                    font-size: 10px;
                    outline: 0;
                    appearance: none;
                    -webkit-appearance: none
                }

                html[data-cc-page="group-offers"] .child-age {
                    position: relative
                }

                    html[data-cc-page="group-offers"] .child-age::after {
                        content: "\f107";
                        font-family: "Font Awesome 6 Free";
                        font-weight: 900;
                        position: absolute;
                        right: 10px;
                        bottom: 12px;
                        font-size: 9px;
                        color: #777;
                        pointer-events: none
                    }

                html[data-cc-page="group-offers"] .guest-actions {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 10px;
                    padding-top: 16px
                }

                html[data-cc-page="group-offers"] .add-room {
                    border: 0;
                    background: transparent;
                    color: var(--pink);
                    font-size: 10px;
                    font-weight: 600;
                    letter-spacing: .08em;
                    text-transform: uppercase
                }

                    html[data-cc-page="group-offers"] .add-room:disabled {
                        opacity: .4;
                        cursor: not-allowed
                    }

                html[data-cc-page="group-offers"] .guest-done {
                    height: 38px;
                    border: 0;
                    background: #171717;
                    color: #fff;
                    padding: 0 20px;
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .1em;
                    text-transform: uppercase
                }

                    html[data-cc-page="group-offers"] .guest-done:hover {
                        background: var(--pink)
                    }

                html[data-cc-page="group-offers"] .booking-submit {
                    height: 50px;
                    border: 0;
                    background: var(--pink);
                    color: #fff;
                    padding: 0 24px;
                    font-size: 11px;
                    font-weight: 600;
                    letter-spacing: .1em;
                    text-transform: uppercase;
                    white-space: nowrap;
                    transition: .3s
                }

                    html[data-cc-page="group-offers"] .booking-submit:hover {
                        background: var(--pink-dark)
                    }

                /* MOTION */
                html[data-cc-page="group-offers"] .reveal {
                    opacity: 0;
                    transform: translateY(58px) scale(.985);
                    filter: blur(7px);
                    transition: opacity 1s cubic-bezier(.22,1,.36,1),transform 1.05s cubic-bezier(.22,1,.36,1),filter .9s ease;
                    transition-delay: var(--delay,0ms)
                }

                html[data-cc-page="group-offers"] .reveal-left {
                    opacity: 0;
                    transform: translateX(-72px);
                    filter: blur(6px);
                    transition: opacity 1.05s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .9s ease;
                    transition-delay: var(--delay,0ms)
                }

                html[data-cc-page="group-offers"] .reveal-right {
                    opacity: 0;
                    transform: translateX(72px);
                    filter: blur(6px);
                    transition: opacity 1.05s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .9s ease;
                    transition-delay: var(--delay,0ms)
                }

                    html[data-cc-page="group-offers"] .reveal.in-view, html[data-cc-page="group-offers"] .reveal-left.in-view, html[data-cc-page="group-offers"] .reveal-right.in-view {
                        opacity: 1;
                        transform: none;
                        filter: blur(0)
                    }

                    html[data-cc-page="group-offers"] .reveal img, html[data-cc-page="group-offers"] .reveal-left img, html[data-cc-page="group-offers"] .reveal-right img {
                        transition: transform 1.35s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-offers"] .reveal:not(.in-view) > img, html[data-cc-page="group-offers"] .reveal-left:not(.in-view) > img, html[data-cc-page="group-offers"] .reveal-right:not(.in-view) > img {
                        transform: scale(1.045)
                    }

                    html[data-cc-page="group-offers"] .reveal.in-view > img, html[data-cc-page="group-offers"] .reveal-left.in-view > img, html[data-cc-page="group-offers"] .reveal-right.in-view > img {
                        transform: scale(1)
                    }

                /* BRAND STORY / COLLECTION INTRO */
                html[data-cc-page="group-offers"] .brand-story {
                    padding: 145px 0 155px;
                    background: #fff;
                    position: relative;
                    overflow: hidden
                }

                    html[data-cc-page="group-offers"] .brand-story::before {
                        content: "04";
                        position: absolute;
                        left: -18px;
                        top: 28px;
                        font-family: var(--display);
                        font-size: clamp(190px,23vw,360px);
                        line-height: .82;
                        letter-spacing: -.09em;
                        color: #f3f0f1;
                        z-index: 0;
                        pointer-events: none
                    }

                html[data-cc-page="group-offers"] .brand-story-grid {
                    position: relative;
                    z-index: 2;
                    display: grid;
                    grid-template-columns: .9fr 1.15fr;
                    gap: 100px;
                    align-items: center
                }

                html[data-cc-page="group-offers"] .brand-story-copy {
                    padding-left: 55px
                }

                    html[data-cc-page="group-offers"] .brand-story-copy .eyebrow {
                        color: var(--pink);
                        margin-bottom: 22px
                    }

                    html[data-cc-page="group-offers"] .brand-story-copy h2 {
                        font-family: var(--display);
                        font-size: clamp(55px,5.8vw,88px);
                        line-height: .98;
                        font-weight: 400;
                        letter-spacing: -.045em;
                        max-width: 690px
                    }

                        html[data-cc-page="group-offers"] .brand-story-copy h2 em {
                            font-style: italic;
                            color: var(--pink)
                        }

                    html[data-cc-page="group-offers"] .brand-story-copy p {
                        font-size: 14px;
                        line-height: 1.9;
                        color: var(--muted);
                        max-width: 510px;
                        margin-top: 28px
                    }

                html[data-cc-page="group-offers"] .brand-story-visual {
                    position: relative;
                    min-height: 610px
                }

                html[data-cc-page="group-offers"] .brand-story-main-image {
                    position: absolute;
                    right: 0;
                    top: 0;
                    width: 92%;
                    height: 560px;
                    overflow: hidden;
                    background: #111
                }

                    html[data-cc-page="group-offers"] .brand-story-main-image::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,transparent 48%,rgba(25,0,15,.44) 100%);
                        pointer-events: none
                    }

                    html[data-cc-page="group-offers"] .brand-story-main-image img {
                        height: 100%;
                        object-fit: cover;
                        transform: scale(1.04);
                        transition: transform 1.8s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-offers"] .brand-story-main-image.in-view img {
                        transform: scale(1)
                    }

                html[data-cc-page="group-offers"] .brand-story-note {
                    position: absolute;
                    left: 8%;
                    bottom: 50px;
                    width: min(620px,72%);
                    color: #fff;
                    padding: 30px 46px 30px 30px;
                    z-index: 3;
                    background: linear-gradient(90deg,rgba(169,0,97,.96) 0%,rgba(169,0,97,.72) 58%,rgba(169,0,97,0) 100%)
                }

                    html[data-cc-page="group-offers"] .brand-story-note strong {
                        display: block;
                        font-family: var(--display);
                        font-size: 36px;
                        line-height: 1;
                        font-weight: 400;
                        margin-bottom: 11px
                    }

                    html[data-cc-page="group-offers"] .brand-story-note p {
                        font-size: 11px;
                        line-height: 1.7;
                        color: rgba(255,255,255,.82);
                        max-width: 430px
                    }

                    html[data-cc-page="group-offers"] .brand-story-note span {
                        display: block;
                        margin-top: 18px;
                        color: #fff;
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .15em;
                        text-transform: uppercase
                    }

                html[data-cc-page="group-offers"] .brand-story-stamp {
                    position: absolute;
                    right: 22px;
                    bottom: 20px;
                    width: 118px;
                    height: 118px;
                    border-radius: 50%;
                    background: #fff;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    text-align: center;
                    box-shadow: 0 15px 35px rgba(0,0,0,.12);
                    z-index: 4
                }

                    html[data-cc-page="group-offers"] .brand-story-stamp strong {
                        font-family: var(--display);
                        font-size: 38px;
                        line-height: .8;
                        font-weight: 400;
                        color: var(--pink)
                    }

                    html[data-cc-page="group-offers"] .brand-story-stamp small {
                        display: block;
                        font-size: 8px;
                        line-height: 1.35;
                        letter-spacing: .1em;
                        text-transform: uppercase;
                        color: #555;
                        margin-top: 7px
                    }

                /* RESORT STORIES */
                html[data-cc-page="group-offers"] .resorts {
                    padding: 0 0 150px;
                    background: var(--paper);
                    overflow: hidden
                }

                html[data-cc-page="group-offers"] .resort-head {
                    display: flex;
                    align-items: flex-end;
                    justify-content: space-between;
                    padding: 110px 0 52px
                }

                    html[data-cc-page="group-offers"] .resort-head .small-title {
                        font-family: var(--display);
                        font-size: 48px;
                        font-weight: 400;
                        line-height: 1.1
                    }

                        html[data-cc-page="group-offers"] .resort-head .small-title span {
                            display: block;
                            font-family: var(--body);
                            font-size: 11px;
                            letter-spacing: .18em;
                            text-transform: uppercase;
                            color: var(--pink);
                            margin-bottom: 12px
                        }

                html[data-cc-page="group-offers"] .resort-nav {
                    display: flex;
                    gap: 8px
                }

                    html[data-cc-page="group-offers"] .resort-nav button {
                        width: 48px;
                        height: 48px;
                        border: 1px solid #ccc;
                        background: transparent
                    }

                        html[data-cc-page="group-offers"] .resort-nav button:hover {
                            border-color: var(--pink);
                            color: var(--pink)
                        }

                html[data-cc-page="group-offers"] .resort-viewport {
                    overflow: hidden;
                    cursor: grab;
                    touch-action: pan-y;
                    user-select: none;
                    -webkit-user-select: none
                }

                    html[data-cc-page="group-offers"] .resort-viewport.is-dragging {
                        cursor: grabbing
                    }

                html[data-cc-page="group-offers"] .resort-track {
                    display: flex;
                    gap: 24px;
                    transition: transform .7s cubic-bezier(.22,1,.36,1);
                    will-change: transform
                }

                    html[data-cc-page="group-offers"] .resort-track.is-dragging {
                        transition: none
                    }

                html[data-cc-page="group-offers"] .resort-story {
                    flex: 0 0 min(1040px,76vw);
                    height: 565px;
                    position: relative;
                    overflow: hidden;
                    background: #111;
                    color: #fff
                }

                    html[data-cc-page="group-offers"] .resort-story img {
                        height: 100%;
                        object-fit: cover;
                        transition: transform 1.6s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-offers"] .resort-story:hover img {
                        transform: scale(1.035)
                    }

                    html[data-cc-page="group-offers"] .resort-story::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,transparent 28%,rgba(0,0,0,.08) 48%,rgba(0,0,0,.72) 100%)
                    }

                html[data-cc-page="group-offers"] .story-index {
                    position: absolute;
                    z-index: 2;
                    top: 32px;
                    left: 34px;
                    font-size: 10px;
                    letter-spacing: .16em;
                    text-transform: uppercase;
                    background: rgba(0,0,0,.28);
                    backdrop-filter: blur(8px);
                    padding: 9px 12px
                }

                html[data-cc-page="group-offers"] .story-copy {
                    position: absolute;
                    z-index: 2;
                    left: 46px;
                    right: 46px;
                    bottom: 42px;
                    display: flex;
                    align-items: flex-end;
                    justify-content: space-between;
                    gap: 30px
                }

                    html[data-cc-page="group-offers"] .story-copy h3 {
                        font-family: var(--display);
                        font-size: clamp(45px,4.4vw,72px);
                        line-height: 1;
                        font-weight: 400;
                        max-width: 700px;
                        letter-spacing: -.03em
                    }

                    html[data-cc-page="group-offers"] .story-copy p {
                        font-size: 13px;
                        line-height: 1.7;
                        max-width: 330px;
                        color: rgba(255,255,255,.84);
                        margin-bottom: 5px
                    }

                html[data-cc-page="group-offers"] .story-link {
                    position: absolute;
                    right: 38px;
                    top: 34px;
                    z-index: 2;
                    width: 54px;
                    height: 54px;
                    border-radius: 50%;
                    border: 1px solid rgba(255,255,255,.65);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    transition: .3s
                }

                    html[data-cc-page="group-offers"] .story-link:hover {
                        background: #fff;
                        color: var(--pink);
                        transform: rotate(-35deg)
                    }

                html[data-cc-page="group-offers"] .resort-controls-bottom {
                    display: grid;
                    grid-template-columns: auto 1fr auto;
                    align-items: center;
                    gap: 22px;
                    margin-top: 28px
                }

                html[data-cc-page="group-offers"] .resort-drag-hint {
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: #8b8b8b;
                    white-space: nowrap
                }

                html[data-cc-page="group-offers"] .resort-progress {
                    height: 18px;
                    position: relative;
                    cursor: pointer;
                    display: flex;
                    align-items: center;
                    touch-action: none
                }

                    html[data-cc-page="group-offers"] .resort-progress::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        height: 2px;
                        background: #d6d3d4
                    }

                    html[data-cc-page="group-offers"] .resort-progress span {
                        position: absolute;
                        left: 0;
                        height: 4px;
                        width: 25%;
                        background: var(--pink);
                        transition: transform .55s cubic-bezier(.22,1,.36,1);
                        z-index: 2
                    }

                    html[data-cc-page="group-offers"] .resort-progress:hover span {
                        height: 6px
                    }

                html[data-cc-page="group-offers"] .resort-bottom-nav {
                    display: flex;
                    gap: 7px
                }

                    html[data-cc-page="group-offers"] .resort-bottom-nav button {
                        width: 44px;
                        height: 44px;
                        border: 1px solid #c8c5c6;
                        background: transparent;
                        transition: .25s
                    }

                        html[data-cc-page="group-offers"] .resort-bottom-nav button:hover {
                            background: var(--pink);
                            border-color: var(--pink);
                            color: #fff
                        }

                /* LOYALTY CHAPTER */
                html[data-cc-page="group-offers"] .loyalty {
                    min-height: 740px;
                    position: relative;
                    background-color: #090909;
                    background-image: url("../images/Loyalty-Section-Background.jpg"),url("https://charmillionresorts.com/images/uploads/Charmillion-Club-Resort-lobby.jpg");
                    background-position: center,center;
                    background-size: cover,cover;
                    background-repeat: no-repeat,no-repeat;
                    background-attachment: fixed,fixed;
                    color: #fff;
                    display: flex;
                    align-items: center;
                    overflow: hidden
                }

                    html[data-cc-page="group-offers"] .loyalty::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.58) 48%,rgba(0,0,0,.08) 100%)
                    }

                    html[data-cc-page="group-offers"] .loyalty .container {
                        position: relative;
                        z-index: 2
                    }

                html[data-cc-page="group-offers"] .loyalty-copy {
                    max-width: 710px
                }

                    html[data-cc-page="group-offers"] .loyalty-copy .eyebrow {
                        color: #fff;
                        margin-bottom: 25px
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy h2 {
                        font-family: var(--display);
                        font-size: clamp(54px,6vw,86px);
                        font-weight: 400;
                        line-height: 1.02;
                        letter-spacing: -.04em
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy p {
                        font-size: 15px;
                        line-height: 1.8;
                        color: rgba(255,255,255,.8);
                        max-width: 480px;
                        margin: 24px 0 30px
                    }

                html[data-cc-page="group-offers"] .loyalty-ring {
                    position: absolute;
                    right: -80px;
                    top: 50%;
                    width: 420px;
                    height: 420px;
                    border: 1px solid rgba(255,255,255,.16);
                    border-radius: 50%;
                    transform: translateY(-50%)
                }

                    html[data-cc-page="group-offers"] .loyalty-ring::before, html[data-cc-page="group-offers"] .loyalty-ring::after {
                        content: "";
                        position: absolute;
                        border: 1px solid rgba(255,255,255,.11);
                        border-radius: 50%;
                        inset: 55px
                    }

                    html[data-cc-page="group-offers"] .loyalty-ring::after {
                        inset: 110px
                    }

                /* OFFERS MOSAIC */
                html[data-cc-page="group-offers"] .offers {
                    padding: 150px 0;
                    background: #fff
                }

                html[data-cc-page="group-offers"] .offers-intro {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    gap: 90px;
                    align-items: end;
                    margin-bottom: 62px
                }

                    html[data-cc-page="group-offers"] .offers-intro h2 {
                        font-family: var(--display);
                        font-size: clamp(50px,5vw,76px);
                        line-height: 1.02;
                        font-weight: 400;
                        letter-spacing: -.035em
                    }

                html[data-cc-page="group-offers"] .offers-intro-copy {
                    max-width: 510px;
                    margin-left: auto
                }

                    html[data-cc-page="group-offers"] .offers-intro-copy .eyebrow {
                        color: var(--pink);
                        margin-bottom: 18px
                    }

                    html[data-cc-page="group-offers"] .offers-intro-copy p {
                        font-size: 14px;
                        line-height: 1.8;
                        color: var(--muted)
                    }

                html[data-cc-page="group-offers"] .offer-mosaic {
                    display: grid;
                    grid-template-columns: 1.25fr .75fr;
                    grid-template-rows: 310px 310px;
                    gap: 22px
                }

                html[data-cc-page="group-offers"] .offer-tile {
                    position: relative;
                    overflow: hidden;
                    background: #111;
                    color: #fff
                }

                    html[data-cc-page="group-offers"] .offer-tile.featured {
                        grid-row: 1/3
                    }

                    html[data-cc-page="group-offers"] .offer-tile img {
                        height: 100%;
                        object-fit: cover;
                        transition: transform .8s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-offers"] .offer-tile:hover img {
                        transform: scale(1.045)
                    }

                    html[data-cc-page="group-offers"] .offer-tile::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,transparent 30%,rgba(0,0,0,.72) 100%)
                    }

                html[data-cc-page="group-offers"] .offer-content {
                    position: absolute;
                    z-index: 2;
                    left: 30px;
                    right: 30px;
                    bottom: 28px
                }

                    html[data-cc-page="group-offers"] .offer-content span {
                        font-size: 9px;
                        letter-spacing: .16em;
                        text-transform: uppercase;
                        color: rgba(255,255,255,.72)
                    }

                    html[data-cc-page="group-offers"] .offer-content h3 {
                        font-family: var(--display);
                        font-size: 38px;
                        line-height: 1.05;
                        font-weight: 400;
                        margin-top: 6px
                    }

                html[data-cc-page="group-offers"] .featured .offer-content h3 {
                    font-size: 58px
                }

                html[data-cc-page="group-offers"] .offer-arrow {
                    position: absolute;
                    z-index: 2;
                    right: 25px;
                    top: 25px;
                    width: 44px;
                    height: 44px;
                    border: 1px solid rgba(255,255,255,.65);
                    border-radius: 50%;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    transition: .3s
                }

                html[data-cc-page="group-offers"] .offer-tile:hover .offer-arrow {
                    background: #fff;
                    color: var(--pink);
                    transform: rotate(-35deg)
                }

                html[data-cc-page="group-offers"] .offer-strip {
                    display: grid;
                    grid-template-columns: repeat(2,1fr);
                    gap: 22px;
                    margin-top: 22px
                }

                    html[data-cc-page="group-offers"] .offer-strip .offer-tile {
                        height: 280px
                    }

                html[data-cc-page="group-offers"] .offers-bottom {
                    display: flex;
                    justify-content: flex-end;
                    margin-top: 32px
                }

                /* MEET / CELEBRATE - expanded destination chapter */
                html[data-cc-page="group-offers"] .gather {
                    background: var(--paper);
                    padding: 155px 0 165px;
                    overflow: hidden
                }

                html[data-cc-page="group-offers"] .gather-head {
                    display: grid;
                    grid-template-columns: 1.05fr .95fr;
                    gap: 90px;
                    align-items: end;
                    margin-bottom: 58px
                }

                    html[data-cc-page="group-offers"] .gather-head h2 {
                        font-family: var(--display);
                        font-size: clamp(54px,5.7vw,84px);
                        font-weight: 400;
                        line-height: .98;
                        letter-spacing: -.045em;
                        max-width: 760px
                    }

                html[data-cc-page="group-offers"] .gather-head-copy {
                    max-width: 530px;
                    margin-left: auto
                }

                    html[data-cc-page="group-offers"] .gather-head-copy .eyebrow {
                        color: var(--pink);
                        margin-bottom: 18px
                    }

                    html[data-cc-page="group-offers"] .gather-head-copy p {
                        font-size: 14px;
                        line-height: 1.85;
                        color: var(--muted)
                    }

                html[data-cc-page="group-offers"] .gather-scenes {
                    display: grid;
                    grid-template-columns: 1.08fr .92fr;
                    gap: 24px
                }

                html[data-cc-page="group-offers"] .gather-scene {
                    position: relative;
                    min-height: 650px;
                    overflow: hidden;
                    background: #111;
                    color: #fff
                }

                    html[data-cc-page="group-offers"] .gather-scene.secondary {
                        min-height: 650px
                    }

                    html[data-cc-page="group-offers"] .gather-scene img {
                        position: absolute;
                        inset: 0;
                        width: 100%;
                        height: 100%;
                        object-fit: cover;
                        transition: transform 1.25s cubic-bezier(.22,1,.36,1)
                    }

                    html[data-cc-page="group-offers"] .gather-scene:hover img {
                        transform: scale(1.045)
                    }

                    html[data-cc-page="group-offers"] .gather-scene::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,rgba(0,0,0,.08) 18%,rgba(0,0,0,.18) 45%,rgba(0,0,0,.82) 100%)
                    }

                html[data-cc-page="group-offers"] .gather-scene-content {
                    position: absolute;
                    z-index: 2;
                    left: 42px;
                    right: 42px;
                    bottom: 40px
                }

                html[data-cc-page="group-offers"] .gather-scene-index {
                    position: absolute;
                    z-index: 2;
                    top: 28px;
                    left: 30px;
                    font-size: 10px;
                    letter-spacing: .18em;
                    text-transform: uppercase;
                    background: rgba(0,0,0,.28);
                    backdrop-filter: blur(8px);
                    padding: 9px 12px
                }

                html[data-cc-page="group-offers"] .gather-scene-content .eyebrow {
                    color: rgba(255,255,255,.72);
                    margin-bottom: 12px
                }

                html[data-cc-page="group-offers"] .gather-scene-content h3 {
                    font-family: var(--display);
                    font-size: clamp(44px,4.5vw,68px);
                    line-height: 1;
                    font-weight: 400;
                    letter-spacing: -.035em;
                    max-width: 600px
                }

                html[data-cc-page="group-offers"] .gather-scene-content p {
                    font-size: 13px;
                    line-height: 1.8;
                    color: rgba(255,255,255,.78);
                    max-width: 520px;
                    margin: 17px 0 24px
                }

                html[data-cc-page="group-offers"] .gather-scene-link {
                    display: inline-flex;
                    align-items: center;
                    gap: 10px;
                    color: #fff;
                    font-size: 11px;
                    font-weight: 600;
                    text-transform: uppercase;
                    letter-spacing: .12em;
                    border-bottom: 1px solid rgba(255,255,255,.65);
                    padding-bottom: 5px;
                    transition: .25s
                }

                    html[data-cc-page="group-offers"] .gather-scene-link:hover {
                        color: #fff;
                        border-color: #fff;
                        gap: 16px
                    }

                html[data-cc-page="group-offers"] .gather-footer {
                    margin-top: 24px;
                    background: #181818;
                    color: #fff;
                    padding: 34px 42px;
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 30px
                }

                html[data-cc-page="group-offers"] .gather-footer-copy {
                    display: flex;
                    align-items: center;
                    gap: 34px
                }

                html[data-cc-page="group-offers"] .gather-footer strong {
                    font-family: var(--display);
                    font-size: 30px;
                    font-weight: 400;
                    line-height: 1.1
                }

                html[data-cc-page="group-offers"] .gather-footer span {
                    font-size: 12px;
                    line-height: 1.7;
                    color: rgba(255,255,255,.62);
                    max-width: 500px
                }

                html[data-cc-page="group-offers"] .gather-footer .btn {
                    flex: 0 0 auto
                }

                /* SEEN AT CHARMILLION - draggable media collection */
                html[data-cc-page="group-offers"] .social {
                    padding: 120px 0 125px;
                    background: #0f0f0f;
                    color: #fff;
                    overflow: hidden
                }

                html[data-cc-page="group-offers"] .social-head {
                    display: flex;
                    align-items: flex-end;
                    justify-content: space-between;
                    margin-bottom: 42px
                }

                    html[data-cc-page="group-offers"] .social-head h2 {
                        font-family: var(--display);
                        font-size: clamp(48px,5vw,74px);
                        font-weight: 400;
                        line-height: 1.02
                    }

                html[data-cc-page="group-offers"] .social-head-right {
                    display: flex;
                    align-items: flex-end;
                    gap: 30px
                }

                html[data-cc-page="group-offers"] .social-head p {
                    font-size: 12px;
                    color: rgba(255,255,255,.6);
                    max-width: 320px;
                    line-height: 1.7;
                    text-align: right
                }

                html[data-cc-page="group-offers"] .media-nav {
                    display: flex;
                    gap: 7px
                }

                    html[data-cc-page="group-offers"] .media-nav button {
                        width: 46px;
                        height: 46px;
                        border: 1px solid rgba(255,255,255,.32);
                        background: transparent;
                        color: #fff;
                        transition: .25s
                    }

                        html[data-cc-page="group-offers"] .media-nav button:hover {
                            background: var(--pink);
                            border-color: var(--pink)
                        }

                html[data-cc-page="group-offers"] .social-viewport {
                    overflow-x: auto;
                    overflow-y: hidden;
                    scrollbar-width: none;
                    cursor: grab;
                    touch-action: pan-y;
                    scroll-behavior: smooth;
                    scroll-snap-type: x proximity;
                    padding: 0 max(40px,calc((100vw - 1420px)/2));
                    user-select: none;
                    -webkit-user-select: none
                }

                    html[data-cc-page="group-offers"] .social-viewport::-webkit-scrollbar {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .social-viewport.is-dragging {
                        cursor: grabbing;
                        scroll-behavior: auto
                    }

                html[data-cc-page="group-offers"] .social-track {
                    display: flex;
                    gap: 18px;
                    width: max-content;
                    padding-right: 40px
                }

                html[data-cc-page="group-offers"] .social-card {
                    width: 300px;
                    height: 390px;
                    flex: 0 0 auto;
                    position: relative;
                    overflow: hidden;
                    background: #222;
                    scroll-snap-align: start
                }

                    html[data-cc-page="group-offers"] .social-card.wide {
                        width: 450px
                    }

                    html[data-cc-page="group-offers"] .social-card.short {
                        height: 330px;
                        margin-top: 30px
                    }

                    html[data-cc-page="group-offers"] .social-card img, html[data-cc-page="group-offers"] .social-card video {
                        height: 100%;
                        object-fit: cover;
                        transition: transform .7s ease
                    }

                    html[data-cc-page="group-offers"] .social-card:hover img, html[data-cc-page="group-offers"] .social-card:hover video {
                        transform: scale(1.04)
                    }

                    html[data-cc-page="group-offers"] .social-card::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: linear-gradient(180deg,transparent 60%,rgba(0,0,0,.64) 100%)
                    }

                    html[data-cc-page="group-offers"] .social-card span {
                        position: absolute;
                        z-index: 2;
                        left: 18px;
                        bottom: 16px;
                        font-size: 10px;
                        letter-spacing: .08em
                    }

                html[data-cc-page="group-offers"] .social-controls {
                    display: grid;
                    grid-template-columns: auto 1fr;
                    gap: 24px;
                    align-items: center;
                    margin-top: 28px
                }

                html[data-cc-page="group-offers"] .social-drag-hint {
                    font-size: 9px;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.5);
                    white-space: nowrap
                }

                html[data-cc-page="group-offers"] .social-progress {
                    height: 2px;
                    background: rgba(255,255,255,.18);
                    position: relative;
                    overflow: hidden
                }

                    html[data-cc-page="group-offers"] .social-progress span {
                        position: absolute;
                        left: 0;
                        top: 0;
                        bottom: 0;
                        width: 22%;
                        background: var(--pink);
                        transform: translateX(0);
                        transition: transform .15s linear
                    }

                /* NEWS & EVENTS - image first cards */
                html[data-cc-page="group-offers"] .newsroom {
                    padding: 125px 0 135px;
                    background: #f4f2f2;
                    overflow: hidden
                }

                html[data-cc-page="group-offers"] .newsroom-head {
                    display: grid;
                    grid-template-columns: 1fr .85fr;
                    gap: 80px;
                    align-items: end;
                    margin-bottom: 48px
                }

                    html[data-cc-page="group-offers"] .newsroom-head .eyebrow {
                        color: var(--pink);
                        margin-bottom: 18px
                    }

                    html[data-cc-page="group-offers"] .newsroom-head h2 {
                        font-family: var(--display);
                        font-size: clamp(54px,5.5vw,82px);
                        font-weight: 400;
                        line-height: .98;
                        letter-spacing: -.04em
                    }

                    html[data-cc-page="group-offers"] .newsroom-head p {
                        font-size: 13px;
                        line-height: 1.85;
                        color: var(--muted);
                        max-width: 480px;
                        margin-left: auto
                    }

                html[data-cc-page="group-offers"] .newsroom-head-actions {
                    display: flex;
                    align-items: center;
                    justify-content: flex-end;
                    gap: 24px;
                    margin-top: 20px
                }

                html[data-cc-page="group-offers"] .newsroom-viewall {
                    display: inline-flex;
                    align-items: center;
                    gap: 12px;
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: var(--pink)
                }

                    html[data-cc-page="group-offers"] .newsroom-viewall i {
                        transition: .25s
                    }

                    html[data-cc-page="group-offers"] .newsroom-viewall:hover i {
                        transform: translateX(5px)
                    }

                html[data-cc-page="group-offers"] .news-viewport {
                    overflow-x: auto;
                    overflow-y: hidden;
                    scrollbar-width: none;
                    cursor: grab;
                    touch-action: pan-y;
                    scroll-behavior: smooth;
                    scroll-snap-type: x mandatory;
                    user-select: none;
                    -webkit-user-select: none;
                    padding-bottom: 4px
                }

                    html[data-cc-page="group-offers"] .news-viewport::-webkit-scrollbar {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .news-viewport.is-dragging {
                        cursor: grabbing;
                        scroll-behavior: auto
                    }

                html[data-cc-page="group-offers"] .news-track {
                    display: flex;
                    gap: 22px;
                    width: max-content
                }

                html[data-cc-page="group-offers"] .news-card {
                    width: min(400px,31vw);
                    min-width: 330px;
                    background: #fff;
                    scroll-snap-align: start;
                    display: flex;
                    flex-direction: column;
                    transition: transform .35s ease,box-shadow .35s ease
                }

                    html[data-cc-page="group-offers"] .news-card:hover {
                        transform: translateY(-5px);
                        box-shadow: 0 18px 50px rgba(0,0,0,.08)
                    }

                html[data-cc-page="group-offers"] .news-card-image {
                    height: 265px;
                    overflow: hidden;
                    background: #ddd
                }

                    html[data-cc-page="group-offers"] .news-card-image img {
                        height: 100%;
                        object-fit: cover;
                        transition: transform .8s cubic-bezier(.22,1,.36,1)
                    }

                html[data-cc-page="group-offers"] .news-card:hover .news-card-image img {
                    transform: scale(1.045)
                }

                html[data-cc-page="group-offers"] .news-card-body {
                    padding: 26px 27px 29px;
                    display: flex;
                    flex-direction: column;
                    flex: 1
                }

                html[data-cc-page="group-offers"] .news-meta {
                    display: flex;
                    align-items: center;
                    gap: 12px;
                    font-size: 8px;
                    font-weight: 600;
                    letter-spacing: .15em;
                    text-transform: uppercase;
                    color: #8b8b8b;
                    margin-bottom: 17px
                }

                    html[data-cc-page="group-offers"] .news-meta .type {
                        color: var(--pink);
                        background: rgba(169,0,97,.07);
                        padding: 6px 8px
                    }

                html[data-cc-page="group-offers"] .news-card h3 {
                    font-family: var(--display);
                    font-size: 32px;
                    line-height: 1.08;
                    font-weight: 400;
                    letter-spacing: -.025em;
                    color: #222
                }

                html[data-cc-page="group-offers"] .news-card p {
                    font-size: 11px;
                    line-height: 1.75;
                    color: #777;
                    margin-top: 13px;
                    max-width: 350px
                }

                html[data-cc-page="group-offers"] .news-link {
                    display: inline-flex;
                    align-items: center;
                    gap: 12px;
                    margin-top: auto;
                    padding-top: 24px;
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: var(--pink)
                }

                    html[data-cc-page="group-offers"] .news-link i {
                        transition: .25s
                    }

                    html[data-cc-page="group-offers"] .news-link:hover i {
                        transform: translateX(5px)
                    }

                html[data-cc-page="group-offers"] .news-controls {
                    display: grid;
                    grid-template-columns: auto 1fr auto;
                    gap: 22px;
                    align-items: center;
                    margin-top: 28px
                }

                html[data-cc-page="group-offers"] .news-drag-hint {
                    font-size: 9px;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: #8b8b8b;
                    white-space: nowrap
                }

                html[data-cc-page="group-offers"] .news-progress {
                    height: 2px;
                    background: #d6d3d4;
                    position: relative;
                    overflow: hidden
                }

                    html[data-cc-page="group-offers"] .news-progress span {
                        position: absolute;
                        left: 0;
                        top: 0;
                        bottom: 0;
                        width: 28%;
                        background: var(--pink);
                        transition: transform .15s linear
                    }

                html[data-cc-page="group-offers"] .news-bottom-nav {
                    display: flex;
                    gap: 7px
                }

                    html[data-cc-page="group-offers"] .news-bottom-nav button {
                        width: 44px;
                        height: 44px;
                        border: 1px solid #c8c5c6;
                        background: transparent;
                        transition: .25s
                    }

                        html[data-cc-page="group-offers"] .news-bottom-nav button:hover {
                            background: var(--pink);
                            border-color: var(--pink);
                            color: #fff
                        }

                /* MODERN FOOTER */
                html[data-cc-page="group-offers"] .footer {
                    position: relative;
                    background: #0a0a0b;
                    color: #fff;
                    padding: 0 0 24px;
                    overflow: hidden
                }

                    html[data-cc-page="group-offers"] .footer::before {
                        content: "";
                        position: absolute;
                        right: -190px;
                        top: 130px;
                        width: 520px;
                        height: 520px;
                        border: 1px solid rgba(169,0,97,.18);
                        border-radius: 50%;
                        pointer-events: none
                    }

                    html[data-cc-page="group-offers"] .footer::after {
                        content: "";
                        position: absolute;
                        right: -95px;
                        top: 225px;
                        width: 330px;
                        height: 330px;
                        border: 1px solid rgba(169,0,97,.12);
                        border-radius: 50%;
                        pointer-events: none
                    }

                    html[data-cc-page="group-offers"] .footer .container {
                        position: relative;
                        z-index: 2
                    }

                html[data-cc-page="group-offers"] .footer-newsletter {
                    transform: translateY(-1px);
                    background: linear-gradient(115deg,var(--pink) 0%,var(--pink-dark) 72%);
                    display: grid;
                    grid-template-columns: .9fr 1.1fr;
                    gap: 70px;
                    align-items: center;
                    padding: 48px 54px;
                    margin-bottom: 68px
                }

                    html[data-cc-page="group-offers"] .footer-newsletter .eyebrow {
                        color: rgba(255,255,255,.72);
                        margin-bottom: 12px
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter h2 {
                        font-family: var(--display);
                        font-size: clamp(38px,4.2vw,60px);
                        line-height: 1;
                        font-weight: 400;
                        letter-spacing: -.03em
                    }

                html[data-cc-page="group-offers"] .newsletter-copy p {
                    font-size: 12px;
                    line-height: 1.75;
                    color: rgba(255,255,255,.76);
                    margin-top: 14px;
                    max-width: 500px
                }

                html[data-cc-page="group-offers"] .newsletter-form {
                    display: flex;
                    align-items: stretch;
                    border-bottom: 1px solid rgba(255,255,255,.65);
                    min-height: 58px
                }

                    html[data-cc-page="group-offers"] .newsletter-form input {
                        flex: 1;
                        min-width: 0;
                        border: 0;
                        background: transparent;
                        color: #fff;
                        outline: 0;
                        font-size: 13px;
                        padding: 0 8px
                    }

                        html[data-cc-page="group-offers"] .newsletter-form input::placeholder {
                            color: rgba(255,255,255,.62)
                        }

                    html[data-cc-page="group-offers"] .newsletter-form button {
                        border: 0;
                        background: #fff;
                        color: #171717;
                        padding: 0 24px;
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .14em;
                        text-transform: uppercase;
                        transition: .25s
                    }

                        html[data-cc-page="group-offers"] .newsletter-form button:hover {
                            background: #171717;
                            color: #fff
                        }

                html[data-cc-page="group-offers"] .newsletter-note {
                    font-size: 9px !important;
                    color: rgba(255,255,255,.58) !important;
                    margin-top: 11px !important
                }

                html[data-cc-page="group-offers"] .footer-grid {
                    display: grid;
                    grid-template-columns: 1.35fr .72fr .82fr 1fr;
                    gap: 72px;
                    padding-bottom: 58px
                }

                html[data-cc-page="group-offers"] .footer-brand-copy {
                    font-size: 12px;
                    line-height: 1.8;
                    color: rgba(255,255,255,.58);
                    max-width: 290px;
                    margin-top: 22px
                }

                html[data-cc-page="group-offers"] .footer-logo {
                    width: 154px
                }

                html[data-cc-page="group-offers"] .footer h4 {
                    font-size: 9px;
                    text-transform: uppercase;
                    letter-spacing: .19em;
                    color: rgba(255,255,255,.46);
                    margin-bottom: 22px
                }

                html[data-cc-page="group-offers"] .footer-links {
                    display: grid;
                    gap: 12px
                }

                    html[data-cc-page="group-offers"] .footer-links a, html[data-cc-page="group-offers"] .footer p, html[data-cc-page="group-offers"] .footer a.contact {
                        font-size: 12px;
                        line-height: 1.7;
                        color: rgba(255,255,255,.68);
                        transition: .25s
                    }

                        html[data-cc-page="group-offers"] .footer-links a:hover, html[data-cc-page="group-offers"] .footer a.contact:hover {
                            color: #fff;
                            transform: translateX(3px)
                        }

                html[data-cc-page="group-offers"] .footer-contact {
                    display: grid;
                    gap: 7px
                }

                html[data-cc-page="group-offers"] .footer-location {
                    margin-top: 22px !important
                }

                html[data-cc-page="group-offers"] .social-icons {
                    display: flex;
                    gap: 10px;
                    margin-top: 24px
                }

                    html[data-cc-page="group-offers"] .social-icons a {
                        width: 40px;
                        height: 40px;
                        border: 1px solid rgba(255,255,255,.22);
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        border-radius: 50%;
                        font-size: 13px;
                        transition: .3s
                    }

                        html[data-cc-page="group-offers"] .social-icons a:hover {
                            background: var(--pink);
                            border-color: var(--pink);
                            transform: translateY(-3px)
                        }

                html[data-cc-page="group-offers"] .green-star {
                    width: 92px;
                    margin-top: 24px
                }

                html[data-cc-page="group-offers"] .footer-bottom {
                    border-top: 1px solid rgba(255,255,255,.12);
                    padding-top: 22px;
                    display: flex;
                    justify-content: space-between;
                    gap: 20px;
                    flex-wrap: wrap;
                    font-size: 9px;
                    letter-spacing: .03em;
                    color: rgba(255,255,255,.4)
                }

                    html[data-cc-page="group-offers"] .footer-bottom nav {
                        display: flex;
                        gap: 22px;
                        flex-wrap: wrap
                    }

                    html[data-cc-page="group-offers"] .footer-bottom a:hover {
                        color: #fff
                    }

                html[data-cc-page="group-offers"] .scrolltop {
                    position: fixed;
                    right: 22px;
                    bottom: 22px;
                    z-index: 80;
                    width: 42px;
                    height: 42px;
                    border: 0;
                    border-radius: 50%;
                    background: var(--pink);
                    color: #fff;
                    opacity: 0;
                    visibility: hidden;
                    transform: translateY(12px);
                    transition: .3s
                }

                    html[data-cc-page="group-offers"] .scrolltop.show {
                        opacity: 1;
                        visibility: visible;
                        transform: none
                    }

                html[data-cc-page="group-offers"] .mobile-book {
                    display: none
                }

                @media(max-width:1100px) {
                    html[data-cc-page="group-offers"] .container {
                        width: min(100% - 44px,1420px)
                    }

                    html[data-cc-page="group-offers"] .menu {
                        gap: 18px
                    }

                    html[data-cc-page="group-offers"] .menu-link {
                        font-size: 11px
                    }

                    html[data-cc-page="group-offers"] .header-book {
                        margin-left: 20px
                    }

                    html[data-cc-page="group-offers"] .booking-form {
                        grid-template-columns: repeat(3,1fr)
                    }

                    html[data-cc-page="group-offers"] .booking-submit {
                        width: 100%
                    }

                    html[data-cc-page="group-offers"] .guest-popover {
                        width: 430px
                    }

                    html[data-cc-page="group-offers"] .brand-story-grid {
                        gap: 60px
                    }

                    html[data-cc-page="group-offers"] .brand-story-copy {
                        padding-left: 20px
                    }

                    html[data-cc-page="group-offers"] .brand-story-visual {
                        min-height: 560px
                    }

                    html[data-cc-page="group-offers"] .brand-story-main-image {
                        height: 510px
                    }

                    html[data-cc-page="group-offers"] .news-card {
                        width: 360px
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter {
                        gap: 42px;
                        padding: 42px
                    }

                    html[data-cc-page="group-offers"] .footer-grid {
                        gap: 45px
                    }

                    html[data-cc-page="group-offers"] .manifesto-grid {
                        gap: 70px
                    }

                    html[data-cc-page="group-offers"] .resort-story {
                        height: 535px;
                        flex-basis: 80vw
                    }

                    html[data-cc-page="group-offers"] .offer-mosaic {
                        grid-template-rows: 270px 270px
                    }

                    html[data-cc-page="group-offers"] .gather-scenes {
                        gap: 20px
                    }

                    html[data-cc-page="group-offers"] .gather-scene, html[data-cc-page="group-offers"] .gather-scene.secondary {
                        min-height: 590px
                    }

                    html[data-cc-page="group-offers"] .gather-scene-content {
                        left: 32px;
                        right: 32px;
                        bottom: 32px
                    }

                    html[data-cc-page="group-offers"] .gather-footer {
                        padding: 30px 32px
                    }

                    html[data-cc-page="group-offers"] .footer-grid {
                        grid-template-columns: 1.15fr 1fr 1fr;
                        gap: 45px
                    }

                        html[data-cc-page="group-offers"] .footer-grid > div:last-child {
                            grid-column: 2/4
                        }

                    html[data-cc-page="group-offers"] .footer-newsletter {
                        grid-template-columns: 1fr 1fr
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-offers"] body {
                        padding-bottom: 56px
                    }

                    html[data-cc-page="group-offers"] .container {
                        width: calc(100% - 30px)
                    }

                    html[data-cc-page="group-offers"] .header {
                        position: absolute;
                        background: rgba(255,255,255,.97);
                        color: #111
                    }

                    html[data-cc-page="group-offers"] .header-top, html[data-cc-page="group-offers"] .menu, html[data-cc-page="group-offers"] .header-book {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .header-main {
                        height: 72px
                    }

                    html[data-cc-page="group-offers"] .brand-light {
                        display: none !important
                    }

                    html[data-cc-page="group-offers"] .brand-dark {
                        display: block !important
                    }

                    html[data-cc-page="group-offers"] .brand img {
                        width: 125px;
                        max-height: 52px
                    }

                    html[data-cc-page="group-offers"] .mobile-trigger {
                        display: block
                    }

                    html[data-cc-page="group-offers"] .hero {
                        height: 700px;
                        min-height: 700px;
                        padding-top: 72px
                    }

                    html[data-cc-page="group-offers"] .hero-content {
                        padding-bottom: 92px
                    }

                    html[data-cc-page="group-offers"] .hero-copy {
                        max-width: 90%
                    }

                    html[data-cc-page="group-offers"] .hero-title {
                        font-size: 52px
                    }

                    html[data-cc-page="group-offers"] .hero-subtitle {
                        font-size: 13px;
                        max-width: 360px
                    }

                    html[data-cc-page="group-offers"] .hero-count {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .hero-control {
                        right: 15px;
                        bottom: 18px
                    }

                    html[data-cc-page="group-offers"] .hero-arrow {
                        width: 44px;
                        height: 44px
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .brand-story {
                        padding: 105px 0 110px
                    }

                        html[data-cc-page="group-offers"] .brand-story::before {
                            font-size: 230px;
                            top: 55px
                        }

                    html[data-cc-page="group-offers"] .brand-story-grid {
                        grid-template-columns: 1fr;
                        gap: 55px
                    }

                    html[data-cc-page="group-offers"] .brand-story-copy {
                        padding-left: 0
                    }

                        html[data-cc-page="group-offers"] .brand-story-copy h2 {
                            font-size: 58px
                        }

                    html[data-cc-page="group-offers"] .brand-story-visual {
                        min-height: 540px
                    }

                    html[data-cc-page="group-offers"] .brand-story-main-image {
                        width: 94%;
                        height: 500px
                    }

                    html[data-cc-page="group-offers"] .brand-story-note {
                        left: 6%;
                        bottom: 34px;
                        width: 76%
                    }

                    html[data-cc-page="group-offers"] .newsroom {
                        padding: 100px 0 110px
                    }

                    html[data-cc-page="group-offers"] .newsroom-head {
                        grid-template-columns: 1fr;
                        gap: 25px
                    }

                        html[data-cc-page="group-offers"] .newsroom-head p {
                            margin: 0
                        }

                    html[data-cc-page="group-offers"] .newsroom-head-actions {
                        justify-content: flex-start
                    }

                    html[data-cc-page="group-offers"] .news-card {
                        width: 360px;
                        min-width: 360px
                    }

                    html[data-cc-page="group-offers"] .resorts {
                        padding-bottom: 100px
                    }

                    html[data-cc-page="group-offers"] .resort-head {
                        padding: 85px 0 40px
                    }

                        html[data-cc-page="group-offers"] .resort-head .small-title {
                            font-size: 40px
                        }

                    html[data-cc-page="group-offers"] .resort-story {
                        height: 505px;
                        flex-basis: 88vw
                    }

                    html[data-cc-page="group-offers"] .resort-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .story-copy {
                        left: 28px;
                        right: 28px;
                        bottom: 28px;
                        display: block
                    }

                        html[data-cc-page="group-offers"] .story-copy h3 {
                            font-size: 48px
                        }

                        html[data-cc-page="group-offers"] .story-copy p {
                            margin-top: 14px
                        }

                    html[data-cc-page="group-offers"] .story-link {
                        top: 20px;
                        right: 20px
                    }

                    html[data-cc-page="group-offers"] .story-index {
                        top: 20px;
                        left: 20px
                    }

                    html[data-cc-page="group-offers"] .loyalty {
                        min-height: 620px;
                        background-attachment: scroll
                    }

                    html[data-cc-page="group-offers"] .loyalty-ring {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy h2 {
                        font-size: 56px
                    }

                    html[data-cc-page="group-offers"] .offers {
                        padding: 105px 0
                    }

                    html[data-cc-page="group-offers"] .offers-intro {
                        grid-template-columns: 1fr;
                        gap: 30px;
                        margin-bottom: 42px
                    }

                        html[data-cc-page="group-offers"] .offers-intro h2 {
                            font-size: 54px
                        }

                    html[data-cc-page="group-offers"] .offers-intro-copy {
                        margin: 0
                    }

                    html[data-cc-page="group-offers"] .offer-mosaic {
                        grid-template-columns: 1fr;
                        grid-template-rows: none
                    }

                    html[data-cc-page="group-offers"] .offer-tile, html[data-cc-page="group-offers"] .offer-tile.featured {
                        grid-row: auto;
                        height: 430px
                    }

                    html[data-cc-page="group-offers"] .featured .offer-content h3, html[data-cc-page="group-offers"] .offer-content h3 {
                        font-size: 42px
                    }

                    html[data-cc-page="group-offers"] .offer-strip {
                        grid-template-columns: 1fr 1fr
                    }

                        html[data-cc-page="group-offers"] .offer-strip .offer-tile {
                            height: 280px
                        }

                    html[data-cc-page="group-offers"] .gather {
                        padding: 105px 0
                    }

                    html[data-cc-page="group-offers"] .gather-head {
                        grid-template-columns: 1fr;
                        gap: 26px;
                        margin-bottom: 40px
                    }

                        html[data-cc-page="group-offers"] .gather-head h2 {
                            font-size: 56px
                        }

                    html[data-cc-page="group-offers"] .gather-head-copy {
                        margin: 0
                    }

                    html[data-cc-page="group-offers"] .gather-scenes {
                        grid-template-columns: 1fr
                    }

                    html[data-cc-page="group-offers"] .gather-scene, html[data-cc-page="group-offers"] .gather-scene.secondary {
                        min-height: 520px
                    }

                    html[data-cc-page="group-offers"] .gather-scene-content {
                        left: 28px;
                        right: 28px;
                        bottom: 28px
                    }

                    html[data-cc-page="group-offers"] .gather-footer {
                        align-items: flex-start;
                        flex-direction: column
                    }

                    html[data-cc-page="group-offers"] .gather-footer-copy {
                        align-items: flex-start;
                        flex-direction: column;
                        gap: 10px
                    }

                    html[data-cc-page="group-offers"] .social {
                        padding: 95px 0 100px
                    }

                    html[data-cc-page="group-offers"] .social-head {
                        display: block
                    }

                        html[data-cc-page="group-offers"] .social-head h2 {
                            font-size: 52px
                        }

                    html[data-cc-page="group-offers"] .social-head-right {
                        margin-top: 22px;
                        justify-content: space-between;
                        align-items: center
                    }

                    html[data-cc-page="group-offers"] .social-head p {
                        text-align: left;
                        margin: 0
                    }

                    html[data-cc-page="group-offers"] .social-viewport {
                        padding-left: 15px;
                        padding-right: 15px
                    }

                    html[data-cc-page="group-offers"] .social-card {
                        width: 260px;
                        height: 350px
                    }

                        html[data-cc-page="group-offers"] .social-card.wide {
                            width: 390px
                        }

                        html[data-cc-page="group-offers"] .social-card.short {
                            height: 290px;
                            margin-top: 30px
                        }

                    html[data-cc-page="group-offers"] .social-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter {
                        grid-template-columns: 1fr;
                        gap: 28px;
                        padding: 36px 32px;
                        margin-bottom: 55px
                    }

                    html[data-cc-page="group-offers"] .footer-grid {
                        grid-template-columns: 1fr 1fr
                    }

                        html[data-cc-page="group-offers"] .footer-grid > div:last-child {
                            grid-column: auto
                        }

                    html[data-cc-page="group-offers"] .mobile-book {
                        position: fixed;
                        left: 0;
                        right: 0;
                        bottom: 0;
                        height: 56px;
                        z-index: 400;
                        background: var(--pink);
                        color: #fff;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        border: 0;
                        font-size: 12px;
                        font-weight: 600;
                        text-transform: uppercase;
                        letter-spacing: .12em
                    }

                    html[data-cc-page="group-offers"] .scrolltop {
                        bottom: 70px
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-offers"] .hero {
                        height: 640px;
                        min-height: 640px
                    }

                    html[data-cc-page="group-offers"] .hero-content {
                        padding-bottom: 82px
                    }

                    html[data-cc-page="group-offers"] .hero-title {
                        font-size: 43px
                    }

                    html[data-cc-page="group-offers"] .hero-copy {
                        max-width: 100%
                    }

                    html[data-cc-page="group-offers"] .hero-kicker {
                        font-size: 9px
                    }

                    html[data-cc-page="group-offers"] .hero-subtitle {
                        font-size: 12px;
                        line-height: 1.6
                    }

                    html[data-cc-page="group-offers"] .hero-actions .btn {
                        min-height: 44px;
                        padding: 0 18px;
                        font-size: 10px
                    }

                    html[data-cc-page="group-offers"] .brand-story::before {
                        font-size: 170px
                    }

                    html[data-cc-page="group-offers"] .brand-story-copy h2 {
                        font-size: 46px
                    }

                    html[data-cc-page="group-offers"] .brand-story-copy p {
                        font-size: 13px
                    }

                    html[data-cc-page="group-offers"] .brand-story-visual {
                        min-height: 455px
                    }

                    html[data-cc-page="group-offers"] .brand-story-main-image {
                        width: 100%;
                        height: 420px
                    }

                    html[data-cc-page="group-offers"] .brand-story-note {
                        left: 0;
                        bottom: 25px;
                        width: 88%;
                        min-width: 0;
                        padding: 24px 34px 24px 22px
                    }

                        html[data-cc-page="group-offers"] .brand-story-note strong {
                            font-size: 29px
                        }

                    html[data-cc-page="group-offers"] .brand-story-stamp {
                        width: 94px;
                        height: 94px;
                        right: 8px
                    }

                        html[data-cc-page="group-offers"] .brand-story-stamp strong {
                            font-size: 31px
                        }

                    html[data-cc-page="group-offers"] .newsroom-head h2 {
                        font-size: 46px
                    }

                    html[data-cc-page="group-offers"] .news-card {
                        width: 84vw;
                        min-width: 280px
                    }

                    html[data-cc-page="group-offers"] .news-card-image {
                        height: 230px
                    }

                    html[data-cc-page="group-offers"] .news-card-body {
                        padding: 23px
                    }

                    html[data-cc-page="group-offers"] .news-card h3 {
                        font-size: 29px
                    }

                    html[data-cc-page="group-offers"] .news-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .resort-head {
                        align-items: flex-end
                    }

                        html[data-cc-page="group-offers"] .resort-head .small-title {
                            font-size: 34px
                        }

                    html[data-cc-page="group-offers"] .resort-nav button {
                        width: 42px;
                        height: 42px
                    }

                    html[data-cc-page="group-offers"] .resort-story {
                        height: 470px;
                        flex-basis: 92vw
                    }

                    html[data-cc-page="group-offers"] .resort-controls-bottom {
                        grid-template-columns: 1fr auto
                    }

                    html[data-cc-page="group-offers"] .resort-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .story-copy h3 {
                        font-size: 40px
                    }

                    html[data-cc-page="group-offers"] .story-copy p {
                        font-size: 11px;
                        max-width: 270px
                    }

                    html[data-cc-page="group-offers"] .story-link {
                        width: 46px;
                        height: 46px
                    }

                    html[data-cc-page="group-offers"] .loyalty {
                        min-height: 560px
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy h2 {
                        font-size: 46px
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy p {
                        font-size: 13px
                    }

                    html[data-cc-page="group-offers"] .offers-intro h2 {
                        font-size: 44px
                    }

                    html[data-cc-page="group-offers"] .offer-tile, html[data-cc-page="group-offers"] .offer-tile.featured {
                        height: 390px
                    }

                    html[data-cc-page="group-offers"] .offer-strip {
                        grid-template-columns: 1fr
                    }

                        html[data-cc-page="group-offers"] .offer-strip .offer-tile {
                            height: 330px
                        }

                    html[data-cc-page="group-offers"] .offer-content h3, html[data-cc-page="group-offers"] .featured .offer-content h3 {
                        font-size: 38px
                    }

                    html[data-cc-page="group-offers"] .gather-head h2 {
                        font-size: 46px
                    }

                    html[data-cc-page="group-offers"] .gather-scene, html[data-cc-page="group-offers"] .gather-scene.secondary {
                        min-height: 460px
                    }

                    html[data-cc-page="group-offers"] .gather-scene-content {
                        left: 22px;
                        right: 22px;
                        bottom: 24px
                    }

                        html[data-cc-page="group-offers"] .gather-scene-content h3 {
                            font-size: 40px
                        }

                    html[data-cc-page="group-offers"] .gather-footer {
                        padding: 26px 22px
                    }

                        html[data-cc-page="group-offers"] .gather-footer strong {
                            font-size: 27px
                        }

                    html[data-cc-page="group-offers"] .social-head h2 {
                        font-size: 44px
                    }

                    html[data-cc-page="group-offers"] .social-head-right {
                        align-items: flex-start
                    }

                        html[data-cc-page="group-offers"] .social-head-right .media-nav {
                            flex: 0 0 auto
                        }

                    html[data-cc-page="group-offers"] .social-card {
                        width: 230px;
                        height: 320px
                    }

                        html[data-cc-page="group-offers"] .social-card.wide {
                            width: 330px
                        }

                    html[data-cc-page="group-offers"] .social-controls {
                        grid-template-columns: 1fr
                    }

                    html[data-cc-page="group-offers"] .social-drag-hint {
                        display: none
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter {
                        margin-inline: -15px;
                        padding: 34px 22px
                    }

                        html[data-cc-page="group-offers"] .footer-newsletter h2 {
                            font-size: 38px
                        }

                    html[data-cc-page="group-offers"] .newsletter-form {
                        min-height: 54px
                    }

                        html[data-cc-page="group-offers"] .newsletter-form button {
                            padding: 0 16px
                        }

                    html[data-cc-page="group-offers"] .footer-grid {
                        grid-template-columns: 1fr;
                        gap: 36px
                    }

                    html[data-cc-page="group-offers"] .footer {
                        padding-top: 0
                    }

                    html[data-cc-page="group-offers"] .footer-bottom {
                        display: block
                    }

                        html[data-cc-page="group-offers"] .footer-bottom nav {
                            margin-top: 12px;
                            gap: 13px
                        }
                }

                @media(prefers-reduced-motion:reduce) {
                    html[data-cc-page="group-offers"], html[data-cc-page="group-offers"] * {
                        scroll-behavior: auto !important
                    }

                    html[data-cc-page="group-offers"] .reveal, html[data-cc-page="group-offers"] .reveal-left, html[data-cc-page="group-offers"] .reveal-right {
                        opacity: 1 !important;
                        transform: none !important;
                        filter: none !important;
                        transition: none !important
                    }

                    html[data-cc-page="group-offers"] .hero-slide img {
                        animation: none !important;
                        transition: none !important
                    }

                    html[data-cc-page="group-offers"] .hero-copy * {
                        animation: none !important
                    }

                    html[data-cc-page="group-offers"] .brand-story-main-image img {
                        transform: none !important
                    }
                }

                /* =====================================================
           Image Asset Safety
        ===================================================== */
                html[data-cc-page="group-offers"] img[data-asset-fallback-used="true"] {
                    opacity: 1 !important;
                    visibility: visible !important;
                }


                /* =====================================================
           V8 REVIEW CHANGES
        ===================================================== */

                /* Premium refill hover: lift + animated fill + brightness */
                html[data-cc-page="group-offers"] .btn, html[data-cc-page="group-offers"] .booking-submit, html[data-cc-page="group-offers"] .guest-done, html[data-cc-page="group-offers"] .newsletter-form button, html[data-cc-page="group-offers"] .hero-arrow, html[data-cc-page="group-offers"] .resort-nav button, html[data-cc-page="group-offers"] .resort-bottom-nav button, html[data-cc-page="group-offers"] .media-nav button, html[data-cc-page="group-offers"] .news-bottom-nav button {
                    transition: background-size .42s cubic-bezier(.22,1,.36,1),color .28s ease,border-color .28s ease,transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease !important
                }

                html[data-cc-page="group-offers"] .btn-pink, html[data-cc-page="group-offers"] .booking-submit {
                    background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                    background-repeat: no-repeat;
                    background-position: left top;
                    background-size: 0 100%;
                    background-color: var(--pink) !important
                }

                html[data-cc-page="group-offers"] .btn-white {
                    background-image: linear-gradient(90deg,var(--pink),var(--pink));
                    background-repeat: no-repeat;
                    background-position: left top;
                    background-size: 0 100%;
                    background-color: #fff !important;
                    color: #111
                }

                html[data-cc-page="group-offers"] .btn-outline {
                    background-image: linear-gradient(90deg,var(--pink),var(--pink));
                    background-repeat: no-repeat;
                    background-position: left top;
                    background-size: 0 100%
                }

                html[data-cc-page="group-offers"] .btn:hover, html[data-cc-page="group-offers"] .booking-submit:hover, html[data-cc-page="group-offers"] .guest-done:hover, html[data-cc-page="group-offers"] .newsletter-form button:hover, html[data-cc-page="group-offers"] .hero-arrow:hover, html[data-cc-page="group-offers"] .resort-nav button:hover, html[data-cc-page="group-offers"] .resort-bottom-nav button:hover, html[data-cc-page="group-offers"] .media-nav button:hover, html[data-cc-page="group-offers"] .news-bottom-nav button:hover {
                    transform: translateY(-3px);
                    filter: brightness(1.08);
                    box-shadow: 0 12px 28px rgba(0,0,0,.13)
                }

                html[data-cc-page="group-offers"] .btn-pink:hover, html[data-cc-page="group-offers"] .booking-submit:hover, html[data-cc-page="group-offers"] .btn-white:hover, html[data-cc-page="group-offers"] .btn-outline:hover {
                    background-size: 100% 100% !important
                }

                html[data-cc-page="group-offers"] .btn-white:hover, html[data-cc-page="group-offers"] .btn-outline:hover {
                    color: #fff !important;
                    border-color: var(--pink) !important
                }

                /* Sticky horizontal logo */
                html[data-cc-page="group-offers"] .header.sticky .brand {
                    width: 205px
                }

                html[data-cc-page="group-offers"] .header.sticky .brand-dark {
                    width: 190px;
                    max-height: 46px;
                    object-fit: contain;
                    object-position: left center
                }

                /* Booking dock - visible above the fold and remains available while browsing */
                html[data-cc-page="group-offers"] .booking-shell {
                    position: sticky;
                    top: 102px;
                    z-index: 92;
                    margin-top: -62px
                }

                html[data-cc-page="group-offers"] .booking-card {
                    transition: box-shadow .3s ease,transform .3s ease
                }

                html[data-cc-page="group-offers"] .booking-shell.is-stuck .booking-card {
                    box-shadow: 0 14px 38px rgba(0,0,0,.16)
                }

                /* Offers - black stage with cinematic image reveal every time the tile re-enters view */
                html[data-cc-page="group-offers"] .offer-tile {
                    background: #090909;
                    isolation: isolate
                }

                    html[data-cc-page="group-offers"] .offer-tile img {
                        clip-path: inset(0 100% 0 0);
                        transform: scale(1.08);
                        transition: clip-path 1.12s cubic-bezier(.77,0,.18,1),transform 1.45s cubic-bezier(.22,1,.36,1) !important;
                        will-change: clip-path,transform
                    }

                    html[data-cc-page="group-offers"] .offer-tile:nth-child(even) img, html[data-cc-page="group-offers"] .offer-strip .offer-tile:nth-child(odd) img {
                        clip-path: inset(0 0 0 100%)
                    }

                    html[data-cc-page="group-offers"] .offer-tile.in-view img {
                        clip-path: inset(0 0 0 0);
                        transform: scale(1)
                    }

                    html[data-cc-page="group-offers"] .offer-tile::before {
                        content: "";
                        position: absolute;
                        inset: 0;
                        background: #090909;
                        z-index: 1;
                        transform: scaleX(1);
                        transform-origin: right center;
                        transition: transform 1.08s cubic-bezier(.77,0,.18,1);
                        pointer-events: none
                    }

                    html[data-cc-page="group-offers"] .offer-tile:nth-child(even)::before, html[data-cc-page="group-offers"] .offer-strip .offer-tile:nth-child(odd)::before {
                        transform-origin: left center
                    }

                    html[data-cc-page="group-offers"] .offer-tile.in-view::before {
                        transform: scaleX(0)
                    }

                    html[data-cc-page="group-offers"] .offer-tile::after, html[data-cc-page="group-offers"] .offer-content, html[data-cc-page="group-offers"] .offer-arrow {
                        z-index: 2
                    }

                    html[data-cc-page="group-offers"] .offer-tile:hover img {
                        transform: scale(1.035)
                    }

                /* Drag rails: disable native image/link drag and make the navigation line a real control */
                html[data-cc-page="group-offers"] .social-card, html[data-cc-page="group-offers"] .news-card {
                    cursor: grab
                }

                html[data-cc-page="group-offers"] .social-viewport.is-dragging, html[data-cc-page="group-offers"] .news-viewport.is-dragging, html[data-cc-page="group-offers"] .social-viewport.is-dragging .social-card, html[data-cc-page="group-offers"] .news-viewport.is-dragging .news-card {
                    cursor: grabbing;
                    scroll-snap-type: none !important
                }

                html[data-cc-page="group-offers"] .social-card img, html[data-cc-page="group-offers"] .social-card video, html[data-cc-page="group-offers"] .news-card img {
                    pointer-events: none;
                    -webkit-user-drag: none;
                    user-select: none
                }

                html[data-cc-page="group-offers"] .social-controls {
                    display: block;
                    margin-top: 28px
                }

                html[data-cc-page="group-offers"] .social-progress, html[data-cc-page="group-offers"] .news-progress {
                    height: 22px;
                    background: transparent;
                    position: relative;
                    overflow: visible;
                    cursor: pointer;
                    touch-action: none;
                    display: flex;
                    align-items: center
                }

                    html[data-cc-page="group-offers"] .social-progress::before, html[data-cc-page="group-offers"] .news-progress::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        height: 2px;
                        background: rgba(255,255,255,.20)
                    }

                    html[data-cc-page="group-offers"] .news-progress::before {
                        background: #d6d3d4
                    }

                    html[data-cc-page="group-offers"] .social-progress span, html[data-cc-page="group-offers"] .news-progress span {
                        position: absolute;
                        left: 0;
                        top: 50%;
                        height: 4px;
                        transform: translateY(-50%);
                        background: var(--pink);
                        transition: left .08s linear,width .18s ease,transform .08s linear;
                        border-radius: 10px
                    }

                    html[data-cc-page="group-offers"] .social-progress:hover span, html[data-cc-page="group-offers"] .news-progress:hover span {
                        height: 6px
                    }

                html[data-cc-page="group-offers"] .news-controls {
                    grid-template-columns: 1fr auto;
                    gap: 22px
                }

                html[data-cc-page="group-offers"] .resort-controls-bottom {
                    grid-template-columns: 1fr auto
                }

                /* Footer - restrained editorial layout, no floating/gradient card */
                html[data-cc-page="group-offers"] .footer {
                    background: #0d0d0e;
                    padding: 0 0 26px
                }

                    html[data-cc-page="group-offers"] .footer::before, html[data-cc-page="group-offers"] .footer::after {
                        display: none
                    }

                html[data-cc-page="group-offers"] .footer-newsletter {
                    transform: none;
                    background: transparent;
                    display: grid;
                    grid-template-columns: .8fr 1.2fr;
                    gap: 90px;
                    align-items: end;
                    padding: 62px 0 52px;
                    margin: 0;
                    border-top: 1px solid rgba(255,255,255,.13);
                    border-bottom: 1px solid rgba(255,255,255,.13)
                }

                    html[data-cc-page="group-offers"] .footer-newsletter .eyebrow {
                        color: var(--pink);
                        margin-bottom: 15px
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter h2 {
                        font-size: clamp(38px,4vw,58px);
                        line-height: 1.02
                    }

                html[data-cc-page="group-offers"] .newsletter-side {
                    display: grid;
                    grid-template-columns: minmax(190px,.72fr) minmax(360px,1.28fr);
                    column-gap: 40px;
                    align-items: end
                }

                    html[data-cc-page="group-offers"] .newsletter-side > p {
                        font-size: 12px;
                        line-height: 1.75;
                        color: rgba(255,255,255,.56);
                        margin: 0 0 8px;
                        max-width: 340px
                    }

                html[data-cc-page="group-offers"] .newsletter-form {
                    min-height: 52px;
                    border: 1px solid rgba(255,255,255,.24);
                    background: transparent;
                    padding-left: 4px
                }

                    html[data-cc-page="group-offers"] .newsletter-form:focus-within {
                        border-color: rgba(255,255,255,.55)
                    }

                    html[data-cc-page="group-offers"] .newsletter-form input {
                        padding: 0 16px;
                        color: #fff
                    }

                    html[data-cc-page="group-offers"] .newsletter-form button {
                        background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                        background-repeat: no-repeat;
                        background-position: left top;
                        background-size: 0 100%;
                        background-color: var(--pink);
                        color: #fff;
                        min-width: 142px
                    }

                        html[data-cc-page="group-offers"] .newsletter-form button:hover {
                            background-size: 100% 100%;
                            color: #fff
                        }

                html[data-cc-page="group-offers"] .newsletter-note {
                    grid-column: 2;
                    font-size: 9px !important;
                    color: rgba(255,255,255,.38) !important;
                    margin: 9px 0 0 !important
                }

                html[data-cc-page="group-offers"] .footer-main {
                    display: grid;
                    grid-template-columns: 1.05fr 1.8fr;
                    gap: 100px;
                    padding: 64px 0 58px
                }

                html[data-cc-page="group-offers"] .footer-identity {
                    max-width: 330px
                }

                html[data-cc-page="group-offers"] .footer-logo {
                    width: 165px
                }

                html[data-cc-page="group-offers"] .footer-brand-copy {
                    margin-top: 24px;
                    max-width: 310px
                }

                html[data-cc-page="group-offers"] .footer-grid {
                    display: grid;
                    grid-template-columns: repeat(3,1fr);
                    gap: 60px;
                    padding: 0
                }

                    html[data-cc-page="group-offers"] .footer-grid > div:last-child {
                        grid-column: auto
                    }

                html[data-cc-page="group-offers"] .footer h4 {
                    margin-bottom: 20px
                }

                html[data-cc-page="group-offers"] .footer-location {
                    margin-top: 0 !important
                }

                html[data-cc-page="group-offers"] .green-star {
                    width: 78px;
                    margin-top: 20px
                }

                html[data-cc-page="group-offers"] .social-icons {
                    margin-top: 28px
                }

                    html[data-cc-page="group-offers"] .social-icons a {
                        width: 38px;
                        height: 38px
                    }

                html[data-cc-page="group-offers"] .footer-bottom {
                    padding-top: 22px
                }

                /* Replayed motion remains visible and resets each time elements leave the viewport */
                html[data-cc-page="group-offers"] .reveal, html[data-cc-page="group-offers"] .reveal-left, html[data-cc-page="group-offers"] .reveal-right {
                    transition-duration: 1.05s,1.15s,.95s
                }

                    html[data-cc-page="group-offers"] .reveal:not(.in-view), html[data-cc-page="group-offers"] .reveal-left:not(.in-view), html[data-cc-page="group-offers"] .reveal-right:not(.in-view) {
                        will-change: opacity,transform,filter
                    }

                @media(max-width:1100px) {
                    html[data-cc-page="group-offers"] .header.sticky .brand {
                        width: 180px
                    }

                    html[data-cc-page="group-offers"] .header.sticky .brand-dark {
                        width: 168px
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        top: 102px;
                        margin-top: -62px
                    }

                    html[data-cc-page="group-offers"] .booking-form {
                        grid-template-columns: 1.1fr 1fr 1fr 1.25fr;
                        gap: 9px
                    }

                        html[data-cc-page="group-offers"] .booking-form > .field:nth-of-type(5) {
                            grid-column: 1/3
                        }

                    html[data-cc-page="group-offers"] .booking-submit {
                        grid-column: 3/5
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter {
                        gap: 55px
                    }

                    html[data-cc-page="group-offers"] .newsletter-side {
                        grid-template-columns: 1fr
                    }

                    html[data-cc-page="group-offers"] .newsletter-note {
                        grid-column: 1
                    }

                    html[data-cc-page="group-offers"] .footer-main {
                        gap: 60px
                    }

                    html[data-cc-page="group-offers"] .footer-grid {
                        gap: 38px
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-offers"] body {
                        padding-bottom: 0
                    }

                    html[data-cc-page="group-offers"] .header.sticky .brand, html[data-cc-page="group-offers"] .brand {
                        width: 175px
                    }

                    html[data-cc-page="group-offers"] .header.sticky .brand-dark, html[data-cc-page="group-offers"] .brand-dark {
                        width: 165px !important;
                        max-height: 42px !important
                    }

                    html[data-cc-page="group-offers"] .hero {
                        height: 760px;
                        min-height: 760px
                    }

                    html[data-cc-page="group-offers"] .hero-content {
                        padding-bottom: 300px
                    }

                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 255px
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        display: block !important;
                        position: sticky;
                        top: 72px;
                        z-index: 94;
                        margin-top: -238px;
                        margin-bottom: 34px
                    }

                    html[data-cc-page="group-offers"] .booking-card {
                        padding: 13px;
                        border-radius: 0;
                        box-shadow: 0 16px 38px rgba(0,0,0,.18)
                    }

                    html[data-cc-page="group-offers"] .booking-form {
                        grid-template-columns: 1fr 1fr;
                        gap: 8px
                    }

                        html[data-cc-page="group-offers"] .booking-form > .field:nth-of-type(1), html[data-cc-page="group-offers"] .booking-form > .field:nth-of-type(4) {
                            grid-column: 1/3
                        }

                        html[data-cc-page="group-offers"] .booking-form > .field:nth-of-type(5) {
                            grid-column: 1/2
                        }

                    html[data-cc-page="group-offers"] .booking-submit {
                        grid-column: 2/3;
                        height: 48px;
                        align-self: end
                    }

                    html[data-cc-page="group-offers"] .field label {
                        font-size: 8px;
                        margin-bottom: 5px
                    }

                    html[data-cc-page="group-offers"] .control, html[data-cc-page="group-offers"] .guest-trigger {
                        height: 46px
                    }

                    html[data-cc-page="group-offers"] .booking-submit {
                        height: 46px
                    }

                    html[data-cc-page="group-offers"] .guest-popover {
                        position: fixed;
                        left: 15px;
                        right: 15px;
                        top: auto;
                        bottom: 18px;
                        width: auto;
                        max-width: none;
                        max-height: 72vh;
                        overflow: auto;
                        z-index: 520
                    }

                        html[data-cc-page="group-offers"] .guest-popover::before {
                            display: none
                        }

                    html[data-cc-page="group-offers"] .rooms-container {
                        max-height: 46vh
                    }

                    html[data-cc-page="group-offers"] .mobile-book {
                        display: none !important
                    }

                    html[data-cc-page="group-offers"] .social-controls {
                        margin-top: 20px
                    }

                    html[data-cc-page="group-offers"] .news-controls {
                        grid-template-columns: 1fr auto
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter {
                        grid-template-columns: 1fr;
                        gap: 25px;
                        padding: 48px 0 42px
                    }

                    html[data-cc-page="group-offers"] .newsletter-side {
                        grid-template-columns: 1fr;
                        gap: 18px
                    }

                    html[data-cc-page="group-offers"] .newsletter-note {
                        grid-column: 1
                    }

                    html[data-cc-page="group-offers"] .footer-main {
                        grid-template-columns: 1fr;
                        gap: 48px;
                        padding: 50px 0
                    }

                    html[data-cc-page="group-offers"] .footer-grid {
                        grid-template-columns: repeat(3,1fr);
                        gap: 28px
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-offers"] .header.sticky .brand, html[data-cc-page="group-offers"] .brand {
                        width: 160px
                    }

                    html[data-cc-page="group-offers"] .header.sticky .brand-dark, html[data-cc-page="group-offers"] .brand-dark {
                        width: 150px !important
                    }

                    html[data-cc-page="group-offers"] .hero {
                        height: 790px;
                        min-height: 790px
                    }

                    html[data-cc-page="group-offers"] .hero-content {
                        padding-bottom: 335px
                    }

                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 290px
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        top: 72px;
                        margin-top: -280px;
                        margin-bottom: 30px
                    }

                    html[data-cc-page="group-offers"] .booking-card {
                        padding: 11px
                    }

                    html[data-cc-page="group-offers"] .booking-form {
                        grid-template-columns: 1fr 1fr;
                        gap: 7px
                    }

                        html[data-cc-page="group-offers"] .booking-form > .field:nth-of-type(1), html[data-cc-page="group-offers"] .booking-form > .field:nth-of-type(4) {
                            grid-column: 1/3
                        }

                        html[data-cc-page="group-offers"] .booking-form > .field:nth-of-type(5) {
                            grid-column: 1/2
                        }

                    html[data-cc-page="group-offers"] .booking-submit {
                        grid-column: 2/3;
                        padding: 0 10px;
                        font-size: 9px
                    }

                    html[data-cc-page="group-offers"] .control input, html[data-cc-page="group-offers"] .control select {
                        font-size: 10px;
                        padding-left: 34px
                    }

                    html[data-cc-page="group-offers"] .guest-trigger {
                        font-size: 10px;
                        padding-left: 34px
                    }

                    html[data-cc-page="group-offers"] .control > i {
                        left: 11px
                    }

                    html[data-cc-page="group-offers"] .control .down {
                        right: 8px
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter h2 {
                        font-size: 40px
                    }

                    html[data-cc-page="group-offers"] .newsletter-form {
                        min-height: 50px
                    }

                        html[data-cc-page="group-offers"] .newsletter-form button {
                            min-width: 118px;
                            padding: 0 12px
                        }

                    html[data-cc-page="group-offers"] .footer-grid {
                        grid-template-columns: 1fr 1fr;
                        gap: 36px 28px
                    }

                        html[data-cc-page="group-offers"] .footer-grid > div:last-child {
                            grid-column: 1/3
                        }

                    html[data-cc-page="group-offers"] .footer-main {
                        padding-bottom: 44px
                    }
                }


                /* =====================================================
           V9 BOOKING POSITION FIX - ABOVE THE FOLD, NEVER STICKY
           ===================================================== */
                html[data-cc-page="group-offers"] .booking-shell {
                    position: relative !important;
                    top: auto !important;
                    z-index: 30 !important;
                    margin-top: -102px !important;
                    margin-bottom: 48px !important;
                }

                    html[data-cc-page="group-offers"] .booking-shell .booking-card, html[data-cc-page="group-offers"] .booking-shell .booking-card.reveal {
                        opacity: 1 !important;
                        transform: none !important;
                        filter: none !important;
                        visibility: visible !important;
                    }

                    html[data-cc-page="group-offers"] .booking-shell.is-stuck .booking-card {
                        box-shadow: 0 20px 55px rgba(0,0,0,.14) !important
                    }

                @media(max-width:1100px) {
                    html[data-cc-page="group-offers"] .booking-shell {
                        position: relative !important;
                        top: auto !important;
                        margin-top: -154px !important;
                        margin-bottom: 46px !important;
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-offers"] .hero {
                        height: 100svh !important;
                        min-height: 700px !important
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        display: block !important;
                        position: relative !important;
                        top: auto !important;
                        margin-top: -238px !important;
                        margin-bottom: 42px !important;
                        z-index: 30 !important;
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-offers"] .hero {
                        height: 100svh !important;
                        min-height: 680px !important
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        position: relative !important;
                        top: auto !important;
                        margin-top: -270px !important;
                        margin-bottom: 38px !important;
                    }
                }



                /* V10 - True mouse drag for Seen at Charmillion + News */
                html[data-cc-page="group-offers"] .social-viewport, html[data-cc-page="group-offers"] .news-viewport {
                    cursor: grab;
                    user-select: none;
                    -webkit-user-select: none;
                    overscroll-behavior-x: contain;
                }

                    html[data-cc-page="group-offers"] .social-viewport.is-dragging, html[data-cc-page="group-offers"] .news-viewport.is-dragging {
                        cursor: grabbing !important;
                        scroll-behavior: auto !important;
                        scroll-snap-type: none !important;
                    }

                html[data-cc-page="group-offers"] .social-track, html[data-cc-page="group-offers"] .news-track {
                    user-select: none;
                    -webkit-user-select: none
                }

                html[data-cc-page="group-offers"] .social-card, html[data-cc-page="group-offers"] .news-card, html[data-cc-page="group-offers"] .social-card img, html[data-cc-page="group-offers"] .social-card video, html[data-cc-page="group-offers"] .news-card img {
                    -webkit-user-drag: none;
                    user-drag: none;
                }

                html[data-cc-page="group-offers"] .social-progress, html[data-cc-page="group-offers"] .news-progress {
                    height: 20px;
                    background: transparent;
                    overflow: visible;
                    display: flex;
                    align-items: center;
                    cursor: pointer;
                    touch-action: none;
                    position: relative;
                }

                    html[data-cc-page="group-offers"] .social-progress::before, html[data-cc-page="group-offers"] .news-progress::before {
                        content: "";
                        position: absolute;
                        left: 0;
                        right: 0;
                        height: 2px;
                        background: rgba(255,255,255,.18);
                    }

                    html[data-cc-page="group-offers"] .news-progress::before {
                        background: #d6d3d4
                    }

                    html[data-cc-page="group-offers"] .social-progress span, html[data-cc-page="group-offers"] .news-progress span {
                        top: auto;
                        bottom: auto;
                        height: 4px;
                        min-width: 42px;
                        background: var(--pink);
                        transition: left .12s linear,width .2s ease,height .2s ease;
                        z-index: 2;
                    }

                    html[data-cc-page="group-offers"] .social-progress:hover span, html[data-cc-page="group-offers"] .news-progress:hover span {
                        height: 6px
                    }

                /* V10 - New clean footer */
                html[data-cc-page="group-offers"] .footer {
                    background: #111113;
                    color: #fff;
                    padding: 0;
                    overflow: hidden
                }

                    html[data-cc-page="group-offers"] .footer::before, html[data-cc-page="group-offers"] .footer::after {
                        display: none !important
                    }

                    html[data-cc-page="group-offers"] .footer > .container {
                        width: auto;
                        max-width: none
                    }

                html[data-cc-page="group-offers"] .footer-newsletter-clean {
                    background: #fff;
                    color: #1d1d1f;
                    border-top: 1px solid #ece9ea
                }

                html[data-cc-page="group-offers"] .footer-newsletter-inner {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    gap: 100px;
                    align-items: end;
                    padding-top: 72px;
                    padding-bottom: 72px
                }

                html[data-cc-page="group-offers"] .footer-newsletter-heading .eyebrow {
                    color: var(--pink);
                    margin-bottom: 16px
                }

                html[data-cc-page="group-offers"] .footer-newsletter-heading h2 {
                    font-family: var(--display);
                    font-size: clamp(44px,4.8vw,68px);
                    font-weight: 400;
                    line-height: .98;
                    letter-spacing: -.035em
                }

                html[data-cc-page="group-offers"] .footer-newsletter-action {
                    max-width: 590px;
                    margin-left: auto;
                    width: 100%
                }

                    html[data-cc-page="group-offers"] .footer-newsletter-action > p {
                        font-size: 13px;
                        line-height: 1.8;
                        color: #666;
                        max-width: 510px;
                        margin-bottom: 24px
                    }

                html[data-cc-page="group-offers"] .newsletter-form-clean {
                    display: flex;
                    align-items: stretch;
                    border-bottom: 1px solid #bdb8ba;
                    min-height: 58px
                }

                    html[data-cc-page="group-offers"] .newsletter-form-clean input {
                        flex: 1;
                        min-width: 0;
                        border: 0;
                        background: transparent;
                        outline: 0;
                        padding: 0 14px 0 0;
                        font: inherit;
                        font-size: 13px;
                        color: #222
                    }

                        html[data-cc-page="group-offers"] .newsletter-form-clean input::placeholder {
                            color: #989395
                        }

                    html[data-cc-page="group-offers"] .newsletter-form-clean button {
                        position: relative;
                        overflow: hidden;
                        isolation: isolate;
                        border: 0;
                        background: var(--pink);
                        color: #fff;
                        min-width: 150px;
                        padding: 0 22px;
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .14em;
                        text-transform: uppercase;
                        transition: transform .3s ease,filter .3s ease
                    }

                        html[data-cc-page="group-offers"] .newsletter-form-clean button::before {
                            content: "";
                            position: absolute;
                            inset: 0;
                            background: var(--pink-dark);
                            transform: scaleX(0);
                            transform-origin: left;
                            transition: transform .38s cubic-bezier(.22,1,.36,1);
                            z-index: -1
                        }

                        html[data-cc-page="group-offers"] .newsletter-form-clean button:hover {
                            transform: translateY(-2px);
                            filter: brightness(1.08)
                        }

                            html[data-cc-page="group-offers"] .newsletter-form-clean button:hover::before {
                                transform: scaleX(1)
                            }

                html[data-cc-page="group-offers"] .footer-newsletter-action small {
                    display: block;
                    margin-top: 11px;
                    font-size: 9px;
                    color: #9b9698
                }

                html[data-cc-page="group-offers"] .footer-core {
                    background: #111113
                }

                    html[data-cc-page="group-offers"] .footer-core > .container {
                        padding-top: 66px
                    }

                html[data-cc-page="group-offers"] .footer-topline {
                    display: grid;
                    grid-template-columns: 1fr auto;
                    gap: 80px;
                    align-items: start;
                    padding-bottom: 50px;
                    border-bottom: 1px solid rgba(255,255,255,.12)
                }

                html[data-cc-page="group-offers"] .footer-identity {
                    max-width: 430px
                }

                html[data-cc-page="group-offers"] .footer-logo {
                    width: 176px;
                    height: auto
                }

                html[data-cc-page="group-offers"] .footer-identity p {
                    font-size: 12px;
                    line-height: 1.8;
                    color: rgba(255,255,255,.55);
                    margin-top: 22px;
                    max-width: 390px
                }

                html[data-cc-page="group-offers"] .footer-primary-contact {
                    display: grid;
                    justify-items: end;
                    gap: 6px;
                    text-align: right
                }

                    html[data-cc-page="group-offers"] .footer-primary-contact span, html[data-cc-page="group-offers"] .footer h4 {
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: .17em;
                        text-transform: uppercase;
                        color: rgba(255,255,255,.42)
                    }

                    html[data-cc-page="group-offers"] .footer-primary-contact a {
                        font-family: var(--display);
                        font-size: 21px;
                        line-height: 1.25;
                        color: #fff;
                        transition: color .25s ease
                    }

                        html[data-cc-page="group-offers"] .footer-primary-contact a:hover {
                            color: var(--pink)
                        }

                html[data-cc-page="group-offers"] .footer-navigation {
                    display: grid;
                    grid-template-columns: 1fr 1fr 1fr 1.05fr;
                    gap: 70px;
                    padding: 52px 0 58px
                }

                html[data-cc-page="group-offers"] .footer h4 {
                    margin-bottom: 20px
                }

                html[data-cc-page="group-offers"] .footer-links {
                    display: grid;
                    gap: 11px
                }

                    html[data-cc-page="group-offers"] .footer-links a, html[data-cc-page="group-offers"] .footer-place {
                        font-size: 12px;
                        line-height: 1.7;
                        color: rgba(255,255,255,.67);
                        transition: color .25s ease,transform .25s ease
                    }

                        html[data-cc-page="group-offers"] .footer-links a:hover {
                            color: #fff;
                            transform: translateX(3px)
                        }

                html[data-cc-page="group-offers"] .footer-place {
                    max-width: 190px
                }

                html[data-cc-page="group-offers"] .footer-community .social-icons {
                    display: flex;
                    gap: 9px;
                    margin: 0 0 26px
                }

                html[data-cc-page="group-offers"] .social-icons a {
                    width: 39px;
                    height: 39px;
                    border: 1px solid rgba(255,255,255,.20);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border-radius: 50%;
                    font-size: 12px;
                    transition: transform .28s ease,background .28s ease,border-color .28s ease
                }

                    html[data-cc-page="group-offers"] .social-icons a:hover {
                        background: var(--pink);
                        border-color: var(--pink);
                        transform: translateY(-3px)
                    }

                html[data-cc-page="group-offers"] .green-star {
                    width: 78px;
                    height: auto;
                    margin: 0
                }

                html[data-cc-page="group-offers"] .footer-bottom {
                    border-top: 1px solid rgba(255,255,255,.11);
                    padding: 22px 0 26px;
                    display: flex;
                    justify-content: space-between;
                    gap: 20px;
                    flex-wrap: wrap;
                    font-size: 9px;
                    color: rgba(255,255,255,.38)
                }

                    html[data-cc-page="group-offers"] .footer-bottom nav {
                        display: flex;
                        gap: 22px;
                        flex-wrap: wrap
                    }

                    html[data-cc-page="group-offers"] .footer-bottom a {
                        transition: color .25s
                    }

                        html[data-cc-page="group-offers"] .footer-bottom a:hover {
                            color: #fff
                        }

                html[data-cc-page="group-offers"] .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
                }

                @media(max-width:900px) {
                    html[data-cc-page="group-offers"] .footer-newsletter-inner {
                        grid-template-columns: 1fr;
                        gap: 32px;
                        padding-top: 58px;
                        padding-bottom: 58px
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter-action {
                        margin: 0;
                        max-width: none
                    }

                    html[data-cc-page="group-offers"] .footer-topline {
                        grid-template-columns: 1fr;
                        gap: 35px
                    }

                    html[data-cc-page="group-offers"] .footer-primary-contact {
                        justify-items: start;
                        text-align: left
                    }

                    html[data-cc-page="group-offers"] .footer-navigation {
                        grid-template-columns: 1fr 1fr;
                        gap: 42px 32px
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-offers"] .footer-newsletter-inner {
                        padding-top: 48px;
                        padding-bottom: 48px
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter-heading h2 {
                        font-size: 42px
                    }

                    html[data-cc-page="group-offers"] .newsletter-form-clean {
                        min-height: 54px
                    }

                        html[data-cc-page="group-offers"] .newsletter-form-clean button {
                            min-width: 122px;
                            padding: 0 14px
                        }

                    html[data-cc-page="group-offers"] .footer-core > .container {
                        padding-top: 50px
                    }

                    html[data-cc-page="group-offers"] .footer-primary-contact a {
                        font-size: 18px
                    }

                    html[data-cc-page="group-offers"] .footer-navigation {
                        grid-template-columns: 1fr 1fr;
                        gap: 38px 24px;
                        padding: 42px 0 48px
                    }

                    html[data-cc-page="group-offers"] .footer-community {
                        grid-column: 1/3
                    }

                    html[data-cc-page="group-offers"] .footer-bottom {
                        display: block
                    }

                        html[data-cc-page="group-offers"] .footer-bottom nav {
                            margin-top: 13px;
                            gap: 13px
                        }
                }



                /* =====================================================
           V11 MOBILE BOOKING - FIXED BOOK NOW + BOTTOM SHEET
           ===================================================== */
                html[data-cc-page="group-offers"] .mobile-booking-modal {
                    display: none
                }

                @media(max-width:767px) {
                    html[data-cc-page="group-offers"] body {
                        padding-bottom: calc(66px + env(safe-area-inset-bottom,0px)) !important
                    }

                    html[data-cc-page="group-offers"] .hero {
                        height: 100svh !important;
                        min-height: 660px !important
                    }

                    html[data-cc-page="group-offers"] .hero-content {
                        padding-bottom: 112px !important
                    }

                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 84px !important
                    }

                    /* The full booking dock is desktop/tablet only on phone screens. */
                    html[data-cc-page="group-offers"] .booking-shell {
                        display: none !important
                    }

                    /* Persistent mobile reservation CTA. */
                    html[data-cc-page="group-offers"] .mobile-book {
                        display: flex !important;
                        position: fixed !important;
                        left: 12px !important;
                        right: 12px !important;
                        bottom: calc(10px + env(safe-area-inset-bottom,0px)) !important;
                        width: auto !important;
                        height: 56px !important;
                        z-index: 990 !important;
                        border: 0 !important;
                        border-radius: 2px !important;
                        background: var(--pink) !important;
                        color: #fff !important;
                        align-items: center !important;
                        justify-content: center !important;
                        gap: 11px !important;
                        box-shadow: 0 14px 34px rgba(45,0,27,.28) !important;
                        font-size: 11px !important;
                        font-weight: 700 !important;
                        letter-spacing: .15em !important;
                        text-transform: uppercase !important;
                    }

                        html[data-cc-page="group-offers"] .mobile-book::after {
                            content: "\f061";
                            font-family: "Font Awesome 6 Free";
                            font-weight: 900;
                            font-size: 11px
                        }

                        html[data-cc-page="group-offers"] .mobile-book:hover, html[data-cc-page="group-offers"] .mobile-book:focus-visible {
                            transform: translateY(-2px);
                            filter: brightness(1.06)
                        }

                    html[data-cc-page="group-offers"] .scrolltop {
                        bottom: calc(82px + env(safe-area-inset-bottom,0px)) !important
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-modal {
                        position: fixed;
                        inset: 0;
                        z-index: 1100;
                        display: block;
                        visibility: hidden;
                        opacity: 0;
                        pointer-events: none;
                        transition: opacity .28s ease,visibility .28s ease;
                    }

                        html[data-cc-page="group-offers"] .mobile-booking-modal.open {
                            visibility: visible;
                            opacity: 1;
                            pointer-events: auto
                        }

                    html[data-cc-page="group-offers"] .mobile-booking-backdrop {
                        position: absolute;
                        inset: 0;
                        border: 0;
                        background: rgba(8,5,7,.58);
                        backdrop-filter: blur(3px);
                        -webkit-backdrop-filter: blur(3px)
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-sheet {
                        position: absolute;
                        left: 0;
                        right: 0;
                        bottom: 0;
                        max-height: min(91svh,820px);
                        overflow: auto;
                        overscroll-behavior: contain;
                        background: #fff;
                        box-shadow: 0 -24px 60px rgba(0,0,0,.23);
                        transform: translateY(102%);
                        transition: transform .42s cubic-bezier(.22,1,.36,1);
                        padding-bottom: calc(18px + env(safe-area-inset-bottom,0px));
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-modal.open .mobile-booking-sheet {
                        transform: none
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-head {
                        position: sticky;
                        top: 0;
                        z-index: 8;
                        display: flex;
                        align-items: center;
                        justify-content: space-between;
                        gap: 20px;
                        padding: 20px 20px 17px;
                        background: rgba(255,255,255,.97);
                        border-bottom: 1px solid #ece8ea;
                        backdrop-filter: blur(12px);
                        -webkit-backdrop-filter: blur(12px)
                    }

                        html[data-cc-page="group-offers"] .mobile-booking-head span {
                            display: block;
                            margin-bottom: 4px;
                            color: var(--pink);
                            font-size: 8px;
                            font-weight: 700;
                            letter-spacing: .18em;
                            text-transform: uppercase
                        }

                        html[data-cc-page="group-offers"] .mobile-booking-head h3 {
                            font-family: var(--display);
                            font-size: 31px;
                            line-height: 1;
                            font-weight: 400;
                            letter-spacing: -.025em;
                            color: #171317
                        }

                    html[data-cc-page="group-offers"] .mobile-booking-close {
                        flex: 0 0 auto;
                        width: 42px;
                        height: 42px;
                        border: 1px solid #e7e1e4;
                        border-radius: 50%;
                        background: #fff;
                        color: #211b1f;
                        font-size: 15px
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-body {
                        padding: 18px 16px 4px
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .booking-card, html[data-cc-page="group-offers"] .mobile-booking-modal .booking-card.reveal {
                        opacity: 1 !important;
                        visibility: visible !important;
                        transform: none !important;
                        filter: none !important;
                        box-shadow: none !important;
                        padding: 0 !important;
                        border-radius: 0 !important;
                        background: #fff !important;
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .booking-form {
                        display: grid !important;
                        grid-template-columns: 1fr 1fr !important;
                        gap: 12px !important;
                        align-items: end !important
                    }

                        html[data-cc-page="group-offers"] .mobile-booking-modal .booking-form > .field {
                            grid-column: auto !important
                        }

                            html[data-cc-page="group-offers"] .mobile-booking-modal .booking-form > .field:nth-of-type(1), html[data-cc-page="group-offers"] .mobile-booking-modal .booking-form > .field:nth-of-type(4), html[data-cc-page="group-offers"] .mobile-booking-modal .booking-form > .field:nth-of-type(5) {
                                grid-column: 1/-1 !important
                            }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .booking-submit {
                        grid-column: 1/-1 !important;
                        width: 100% !important;
                        height: 54px !important;
                        margin-top: 2px !important;
                        font-size: 10px !important
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .field label {
                        font-size: 8px !important;
                        margin-bottom: 6px !important
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .control, html[data-cc-page="group-offers"] .mobile-booking-modal .guest-trigger {
                        height: 50px !important
                    }

                        html[data-cc-page="group-offers"] .mobile-booking-modal .control input, html[data-cc-page="group-offers"] .mobile-booking-modal .control select, html[data-cc-page="group-offers"] .mobile-booking-modal .guest-trigger {
                            font-size: 11px !important
                        }

                    /* Rooms & Guests opens above the booking sheet and stays usable. */
                    html[data-cc-page="group-offers"] .mobile-booking-modal .guest-popover {
                        position: fixed !important;
                        left: 12px !important;
                        right: 12px !important;
                        top: auto !important;
                        bottom: calc(12px + env(safe-area-inset-bottom,0px)) !important;
                        width: auto !important;
                        max-width: none !important;
                        max-height: 78svh !important;
                        overflow: auto !important;
                        z-index: 1160 !important;
                        padding: 18px !important;
                        border-radius: 2px !important;
                        box-shadow: 0 24px 65px rgba(0,0,0,.27) !important;
                    }

                        html[data-cc-page="group-offers"] .mobile-booking-modal .guest-popover::before {
                            display: none !important
                        }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .rooms-container {
                        max-height: 50svh !important
                    }

                    html[data-cc-page="group-offers"] body.booking-modal-open {
                        overflow: hidden !important
                    }

                        html[data-cc-page="group-offers"] body.booking-modal-open .mobile-book {
                            opacity: 0;
                            pointer-events: none;
                            transform: translateY(12px)
                        }
                }

                @media(max-width:420px) {
                    html[data-cc-page="group-offers"] .mobile-booking-body {
                        padding-left: 13px;
                        padding-right: 13px
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-head {
                        padding-left: 16px;
                        padding-right: 16px
                    }

                        html[data-cc-page="group-offers"] .mobile-booking-head h3 {
                            font-size: 28px
                        }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .booking-form {
                        gap: 10px !important
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .control input, html[data-cc-page="group-offers"] .mobile-booking-modal .control select {
                        padding-left: 34px !important;
                        padding-right: 31px !important
                    }

                    html[data-cc-page="group-offers"] .mobile-booking-modal .guest-trigger {
                        padding-left: 34px !important;
                        padding-right: 31px !important
                    }
                }

                /* =====================================================
                   V12 REVIEW FIXES
                   1) Booking fully visible above the fold on desktop/tablet
                   2) Hero white CTA keeps readable text through refill hover
                   3) Offers use a deliberate black curtain reveal, not clip refresh
                   ===================================================== */

                /* 1. BOOKING - fully visible inside the first viewport */
                @media(min-width:1101px) {
                    html[data-cc-page="group-offers"] .hero-content {
                        padding-bottom: 220px !important;
                    }

                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 192px !important;
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        position: relative !important;
                        top: auto !important;
                        margin-top: -188px !important;
                        margin-bottom: 58px !important;
                        z-index: 32 !important;
                    }
                }

                @media(min-width:821px) and (max-width:1100px) {
                    html[data-cc-page="group-offers"] .hero-content {
                        padding-bottom: 270px !important;
                    }

                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 224px !important;
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        position: relative !important;
                        top: auto !important;
                        margin-top: -226px !important;
                        margin-bottom: 54px !important;
                        z-index: 32 !important;
                    }
                }

                @media(min-width:768px) and (max-width:820px) {
                    html[data-cc-page="group-offers"] .hero-content {
                        padding-bottom: 315px !important;
                    }

                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 272px !important;
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        display: block !important;
                        position: relative !important;
                        top: auto !important;
                        margin-top: -280px !important;
                        margin-bottom: 48px !important;
                        z-index: 32 !important;
                    }
                }

                /* 2. HERO CTA - robust refill with readable text from start to finish */
                html[data-cc-page="group-offers"] .hero-actions .btn-white {
                    position: relative;
                    overflow: hidden;
                    background-color: #fff !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-repeat: no-repeat !important;
                    background-position: left center !important;
                    background-size: 0 100% !important;
                    color: #111 !important;
                    border-color: #fff !important;
                    transition: background-size .46s cubic-bezier(.22,1,.36,1),
                                color .22s ease,
                                border-color .22s ease,
                                transform .28s cubic-bezier(.22,1,.36,1),
                                filter .28s ease,
                                box-shadow .28s ease !important;
                }

                html[data-cc-page="group-offers"] .hero-actions .btn-white:hover, html[data-cc-page="group-offers"] .hero-actions .btn-white:focus-visible {
                    background-color: #fff !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-repeat: no-repeat !important;
                    background-position: left center !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                    border-color: var(--pink) !important;
                    transform: translateY(-3px);
                    filter: brightness(1.06);
                    box-shadow: 0 12px 28px rgba(0,0,0,.18);
                }

                html[data-cc-page="group-offers"] .hero-actions .btn-white i {
                    color: currentColor !important;
                }

                /* 3. OFFERS - clear cinematic black curtain reveal */
                html[data-cc-page="group-offers"] .offer-tile.reveal, html[data-cc-page="group-offers"] .offer-tile.reveal-left, html[data-cc-page="group-offers"] .offer-tile.reveal-right {
                    opacity: 1 !important;
                    transform: none !important;
                    filter: none !important;
                    visibility: visible !important;
                    background: #080808 !important;
                }

                html[data-cc-page="group-offers"] .offer-tile img {
                    clip-path: none !important;
                    opacity: 1 !important;
                    transform: scale(1.085) !important;
                    transition: transform 1.65s cubic-bezier(.22,1,.36,1) !important;
                    will-change: transform;
                }

                html[data-cc-page="group-offers"] .offer-tile.in-view img {
                    clip-path: none !important;
                    transform: scale(1) !important;
                }

                html[data-cc-page="group-offers"] .offer-tile::before {
                    content: "" !important;
                    display: block !important;
                    position: absolute !important;
                    inset: 0 !important;
                    z-index: 3 !important;
                    background: #080808 !important;
                    transform: scaleX(1) !important;
                    transform-origin: right center !important;
                    transition: transform 1.38s cubic-bezier(.77,0,.18,1) .10s !important;
                    pointer-events: none !important;
                    will-change: transform;
                }

                html[data-cc-page="group-offers"] .offer-tile:nth-child(even)::before, html[data-cc-page="group-offers"] .offer-strip .offer-tile:nth-child(even)::before {
                    transform-origin: left center !important;
                }

                html[data-cc-page="group-offers"] .offer-tile.in-view::before {
                    transform: scaleX(0) !important;
                }

                /* Keep the content hidden for a fraction of a second while the curtain starts moving,
                   then bring it in deliberately instead of flashing with the image. */
                html[data-cc-page="group-offers"] .offer-tile .offer-content, html[data-cc-page="group-offers"] .offer-tile .offer-arrow {
                    opacity: 0;
                    transform: translateY(12px);
                    transition: opacity .55s ease .62s,transform .65s cubic-bezier(.22,1,.36,1) .62s !important;
                    z-index: 5 !important;
                }

                html[data-cc-page="group-offers"] .offer-tile .offer-arrow {
                    transform: translateY(-8px);
                }

                html[data-cc-page="group-offers"] .offer-tile.in-view .offer-content, html[data-cc-page="group-offers"] .offer-tile.in-view .offer-arrow {
                    opacity: 1;
                    transform: none;
                }

                html[data-cc-page="group-offers"] .offer-tile::after {
                    z-index: 4 !important;
                }

                html[data-cc-page="group-offers"] .offer-tile:hover img {
                    transform: scale(1.035) !important;
                }

                @media(prefers-reduced-motion:reduce) {
                    html[data-cc-page="group-offers"] .offer-tile::before {
                        transform: scaleX(0) !important;
                        transition: none !important;
                    }

                    html[data-cc-page="group-offers"] .offer-tile img, html[data-cc-page="group-offers"] .offer-tile .offer-content, html[data-cc-page="group-offers"] .offer-tile .offer-arrow {
                        opacity: 1 !important;
                        transform: none !important;
                        transition: none !important;
                    }
                }


                /* =====================================================
                   V13 HERO SAFE AREA + FROSTED BOOKING DOCK
                   1) Compact hero typography keeps copy clear of header/logo
                   2) Booking becomes a light glass panel so the hero remains visible
                   ===================================================== */

                /* HERO COPY - keep a deliberate safe area below the header without
                   pushing the CTA into the booking dock. Wider copy means long hero
                   headlines use fewer lines and sit naturally lower in the image. */
                @media(min-width:1101px) {
                    html[data-cc-page="group-offers"] .hero-copy {
                        max-width: 880px !important;
                    }

                    html[data-cc-page="group-offers"] .hero-title {
                        max-width: 860px !important;
                        font-size: clamp(64px,4.8vw,82px) !important;
                        line-height: .94 !important;
                        letter-spacing: -.038em !important;
                    }

                    html[data-cc-page="group-offers"] .hero-kicker {
                        margin-bottom: 14px !important;
                    }

                    html[data-cc-page="group-offers"] .hero-subtitle {
                        max-width: 540px !important;
                        margin-top: 16px !important;
                    }

                    html[data-cc-page="group-offers"] .hero-actions {
                        margin-top: 23px !important;
                    }
                }

                @media(min-width:821px) and (max-width:1100px) {
                    html[data-cc-page="group-offers"] .hero-copy {
                        max-width: 720px !important;
                    }

                    html[data-cc-page="group-offers"] .hero-title {
                        max-width: 710px !important;
                        font-size: clamp(56px,6.2vw,68px) !important;
                        line-height: .95 !important;
                    }
                }

                @media(min-width:768px) and (max-width:820px) {
                    html[data-cc-page="group-offers"] .hero-copy {
                        max-width: 620px !important;
                    }

                    html[data-cc-page="group-offers"] .hero-title {
                        max-width: 610px !important;
                        font-size: 54px !important;
                        line-height: .96 !important;
                    }
                }

                /* BOOKING - light frosted glass instead of a solid white slab. */
                @media(min-width:768px) {
                    html[data-cc-page="group-offers"] .booking-card {
                        background: rgba(255,255,255,.76) !important;
                        border: 1px solid rgba(255,255,255,.72) !important;
                        box-shadow: 0 20px 52px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.62) !important;
                        backdrop-filter: blur(18px) saturate(128%) !important;
                        -webkit-backdrop-filter: blur(18px) saturate(128%) !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card::before {
                        content: "";
                        position: absolute;
                        inset: 0;
                        border: 1px solid rgba(255,255,255,.34);
                        pointer-events: none;
                    }

                    html[data-cc-page="group-offers"] .booking-card .field label {
                        color: rgba(35,27,31,.66) !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .control, html[data-cc-page="group-offers"] .booking-card .guest-trigger {
                        background: rgba(255,255,255,.62) !important;
                        border-color: rgba(58,45,51,.16) !important;
                        box-shadow: inset 0 1px 0 rgba(255,255,255,.58) !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .control:focus-within, html[data-cc-page="group-offers"] .booking-card .control.is-open, html[data-cc-page="group-offers"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.90) !important;
                        border-color: rgba(169,0,97,.52) !important;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.08), inset 0 1px 0 rgba(255,255,255,.72) !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .control input, html[data-cc-page="group-offers"] .booking-card .control select, html[data-cc-page="group-offers"] .booking-card .guest-trigger {
                        color: #272126 !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .control input::placeholder {
                        color: rgba(39,33,38,.55) !important;
                    }
                }

    

                /* =====================================================
                   V14 CLEAR BOOKING PANEL + TRUE PINK REFILL
                   - No blur / no haze: hero image remains clearly visible
                   - Pink CTAs keep their refill animation on hover
                   ===================================================== */

                /* Booking panel: lower white opacity with ZERO blur/haze. */
                @media(min-width:768px) {
                    html[data-cc-page="group-offers"] .booking-card {
                        background: rgba(255,255,255,.46) !important;
                        border: 1px solid rgba(255,255,255,.64) !important;
                        box-shadow: 0 18px 44px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.36) !important;
                        backdrop-filter: none !important;
                        -webkit-backdrop-filter: none !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card::before {
                        border-color: rgba(255,255,255,.24) !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .field label {
                        color: rgba(29,23,27,.72) !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .control, html[data-cc-page="group-offers"] .booking-card .guest-trigger {
                        background: rgba(255,255,255,.72) !important;
                        border-color: rgba(49,39,44,.18) !important;
                        box-shadow: none !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .control:focus-within, html[data-cc-page="group-offers"] .booking-card .control.is-open, html[data-cc-page="group-offers"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.90) !important;
                        border-color: rgba(169,0,97,.58) !important;
                        box-shadow: 0 0 0 3px rgba(169,0,97,.08) !important;
                    }
                }

                /* True refill for buttons that start pink. The explicit hover
                   background-image prevents older background shorthands from
                   cancelling the animation. */
                html[data-cc-page="group-offers"] .btn-pink, html[data-cc-page="group-offers"] .booking-submit {
                    position: relative;
                    overflow: hidden;
                    background-color: var(--pink) !important;
                    background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                    background-repeat: no-repeat !important;
                    background-position: left top !important;
                    background-size: 0 100% !important;
                    color: #fff !important;
                    transition: background-size .46s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease,border-color .28s ease !important;
                }

                html[data-cc-page="group-offers"] .btn-pink:hover, html[data-cc-page="group-offers"] .btn-pink:focus-visible, html[data-cc-page="group-offers"] .booking-submit:hover, html[data-cc-page="group-offers"] .booking-submit:focus-visible {
                    background-color: var(--pink) !important;
                    background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                    transform: translateY(-3px) !important;
                    filter: brightness(1.08) !important;
                    box-shadow: 0 12px 28px rgba(91,0,52,.22) !important;
                }

                /* Mobile persistent Book Now gets the same refill behavior. */
                @media(max-width:767px) {
                    html[data-cc-page="group-offers"] .mobile-book {
                        background-color: var(--pink) !important;
                        background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                        background-repeat: no-repeat !important;
                        background-position: left top !important;
                        background-size: 0 100% !important;
                        transition: background-size .46s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1),filter .28s ease,box-shadow .28s ease !important;
                    }

                    html[data-cc-page="group-offers"] .mobile-book:hover, html[data-cc-page="group-offers"] .mobile-book:focus-visible {
                        background-color: var(--pink) !important;
                        background-image: linear-gradient(90deg,var(--pink-dark) 0%,#87004b 100%) !important;
                        background-size: 100% 100% !important;
                        color: #fff !important;
                    }
                }

    

                /* =====================================================
                   V15 NEWSLETTER FIELD + BORDERLESS BOOKING + SPACING
                   - Newsletter uses a calm tinted field instead of an underline-only input
                   - Booking card/controls are borderless while keeping the clear hero image visible
                   - Booking dock sits slightly lower with more breathing room from hero navigation
                   ===================================================== */

                /* 1) NEWSLETTER - soft brand-tinted field, no underline treatment */
                html[data-cc-page="group-offers"] .newsletter-form-clean {
                    display: grid !important;
                    grid-template-columns: minmax(0,1fr) auto !important;
                    gap: 10px !important;
                    align-items: stretch !important;
                    min-height: 58px !important;
                    border: 0 !important;
                    background: transparent !important;
                }

                html[data-cc-page="group-offers"] .newsletter-form-clean input {
                    width: 100% !important;
                    min-width: 0 !important;
                    height: 58px !important;
                    padding: 0 20px !important;
                    border: 0 !important;
                    outline: 0 !important;
                    background: #f3eff1 !important;
                    color: #211d20 !important;
                    box-shadow: inset 0 0 0 1px rgba(73,55,65,.05) !important;
                    transition: background .25s ease,box-shadow .25s ease !important;
                }

                html[data-cc-page="group-offers"] .newsletter-form-clean input::placeholder {
                    color: #8f858b !important;
                }

                html[data-cc-page="group-offers"] .newsletter-form-clean input:focus {
                    background: #eee7eb !important;
                    box-shadow: inset 0 0 0 1px rgba(169,0,97,.22) !important;
                }

                html[data-cc-page="group-offers"] .newsletter-form-clean button {
                    min-width: 154px !important;
                    height: 58px !important;
                    border: 0 !important;
                    background-color: #171717 !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-repeat: no-repeat !important;
                    background-position: left top !important;
                    background-size: 0 100% !important;
                    color: #fff !important;
                    transition: background-size .44s cubic-bezier(.22,1,.36,1),transform .28s ease,filter .28s ease,box-shadow .28s ease !important;
                }

                html[data-cc-page="group-offers"] .newsletter-form-clean button:hover, html[data-cc-page="group-offers"] .newsletter-form-clean button:focus-visible {
                    background-color: #171717 !important;
                    background-image: linear-gradient(90deg,var(--pink),var(--pink)) !important;
                    background-size: 100% 100% !important;
                    color: #fff !important;
                    transform: translateY(-2px) !important;
                    filter: brightness(1.05) !important;
                    box-shadow: 0 10px 24px rgba(0,0,0,.12) !important;
                }

                /* 2) BOOKING - keep the approved transparent background, remove visible borders */
                @media(min-width:768px) {
                    html[data-cc-page="group-offers"] .booking-card {
                        background: rgba(255,255,255,.46) !important;
                        border: 0 !important;
                        box-shadow: 0 18px 44px rgba(0,0,0,.13) !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card::before {
                        display: none !important;
                        content: none !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .control, html[data-cc-page="group-offers"] .booking-card .guest-trigger {
                        background: rgba(255,255,255,.76) !important;
                        border: 0 !important;
                        box-shadow: 0 1px 0 rgba(255,255,255,.56),0 5px 16px rgba(24,14,20,.045) !important;
                    }

                    html[data-cc-page="group-offers"] .booking-card .control:focus-within, html[data-cc-page="group-offers"] .booking-card .control.is-open, html[data-cc-page="group-offers"] .booking-card .guest-trigger.is-open {
                        background: rgba(255,255,255,.93) !important;
                        border: 0 !important;
                        box-shadow: 0 0 0 2px rgba(169,0,97,.20),0 6px 18px rgba(24,14,20,.06) !important;
                    }
                }

                /* 3) BOOKING POSITION - slightly lower, arrows slightly higher for clear separation */
                @media(min-width:1101px) {
                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 204px !important;
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        margin-top: -172px !important;
                        margin-bottom: 58px !important;
                    }
                }

                @media(min-width:821px) and (max-width:1100px) {
                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 236px !important;
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        margin-top: -210px !important;
                        margin-bottom: 54px !important;
                    }
                }

                @media(min-width:768px) and (max-width:820px) {
                    html[data-cc-page="group-offers"] .hero-control {
                        bottom: 285px !important;
                    }

                    html[data-cc-page="group-offers"] .booking-shell {
                        margin-top: -265px !important;
                        margin-bottom: 48px !important;
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-offers"] .newsletter-form-clean {
                        grid-template-columns: 1fr !important;
                        gap: 9px !important;
                    }

                    html[data-cc-page="group-offers"] .newsletter-form-clean input, html[data-cc-page="group-offers"] .newsletter-form-clean button {
                        width: 100% !important;
                        height: 54px !important;
                    }
                }


                /* =====================================================
                   V16 SECOND NEWSLETTER CONCEPT - CENTERED / STACKED
                   Added below the current newsletter for direct visual comparison.
                   ===================================================== */
                html[data-cc-page="group-offers"] .footer-newsletter-centered {
                    background: #f7f5f4;
                    color: #1c191b;
                    border-top: 1px solid #ebe6e8;
                    border-bottom: 1px solid #ebe6e8;
                }

                html[data-cc-page="group-offers"] .footer-newsletter-centered-inner {
                    width: min(760px,calc(100% - 40px));
                    margin-inline: auto;
                    padding: 76px 0 82px;
                    text-align: center;
                }

                html[data-cc-page="group-offers"] .footer-newsletter-centered .eyebrow {
                    color: var(--pink);
                    margin-bottom: 16px;
                }

                html[data-cc-page="group-offers"] .footer-newsletter-centered h2 {
                    font-family: var(--display);
                    font-size: clamp(42px,4.6vw,66px);
                    line-height: 1.02;
                    font-weight: 400;
                    letter-spacing: -.035em;
                    max-width: 720px;
                    margin-inline: auto;
                }

                html[data-cc-page="group-offers"] .footer-newsletter-centered p {
                    max-width: 560px;
                    margin: 20px auto 30px;
                    font-size: 13px;
                    line-height: 1.8;
                    color: #6f686c;
                }

                html[data-cc-page="group-offers"] .newsletter-form-centered {
                    width: min(620px,100%);
                    margin-inline: auto;
                    display: grid;
                    grid-template-columns: minmax(0,1fr) auto;
                    gap: 10px;
                    align-items: stretch;
                }

                html[data-cc-page="group-offers"] .newsletter-form-centered input {
                    width: 100%;
                    min-width: 0;
                    height: 58px;
                    border: 1px solid #d8d1d4;
                    background: #fff;
                    color: #211d20;
                    outline: 0;
                    padding: 0 20px;
                    font-size: 13px;
                    transition: border-color .25s ease,box-shadow .25s ease,background .25s ease;
                }

                html[data-cc-page="group-offers"] .newsletter-form-centered input::placeholder {
                    color: #968d92;
                }

                html[data-cc-page="group-offers"] .newsletter-form-centered input:focus {
                    border-color: rgba(169,0,97,.46);
                    box-shadow: 0 0 0 3px rgba(169,0,97,.07);
                }

                html[data-cc-page="group-offers"] .newsletter-form-centered button {
                    min-width: 154px;
                    height: 58px;
                    border: 0;
                    background-color: var(--pink);
                    background-image: linear-gradient(90deg,var(--pink-dark),var(--pink-dark));
                    background-repeat: no-repeat;
                    background-position: left top;
                    background-size: 0 100%;
                    color: #fff;
                    padding: 0 24px;
                    font-size: 9px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    transition: background-size .44s cubic-bezier(.22,1,.36,1),transform .28s ease,filter .28s ease,box-shadow .28s ease;
                }

                html[data-cc-page="group-offers"] .newsletter-form-centered button:hover, html[data-cc-page="group-offers"] .newsletter-form-centered button:focus-visible {
                    background-size: 100% 100%;
                    transform: translateY(-2px);
                    filter: brightness(1.06);
                    box-shadow: 0 10px 24px rgba(91,0,52,.18);
                }

                html[data-cc-page="group-offers"] .footer-newsletter-centered small {
                    display: block;
                    margin-top: 12px;
                    font-size: 9px;
                    color: #9a9296;
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-offers"] .footer-newsletter-centered-inner {
                        width: calc(100% - 30px);
                        padding: 58px 0 62px;
                    }

                    html[data-cc-page="group-offers"] .footer-newsletter-centered h2 {
                        font-size: 40px;
                    }

                    html[data-cc-page="group-offers"] .newsletter-form-centered {
                        grid-template-columns: 1fr;
                        gap: 9px;
                    }

                    html[data-cc-page="group-offers"] .newsletter-form-centered input, html[data-cc-page="group-offers"] .newsletter-form-centered button {
                        width: 100%;
                        height: 54px;
                    }
                }



                /* =====================================================
                   V17 PINK DATE PICKER + CUSTOM RESORT SELECT + REFERENCE FOOTER
                   ===================================================== */

                /* Flatpickr - replace browser/library blue with Charmillion pink. */
                html[data-cc-page="group-offers"] .flatpickr-calendar {
                    font-family: var(--body) !important;
                    border: 0 !important;
                    border-radius: 2px !important;
                    box-shadow: 0 18px 50px rgba(24,16,20,.18) !important;
                    overflow: hidden;
                }

                html[data-cc-page="group-offers"] .flatpickr-months {
                    padding: 7px 5px 3px;
                    background: #fff;
                }

                html[data-cc-page="group-offers"] .flatpickr-months .flatpickr-month, html[data-cc-page="group-offers"] .flatpickr-current-month .flatpickr-monthDropdown-months, html[data-cc-page="group-offers"] .flatpickr-current-month input.cur-year {
                    color: #211b1f !important;
                    fill: #211b1f !important;
                    font-weight: 600 !important;
                }

                html[data-cc-page="group-offers"] .flatpickr-months .flatpickr-prev-month svg, html[data-cc-page="group-offers"] .flatpickr-months .flatpickr-next-month svg {
                    fill: #60575c !important;
                }

                html[data-cc-page="group-offers"] .flatpickr-months .flatpickr-prev-month:hover svg, html[data-cc-page="group-offers"] .flatpickr-months .flatpickr-next-month:hover svg {
                    fill: var(--pink) !important;
                }

                html[data-cc-page="group-offers"] span.flatpickr-weekday {
                    color: #83777e !important;
                    font-size: 10px !important;
                    font-weight: 600 !important;
                }

                html[data-cc-page="group-offers"] .flatpickr-day {
                    border-radius: 50% !important;
                    color: #2a2428 !important;
                    transition: background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease !important;
                }

                html[data-cc-page="group-offers"] .flatpickr-day:hover, html[data-cc-page="group-offers"] .flatpickr-day:focus {
                    background: rgba(169,0,97,.10) !important;
                    border-color: rgba(169,0,97,.10) !important;
                    color: var(--pink) !important;
                    transform: translateY(-1px);
                }

                html[data-cc-page="group-offers"] .flatpickr-day.today {
                    border-color: var(--pink) !important;
                    color: var(--pink) !important;
                    font-weight: 700 !important;
                }

                html[data-cc-page="group-offers"] .flatpickr-day.today:hover, html[data-cc-page="group-offers"] .flatpickr-day.today:focus {
                    background: var(--pink) !important;
                    border-color: var(--pink) !important;
                    color: #fff !important;
                }

                html[data-cc-page="group-offers"] .flatpickr-day.selected, html[data-cc-page="group-offers"] .flatpickr-day.startRange, html[data-cc-page="group-offers"] .flatpickr-day.endRange, html[data-cc-page="group-offers"] .flatpickr-day.selected:hover, html[data-cc-page="group-offers"] .flatpickr-day.startRange:hover, html[data-cc-page="group-offers"] .flatpickr-day.endRange:hover, html[data-cc-page="group-offers"] .flatpickr-day.selected:focus, html[data-cc-page="group-offers"] .flatpickr-day.startRange:focus, html[data-cc-page="group-offers"] .flatpickr-day.endRange:focus {
                    background: var(--pink) !important;
                    border-color: var(--pink) !important;
                    color: #fff !important;
                    box-shadow: none !important;
                }

                html[data-cc-page="group-offers"] .flatpickr-day.inRange, html[data-cc-page="group-offers"] .flatpickr-day.prevMonthDay.inRange, html[data-cc-page="group-offers"] .flatpickr-day.nextMonthDay.inRange {
                    background: rgba(169,0,97,.08) !important;
                    border-color: transparent !important;
                    box-shadow: -5px 0 0 rgba(169,0,97,.08),5px 0 0 rgba(169,0,97,.08) !important;
                }

                /* Resort selector - custom UI so selected/hover state is always brand pink. */
                html[data-cc-page="group-offers"] .resort-select-field {
                    z-index: 145;
                }

                html[data-cc-page="group-offers"] .custom-resort-control {
                    overflow: visible !important;
                }

                html[data-cc-page="group-offers"] .resort-select-trigger {
                    width: 100%;
                    height: 100%;
                    border: 0;
                    outline: 0;
                    background: transparent;
                    color: #272126;
                    text-align: left;
                    padding: 0 39px 0 39px;
                    font-size: 12px;
                    cursor: pointer;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis;
                }

                html[data-cc-page="group-offers"] .custom-resort-control.open {
                    background: rgba(255,255,255,.90) !important;
                    box-shadow: 0 0 0 3px rgba(169,0,97,.08) !important;
                }

                html[data-cc-page="group-offers"] .custom-resort-control.open .down {
                    color: var(--pink) !important;
                    transform: translateY(-50%) rotate(180deg);
                }

                html[data-cc-page="group-offers"] .resort-select-menu {
                    position: absolute;
                    left: 0;
                    top: calc(100% + 10px);
                    width: max(310px,100%);
                    padding: 8px;
                    background: #fff;
                    box-shadow: 0 20px 52px rgba(28,18,23,.20);
                    border-top: 3px solid var(--pink);
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transform: translateY(8px);
                    transition: opacity .2s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .2s ease;
                    z-index: 250;
                }

                html[data-cc-page="group-offers"] .resort-select-menu.open {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: none;
                }

                html[data-cc-page="group-offers"] .resort-select-menu button {
                    width: 100%;
                    display: grid;
                    gap: 3px;
                    padding: 12px 13px;
                    border: 0;
                    border-bottom: 1px solid #eee9ec;
                    background: #fff;
                    color: #272126;
                    text-align: left;
                    transition: background .2s ease,color .2s ease,padding-left .2s ease;
                }

                html[data-cc-page="group-offers"] .resort-select-menu button:last-child {
                    border-bottom: 0;
                }

                html[data-cc-page="group-offers"] .resort-select-menu button span {
                    font-size: 11px;
                    font-weight: 600;
                }

                html[data-cc-page="group-offers"] .resort-select-menu button small {
                    font-size: 8px;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    color: #91858c;
                }

                html[data-cc-page="group-offers"] .resort-select-menu button:hover, html[data-cc-page="group-offers"] .resort-select-menu button:focus-visible, html[data-cc-page="group-offers"] .resort-select-menu button.selected {
                    background: rgba(169,0,97,.075);
                    color: var(--pink);
                    padding-left: 18px;
                    outline: 0;
                }

                html[data-cc-page="group-offers"] .resort-select-menu button.selected::after {
                    content: "\f00c";
                    font-family: "Font Awesome 6 Free";
                    font-weight: 900;
                    position: absolute;
                    right: 18px;
                    color: var(--pink);
                }

                html[data-cc-page="group-offers"] .resort-select-menu button {
                    position: relative;
                }

                /* One footer only - reference-inspired, more polished than the screenshot. */
                html[data-cc-page="group-offers"] .footer-reference {
                    background: #121214 !important;
                    color: #fff;
                    padding: 0 !important;
                    position: relative;
                    overflow: hidden;
                }

                html[data-cc-page="group-offers"] .footer-reference::before {
                    content: "" !important;
                    display: block !important;
                    position: absolute;
                    left: -180px;
                    bottom: -220px;
                    width: 620px;
                    height: 620px;
                    background: radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
                    pointer-events: none;
                }

                html[data-cc-page="group-offers"] .footer-reference::after {
                    display: none !important;
                }

                html[data-cc-page="group-offers"] .footer-reference-main {
                    position: relative;
                    z-index: 2;
                    display: grid;
                    grid-template-columns: 1.05fr .72fr .95fr 1.55fr;
                    gap: clamp(38px,4.8vw,78px);
                    padding-top: 72px;
                    padding-bottom: 70px;
                }

                html[data-cc-page="group-offers"] .footer-reference-logo {
                    display: inline-block;
                }

                html[data-cc-page="group-offers"] .footer-reference-logo img {
                    width: 190px;
                    height: auto;
                }

                html[data-cc-page="group-offers"] .footer-reference-brand > p {
                    margin-top: 28px;
                    max-width: 310px;
                    font-size: 14px;
                    line-height: 1.95;
                    color: rgba(255,255,255,.72);
                }

                html[data-cc-page="group-offers"] .footer-destination-line {
                    display: flex;
                    align-items: center;
                    flex-wrap: wrap;
                    gap: 10px;
                    margin-top: 20px;
                    font-size: 8px;
                    font-weight: 700;
                    letter-spacing: .12em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.82);
                }

                html[data-cc-page="group-offers"] .footer-destination-line b {
                    width: 3px;
                    height: 3px;
                    border-radius: 50%;
                    background: var(--pink);
                }

                html[data-cc-page="group-offers"] .footer-follow-label {
                    margin-top: 32px;
                    font-size: 8px;
                    font-weight: 700;
                    letter-spacing: .16em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.48);
                }

                html[data-cc-page="group-offers"] .footer-reference-socials {
                    display: flex;
                    gap: 9px;
                    margin-top: 14px;
                }

                html[data-cc-page="group-offers"] .footer-reference-socials a {
                    width: 39px;
                    height: 39px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border-radius: 50%;
                    border: 1px solid rgba(255,255,255,.17);
                    color: #fff;
                    font-size: 12px;
                    transition: background .28s ease,border-color .28s ease,transform .28s ease;
                }

                html[data-cc-page="group-offers"] .footer-reference-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    transform: translateY(-3px);
                }

                html[data-cc-page="group-offers"] .footer-reference h4 {
                    margin: 0 0 24px !important;
                    font-size: 10px !important;
                    font-weight: 700 !important;
                    letter-spacing: .2em !important;
                    text-transform: uppercase !important;
                    color: #fff !important;
                }

                html[data-cc-page="group-offers"] .footer-reference-column nav {
                    display: grid;
                    gap: 16px;
                }

                html[data-cc-page="group-offers"] .footer-reference-column nav a {
                    width: fit-content;
                    font-size: 13px;
                    line-height: 1.45;
                    color: rgba(255,255,255,.72);
                    transition: color .22s ease,transform .22s ease;
                }

                html[data-cc-page="group-offers"] .footer-reference-column nav a:hover {
                    color: #fff;
                    transform: translateX(4px);
                }

                html[data-cc-page="group-offers"] .footer-contact-cards {
                    display: grid;
                    grid-template-columns: 1fr 1fr;
                    gap: 10px;
                }

                html[data-cc-page="group-offers"] .footer-contact-card {
                    min-width: 0;
                    min-height: 76px;
                    padding: 14px;
                    display: grid;
                    grid-template-columns: 38px minmax(0,1fr);
                    gap: 12px;
                    align-items: center;
                    border: 1px solid rgba(255,255,255,.12);
                    background: rgba(255,255,255,.025);
                    transition: border-color .25s ease,background .25s ease,transform .25s ease;
                }

                html[data-cc-page="group-offers"] .footer-contact-card:hover {
                    border-color: rgba(169,0,97,.62);
                    background: rgba(169,0,97,.06);
                    transform: translateY(-2px);
                }

                html[data-cc-page="group-offers"] .footer-contact-icon {
                    width: 38px;
                    height: 38px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    border: 1px solid rgba(169,0,97,.58);
                    color: var(--pink);
                }

                html[data-cc-page="group-offers"] .footer-contact-card small {
                    display: block;
                    margin-bottom: 4px;
                    font-size: 7px;
                    font-weight: 700;
                    letter-spacing: .12em;
                    text-transform: uppercase;
                    color: rgba(255,255,255,.48);
                }

                html[data-cc-page="group-offers"] .footer-contact-card strong {
                    display: block;
                    overflow-wrap: anywhere;
                    font-size: 10px;
                    line-height: 1.45;
                    color: #fff;
                    font-weight: 600;
                }

                html[data-cc-page="group-offers"] .footer-reference-newsletter {
                    margin-top: 30px;
                }

                html[data-cc-page="group-offers"] .footer-reference-newsletter h4 {
                    margin-bottom: 16px !important;
                }

                html[data-cc-page="group-offers"] .footer-reference-newsletter > p {
                    margin: 0 0 14px;
                    font-size: 13px;
                    line-height: 1.65;
                    color: rgba(255,255,255,.68);
                }

                html[data-cc-page="group-offers"] .footer-reference-form {
                    display: grid;
                    grid-template-columns: minmax(0,1fr) auto;
                    min-height: 52px;
                    border: 1px solid rgba(255,255,255,.15);
                    background: rgba(255,255,255,.025);
                }

                html[data-cc-page="group-offers"] .footer-reference-form:focus-within {
                    border-color: rgba(169,0,97,.72);
                }

                html[data-cc-page="group-offers"] .footer-reference-form input {
                    min-width: 0;
                    border: 0;
                    outline: 0;
                    background: transparent;
                    color: #fff;
                    padding: 0 16px;
                    font-size: 12px;
                }

                html[data-cc-page="group-offers"] .footer-reference-form input::placeholder {
                    color: rgba(255,255,255,.45);
                }

                html[data-cc-page="group-offers"] .footer-reference-form button {
                    position: relative;
                    overflow: hidden;
                    isolation: isolate;
                    min-width: 142px;
                    border: 0;
                    background: var(--pink);
                    color: #fff;
                    padding: 0 18px;
                    font-size: 9px;
                    font-weight: 700;
                    letter-spacing: .13em;
                    text-transform: uppercase;
                    transition: transform .25s ease,filter .25s ease;
                }

                html[data-cc-page="group-offers"] .footer-reference-form button::before {
                    content: "";
                    position: absolute;
                    inset: 0;
                    z-index: -1;
                    background: var(--pink-dark);
                    transform: scaleX(0);
                    transform-origin: left;
                    transition: transform .4s cubic-bezier(.22,1,.36,1);
                }

                html[data-cc-page="group-offers"] .footer-reference-form button:hover {
                    transform: translateY(-2px);
                    filter: brightness(1.06);
                }

                html[data-cc-page="group-offers"] .footer-reference-form button:hover::before {
                    transform: scaleX(1);
                }

                html[data-cc-page="group-offers"] .footer-reference-newsletter > small {
                    display: block;
                    margin-top: 9px;
                    font-size: 8px;
                    color: rgba(255,255,255,.38);
                }

                html[data-cc-page="group-offers"] .footer-reference-newsletter > small a {
                    color: rgba(255,255,255,.72);
                    text-decoration: underline;
                }

                html[data-cc-page="group-offers"] .footer-reference-bottom {
                    position: relative;
                    z-index: 2;
                    background: #0c0c0d;
                    border-top: 1px solid rgba(255,255,255,.06);
                }

                html[data-cc-page="group-offers"] .footer-reference-bottom .container {
                    min-height: 88px;
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 28px;
                    color: rgba(255,255,255,.56);
                    font-size: 9px;
                }

                html[data-cc-page="group-offers"] .footer-reference-bottom .container > div {
                    display: grid;
                    gap: 5px;
                }

                html[data-cc-page="group-offers"] .footer-powered {
                    font-size: 8px;
                }

                html[data-cc-page="group-offers"] .footer-reference-bottom a {
                    color: rgba(255,255,255,.82);
                    transition: color .2s ease;
                }

                html[data-cc-page="group-offers"] .footer-reference-bottom a:hover {
                    color: var(--pink);
                }

                html[data-cc-page="group-offers"] .footer-reference-bottom nav {
                    display: flex;
                    flex-wrap: wrap;
                    justify-content: flex-end;
                    gap: 28px;
                    font-size: 8px;
                    font-weight: 700;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                }

                @media(max-width:1180px) {
                    html[data-cc-page="group-offers"] .footer-reference-main {
                        grid-template-columns: 1fr 1fr 1fr;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-reservations {
                        grid-column: 1/-1;
                    }
                    html[data-cc-page="group-offers"] .footer-contact-cards {
                        grid-template-columns: 1fr 1fr;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-newsletter {
                        max-width: 720px;
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-offers"] .resort-select-menu {
                        width: 100%;
                        min-width: 280px;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-main {
                        grid-template-columns: 1fr 1fr;
                        gap: 46px 30px;
                        padding-top: 58px;
                        padding-bottom: 56px;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-brand, html[data-cc-page="group-offers"] .footer-reference-reservations {
                        grid-column: 1/-1;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-brand > p {
                        max-width: 500px;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-bottom .container {
                        align-items: flex-start;
                        flex-direction: column;
                        justify-content: center;
                        padding-top: 22px;
                        padding-bottom: 22px;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-bottom nav {
                        justify-content: flex-start;
                        gap: 18px;
                    }
                }

                @media(max-width:560px) {
                    html[data-cc-page="group-offers"] .resort-select-menu {
                        left: 0;
                        right: 0;
                        width: auto;
                        min-width: 0;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-main {
                        grid-template-columns: 1fr;
                        gap: 38px;
                        padding-top: 50px;
                        padding-bottom: 48px;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-brand, html[data-cc-page="group-offers"] .footer-reference-reservations {
                        grid-column: auto;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-logo img {
                        width: 172px;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-column nav {
                        gap: 13px;
                    }
                    html[data-cc-page="group-offers"] .footer-contact-cards {
                        grid-template-columns: 1fr;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-form {
                        grid-template-columns: 1fr;
                        gap: 8px;
                        border: 0;
                        background: transparent;
                    }
                    html[data-cc-page="group-offers"] .footer-reference-form input {
                        height: 52px;
                        border: 1px solid rgba(255,255,255,.15);
                        background: rgba(255,255,255,.025);
                    }
                    html[data-cc-page="group-offers"] .footer-reference-form button {
                        min-height: 52px;
                    }
                }

    

                /* =====================================================
                   V18 DATE LIMITS + FOOTER CONTAINER ALIGNMENT
                   ===================================================== */

                /* Past dates: visually and functionally disabled. */
                html[data-cc-page="group-offers"] .flatpickr-day.flatpickr-disabled, html[data-cc-page="group-offers"] .flatpickr-day.flatpickr-disabled:hover, html[data-cc-page="group-offers"] .flatpickr-day.prevMonthDay.flatpickr-disabled, html[data-cc-page="group-offers"] .flatpickr-day.nextMonthDay.flatpickr-disabled, html[data-cc-page="group-offers"] .flatpickr-day.notAllowed, html[data-cc-page="group-offers"] .flatpickr-day.notAllowed:hover {
                    color: #c9c3c6 !important;
                    background: transparent !important;
                    border-color: transparent !important;
                    box-shadow: none !important;
                    cursor: not-allowed !important;
                    transform: none !important;
                    opacity: .48 !important;
                    pointer-events: none !important;
                }

                html[data-cc-page="group-offers"] .flatpickr-prev-month.flatpickr-disabled, html[data-cc-page="group-offers"] .flatpickr-next-month.flatpickr-disabled {
                    opacity: .22 !important;
                    cursor: default !important;
                    pointer-events: none !important;
                }

                /* Keep the whole footer on exactly the same left/right rails as the copyright bar. */
                html[data-cc-page="group-offers"] .footer-reference > .container.footer-reference-main {
                    width: min(1420px,calc(100% - 80px)) !important;
                    max-width: 1420px !important;
                    margin-left: auto !important;
                    margin-right: auto !important;
                    padding-left: 0 !important;
                    padding-right: 0 !important;
                }

                html[data-cc-page="group-offers"] .footer-reference-bottom > .container {
                    width: min(1420px,calc(100% - 80px)) !important;
                    max-width: 1420px !important;
                    margin-left: auto !important;
                    margin-right: auto !important;
                }

                @media(max-width:1100px) {
                    html[data-cc-page="group-offers"] .footer-reference > .container.footer-reference-main, html[data-cc-page="group-offers"] .footer-reference-bottom > .container {
                        width: min(100% - 44px,1420px) !important;
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-offers"] .footer-reference > .container.footer-reference-main, html[data-cc-page="group-offers"] .footer-reference-bottom > .container {
                        width: calc(100% - 30px) !important;
                    }
                }

    

                /* =====================================================
                   V19 STICKY LOGO + CLEAR BOOKING LABELS
                   ===================================================== */

                /* Larger horizontal logo in the desktop sticky header. */
                @media(min-width:1251px) {
                    html[data-cc-page="group-offers"] .header.sticky .brand {
                        width: 250px !important;
                        flex: 0 0 250px !important;
                    }

                    html[data-cc-page="group-offers"] .header.sticky .brand-dark {
                        width: 230px !important;
                        max-height: 64px !important;
                        object-fit: contain !important;
                        object-position: left center !important;
                    }
                }

                /* Keep the larger logo balanced on medium desktop widths. */
                @media(min-width:1101px) and (max-width:1250px) {
                    html[data-cc-page="group-offers"] .header.sticky .brand {
                        width: 205px !important;
                        flex: 0 0 205px !important;
                    }

                    html[data-cc-page="group-offers"] .header.sticky .brand-dark {
                        width: 192px !important;
                        max-height: 54px !important;
                    }
                }

                /* Booking labels: stronger contrast and easier scanning over the transparent panel. */
                html[data-cc-page="group-offers"] .booking-card .field > label {
                    color: #2b2428 !important;
                    font-size: 10px !important;
                    font-weight: 700 !important;
                    letter-spacing: .135em !important;
                    line-height: 1.2 !important;
                    margin-bottom: 8px !important;
                    opacity: 1 !important;
                }

                @media(max-width:767px) {
                    html[data-cc-page="group-offers"] .mobile-booking-modal .field > label {
                        color: #2b2428 !important;
                        font-size: 9px !important;
                        font-weight: 700 !important;
                        letter-spacing: .12em !important;
                        margin-bottom: 7px !important;
                        opacity: 1 !important;
                    }
                }


                /* =====================================================
                   V20 MOBILE REVIEW - RESORT CARD / LOYALTY / OFFERS
                   Mobile only. Desktop and tablet remain unchanged.
                   ===================================================== */
                @media(max-width:767px) {
                    /* 1) Resort cards occupy the full phone viewport width. */
                    html[data-cc-page="group-offers"] .resort-viewport {
                        width: calc(100% + 30px) !important;
                        margin-left: -15px !important;
                        margin-right: -15px !important;
                        overflow: hidden !important;
                    }

                    html[data-cc-page="group-offers"] .resort-track {
                        gap: 0 !important;
                    }

                    html[data-cc-page="group-offers"] .resort-story {
                        flex: 0 0 100vw !important;
                        width: 100vw !important;
                        max-width: 100vw !important;
                    }

                    /* Keep card content comfortably inside the full-width image. */
                    html[data-cc-page="group-offers"] .resort-story .story-copy {
                        left: 24px !important;
                        right: 24px !important;
                    }

                    html[data-cc-page="group-offers"] .resort-story .story-index {
                        left: 20px !important;
                    }

                    html[data-cc-page="group-offers"] .resort-story .story-link {
                        right: 20px !important;
                    }

                    /* 2) Loyalty: mobile-specific image treatment + centered content. */
                    html[data-cc-page="group-offers"] .loyalty {
                        min-height: 590px !important;
                        background-image: url("../images/Charmillion-Sea-Life-Hero-Banner.jpg"),
                                          url("https://charmillionresorts.com/images/uploads/Charmillion-Sea-Life-Resort-Lobby.jpg") !important;
                        background-position: center center, center center !important;
                        background-size: cover, cover !important;
                        background-repeat: no-repeat, no-repeat !important;
                        background-attachment: scroll, scroll !important;
                        align-items: center !important;
                    }

                    html[data-cc-page="group-offers"] .loyalty::after {
                        background: linear-gradient(180deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.56) 48%,rgba(0,0,0,.68) 100%) !important;
                    }

                    html[data-cc-page="group-offers"] .loyalty .container {
                        display: flex !important;
                        justify-content: center !important;
                        align-items: center !important;
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy {
                        width: min(100%,430px) !important;
                        max-width: 430px !important;
                        margin: 0 auto !important;
                        text-align: center !important;
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy .eyebrow {
                        text-align: center !important;
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy h2 {
                        margin-left: auto !important;
                        margin-right: auto !important;
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy p {
                        margin-left: auto !important;
                        margin-right: auto !important;
                        max-width: 360px !important;
                    }

                    html[data-cc-page="group-offers"] .loyalty-copy .btn {
                        margin-left: auto !important;
                        margin-right: auto !important;
                    }

                    /* 3) View All Offers centered on phone screens. */
                    html[data-cc-page="group-offers"] .offers-bottom {
                        justify-content: center !important;
                    }
                }


                /* =====================================================
                   V21 MOBILE RESORT CAROUSEL - EXACTLY ONE CARD PER VIEW
                   Mobile only: no previous/next card peeking at rest.
                   ===================================================== */
                @media(max-width:767px) {
                    html[data-cc-page="group-offers"] .resort-viewport {
                        width: 100vw !important;
                        max-width: 100vw !important;
                        margin-left: calc(50% - 50vw) !important;
                        margin-right: calc(50% - 50vw) !important;
                        overflow: hidden !important;
                        padding: 0 !important;
                    }

                    html[data-cc-page="group-offers"] .resort-track {
                        width: 100% !important;
                        gap: 0 !important;
                        padding: 0 !important;
                    }

                    html[data-cc-page="group-offers"] .resort-story {
                        flex: 0 0 100% !important;
                        width: 100% !important;
                        min-width: 100% !important;
                        max-width: 100% !important;
                        margin: 0 !important;
                    }
                }

    

                /* =====================================================
                   V23 LANGUAGE DROPDOWN - DESKTOP + MOBILE
                   ===================================================== */
                html[data-cc-page="group-offers"] .language-switcher {
                    position: relative;
                    flex: 0 0 auto;
                    margin-left: 18px;
                }

                html[data-cc-page="group-offers"] .language-trigger {
                    height: 44px;
                    min-width: 82px;
                    padding: 0 12px;
                    border: 1px solid rgba(255,255,255,.32);
                    background: rgba(255,255,255,.07);
                    color: inherit;
                    display: inline-flex;
                    align-items: center;
                    justify-content: center;
                    gap: 8px;
                    font-size: 11px;
                    font-weight: 600;
                    letter-spacing: .08em;
                    text-transform: uppercase;
                    transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
                }

                html[data-cc-page="group-offers"] .language-trigger:hover, html[data-cc-page="group-offers"] .language-switcher.open .language-trigger {
                    background: rgba(169,0,97,.12);
                    border-color: var(--pink);
                    transform: translateY(-1px);
                }

                html[data-cc-page="group-offers"] .header.sticky .language-trigger {
                    background: #fff;
                    border-color: #dedede;
                    color: #171717;
                }

                html[data-cc-page="group-offers"] .header.sticky .language-trigger:hover, html[data-cc-page="group-offers"] .header.sticky .language-switcher.open .language-trigger {
                    color: var(--pink);
                    border-color: var(--pink);
                    background: #fff;
                }

                html[data-cc-page="group-offers"] .language-flag {
                    font-size: 17px;
                    line-height: 1;
                    letter-spacing: 0;
                }

                html[data-cc-page="group-offers"] .language-trigger .fa-angle-down {
                    font-size: 9px;
                    transition: transform .25s ease;
                }

                html[data-cc-page="group-offers"] .language-switcher.open .language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                }

                html[data-cc-page="group-offers"] .language-menu {
                    position: absolute;
                    top: calc(100% + 12px);
                    right: 0;
                    width: 205px;
                    background: #fff;
                    color: #171717;
                    border-top: 3px solid var(--pink);
                    box-shadow: 0 18px 45px rgba(0,0,0,.16);
                    padding: 7px 0;
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transform: translateY(9px);
                    transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
                    z-index: 245;
                }

                html[data-cc-page="group-offers"] .language-switcher.open .language-menu {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: none;
                }

                html[data-cc-page="group-offers"] .language-menu a {
                    display: grid;
                    grid-template-columns: 28px 1fr auto;
                    align-items: center;
                    gap: 10px;
                    min-height: 48px;
                    padding: 8px 14px;
                    border-bottom: 1px solid #eee;
                    transition: background .2s ease,color .2s ease,padding-left .2s ease;
                }

                html[data-cc-page="group-offers"] .language-menu a:last-child {
                    border-bottom: 0;
                }

                html[data-cc-page="group-offers"] .language-menu a:hover, html[data-cc-page="group-offers"] .language-menu a.is-current {
                    background: #faf6f8;
                    color: var(--pink);
                    padding-left: 18px;
                }

                html[data-cc-page="group-offers"] .language-menu .language-name {
                    font-size: 12px;
                    font-weight: 500;
                    letter-spacing: .02em;
                    text-transform: none;
                }

                html[data-cc-page="group-offers"] .language-menu .language-code {
                    font-size: 9px;
                    font-weight: 700;
                    letter-spacing: .12em;
                    color: #9b9b9b;
                }

                html[data-cc-page="group-offers"] .language-menu a.is-current .language-code {
                    color: var(--pink);
                }

                html[data-cc-page="group-offers"] .drawer-language {
                    margin-top: 18px;
                    padding-top: 18px;
                    border-top: 1px solid #eee;
                }

                html[data-cc-page="group-offers"] .drawer-language .drawer-toggle {
                    padding-top: 12px;
                    padding-bottom: 12px;
                }

                html[data-cc-page="group-offers"] .drawer-language-current {
                    display: inline-flex;
                    align-items: center;
                    gap: 9px;
                }

                html[data-cc-page="group-offers"] .drawer-language-list a {
                    display: grid !important;
                    grid-template-columns: 28px 1fr auto;
                    align-items: center;
                    gap: 10px;
                    padding: 12px 16px !important;
                }

                html[data-cc-page="group-offers"] .drawer-language-list a.is-current {
                    color: var(--pink);
                    background: #faf6f8;
                }

                html[data-cc-page="group-offers"] .drawer-language-list .language-code {
                    font-size: 9px;
                    font-weight: 700;
                    letter-spacing: .12em;
                    color: #999;
                }

                @media(max-width:1100px) {
                    html[data-cc-page="group-offers"] .language-switcher {
                        margin-left: 12px;
                    }
                    html[data-cc-page="group-offers"] .language-trigger {
                        min-width: 74px;
                        padding: 0 10px;
                    }
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-offers"] .language-switcher {
                        display: none;
                    }
                }



                /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
                html[data-cc-page="group-offers"] .language-flag-img {
                    display: block;
                    width: 24px;
                    height: 15px;
                    object-fit: cover;
                    border-radius: 1px;
                    box-shadow: 0 0 0 1px rgba(0,0,0,.12);
                    flex: 0 0 auto;
                }

                html[data-cc-page="group-offers"] .header-top .container {
                    gap: 18px;
                }

                html[data-cc-page="group-offers"] .topbar-language {
                    margin-left: 2px !important;
                    height: 100%;
                    display: flex;
                    align-items: center;
                    position: relative;
                }

                html[data-cc-page="group-offers"] .topbar-language::before {
                    content: "";
                    width: 1px;
                    height: 13px;
                    background: rgba(255,255,255,.25);
                    margin-right: 12px;
                }

                html[data-cc-page="group-offers"] .topbar-language .language-trigger {
                    min-width: 48px;
                    width: auto;
                    height: 26px;
                    padding: 0 7px;
                    gap: 7px;
                    border: 0;
                    background: transparent;
                    color: #fff;
                    border-radius: 2px;
                }

                html[data-cc-page="group-offers"] .topbar-language .language-trigger:hover, html[data-cc-page="group-offers"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-offers"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

                html[data-cc-page="group-offers"] .topbar-language .language-menu {
                    top: calc(100% + 7px);
                    right: 0;
                    width: 184px;
                    padding: 6px 0;
                }

                html[data-cc-page="group-offers"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                html[data-cc-page="group-offers"] .topbar-language .language-menu a:hover, html[data-cc-page="group-offers"] .topbar-language .language-menu a.is-current {
                    padding-left: 17px;
                }

                html[data-cc-page="group-offers"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

                /* V24: remove the old main-row desktop language control completely. */
                html[data-cc-page="group-offers"] .header-main > .container > .language-switcher {
                    display: none !important;
                }

                html[data-cc-page="group-offers"] .drawer-language-current {
                    display: inline-flex;
                    align-items: center;
                    gap: 10px;
                }

                html[data-cc-page="group-offers"] .drawer-language-list a {
                    display: grid !important;
                    grid-template-columns: 32px 1fr !important;
                    gap: 11px !important;
                    align-items: center;
                    padding: 12px 16px !important;
                }

                html[data-cc-page="group-offers"] .drawer-language-list .language-flag-img {
                    width: 26px;
                    height: 17px;
                }

                html[data-cc-page="group-offers"] .drawer-connect {
                    margin-top: 22px;
                    padding-top: 22px;
                    border-top: 1px solid #ececec;
                }

                html[data-cc-page="group-offers"] .drawer-email {
                    display: grid;
                    grid-template-columns: 42px minmax(0,1fr);
                    align-items: center;
                    gap: 12px;
                    padding: 13px 0;
                    color: #1c1c1c;
                }

                html[data-cc-page="group-offers"] .drawer-contact-icon {
                    width: 42px;
                    height: 42px;
                    border-radius: 50%;
                    background: rgba(169,0,97,.08);
                    color: var(--pink);
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-size: 14px;
                }

                html[data-cc-page="group-offers"] .drawer-email-copy {
                    min-width: 0;
                }

                html[data-cc-page="group-offers"] .drawer-email-copy small {
                    display: block;
                    margin-bottom: 4px;
                    font-size: 8px;
                    font-weight: 600;
                    letter-spacing: .16em;
                    text-transform: uppercase;
                    color: #9a9a9a;
                }

                html[data-cc-page="group-offers"] .drawer-email-copy strong {
                    display: block;
                    overflow: hidden;
                    text-overflow: ellipsis;
                    white-space: nowrap;
                    font-size: 11px;
                    font-weight: 500;
                    color: #2a2a2a;
                }

                html[data-cc-page="group-offers"] .drawer-email:hover .drawer-email-copy strong {
                    color: var(--pink);
                }

                html[data-cc-page="group-offers"] .drawer-social-row {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: 15px;
                    margin-top: 14px;
                }

                html[data-cc-page="group-offers"] .drawer-social-label {
                    font-size: 8px;
                    font-weight: 600;
                    letter-spacing: .14em;
                    text-transform: uppercase;
                    color: #949494;
                }

                html[data-cc-page="group-offers"] .drawer-socials {
                    display: flex;
                    align-items: center;
                    gap: 8px;
                }

                html[data-cc-page="group-offers"] .drawer-socials a {
                    width: 36px;
                    height: 36px;
                    border: 1px solid #dfdfdf;
                    border-radius: 50%;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    color: #363636;
                    font-size: 12px;
                    transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
                }

                html[data-cc-page="group-offers"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

                html[data-cc-page="group-offers"] .drawer .drawer-book-now {
                    margin-top: 22px;
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-offers"] .topbar-language {
                        display: none !important;
                    }
                }

                @media(max-width:390px) {
                    html[data-cc-page="group-offers"] .drawer {
                        padding-left: 22px;
                        padding-right: 22px;
                    }

                    html[data-cc-page="group-offers"] .drawer-social-row {
                        align-items: flex-start;
                        flex-direction: column;
                    }

                    html[data-cc-page="group-offers"] .drawer-socials {
                        width: 100%;
                    }
                }



                /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
                html[data-cc-page="group-offers"] .mobile-header-actions {
                    display: none;
                    margin-left: auto;
                    align-items: center;
                    gap: 7px;
                    position: relative;
                    z-index: 260;
                }

                html[data-cc-page="group-offers"] .mobile-language-switcher {
                    position: relative;
                    display: none;
                    align-items: center;
                }

                html[data-cc-page="group-offers"] .mobile-language-trigger {
                    width: 48px;
                    height: 44px;
                    padding: 0;
                    border: 0;
                    background: transparent;
                    color: #171717;
                    display: inline-flex;
                    align-items: center;
                    justify-content: center;
                    gap: 6px;
                    border-radius: 2px;
                    transition: background .25s ease,color .25s ease;
                }

                html[data-cc-page="group-offers"] .mobile-language-trigger .language-flag-img {
                    width: 25px;
                    height: 16px;
                }

                html[data-cc-page="group-offers"] .mobile-language-trigger .fa-angle-down {
                    font-size: 8px;
                    color: #777;
                    transition: transform .25s ease,color .25s ease;
                }

                html[data-cc-page="group-offers"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-offers"] .mobile-language-trigger:hover {
                    background: rgba(169,0,97,.06);
                }

                html[data-cc-page="group-offers"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

                html[data-cc-page="group-offers"] .mobile-language-menu {
                    position: absolute;
                    right: 0;
                    top: calc(100% + 8px);
                    width: 188px;
                    padding: 6px 0;
                    background: #fff;
                    color: #171717;
                    border-top: 3px solid var(--pink);
                    box-shadow: 0 18px 45px rgba(0,0,0,.18);
                    opacity: 0;
                    visibility: hidden;
                    pointer-events: none;
                    transform: translateY(8px);
                    transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
                    z-index: 290;
                }

                html[data-cc-page="group-offers"] .mobile-language-switcher.open .mobile-language-menu {
                    opacity: 1;
                    visibility: visible;
                    pointer-events: auto;
                    transform: none;
                }

                html[data-cc-page="group-offers"] .mobile-language-menu a {
                    min-height: 46px;
                    padding: 8px 14px;
                    display: grid;
                    grid-template-columns: 32px 1fr;
                    align-items: center;
                    gap: 10px;
                    border-bottom: 1px solid #eee;
                    font-size: 11px;
                    font-weight: 500;
                    color: #242424;
                    transition: background .2s ease,color .2s ease,padding-left .2s ease;
                }

                html[data-cc-page="group-offers"] .mobile-language-menu a:last-child {
                    border-bottom: 0;
                }

                html[data-cc-page="group-offers"] .mobile-language-menu a:hover, html[data-cc-page="group-offers"] .mobile-language-menu a.is-current {
                    color: var(--pink);
                    background: #faf6f8;
                    padding-left: 18px;
                }

                html[data-cc-page="group-offers"] .mobile-language-menu .language-flag-img {
                    width: 27px;
                    height: 17px;
                }

                @media(max-width:820px) {
                    html[data-cc-page="group-offers"] .mobile-header-actions {
                        display: flex;
                    }

                    html[data-cc-page="group-offers"] .mobile-header-actions .mobile-trigger {
                        display: block;
                        margin-left: 0;
                    }

                    html[data-cc-page="group-offers"] .mobile-language-switcher {
                        display: flex;
                    }
                }

                @media(max-width:390px) {
                    html[data-cc-page="group-offers"] .mobile-header-actions {
                        gap: 3px;
                    }

                    html[data-cc-page="group-offers"] .mobile-language-trigger, html[data-cc-page="group-offers"] .mobile-header-actions .mobile-trigger {
                        width: 42px;
                    }

                    html[data-cc-page="group-offers"] .mobile-language-menu {
                        right: -43px;
                    }
                }

    

        /* =====================================================
           OFFERS PAGE CONCEPT 02 - IMMERSIVE EDITORIAL
           Built on the approved Group Home design system
        ===================================================== */
        html[data-cc-page="group-offers"] body.offers-page{background:#fff}
        html[data-cc-page="group-offers"] .offers-page .menu-item > .menu-link[href="group_Offers.html"]::after{right:0}

        /* Page hero */
        html[data-cc-page="group-offers"] .offers-page-hero{
            position:relative;
            height:78svh;
            min-height:690px;
            overflow:hidden;
            background:#111;
            color:#fff
        }
        html[data-cc-page="group-offers"] .offers-page-hero-media{position:absolute;inset:0;overflow:hidden}
        html[data-cc-page="group-offers"] .offers-page-hero-media img{
            height:100%;object-fit:cover;object-position:center 54%;
            animation:offersHeroDrift_cc_groupoffers 11s ease-in-out alternate infinite;
            transform-origin:center center
        }
        @keyframes offersHeroDrift_cc_groupoffers{
            from{transform:scale(1.035) translate3d(0,0,0)}
            to{transform:scale(1.115) translate3d(-1.2%,-1%,0)}
        }
        html[data-cc-page="group-offers"] .offers-page-hero::after{
            content:"";position:absolute;inset:0;z-index:2;
            background:
                linear-gradient(180deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.13) 38%,rgba(0,0,0,.08) 58%,rgba(0,0,0,.56) 100%),
                linear-gradient(90deg,rgba(0,0,0,.46) 0%,rgba(0,0,0,.14) 48%,rgba(0,0,0,.04) 100%)
        }
        html[data-cc-page="group-offers"] .offers-page-hero-inner{
            position:relative;z-index:3;height:100%;display:flex;align-items:flex-end;
            padding-bottom:146px
        }
        html[data-cc-page="group-offers"] .offers-page-hero-copy{max-width:830px}
        html[data-cc-page="group-offers"] .offers-page-hero-copy .eyebrow{display:flex;align-items:center;gap:14px;color:rgba(255,255,255,.88);margin-bottom:20px}
        html[data-cc-page="group-offers"] .offers-page-hero-copy .eyebrow::before{content:"";width:42px;height:2px;background:var(--pink)}
        html[data-cc-page="group-offers"] .offers-page-hero h1{
            font-family:var(--display);font-size:clamp(60px,6.4vw,102px);line-height:.92;
            font-weight:400;letter-spacing:-.045em;max-width:900px
        }
        html[data-cc-page="group-offers"] .offers-page-hero p{font-size:14px;line-height:1.8;color:rgba(255,255,255,.82);max-width:500px;margin-top:22px}
        html[data-cc-page="group-offers"] .offers-hero-mark{
            position:absolute;z-index:3;right:46px;bottom:154px;display:flex;align-items:center;gap:15px;
            font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.68)
        }
        html[data-cc-page="group-offers"] .offers-hero-mark::before{content:"";width:72px;height:1px;background:rgba(255,255,255,.45)}

        /* Keep the approved booking form, but compose it into this hero */
        html[data-cc-page="group-offers"] .offers-page .booking-shell{position:relative!important;top:auto!important;margin-top:-76px!important;margin-bottom:0!important;z-index:32!important}
        html[data-cc-page="group-offers"] .offers-page .booking-card{background:rgba(255,255,255,.76)!important;box-shadow:0 22px 50px rgba(0,0,0,.14)!important}

        /* Intro - deliberately not a title/paragraph/card block */
        html[data-cc-page="group-offers"] .offers-intro-editorial{position:relative;padding:150px 0 138px;background:#fff;overflow:hidden}
        html[data-cc-page="group-offers"] .offers-intro-editorial::before{
            content:"OFFERS";position:absolute;right:-14px;top:42px;font-family:var(--display);
            font-size:clamp(130px,17vw,260px);line-height:.8;letter-spacing:-.07em;color:#f4f1f2;pointer-events:none
        }
        html[data-cc-page="group-offers"] .offers-intro-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .75fr;gap:130px;align-items:end}
        html[data-cc-page="group-offers"] .offers-intro-title .eyebrow{color:var(--pink);margin-bottom:19px}
        html[data-cc-page="group-offers"] .offers-intro-title h2{font-family:var(--display);font-size:clamp(56px,6vw,88px);line-height:.96;font-weight:400;letter-spacing:-.045em}
        html[data-cc-page="group-offers"] .offers-intro-title h2 em{font-style:italic;color:var(--pink)}
        html[data-cc-page="group-offers"] .offers-intro-side{padding-bottom:8px}
        html[data-cc-page="group-offers"] .offers-intro-side p{font-size:14px;line-height:1.9;color:#6e6a6c;max-width:470px}
        html[data-cc-page="group-offers"] .offers-intro-side span{display:flex;align-items:center;gap:14px;margin-top:30px;font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#1b1b1b}
        html[data-cc-page="group-offers"] .offers-intro-side span::before{content:"";width:46px;height:1px;background:var(--pink)}

        /* Shared visible replay motion */
        html[data-cc-page="group-offers"] .motion-text{opacity:0;transform:translateY(64px);filter:blur(7px);transition:opacity .92s ease,transform 1.05s cubic-bezier(.22,1,.36,1),filter .8s ease;transition-delay:var(--delay,0ms)}
        html[data-cc-page="group-offers"] .motion-text.in-view{opacity:1;transform:none;filter:none}
        html[data-cc-page="group-offers"] .curtain-reveal{position:relative;overflow:hidden;background:#090909}
        html[data-cc-page="group-offers"] .curtain-reveal::after{
            content:"";position:absolute;inset:-1px;z-index:5;background:#0a0a0b;
            transform:scaleX(1);transform-origin:right center;
            transition:transform 1.18s cubic-bezier(.77,0,.18,1);pointer-events:none
        }
        html[data-cc-page="group-offers"] .curtain-reveal.reveal-from-left::after{transform-origin:left center}
        html[data-cc-page="group-offers"] .curtain-reveal.in-view::after{transform:scaleX(0)}
        html[data-cc-page="group-offers"] .curtain-reveal img{transform:scale(1.08);transition:transform 1.55s cubic-bezier(.22,1,.36,1)}
        html[data-cc-page="group-offers"] .curtain-reveal.in-view img{transform:scale(1)}

        /* Featured offer */
        html[data-cc-page="group-offers"] .offer-feature{padding:0 0 155px;background:#f6f3f4;overflow:hidden}
        html[data-cc-page="group-offers"] .offer-feature-shell{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.68fr);align-items:center;min-height:720px}
        html[data-cc-page="group-offers"] .offer-feature-image{height:720px}
        html[data-cc-page="group-offers"] .offer-feature-image img{height:100%;object-fit:cover}
        html[data-cc-page="group-offers"] .offer-feature-copy{position:relative;margin-left:-72px;background:#fff;padding:74px 68px 70px;z-index:8;box-shadow:0 28px 70px rgba(30,11,20,.10)}
        html[data-cc-page="group-offers"] .offer-feature-copy::before{content:"01";position:absolute;right:28px;top:24px;font-family:var(--display);font-size:92px;line-height:1;color:#f0e9ed;letter-spacing:-.07em}
        html[data-cc-page="group-offers"] .offer-feature-copy .eyebrow{color:var(--pink);margin-bottom:18px;position:relative;z-index:2}
        html[data-cc-page="group-offers"] .offer-feature-copy h2{font-family:var(--display);font-size:clamp(52px,5vw,78px);font-weight:400;line-height:.96;letter-spacing:-.045em;position:relative;z-index:2}
        html[data-cc-page="group-offers"] .offer-feature-copy p{font-size:13px;line-height:1.9;color:#6e6a6c;margin:24px 0 28px;max-width:420px;position:relative;z-index:2}
        html[data-cc-page="group-offers"] .offer-validity{display:flex;gap:26px;align-items:center;padding:15px 0;border-top:1px solid #eee;border-bottom:1px solid #eee;margin-bottom:30px}
        html[data-cc-page="group-offers"] .offer-validity div{display:grid;gap:3px}
        html[data-cc-page="group-offers"] .offer-validity small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#999}
        html[data-cc-page="group-offers"] .offer-validity strong{font-size:11px;font-weight:500;color:#222}

        /* A single coherent editorial flow */
        html[data-cc-page="group-offers"] .offer-flow{background:#fff;padding:150px 0}
        html[data-cc-page="group-offers"] .offer-flow-head{display:grid;grid-template-columns:1fr .8fr;gap:100px;align-items:end;margin-bottom:80px}
        html[data-cc-page="group-offers"] .offer-flow-head h2{font-family:var(--display);font-size:clamp(54px,5.6vw,82px);font-weight:400;line-height:.98;letter-spacing:-.04em}
        html[data-cc-page="group-offers"] .offer-flow-head p{font-size:13px;line-height:1.85;color:#777;max-width:470px;margin-left:auto}
        html[data-cc-page="group-offers"] .offer-chapter{display:grid;grid-template-columns:1.08fr .92fr;gap:78px;align-items:center;margin-bottom:130px}
        html[data-cc-page="group-offers"] .offer-chapter.reverse{grid-template-columns:.92fr 1.08fr}
        html[data-cc-page="group-offers"] .offer-chapter.reverse .offer-chapter-media{order:2}
        html[data-cc-page="group-offers"] .offer-chapter.reverse .offer-chapter-copy{order:1;padding-left:72px;padding-right:0}
        html[data-cc-page="group-offers"] .offer-chapter-media{height:610px;position:relative}
        html[data-cc-page="group-offers"] .offer-chapter-media img{height:100%;object-fit:cover}
        html[data-cc-page="group-offers"] .offer-chapter-media .chapter-number{position:absolute;z-index:6;left:24px;top:22px;padding:9px 12px;background:rgba(12,12,12,.72);color:#fff;font-size:9px;letter-spacing:.15em;text-transform:uppercase}
        html[data-cc-page="group-offers"] .offer-chapter-copy{padding-right:72px}
        html[data-cc-page="group-offers"] .offer-chapter-copy .eyebrow{color:var(--pink);margin-bottom:17px}
        html[data-cc-page="group-offers"] .offer-chapter-copy h3{font-family:var(--display);font-size:clamp(48px,4.6vw,70px);line-height:.98;font-weight:400;letter-spacing:-.04em}
        html[data-cc-page="group-offers"] .offer-chapter-copy p{font-size:13px;line-height:1.9;color:#747074;max-width:470px;margin:22px 0 27px}
        html[data-cc-page="group-offers"] .offer-text-link{display:inline-flex;align-items:center;gap:12px;font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--pink);padding-bottom:5px;border-bottom:1px solid rgba(169,0,97,.35)}
        html[data-cc-page="group-offers"] .offer-text-link i{transition:transform .25s ease}
        html[data-cc-page="group-offers"] .offer-text-link:hover i{transform:translateX(5px)}

        /* Full-screen visual break */
        html[data-cc-page="group-offers"] .offers-visual-break{position:relative;min-height:780px;display:flex;align-items:center;overflow:hidden;color:#fff;background:#111}
        html[data-cc-page="group-offers"] .offers-visual-break-media{position:absolute;inset:-6% 0;height:112%;will-change:transform}
        html[data-cc-page="group-offers"] .offers-visual-break-media img{height:100%;object-fit:cover;object-position:center 54%}
        html[data-cc-page="group-offers"] .offers-visual-break::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.34) 50%,rgba(0,0,0,.12) 100%)}
        html[data-cc-page="group-offers"] .offers-visual-break .container{position:relative;z-index:3}
        html[data-cc-page="group-offers"] .offers-visual-break-copy{max-width:780px}
        html[data-cc-page="group-offers"] .offers-visual-break-copy .eyebrow{margin-bottom:22px;color:rgba(255,255,255,.76)}
        html[data-cc-page="group-offers"] .offers-visual-break-copy h2{font-family:var(--display);font-size:clamp(60px,6.8vw,100px);font-weight:400;line-height:.91;letter-spacing:-.05em}
        html[data-cc-page="group-offers"] .offers-visual-break-copy p{font-size:14px;line-height:1.85;color:rgba(255,255,255,.76);max-width:480px;margin:25px 0 30px}

        /* Closing offers - same visual language, not a random grid */
        html[data-cc-page="group-offers"] .offer-closing{padding:150px 0;background:#f6f3f4}
        html[data-cc-page="group-offers"] .offer-closing-top{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:56px}
        html[data-cc-page="group-offers"] .offer-closing-top h2{font-family:var(--display);font-size:clamp(52px,5vw,76px);font-weight:400;line-height:1;letter-spacing:-.04em}
        html[data-cc-page="group-offers"] .offer-closing-top p{font-size:12px;line-height:1.8;color:#777;max-width:410px}
        html[data-cc-page="group-offers"] .offer-closing-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
        html[data-cc-page="group-offers"] .offer-closing-card{background:#fff;position:relative}
        html[data-cc-page="group-offers"] .offer-closing-card .visual{height:470px;position:relative}
        html[data-cc-page="group-offers"] .offer-closing-card .visual img{height:100%;object-fit:cover}
        html[data-cc-page="group-offers"] .offer-closing-card .body{padding:32px 34px 36px}
        html[data-cc-page="group-offers"] .offer-closing-card .meta{display:flex;align-items:center;gap:10px;margin-bottom:11px;font-size:8px;letter-spacing:.15em;text-transform:uppercase;color:#8b8789}
        html[data-cc-page="group-offers"] .offer-closing-card .meta b{width:22px;height:1px;background:var(--pink)}
        html[data-cc-page="group-offers"] .offer-closing-card h3{font-family:var(--display);font-size:38px;font-weight:400;line-height:1.05;letter-spacing:-.025em}
        html[data-cc-page="group-offers"] .offer-closing-card p{font-size:11px;line-height:1.75;color:#777;margin:12px 0 21px;max-width:470px}

        /* Final CTA - controlled and on-brand */
        html[data-cc-page="group-offers"] .offers-final-cta{background:#161315;color:#fff;padding:92px 0}
        html[data-cc-page="group-offers"] .offers-final-cta-inner{display:grid;grid-template-columns:1.2fr auto;gap:70px;align-items:center}
        html[data-cc-page="group-offers"] .offers-final-cta .eyebrow{color:var(--pink);margin-bottom:14px}
        html[data-cc-page="group-offers"] .offers-final-cta h2{font-family:var(--display);font-size:clamp(44px,4.8vw,68px);font-weight:400;line-height:1;letter-spacing:-.035em}
        html[data-cc-page="group-offers"] .offers-final-cta p{font-size:12px;line-height:1.8;color:rgba(255,255,255,.58);max-width:520px;margin-top:14px}

        @media(max-width:1100px){
            html[data-cc-page="group-offers"] .offers-page-hero{min-height:720px}html[data-cc-page="group-offers"] .offers-page-hero-inner{padding-bottom:170px}
            html[data-cc-page="group-offers"] .offers-intro-grid{gap:70px}html[data-cc-page="group-offers"] .offer-feature-shell{grid-template-columns:1.25fr .75fr}html[data-cc-page="group-offers"] .offer-feature-copy{margin-left:-45px;padding:58px 48px}
            html[data-cc-page="group-offers"] .offer-chapter{gap:48px}html[data-cc-page="group-offers"] .offer-chapter-copy{padding-right:30px}html[data-cc-page="group-offers"] .offer-chapter.reverse .offer-chapter-copy{padding-left:30px}
        }
        @media(max-width:820px){
            html[data-cc-page="group-offers"] .offers-page-hero{height:720px;min-height:720px;padding-top:72px}html[data-cc-page="group-offers"] .offers-page-hero-inner{padding-bottom:94px}html[data-cc-page="group-offers"] .offers-page-hero h1{font-size:58px}html[data-cc-page="group-offers"] .offers-hero-mark{display:none}
            html[data-cc-page="group-offers"] .offers-page .booking-shell{display:block!important;margin-top:-82px!important;margin-bottom:0!important}
            html[data-cc-page="group-offers"] .offers-intro-editorial{padding:110px 0}html[data-cc-page="group-offers"] .offers-intro-grid{grid-template-columns:1fr;gap:34px}html[data-cc-page="group-offers"] .offers-intro-editorial::before{font-size:190px;top:58px}
            html[data-cc-page="group-offers"] .offer-feature{padding-bottom:110px}html[data-cc-page="group-offers"] .offer-feature-shell{grid-template-columns:1fr;min-height:0}html[data-cc-page="group-offers"] .offer-feature-image{height:560px}html[data-cc-page="group-offers"] .offer-feature-copy{margin:-80px 30px 0;padding:48px 40px}
            html[data-cc-page="group-offers"] .offer-flow{padding:110px 0}html[data-cc-page="group-offers"] .offer-flow-head{grid-template-columns:1fr;gap:24px;margin-bottom:55px}html[data-cc-page="group-offers"] .offer-flow-head p{margin:0}
            html[data-cc-page="group-offers"] .offer-chapter, html[data-cc-page="group-offers"] .offer-chapter.reverse{grid-template-columns:1fr;gap:34px;margin-bottom:92px}html[data-cc-page="group-offers"] .offer-chapter.reverse .offer-chapter-media, html[data-cc-page="group-offers"] .offer-chapter.reverse .offer-chapter-copy{order:initial}html[data-cc-page="group-offers"] .offer-chapter-media{height:520px}html[data-cc-page="group-offers"] .offer-chapter-copy, html[data-cc-page="group-offers"] .offer-chapter.reverse .offer-chapter-copy{padding:0}
            html[data-cc-page="group-offers"] .offers-visual-break{min-height:650px}html[data-cc-page="group-offers"] .offer-closing{padding:110px 0}html[data-cc-page="group-offers"] .offer-closing-top{display:block}html[data-cc-page="group-offers"] .offer-closing-top p{margin-top:18px}html[data-cc-page="group-offers"] .offer-closing-grid{grid-template-columns:1fr}html[data-cc-page="group-offers"] .offer-closing-card .visual{height:420px}
            html[data-cc-page="group-offers"] .offers-final-cta-inner{grid-template-columns:1fr;gap:30px}
        }
        @media(max-width:767px){
            html[data-cc-page="group-offers"] .offers-page .booking-shell{display:none!important}
        }
        @media(max-width:560px){
            html[data-cc-page="group-offers"] .offers-page-hero{height:680px;min-height:680px}html[data-cc-page="group-offers"] .offers-page-hero-inner{padding-bottom:88px}html[data-cc-page="group-offers"] .offers-page-hero h1{font-size:48px}html[data-cc-page="group-offers"] .offers-page-hero p{font-size:12px;max-width:340px}
            html[data-cc-page="group-offers"] .offers-intro-editorial{padding:92px 0 96px}html[data-cc-page="group-offers"] .offers-intro-editorial::before{font-size:145px}html[data-cc-page="group-offers"] .offers-intro-title h2{font-size:47px}
            html[data-cc-page="group-offers"] .offer-feature-image{height:440px}html[data-cc-page="group-offers"] .offer-feature-copy{margin:-58px 14px 0;padding:38px 26px}html[data-cc-page="group-offers"] .offer-feature-copy::before{font-size:68px}html[data-cc-page="group-offers"] .offer-feature-copy h2{font-size:48px}
            html[data-cc-page="group-offers"] .offer-validity{gap:14px;flex-wrap:wrap}html[data-cc-page="group-offers"] .offer-chapter-media{height:420px}html[data-cc-page="group-offers"] .offer-chapter-copy h3{font-size:46px}html[data-cc-page="group-offers"] .offer-flow{padding:92px 0}
            html[data-cc-page="group-offers"] .offers-visual-break{min-height:570px}html[data-cc-page="group-offers"] .offers-visual-break-copy h2{font-size:52px}html[data-cc-page="group-offers"] .offer-closing{padding:92px 0}html[data-cc-page="group-offers"] .offer-closing-top h2{font-size:47px}html[data-cc-page="group-offers"] .offer-closing-card .visual{height:360px}html[data-cc-page="group-offers"] .offer-closing-card .body{padding:26px 24px 30px}html[data-cc-page="group-offers"] .offer-closing-card h3{font-size:34px}
            html[data-cc-page="group-offers"] .offers-final-cta{padding:76px 0}html[data-cc-page="group-offers"] .offers-final-cta h2{font-size:44px}
        }
        @media(prefers-reduced-motion:reduce){
            html[data-cc-page="group-offers"] .offers-page-hero-media img{animation:none!important}html[data-cc-page="group-offers"] .motion-text{opacity:1!important;transform:none!important;filter:none!important}html[data-cc-page="group-offers"] .curtain-reveal::after{display:none!important}html[data-cc-page="group-offers"] .curtain-reveal img{transform:none!important}html[data-cc-page="group-offers"] .offers-visual-break-media{transform:none!important}
        }

    

        /* =====================================================
           OFFERS PAGE CONCEPT 03 - ONE OFFER SYSTEM / ZIGZAG
           ===================================================== */
        html[data-cc-page="group-offers"] .offers-page-hero-inner{padding-bottom:96px}
        html[data-cc-page="group-offers"] .offers-page-hero{height:76svh;min-height:650px}
        html[data-cc-page="group-offers"] .offers-intro-clean{padding-top:135px;padding-bottom:120px}

        html[data-cc-page="group-offers"] .offer-zigzag-section{padding:20px 0 155px;background:#f6f3f4;overflow:hidden}
        html[data-cc-page="group-offers"] .offer-zigzag-section-second{padding-top:155px;background:#fff}
        html[data-cc-page="group-offers"] .offer-zigzag-list{display:grid;gap:148px}
        html[data-cc-page="group-offers"] .offer-zigzag-item{
            display:grid;
            grid-template-columns:minmax(0,1.32fr) minmax(350px,.72fr);
            align-items:center;
            min-height:680px;
        }
        html[data-cc-page="group-offers"] .offer-zigzag-item.reverse{grid-template-columns:minmax(350px,.72fr) minmax(0,1.32fr)}
        html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-media{order:2}
        html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{order:1;margin-left:0;margin-right:-74px}
        html[data-cc-page="group-offers"] .offer-zigzag-media{height:680px;position:relative;background:#0a0a0b;overflow:hidden}
        html[data-cc-page="group-offers"] .offer-zigzag-media img{width:100%;height:100%;object-fit:cover}
        html[data-cc-page="group-offers"] .offer-zigzag-number{
            position:absolute;z-index:7;left:26px;top:24px;width:58px;height:58px;
            display:flex;align-items:center;justify-content:center;
            border:1px solid rgba(255,255,255,.56);background:rgba(0,0,0,.20);
            backdrop-filter:blur(8px);color:#fff;font-size:10px;letter-spacing:.14em
        }
        html[data-cc-page="group-offers"] .offer-zigzag-copy{
            position:relative;z-index:9;margin-left:-74px;background:#fff;padding:68px 62px 62px;
            box-shadow:0 28px 72px rgba(28,9,18,.11);min-height:470px;
            display:flex;flex-direction:column;justify-content:center
        }
        html[data-cc-page="group-offers"] .offer-zigzag-copy::after{
            content:"";position:absolute;left:0;top:0;width:4px;height:0;background:var(--pink);
            transition:height .9s cubic-bezier(.22,1,.36,1) .25s
        }
        html[data-cc-page="group-offers"] .offer-zigzag-copy.in-view::after{height:100%}
        html[data-cc-page="group-offers"] .offer-zigzag-copy .eyebrow{color:var(--pink);margin-bottom:17px}
        html[data-cc-page="group-offers"] .offer-zigzag-copy h2{
            font-family:var(--display);font-size:clamp(50px,4.7vw,76px);line-height:.96;
            font-weight:400;letter-spacing:-.045em;color:#191719
        }
        html[data-cc-page="group-offers"] .offer-zigzag-copy p{font-size:13px;line-height:1.9;color:#716c6f;max-width:470px;margin:23px 0 26px}
        html[data-cc-page="group-offers"] .offer-zigzag-meta{
            display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:17px 0;
            margin-bottom:29px;border-top:1px solid #ece8ea;border-bottom:1px solid #ece8ea
        }
        html[data-cc-page="group-offers"] .offer-zigzag-meta span{display:grid;gap:4px}
        html[data-cc-page="group-offers"] .offer-zigzag-meta small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#9c9699}
        html[data-cc-page="group-offers"] .offer-zigzag-meta strong{font-size:11px;font-weight:500;color:#252225}
        html[data-cc-page="group-offers"] .offer-zigzag-copy .btn{align-self:flex-start}

        html[data-cc-page="group-offers"] .offers-zigzag-break{min-height:720px}
        html[data-cc-page="group-offers"] .offers-zigzag-break .offers-visual-break-copy{max-width:760px}

        /* Make replay motion unmistakable but refined. */
        html[data-cc-page="group-offers"] .offer-zigzag-media.curtain-reveal::after{transition-duration:1.32s}
        html[data-cc-page="group-offers"] .offer-zigzag-media.curtain-reveal img{transform:scale(1.095);transition-duration:1.7s}
        html[data-cc-page="group-offers"] .offer-zigzag-media.curtain-reveal.in-view img{transform:scale(1)}
        html[data-cc-page="group-offers"] .offer-zigzag-copy.motion-text{transform:translateY(52px) scale(.985);filter:blur(7px)}
        html[data-cc-page="group-offers"] .offer-zigzag-copy.motion-text.in-view{transform:none;filter:none}

        @media(max-width:1100px){
            html[data-cc-page="group-offers"] .offer-zigzag-list{gap:110px}
            html[data-cc-page="group-offers"] .offer-zigzag-item, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse{grid-template-columns:1.18fr .82fr;min-height:590px}
            html[data-cc-page="group-offers"] .offer-zigzag-media{height:590px}
            html[data-cc-page="group-offers"] .offer-zigzag-copy{margin-left:-46px;padding:52px 44px;min-height:420px}
            html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{margin-right:-46px}
        }
        @media(max-width:820px){
            html[data-cc-page="group-offers"] .offers-page-hero{height:68svh;min-height:590px}
            html[data-cc-page="group-offers"] .offers-page-hero-inner{padding-bottom:72px}
            html[data-cc-page="group-offers"] .offers-intro-clean{padding-top:95px;padding-bottom:90px}
            html[data-cc-page="group-offers"] .offer-zigzag-section, html[data-cc-page="group-offers"] .offer-zigzag-section-second{padding:20px 0 105px}
            html[data-cc-page="group-offers"] .offer-zigzag-section-second{padding-top:105px}
            html[data-cc-page="group-offers"] .offer-zigzag-list{gap:88px}
            html[data-cc-page="group-offers"] .offer-zigzag-item, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse{display:grid;grid-template-columns:1fr;min-height:0}
            html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-media, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{order:initial}
            html[data-cc-page="group-offers"] .offer-zigzag-media{height:520px}
            html[data-cc-page="group-offers"] .offer-zigzag-copy, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{
                margin:-74px 24px 0;padding:46px 38px 42px;min-height:0
            }
            html[data-cc-page="group-offers"] .offers-zigzag-break{min-height:620px}
        }
        @media(max-width:560px){
            html[data-cc-page="group-offers"] .offers-page-hero{height:62svh;min-height:540px}
            html[data-cc-page="group-offers"] .offers-page-hero h1{font-size:49px}
            html[data-cc-page="group-offers"] .offers-page-hero p{font-size:12px;max-width:92%}
            html[data-cc-page="group-offers"] .offers-intro-clean{padding:80px 0 76px}
            html[data-cc-page="group-offers"] .offer-zigzag-list{gap:72px}
            html[data-cc-page="group-offers"] .offer-zigzag-media{height:390px}
            html[data-cc-page="group-offers"] .offer-zigzag-copy, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{margin:-46px 12px 0;padding:34px 25px 32px}
            html[data-cc-page="group-offers"] .offer-zigzag-copy h2{font-size:44px}
            html[data-cc-page="group-offers"] .offer-zigzag-copy p{font-size:12px;line-height:1.8}
            html[data-cc-page="group-offers"] .offer-zigzag-meta{grid-template-columns:1fr;gap:12px}
            html[data-cc-page="group-offers"] .offer-zigzag-number{width:48px;height:48px;left:18px;top:18px}
            html[data-cc-page="group-offers"] .offers-zigzag-break{min-height:560px}
        }


/* =====================================================
   OFFERS PAGE CONCEPT 04 - COMPACT PREMIUM EDITORIAL
   Smaller, cleaner and more refined zigzag system
   ===================================================== */

/* Shorter opening composition */
html[data-cc-page="group-offers"] .offers-page-hero{height:64svh!important;min-height:560px!important}
html[data-cc-page="group-offers"] .offers-page-hero-inner{padding-bottom:72px!important}
html[data-cc-page="group-offers"] .offers-page-hero h1{font-size:clamp(54px,5.5vw,86px)!important;line-height:.94!important;max-width:800px}
html[data-cc-page="group-offers"] .offers-page-hero p{margin-top:18px!important;max-width:470px!important}
html[data-cc-page="group-offers"] .offers-hero-mark{bottom:80px!important}
html[data-cc-page="group-offers"] .offers-intro-clean{padding:88px 0 82px!important}
html[data-cc-page="group-offers"] .offers-intro-editorial::before{font-size:clamp(110px,13vw,205px)!important;top:22px!important;opacity:.72}
html[data-cc-page="group-offers"] .offers-intro-grid{gap:88px!important;grid-template-columns:1.05fr .78fr!important}
html[data-cc-page="group-offers"] .offers-intro-title h2{font-size:clamp(48px,4.8vw,70px)!important;line-height:.98!important}
html[data-cc-page="group-offers"] .offers-intro-side p{font-size:13px!important;line-height:1.8!important}
html[data-cc-page="group-offers"] .offers-intro-side span{margin-top:22px!important}

/* Compact offer rhythm */
html[data-cc-page="group-offers"] .offer-zigzag-section{padding:12px 0 96px!important}
html[data-cc-page="group-offers"] .offer-zigzag-section-second{padding-top:96px!important}
html[data-cc-page="group-offers"] .offer-zigzag-list{gap:82px!important}
html[data-cc-page="group-offers"] .offer-zigzag-item, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse{
    grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr)!important;
    min-height:0!important;
    align-items:center!important;
}
html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-media{order:2}
html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{order:1}
html[data-cc-page="group-offers"] .offer-zigzag-media{
    height:468px!important;
    border-radius:2px;
    box-shadow:0 18px 48px rgba(22,14,18,.08)
}
html[data-cc-page="group-offers"] .offer-zigzag-copy, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{
    min-height:348px!important;
    padding:40px 42px 38px!important;
    margin-left:-46px!important;
    margin-right:0!important;
    background:#fff!important;
    border:1px solid #eee9eb;
    box-shadow:0 20px 52px rgba(28,9,18,.08)!important;
    justify-content:center!important;
}
html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{
    margin-left:0!important;
    margin-right:-46px!important;
}
html[data-cc-page="group-offers"] .offer-zigzag-copy::after{
    width:3px!important;
    top:22px!important;
    bottom:22px!important;
    height:auto!important;
    transform:scaleY(0);
    transform-origin:top center;
    transition:transform .75s cubic-bezier(.22,1,.36,1) .18s!important
}
html[data-cc-page="group-offers"] .offer-zigzag-copy.in-view::after{transform:scaleY(1)!important;height:auto!important}
html[data-cc-page="group-offers"] .offer-zigzag-topline{
    display:flex;
    align-items:center;
    gap:13px;
    margin-bottom:16px;
    position:relative;
    z-index:2
}
html[data-cc-page="group-offers"] .offer-zigzag-number{
    position:static!important;
    width:34px!important;
    height:34px!important;
    flex:0 0 34px;
    padding:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid rgba(169,0,97,.22)!important;
    background:rgba(169,0,97,.055)!important;
    backdrop-filter:none!important;
    color:var(--pink)!important;
    font-size:9px!important;
    font-weight:600;
    letter-spacing:.12em!important
}
html[data-cc-page="group-offers"] .offer-zigzag-topline .eyebrow{margin:0!important;color:#776f73!important;font-size:9px!important;letter-spacing:.16em!important}
html[data-cc-page="group-offers"] .offer-zigzag-copy h2{
    font-size:clamp(42px,3.7vw,58px)!important;
    line-height:.98!important;
    margin:0!important
}
html[data-cc-page="group-offers"] .offer-zigzag-copy p{
    font-size:12px!important;
    line-height:1.78!important;
    max-width:430px!important;
    margin:17px 0 20px!important
}
html[data-cc-page="group-offers"] .offer-zigzag-meta{
    gap:18px!important;
    padding:13px 0!important;
    margin-bottom:22px!important
}
html[data-cc-page="group-offers"] .offer-zigzag-meta small{font-size:7px!important}
html[data-cc-page="group-offers"] .offer-zigzag-meta strong{font-size:10px!important}
html[data-cc-page="group-offers"] .offer-zigzag-copy .btn{min-height:44px!important;padding:0 22px!important;font-size:10px!important}

/* Visible motion without making the page feel slow */
html[data-cc-page="group-offers"] .offer-zigzag-media.curtain-reveal::after{transition-duration:1.05s!important}
html[data-cc-page="group-offers"] .offer-zigzag-media.curtain-reveal img{transform:scale(1.065)!important;transition-duration:1.28s!important}
html[data-cc-page="group-offers"] .offer-zigzag-media.curtain-reveal.in-view img{transform:scale(1)!important}
html[data-cc-page="group-offers"] .offer-zigzag-copy.motion-text{transform:translateY(34px) scale(.992)!important;filter:blur(5px)!important}
html[data-cc-page="group-offers"] .offer-zigzag-copy.motion-text.in-view{transform:none!important;filter:none!important}

/* Shorter visual pause */
html[data-cc-page="group-offers"] .offers-zigzag-break{min-height:520px!important}
html[data-cc-page="group-offers"] .offers-visual-break-copy h2{font-size:clamp(52px,5.4vw,78px)!important;line-height:.94!important}
html[data-cc-page="group-offers"] .offers-visual-break-copy p{margin:20px 0 25px!important;font-size:13px!important}
html[data-cc-page="group-offers"] .offers-final-cta{padding-top:90px!important;padding-bottom:90px!important}

@media(max-width:1100px){
    html[data-cc-page="group-offers"] .offers-page-hero{height:62svh!important;min-height:540px!important}
    html[data-cc-page="group-offers"] .offers-intro-clean{padding:80px 0 76px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-list{gap:70px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-item, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse{grid-template-columns:1.12fr .88fr!important}
    html[data-cc-page="group-offers"] .offer-zigzag-media{height:430px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-copy, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{padding:36px 34px 34px!important;min-height:330px!important;margin-left:-36px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{margin-left:0!important;margin-right:-36px!important}
}
@media(max-width:820px){
    html[data-cc-page="group-offers"] .offers-page-hero{height:60svh!important;min-height:520px!important}
    html[data-cc-page="group-offers"] .offers-page-hero-inner{padding-bottom:66px!important}
    html[data-cc-page="group-offers"] .offers-intro-clean{padding:72px 0 66px!important}
    html[data-cc-page="group-offers"] .offers-intro-grid{grid-template-columns:1fr!important;gap:26px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-section, html[data-cc-page="group-offers"] .offer-zigzag-section-second{padding:10px 0 78px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-section-second{padding-top:78px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-list{gap:62px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-item, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse{grid-template-columns:1fr!important}
    html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-media, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{order:initial!important}
    html[data-cc-page="group-offers"] .offer-zigzag-media{height:400px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-copy, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{
        margin:-40px 18px 0!important;
        min-height:0!important;
        padding:32px 30px 30px!important
    }
    html[data-cc-page="group-offers"] .offers-zigzag-break{min-height:470px!important}
}
@media(max-width:560px){
    html[data-cc-page="group-offers"] .offers-page-hero{height:58svh!important;min-height:500px!important}
    html[data-cc-page="group-offers"] .offers-page-hero h1{font-size:44px!important}
    html[data-cc-page="group-offers"] .offers-intro-clean{padding:62px 0 58px!important}
    html[data-cc-page="group-offers"] .offers-intro-title h2{font-size:43px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-list{gap:52px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-media{height:330px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-copy, html[data-cc-page="group-offers"] .offer-zigzag-item.reverse .offer-zigzag-copy{margin:-32px 10px 0!important;padding:28px 22px 27px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-copy h2{font-size:38px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-copy p{font-size:11.5px!important;margin:14px 0 17px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-meta{grid-template-columns:1fr 1fr!important;gap:10px!important;padding:11px 0!important;margin-bottom:18px!important}
    html[data-cc-page="group-offers"] .offer-zigzag-number{width:31px!important;height:31px!important;flex-basis:31px!important}
    html[data-cc-page="group-offers"] .offers-zigzag-break{min-height:430px!important}
    html[data-cc-page="group-offers"] .offers-visual-break-copy h2{font-size:46px!important}
    html[data-cc-page="group-offers"] .offers-final-cta{padding-top:72px!important;padding-bottom:72px!important}
}


/* =====================================================
   OFFERS CONCEPT 05 - OWNER APPROVED GRID, REFINED
   Same site hero/footer. Compact two-column offer cards.
   ===================================================== */
html[data-cc-page="group-offers"] .offers-owner-intro{
    padding:76px 0 52px;
    background:#fff;
    text-align:center;
}
html[data-cc-page="group-offers"] .offers-owner-intro-inner{
    max-width:790px;
    margin:0 auto;
}
html[data-cc-page="group-offers"] .offers-owner-intro .eyebrow{
    color:var(--pink);
    margin-bottom:15px;
}
html[data-cc-page="group-offers"] .offers-owner-intro h2{
    font-family:var(--display);
    font-size:clamp(42px,4.4vw,64px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.035em;
}
html[data-cc-page="group-offers"] .offers-owner-intro p{
    max-width:650px;
    margin:19px auto 0;
    font-size:13px;
    line-height:1.82;
    color:#6f696c;
}
html[data-cc-page="group-offers"] .offers-owner-intro-line{
    width:52px;
    height:2px;
    margin:25px auto 0;
    background:var(--pink);
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .75s cubic-bezier(.22,1,.36,1) .2s;
}
html[data-cc-page="group-offers"] .offers-owner-intro-inner.in-view .offers-owner-intro-line{transform:scaleX(1)}

html[data-cc-page="group-offers"] .offers-owner-grid-section{
    padding:20px 0 100px;
    background:#f6f5f5;
}
html[data-cc-page="group-offers"] .offers-owner-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    max-width:1180px;
    margin:0 auto;
}
html[data-cc-page="group-offers"] .offer-owner-card{
    position:relative;
    background:#181719;
    color:#fff;
    min-width:0;
    overflow:hidden;
    box-shadow:0 16px 42px rgba(19,12,16,.08);
    opacity:0;
    transform:translateY(44px) scale(.985);
    filter:blur(5px);
    transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1),filter .75s ease,box-shadow .35s ease;
    transition-delay:var(--card-delay,0ms);
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view{
    opacity:1;
    transform:none;
    filter:none;
}
html[data-cc-page="group-offers"] .offer-owner-card:hover{
    transform:translateY(-6px);
    box-shadow:0 24px 60px rgba(19,12,16,.16);
}
html[data-cc-page="group-offers"] .offer-owner-card-media{
    position:relative;
    height:310px;
    overflow:hidden;
    background:#090909;
}
html[data-cc-page="group-offers"] .offer-owner-card-media::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    background:#090909;
    transform:scaleX(1);
    transform-origin:right center;
    transition:transform 1.05s cubic-bezier(.77,0,.18,1) .08s;
    pointer-events:none;
}
html[data-cc-page="group-offers"] .offer-owner-card:nth-child(even) .offer-owner-card-media::after{
    transform-origin:left center;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-card-media::after{transform:scaleX(0)}
html[data-cc-page="group-offers"] .offer-owner-card-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1.075);
    transition:transform 1.35s cubic-bezier(.22,1,.36,1);
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-card-media img{transform:scale(1)}
html[data-cc-page="group-offers"] .offer-owner-card:hover .offer-owner-card-media img{transform:scale(1.035)}
html[data-cc-page="group-offers"] .offer-owner-card-content{
    position:relative;
    min-height:250px;
    padding:27px 29px 29px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}
html[data-cc-page="group-offers"] .offer-owner-topline{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:14px;
    opacity:0;
    transform:translateY(14px);
    transition:opacity .55s ease .58s,transform .65s cubic-bezier(.22,1,.36,1) .58s;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-topline{opacity:1;transform:none}
html[data-cc-page="group-offers"] .offer-owner-index{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:34px;
    height:28px;
    border:1px solid rgba(255,255,255,.2);
    color:#fff;
    font-size:8px;
    font-weight:600;
    letter-spacing:.15em;
}
html[data-cc-page="group-offers"] .offer-owner-category{
    margin-left:auto;
    font-size:8px;
    font-weight:600;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:#d69ab9;
}
html[data-cc-page="group-offers"] .offer-owner-card h3{
    font-family:var(--display);
    font-size:36px;
    line-height:1.04;
    font-weight:400;
    letter-spacing:-.025em;
    opacity:0;
    transform:translateY(18px);
    transition:opacity .6s ease .7s,transform .7s cubic-bezier(.22,1,.36,1) .7s;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view h3{opacity:1;transform:none}
html[data-cc-page="group-offers"] .offer-owner-card p{
    margin-top:12px;
    max-width:500px;
    font-size:11.5px;
    line-height:1.75;
    color:rgba(255,255,255,.66);
    opacity:0;
    transform:translateY(16px);
    transition:opacity .6s ease .8s,transform .7s cubic-bezier(.22,1,.36,1) .8s;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view p{opacity:1;transform:none}
html[data-cc-page="group-offers"] .offer-owner-meta{
    display:flex;
    align-items:center;
    gap:16px;
    margin-top:15px;
    font-size:8px;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:rgba(255,255,255,.43);
    opacity:0;
    transform:translateY(14px);
    transition:opacity .55s ease .88s,transform .65s cubic-bezier(.22,1,.36,1) .88s;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-meta{opacity:1;transform:none}
html[data-cc-page="group-offers"] .offer-owner-meta b{
    width:3px;height:3px;border-radius:50%;background:var(--pink)
}
html[data-cc-page="group-offers"] .offer-owner-link{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-top:auto;
    padding-top:23px;
    color:#fff;
    font-size:9px;
    font-weight:600;
    letter-spacing:.13em;
    text-transform:uppercase;
    opacity:0;
    transform:translateY(14px);
    transition:opacity .55s ease .96s,transform .65s cubic-bezier(.22,1,.36,1) .96s,color .25s ease,gap .25s ease;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-link{opacity:1;transform:none}
html[data-cc-page="group-offers"] .offer-owner-link::after{
    content:"";
    position:absolute;
    left:0;
    bottom:17px;
    width:28px;
    height:1px;
    background:var(--pink);
    transition:width .3s ease;
}
html[data-cc-page="group-offers"] .offer-owner-link:hover{color:#fff;gap:17px}
html[data-cc-page="group-offers"] .offer-owner-link:hover::after{width:100%}

html[data-cc-page="group-offers"] .offers-owner-note{
    max-width:1180px;
    margin:34px auto 0;
    padding-top:24px;
    border-top:1px solid #dedadb;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}
html[data-cc-page="group-offers"] .offers-owner-note p{
    max-width:600px;
    color:#777174;
    font-size:11px;
    line-height:1.7;
}
html[data-cc-page="group-offers"] .offers-owner-note .btn{flex:0 0 auto}

@media(max-width:900px){
    html[data-cc-page="group-offers"] .offers-owner-intro{padding:64px 0 44px}
    html[data-cc-page="group-offers"] .offers-owner-grid-section{padding-bottom:82px}
    html[data-cc-page="group-offers"] .offers-owner-grid{gap:20px}
    html[data-cc-page="group-offers"] .offer-owner-card-media{height:270px}
    html[data-cc-page="group-offers"] .offer-owner-card-content{min-height:235px;padding:24px}
    html[data-cc-page="group-offers"] .offer-owner-card h3{font-size:32px}
}
@media(max-width:700px){
    html[data-cc-page="group-offers"] .offers-owner-intro{padding:55px 0 38px}
    html[data-cc-page="group-offers"] .offers-owner-intro h2{font-size:42px}
    html[data-cc-page="group-offers"] .offers-owner-intro p{font-size:12px}
    html[data-cc-page="group-offers"] .offers-owner-grid-section{padding:12px 0 70px}
    html[data-cc-page="group-offers"] .offers-owner-grid{grid-template-columns:1fr;gap:20px}
    html[data-cc-page="group-offers"] .offer-owner-card{width:100%}
    html[data-cc-page="group-offers"] .offer-owner-card-media{height:285px}
    html[data-cc-page="group-offers"] .offer-owner-card-content{min-height:220px;padding:23px 22px 25px}
    html[data-cc-page="group-offers"] .offer-owner-card h3{font-size:33px}
    html[data-cc-page="group-offers"] .offers-owner-note{margin-top:28px;display:block}
    html[data-cc-page="group-offers"] .offers-owner-note .btn{margin-top:18px}
}
@media(max-width:420px){
    html[data-cc-page="group-offers"] .offer-owner-card-media{height:250px}
    html[data-cc-page="group-offers"] .offer-owner-card h3{font-size:30px}
}
@media(prefers-reduced-motion:reduce){
    html[data-cc-page="group-offers"] .offer-owner-card, html[data-cc-page="group-offers"] .offer-owner-card-media::after, html[data-cc-page="group-offers"] .offer-owner-card-media img, html[data-cc-page="group-offers"] .offer-owner-topline, html[data-cc-page="group-offers"] .offer-owner-card h3, html[data-cc-page="group-offers"] .offer-owner-card p, html[data-cc-page="group-offers"] .offer-owner-meta, html[data-cc-page="group-offers"] .offer-owner-link{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
    html[data-cc-page="group-offers"] .offer-owner-card-media::after{display:none!important}
}



/* =====================================================
   OFFERS CONCEPT 06 - WHITE CANVAS + CLEAR REPLAY MOTION
   ===================================================== */

/* The cards now sit directly on the page canvas - no coloured section band. */
html[data-cc-page="group-offers"] .offers-owner-grid-section{
    background:#fff !important;
    padding-top:18px !important;
}

/* A more deliberate card entrance. It resets when .in-view is removed. */
html[data-cc-page="group-offers"] .offer-owner-card{
    --offer-enter-x:-82px;
    opacity:0 !important;
    transform:translate3d(var(--offer-enter-x),64px,0) scale(.955) !important;
    filter:blur(8px) !important;
    animation:none !important;
    transition:box-shadow .35s ease !important;
    will-change:transform,opacity,filter;
}
html[data-cc-page="group-offers"] .offer-owner-card:nth-child(even){--offer-enter-x:82px}
html[data-cc-page="group-offers"] .offer-owner-card.in-view{
    animation:offerCardEnter_cc_groupoffers 1.05s cubic-bezier(.16,1,.3,1) var(--card-delay,0ms) both !important;
}
@keyframes offerCardEnter_cc_groupoffers{
    0%{
        opacity:0;
        transform:translate3d(var(--offer-enter-x),64px,0) scale(.955);
        filter:blur(8px)
    }
    58%{opacity:1;filter:blur(0)}
    100%{
        opacity:1;
        transform:translate3d(0,0,0) scale(1);
        filter:blur(0)
    }
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view:hover{
    transform:translateY(-6px) !important;
    box-shadow:0 24px 60px rgba(19,12,16,.16)
}

/* Image reveal follows the physical card entrance instead of flashing at once. */
html[data-cc-page="group-offers"] .offer-owner-card-media::after{
    transform:scaleX(1) !important;
    transition:none !important;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-card-media::after{
    animation:offerCurtainOpen_cc_groupoffers 1.02s cubic-bezier(.77,0,.18,1) calc(var(--card-delay,0ms) + 300ms) both !important;
}
html[data-cc-page="group-offers"] .offer-owner-card:nth-child(even) .offer-owner-card-media::after{
    transform-origin:left center !important
}
html[data-cc-page="group-offers"] .offer-owner-card:nth-child(odd) .offer-owner-card-media::after{
    transform-origin:right center !important
}
@keyframes offerCurtainOpen_cc_groupoffers{
    0%{transform:scaleX(1)}
    100%{transform:scaleX(0)}
}
html[data-cc-page="group-offers"] .offer-owner-card-media img{
    transform:scale(1.11) !important;
    transition:transform .75s cubic-bezier(.22,1,.36,1) !important
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-card-media img{
    animation:offerImageSettle_cc_groupoffers 1.35s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 250ms) both !important
}
@keyframes offerImageSettle_cc_groupoffers{
    0%{transform:scale(1.11)}
    100%{transform:scale(1)}
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view:hover .offer-owner-card-media img{
    animation:none !important;
    transform:scale(1.035) !important
}

/* Content appears clearly after the image starts revealing. */
html[data-cc-page="group-offers"] .offer-owner-topline, html[data-cc-page="group-offers"] .offer-owner-card h3, html[data-cc-page="group-offers"] .offer-owner-card p, html[data-cc-page="group-offers"] .offer-owner-meta, html[data-cc-page="group-offers"] .offer-owner-link{
    opacity:0 !important;
    transform:translateY(24px) !important;
    transition:none !important
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-topline{
    animation:offerCopyIn_cc_groupoffers .62s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 580ms) both !important
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view h3{
    animation:offerCopyIn_cc_groupoffers .68s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 680ms) both !important
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view p{
    animation:offerCopyIn_cc_groupoffers .68s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 770ms) both !important
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-meta{
    animation:offerCopyIn_cc_groupoffers .64s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 850ms) both !important
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-link{
    animation:offerCopyIn_cc_groupoffers .64s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 930ms) both !important
}
@keyframes offerCopyIn_cc_groupoffers{
    0%{opacity:0;transform:translateY(24px)}
    100%{opacity:1;transform:translateY(0)}
}

@media(max-width:760px){
    html[data-cc-page="group-offers"] .offer-owner-card{--offer-enter-x:-46px}
    html[data-cc-page="group-offers"] .offer-owner-card:nth-child(even){--offer-enter-x:46px}
}

@media(prefers-reduced-motion:reduce){
    html[data-cc-page="group-offers"] .offer-owner-card, html[data-cc-page="group-offers"] .offer-owner-card.in-view, html[data-cc-page="group-offers"] .offer-owner-card-media::after, html[data-cc-page="group-offers"] .offer-owner-card-media img, html[data-cc-page="group-offers"] .offer-owner-topline, html[data-cc-page="group-offers"] .offer-owner-card h3, html[data-cc-page="group-offers"] .offer-owner-card p, html[data-cc-page="group-offers"] .offer-owner-meta, html[data-cc-page="group-offers"] .offer-owner-link{
        opacity:1 !important;
        transform:none !important;
        filter:none !important;
        animation:none !important;
        transition:none !important
    }
    html[data-cc-page="group-offers"] .offer-owner-card-media::after{display:none !important}
}


/* =====================================================
   OFFERS CONCEPT 07 - CARD VISIBILITY + REPLAY FIX
   Fix: !important base states were overriding CSS keyframe animations.
   Use explicit transition states so cards always reveal correctly.
   ===================================================== */
html[data-cc-page="group-offers"] .offers-owner-grid-section{
    background:#fff !important;
}

html[data-cc-page="group-offers"] .offer-owner-card{
    --offer-enter-x:-76px;
    opacity:0 !important;
    transform:translate3d(var(--offer-enter-x),56px,0) scale(.965) !important;
    filter:blur(6px) !important;
    animation:none !important;
    transition:
        opacity .82s cubic-bezier(.22,1,.36,1) var(--card-delay,0ms),
        transform 1.02s cubic-bezier(.16,1,.3,1) var(--card-delay,0ms),
        filter .72s ease var(--card-delay,0ms),
        box-shadow .35s ease !important;
}
html[data-cc-page="group-offers"] .offer-owner-card:nth-child(even){--offer-enter-x:76px}
html[data-cc-page="group-offers"] .offer-owner-card.in-view{
    opacity:1 !important;
    transform:translate3d(0,0,0) scale(1) !important;
    filter:blur(0) !important;
    animation:none !important;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view:hover{
    transform:translate3d(0,-6px,0) scale(1) !important;
}

/* Image curtain - transition based so it cannot be blocked by !important. */
html[data-cc-page="group-offers"] .offer-owner-card-media::after{
    transform:scaleX(1) !important;
    animation:none !important;
    transition:transform 1.05s cubic-bezier(.77,0,.18,1) calc(var(--card-delay,0ms) + 220ms) !important;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-card-media::after{
    transform:scaleX(0) !important;
    animation:none !important;
}
html[data-cc-page="group-offers"] .offer-owner-card-media img{
    transform:scale(1.09) !important;
    animation:none !important;
    transition:transform 1.28s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 160ms) !important;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-card-media img{
    transform:scale(1) !important;
    animation:none !important;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view:hover .offer-owner-card-media img{
    transform:scale(1.035) !important;
}

/* Staggered copy entrance. */
html[data-cc-page="group-offers"] .offer-owner-topline, html[data-cc-page="group-offers"] .offer-owner-card h3, html[data-cc-page="group-offers"] .offer-owner-card p, html[data-cc-page="group-offers"] .offer-owner-meta, html[data-cc-page="group-offers"] .offer-owner-link{
    opacity:0 !important;
    transform:translateY(20px) !important;
    animation:none !important;
}
html[data-cc-page="group-offers"] .offer-owner-topline{
    transition:opacity .52s ease calc(var(--card-delay,0ms) + 470ms),transform .62s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 470ms) !important;
}
html[data-cc-page="group-offers"] .offer-owner-card h3{
    transition:opacity .55s ease calc(var(--card-delay,0ms) + 560ms),transform .65s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 560ms) !important;
}
html[data-cc-page="group-offers"] .offer-owner-card p{
    transition:opacity .55s ease calc(var(--card-delay,0ms) + 650ms),transform .65s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 650ms) !important;
}
html[data-cc-page="group-offers"] .offer-owner-meta{
    transition:opacity .52s ease calc(var(--card-delay,0ms) + 730ms),transform .62s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 730ms) !important;
}
html[data-cc-page="group-offers"] .offer-owner-link{
    transition:opacity .52s ease calc(var(--card-delay,0ms) + 810ms),transform .62s cubic-bezier(.22,1,.36,1) calc(var(--card-delay,0ms) + 810ms),color .25s ease,gap .25s ease !important;
}
html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-topline, html[data-cc-page="group-offers"] .offer-owner-card.in-view h3, html[data-cc-page="group-offers"] .offer-owner-card.in-view p, html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-meta, html[data-cc-page="group-offers"] .offer-owner-card.in-view .offer-owner-link{
    opacity:1 !important;
    transform:translateY(0) !important;
    animation:none !important;
}

@media(max-width:760px){
    html[data-cc-page="group-offers"] .offer-owner-card{--offer-enter-x:-42px}
    html[data-cc-page="group-offers"] .offer-owner-card:nth-child(even){--offer-enter-x:42px}
}
@media(prefers-reduced-motion:reduce){
    html[data-cc-page="group-offers"] .offer-owner-card, html[data-cc-page="group-offers"] .offer-owner-card.in-view, html[data-cc-page="group-offers"] .offer-owner-topline, html[data-cc-page="group-offers"] .offer-owner-card h3, html[data-cc-page="group-offers"] .offer-owner-card p, html[data-cc-page="group-offers"] .offer-owner-meta, html[data-cc-page="group-offers"] .offer-owner-link{
        opacity:1 !important;
        transform:none !important;
        filter:none !important;
        transition:none !important;
    }
    html[data-cc-page="group-offers"] .offer-owner-card-media::after{display:none !important}
    html[data-cc-page="group-offers"] .offer-owner-card-media img{transform:none !important;transition:none !important}
}



/* =====================================================
   OFFERS CONCEPT 08 - LIGHT CONTENT CARDS
   Keep image reveal and motion; replace dark description panel.
   ===================================================== */
html[data-cc-page="group-offers"] .offer-owner-card{
    background:#fff !important;
    color:#1b1b1b !important;
    border:1px solid #ece8ea;
    box-shadow:0 14px 38px rgba(20,14,18,.06) !important;
}
html[data-cc-page="group-offers"] .offer-owner-card:hover{
    box-shadow:0 22px 52px rgba(20,14,18,.11) !important;
}
html[data-cc-page="group-offers"] .offer-owner-card-content{
    background:#fff !important;
    color:#1b1b1b !important;
    border-top:1px solid #eee9eb;
}
html[data-cc-page="group-offers"] .offer-owner-index{
    border-color:rgba(169,0,97,.28) !important;
    color:var(--pink) !important;
    background:rgba(169,0,97,.035);
}
html[data-cc-page="group-offers"] .offer-owner-category{
    color:var(--pink) !important;
}
html[data-cc-page="group-offers"] .offer-owner-card h3{
    color:#1c191b !important;
}
html[data-cc-page="group-offers"] .offer-owner-card p{
    color:#6f686c !important;
}
html[data-cc-page="group-offers"] .offer-owner-meta{
    color:#969094 !important;
}
html[data-cc-page="group-offers"] .offer-owner-link{
    color:#1d1a1c !important;
}
html[data-cc-page="group-offers"] .offer-owner-link:hover{
    color:var(--pink) !important;
}


/* FINAL DEMO V8 - unified inner-page typography + centered intros */
html[data-cc-page="group-offers"]{--inner-title:clamp(40px,4.2vw,58px);--inner-section-title:clamp(36px,3.7vw,52px);--inner-body:13.5px}
html[data-cc-page="group-offers"] .page-intro{padding:92px 0 88px!important}
html[data-cc-page="group-offers"] .page-intro-grid{grid-template-columns:1fr!important;gap:22px!important;align-items:center!important;max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-offers"] .page-intro-grid>div, html[data-cc-page="group-offers"] .page-intro-grid>p{max-width:820px;margin-left:auto;margin-right:auto}
html[data-cc-page="group-offers"] .page-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important;margin:0!important}
html[data-cc-page="group-offers"] .page-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin:0 auto!important}
html[data-cc-page="group-offers"] .page-intro .eyebrow{margin-bottom:14px!important}
html[data-cc-page="group-offers"] .page-intro .reveal-left, html[data-cc-page="group-offers"] .page-intro .reveal-right{transform:translateY(22px)!important}
html[data-cc-page="group-offers"] .page-intro .reveal-left.in-view, html[data-cc-page="group-offers"] .page-intro .reveal-right.in-view{transform:none!important}

/* keep section titles premium but proportional */
html[data-cc-page="group-offers"] .section-heading h2, html[data-cc-page="group-offers"] .rail-head h2, html[data-cc-page="group-offers"] .hotel-section-head h2{font-size:var(--inner-section-title)!important;line-height:1.04!important;letter-spacing:-.03em!important}
html[data-cc-page="group-offers"] .section-heading p, html[data-cc-page="group-offers"] .rail-head p, html[data-cc-page="group-offers"] .hotel-section-head p{font-size:var(--inner-body)!important;line-height:1.82!important}

@media(max-width:900px){html[data-cc-page="group-offers"] .page-intro{padding:72px 0 68px!important}html[data-cc-page="group-offers"] .page-intro-grid{padding:0 8px}html[data-cc-page="group-offers"] .page-intro h2{font-size:clamp(38px,7vw,50px)!important}}
@media(max-width:560px){html[data-cc-page="group-offers"] .page-intro{padding:58px 0 54px!important}html[data-cc-page="group-offers"] .page-intro h2{font-size:38px!important}html[data-cc-page="group-offers"] .page-intro p{font-size:13px!important}}

html[data-cc-page="group-offers"] .offers-owner-intro{padding:92px 0 88px!important;text-align:center!important}
html[data-cc-page="group-offers"] .offers-owner-intro-inner{max-width:860px!important;margin:0 auto!important;text-align:center!important}
html[data-cc-page="group-offers"] .offers-owner-intro h2{font-size:var(--inner-title)!important;line-height:1.02!important;letter-spacing:-.035em!important}
html[data-cc-page="group-offers"] .offers-owner-intro p{font-size:var(--inner-body)!important;line-height:1.82!important;max-width:720px!important;margin-left:auto!important;margin-right:auto!important}
html[data-cc-page="group-offers"] .offers-owner-intro-line{margin-left:auto!important;margin-right:auto!important}

/* V8 footer separation rule */
html[data-cc-page="group-offers"] body>section:last-of-type{border-bottom:1px solid #e8e3e5;}


/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="group-offers"] .header-main{height:92px!important}
html[data-cc-page="group-offers"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-offers"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="group-offers"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="group-offers"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-offers"] .menu{gap:26px!important}
html[data-cc-page="group-offers"] .brand img{max-height:66px!important}
html[data-cc-page="group-offers"] .hero .eyebrow, html[data-cc-page="group-offers"] .hero-kicker, html[data-cc-page="group-offers"] .hero-kicker.eyebrow, html[data-cc-page="group-offers"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="group-offers"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="group-offers"] .menu{gap:18px!important}html[data-cc-page="group-offers"] .menu>a, html[data-cc-page="group-offers"] .menu-link{font-size:10px!important}html[data-cc-page="group-offers"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-offers"] .header-main{height:72px!important}html[data-cc-page="group-offers"] .brand img{max-height:46px!important}html[data-cc-page="group-offers"] .mobile-trigger{font-size:20px!important}}


/* --- group-menu-unified.css --- */
/* Final Demo - unified Group menu
   Reference: original index-group.html
*/
/* HEADER */
html[data-cc-page="group-offers"] .header {
            position: absolute;
            inset: 0 0 auto;
            z-index: 100;
            color: #fff;
            transition: background .35s ease,box-shadow .35s ease,color .35s ease,transform .35s ease
        }

            html[data-cc-page="group-offers"] .header.sticky {
                position: fixed;
                background: rgba(255,255,255,.97);
                color: #111;
                box-shadow: 0 8px 30px rgba(0,0,0,.08);
                backdrop-filter: blur(18px);
                animation: drop_cc_groupoffers .35s ease both
            }

        @keyframes drop_cc_groupoffers {
            from {
                transform: translateY(-100%)
            }

            to {
                transform: translateY(0)
            }
        }

        html[data-cc-page="group-offers"] .header-top {
            height: 34px;
            border-bottom: 1px solid rgba(255,255,255,.16);
            font-size: 11px;
            letter-spacing: .08em
        }

        html[data-cc-page="group-offers"] .header.sticky .header-top {
            display: none
        }

        html[data-cc-page="group-offers"] .header-top .container {
            height: 100%;
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 24px
        }

        html[data-cc-page="group-offers"] .header-main {
            height: 102px
        }

            html[data-cc-page="group-offers"] .header-main .container {
                height: 100%;
                display: flex;
                align-items: center
            }

        html[data-cc-page="group-offers"] .brand {
            width: 154px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            flex: 0 0 auto
        }

            html[data-cc-page="group-offers"] .brand img {
                width: 138px;
                max-height: 80px;
                object-fit: contain
            }

        html[data-cc-page="group-offers"] .brand-dark {
            display: none
        }

        html[data-cc-page="group-offers"] .header.sticky .brand-light {
            display: none
        }

        html[data-cc-page="group-offers"] .header.sticky .brand-dark {
            display: block
        }

        html[data-cc-page="group-offers"] .header-main {
            position: relative
        }

        html[data-cc-page="group-offers"] .menu {
            display: flex;
            align-items: stretch;
            gap: 32px;
            margin-left: auto;
            height: 100%
        }

        html[data-cc-page="group-offers"] .menu-item {
            position: relative;
            display: flex;
            align-items: center;
            height: 100%
        }

            html[data-cc-page="group-offers"] .menu-item.has-mega {
                position: static
            }

        html[data-cc-page="group-offers"] .menu-link {
            height: 100%;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            font-size: 13px;
            letter-spacing: .08em;
            text-transform: uppercase;
            position: relative;
            padding: 0 2px;
            white-space: nowrap
        }

            html[data-cc-page="group-offers"] .menu-link::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 27px;
                height: 1px;
                background: var(--pink);
                transition: right .3s ease
            }

        html[data-cc-page="group-offers"] .menu-item:hover > .menu-link::after, html[data-cc-page="group-offers"] .menu-item:focus-within > .menu-link::after {
            right: 0
        }

        html[data-cc-page="group-offers"] .menu-link .menu-chevron {
            font-size: 9px;
            transition: transform .25s ease
        }

        html[data-cc-page="group-offers"] .menu-item:hover > .menu-link .menu-chevron, html[data-cc-page="group-offers"] .menu-item:focus-within > .menu-link .menu-chevron {
            transform: rotate(180deg)
        }

        /* Resorts mega menu */
        html[data-cc-page="group-offers"] .resorts-mega {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            width: min(1320px,calc(100vw - 70px));
            transform: translate(-50%,18px);
            background: #f7f5f4;
            color: var(--ink);
            padding: 28px;
            box-shadow: 0 24px 70px rgba(0,0,0,.20);
            border-top: 3px solid var(--pink);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transition: opacity .25s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility .25s ease;
            z-index: 220
        }

            html[data-cc-page="group-offers"] .resorts-mega::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -16px;
                height: 16px;
                background: transparent
            }

        html[data-cc-page="group-offers"] .menu-item.has-mega:hover .resorts-mega, html[data-cc-page="group-offers"] .menu-item.has-mega:focus-within .resorts-mega {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: translate(-50%,0)
        }

        html[data-cc-page="group-offers"] .resorts-mega-inner {
            display: grid;
            grid-template-columns: 260px 1fr;
            gap: 26px;
            align-items: stretch
        }

        html[data-cc-page="group-offers"] .mega-intro {
            background: #171717;
            color: #fff;
            padding: 34px 30px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            min-height: 235px
        }

            html[data-cc-page="group-offers"] .mega-intro .eyebrow {
                color: rgba(255,255,255,.55);
                margin-bottom: 14px
            }

            html[data-cc-page="group-offers"] .mega-intro h3 {
                font-family: var(--display);
                font-size: 38px;
                line-height: 1.02;
                font-weight: 400;
                letter-spacing: -.02em;
                margin-bottom: 16px
            }

            html[data-cc-page="group-offers"] .mega-intro p {
                font-size: 11px;
                line-height: 1.7;
                color: rgba(255,255,255,.68);
                max-width: 210px
            }

        html[data-cc-page="group-offers"] .mega-intro-link {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 24px;
            font-size: 10px;
            font-weight: 600;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: #fff
        }

            html[data-cc-page="group-offers"] .mega-intro-link i {
                transition: transform .25s ease
            }

            html[data-cc-page="group-offers"] .mega-intro-link:hover i {
                transform: translateX(5px)
            }

        html[data-cc-page="group-offers"] .mega-grid {
            display: grid;
            grid-template-columns: repeat(4,minmax(0,1fr));
            gap: 14px
        }

        html[data-cc-page="group-offers"] .mega-resort {
            position: relative;
            min-height: 235px;
            overflow: hidden;
            background: #222;
            color: #fff
        }

            html[data-cc-page="group-offers"] .mega-resort img {
                height: 100%;
                object-fit: cover;
                transition: transform .65s cubic-bezier(.22,1,.36,1)
            }

            html[data-cc-page="group-offers"] .mega-resort::after {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(180deg,rgba(0,0,0,.03) 30%,rgba(0,0,0,.82) 100%);
                transition: background .35s ease
            }

        html[data-cc-page="group-offers"] .mega-resort-copy {
            position: absolute;
            z-index: 2;
            left: 18px;
            right: 18px;
            bottom: 16px
        }

        html[data-cc-page="group-offers"] .mega-resort small {
            display: block;
            font-size: 8px;
            letter-spacing: .16em;
            text-transform: uppercase;
            color: rgba(255,255,255,.72);
            margin-bottom: 6px
        }

        html[data-cc-page="group-offers"] .mega-resort strong {
            display: block;
            font-family: var(--display);
            font-size: 23px;
            line-height: 1.05;
            font-weight: 400
        }

        html[data-cc-page="group-offers"] .mega-resort .mega-arrow {
            position: absolute;
            z-index: 3;
            right: 16px;
            top: 16px;
            width: 34px;
            height: 34px;
            border: 1px solid rgba(255,255,255,.6);
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 10px;
            transform: translateY(-4px);
            opacity: 0;
            transition: .3s ease
        }

        html[data-cc-page="group-offers"] .mega-resort:hover img {
            transform: scale(1.065)
        }

        html[data-cc-page="group-offers"] .mega-resort:hover::after {
            background: linear-gradient(180deg,rgba(169,0,97,.08) 20%,rgba(0,0,0,.88) 100%)
        }

        html[data-cc-page="group-offers"] .mega-resort:hover .mega-arrow {
            opacity: 1;
            transform: none;
            background: var(--pink);
            border-color: var(--pink)
        }

        /* Normal dropdown menu */
        html[data-cc-page="group-offers"] .dropdown-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: -18px;
            width: 235px;
            background: #fff;
            color: #171717;
            padding: 9px 0;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(14px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 230
        }

            html[data-cc-page="group-offers"] .dropdown-menu::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                top: -15px;
                height: 15px;
                background: transparent
            }

        html[data-cc-page="group-offers"] .menu-item.has-dropdown:hover > .dropdown-menu, html[data-cc-page="group-offers"] .menu-item.has-dropdown:focus-within > .dropdown-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none
        }

        html[data-cc-page="group-offers"] .dropdown-menu a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            padding: 12px 18px;
            font-size: 11px;
            line-height: 1.35;
            letter-spacing: .05em;
            text-transform: uppercase;
            border-bottom: 1px solid #eee;
            transition: color .2s ease,padding-left .2s ease,background .2s ease
        }

            html[data-cc-page="group-offers"] .dropdown-menu a:last-child {
                border-bottom: 0
            }

            html[data-cc-page="group-offers"] .dropdown-menu a::after {
                display: none !important
            }

            html[data-cc-page="group-offers"] .dropdown-menu a:hover {
                color: var(--pink);
                background: #faf7f9;
                padding-left: 23px
            }

            html[data-cc-page="group-offers"] .dropdown-menu a i {
                font-size: 9px;
                color: #aaa
            }

        html[data-cc-page="group-offers"] .header-book {
            margin-left: 34px
        }

        html[data-cc-page="group-offers"] .mobile-trigger {
            display: none;
            margin-left: auto;
            width: 44px;
            height: 44px;
            border: 0;
            background: transparent;
            color: inherit;
            font-size: 23px
        }

        /* mobile drawer */
        html[data-cc-page="group-offers"] .drawer-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,.58);
            z-index: 500;
            opacity: 0;
            visibility: hidden;
            transition: .3s
        }

            html[data-cc-page="group-offers"] .drawer-overlay.open {
                opacity: 1;
                visibility: visible
            }

        html[data-cc-page="group-offers"] .drawer {
            position: fixed;
            right: 0;
            top: 0;
            bottom: 0;
            width: min(390px,92vw);
            background: #fff;
            z-index: 510;
            padding: 28px;
            transform: translateX(105%);
            transition: transform .4s cubic-bezier(.22,1,.36,1);
            overflow: auto
        }

            html[data-cc-page="group-offers"] .drawer.open {
                transform: none
            }

        html[data-cc-page="group-offers"] .drawer-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 24px;
            border-bottom: 1px solid #ddd
        }

            html[data-cc-page="group-offers"] .drawer-head img {
                width: 132px;
                filter: invert(1)
            }

        html[data-cc-page="group-offers"] .drawer-close {
            width: 42px;
            height: 42px;
            border: 0;
            background: #f2f2f2;
            border-radius: 50%;
            font-size: 18px
        }

        html[data-cc-page="group-offers"] .drawer-nav {
            display: grid;
            margin-top: 22px
        }

            html[data-cc-page="group-offers"] .drawer-nav > a, html[data-cc-page="group-offers"] .drawer-toggle {
                width: 100%;
                padding: 16px 0;
                border: 0;
                border-bottom: 1px solid #eee;
                background: transparent;
                color: #171717;
                font-size: 17px;
                text-align: left;
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px
            }

                html[data-cc-page="group-offers"] .drawer-nav > a:hover, html[data-cc-page="group-offers"] .drawer-toggle:hover {
                    color: var(--pink)
                }

                html[data-cc-page="group-offers"] .drawer-toggle i {
                    font-size: 12px;
                    transition: transform .25s ease
                }

        html[data-cc-page="group-offers"] .drawer-group.open > .drawer-toggle i {
            transform: rotate(180deg)
        }

        html[data-cc-page="group-offers"] .drawer-sub {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows .35s cubic-bezier(.22,1,.36,1);
            background: #fafafa
        }

            html[data-cc-page="group-offers"] .drawer-sub > div {
                overflow: hidden
            }

        html[data-cc-page="group-offers"] .drawer-group.open > .drawer-sub {
            grid-template-rows: 1fr
        }

        html[data-cc-page="group-offers"] .drawer-sub a {
            display: block;
            padding: 12px 16px;
            border-bottom: 1px solid #eee;
            font-size: 13px;
            color: #555
        }

            html[data-cc-page="group-offers"] .drawer-sub a:hover {
                color: var(--pink)
            }

        html[data-cc-page="group-offers"] .drawer-resort-list {
            padding: 8px 0
        }

        html[data-cc-page="group-offers"] .drawer-resort {
            display: grid !important;
            grid-template-columns: 66px 1fr;
            gap: 12px;
            align-items: center;
            padding: 9px 10px !important
        }

            html[data-cc-page="group-offers"] .drawer-resort img {
                width: 66px;
                height: 48px;
                object-fit: cover
            }

            html[data-cc-page="group-offers"] .drawer-resort strong {
                font-family: var(--display);
                font-size: 16px;
                font-weight: 400;
                color: #222
            }

            html[data-cc-page="group-offers"] .drawer-resort small {
                display: block;
                font-size: 8px;
                letter-spacing: .1em;
                text-transform: uppercase;
                color: #999;
                margin-top: 3px
            }

        html[data-cc-page="group-offers"] .drawer .btn {
            width: 100%;
            margin-top: 25px
        }


@media(max-width:1100px){
  html[data-cc-page="group-offers"] .menu{gap:18px}
  html[data-cc-page="group-offers"] .menu-link{font-size:11px}
  html[data-cc-page="group-offers"] .header-book{margin-left:20px}
}
@media(max-width:820px){
  html[data-cc-page="group-offers"] .header{position:absolute;background:rgba(255,255,255,.97);color:#111}
  html[data-cc-page="group-offers"] .header-top, html[data-cc-page="group-offers"] .menu, html[data-cc-page="group-offers"] .header-book{display:none}
  html[data-cc-page="group-offers"] .header-main{height:72px}
  html[data-cc-page="group-offers"] .brand-light{display:none!important}
  html[data-cc-page="group-offers"] .brand-dark{display:block!important}
  html[data-cc-page="group-offers"] .brand img{width:125px;max-height:52px}
  html[data-cc-page="group-offers"] .mobile-trigger{display:block}
}
/* V23-V25 language/mobile controls from reference */
html[data-cc-page="group-offers"] 
        .language-switcher {
            position: relative;
            flex: 0 0 auto;
            margin-left: 18px;
        }

        html[data-cc-page="group-offers"] .language-trigger {
            height: 44px;
            min-width: 82px;
            padding: 0 12px;
            border: 1px solid rgba(255,255,255,.32);
            background: rgba(255,255,255,.07);
            color: inherit;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .08em;
            text-transform: uppercase;
            transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
        }

            html[data-cc-page="group-offers"] .language-trigger:hover, html[data-cc-page="group-offers"] .language-switcher.open .language-trigger {
                background: rgba(169,0,97,.12);
                border-color: var(--pink);
                transform: translateY(-1px);
            }

        html[data-cc-page="group-offers"] .header.sticky .language-trigger {
            background: #fff;
            border-color: #dedede;
            color: #171717;
        }

            html[data-cc-page="group-offers"] .header.sticky .language-trigger:hover, html[data-cc-page="group-offers"] .header.sticky .language-switcher.open .language-trigger {
                color: var(--pink);
                border-color: var(--pink);
                background: #fff;
            }

        html[data-cc-page="group-offers"] .language-flag {
            font-size: 17px;
            line-height: 1;
            letter-spacing: 0;
        }

        html[data-cc-page="group-offers"] .language-trigger .fa-angle-down {
            font-size: 9px;
            transition: transform .25s ease;
        }

        html[data-cc-page="group-offers"] .language-switcher.open .language-trigger .fa-angle-down {
            transform: rotate(180deg);
        }

        html[data-cc-page="group-offers"] .language-menu {
            position: absolute;
            top: calc(100% + 12px);
            right: 0;
            width: 205px;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.16);
            padding: 7px 0;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(9px);
            transition: opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility .22s ease;
            z-index: 245;
        }

        html[data-cc-page="group-offers"] .language-switcher.open .language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-offers"] .language-menu a {
            display: grid;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            min-height: 48px;
            padding: 8px 14px;
            border-bottom: 1px solid #eee;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-offers"] .language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-offers"] .language-menu a:hover, html[data-cc-page="group-offers"] .language-menu a.is-current {
                background: #faf6f8;
                color: var(--pink);
                padding-left: 18px;
            }

        html[data-cc-page="group-offers"] .language-menu .language-name {
            font-size: 12px;
            font-weight: 500;
            letter-spacing: .02em;
            text-transform: none;
        }

        html[data-cc-page="group-offers"] .language-menu .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #9b9b9b;
        }

        html[data-cc-page="group-offers"] .language-menu a.is-current .language-code {
            color: var(--pink);
        }

        html[data-cc-page="group-offers"] .drawer-language {
            margin-top: 18px;
            padding-top: 18px;
            border-top: 1px solid #eee;
        }

            html[data-cc-page="group-offers"] .drawer-language .drawer-toggle {
                padding-top: 12px;
                padding-bottom: 12px;
            }

        html[data-cc-page="group-offers"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 9px;
        }

        html[data-cc-page="group-offers"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 28px 1fr auto;
            align-items: center;
            gap: 10px;
            padding: 12px 16px !important;
        }

            html[data-cc-page="group-offers"] .drawer-language-list a.is-current {
                color: var(--pink);
                background: #faf6f8;
            }

        html[data-cc-page="group-offers"] .drawer-language-list .language-code {
            font-size: 9px;
            font-weight: 700;
            letter-spacing: .12em;
            color: #999;
        }

        @media(max-width:1100px) {
            html[data-cc-page="group-offers"] .language-switcher {
                margin-left: 12px;
            }

            html[data-cc-page="group-offers"] .language-trigger {
                min-width: 74px;
                padding: 0 10px;
            }
        }

        @media(max-width:820px) {
            html[data-cc-page="group-offers"] .language-switcher {
                display: none;
            }
        }



        /* =====================================================
                   V24 TOP BAR LANGUAGE FLAGS + MOBILE CONTACT
                   ===================================================== */
        html[data-cc-page="group-offers"] .language-flag-img {
            display: block;
            width: 24px;
            height: 15px;
            object-fit: cover;
            border-radius: 1px;
            box-shadow: 0 0 0 1px rgba(0,0,0,.12);
            flex: 0 0 auto;
        }

        html[data-cc-page="group-offers"] .header-top .container {
            gap: 18px;
        }

        html[data-cc-page="group-offers"] .topbar-language {
            margin-left: 2px !important;
            height: 100%;
            display: flex;
            align-items: center;
            position: relative;
        }

            html[data-cc-page="group-offers"] .topbar-language::before {
                content: "";
                width: 1px;
                height: 13px;
                background: rgba(255,255,255,.25);
                margin-right: 12px;
            }

            html[data-cc-page="group-offers"] .topbar-language .language-trigger {
                min-width: 48px;
                width: auto;
                height: 26px;
                padding: 0 7px;
                gap: 7px;
                border: 0;
                background: transparent;
                color: #fff;
                border-radius: 2px;
            }

                html[data-cc-page="group-offers"] .topbar-language .language-trigger:hover, html[data-cc-page="group-offers"] .topbar-language.open .language-trigger {
                    background: rgba(255,255,255,.12);
                    border-color: transparent;
                    color: #fff;
                    transform: none;
                }

                html[data-cc-page="group-offers"] .topbar-language .language-trigger .fa-angle-down {
                    font-size: 8px;
                    opacity: .75;
                }

            html[data-cc-page="group-offers"] .topbar-language .language-menu {
                top: calc(100% + 7px);
                right: 0;
                width: 184px;
                padding: 6px 0;
            }

                html[data-cc-page="group-offers"] .topbar-language .language-menu a {
                    display: grid;
                    grid-template-columns: 30px 1fr;
                    min-height: 44px;
                    gap: 10px;
                    padding: 7px 13px;
                }

                    html[data-cc-page="group-offers"] .topbar-language .language-menu a:hover, html[data-cc-page="group-offers"] .topbar-language .language-menu a.is-current {
                        padding-left: 17px;
                    }

                html[data-cc-page="group-offers"] .topbar-language .language-menu .language-name {
                    font-size: 11px;
                }

        /* V24: remove the old main-row desktop language control completely. */
        html[data-cc-page="group-offers"] .header-main > .container > .language-switcher {
            display: none !important;
        }

        html[data-cc-page="group-offers"] .drawer-language-current {
            display: inline-flex;
            align-items: center;
            gap: 10px;
        }

        html[data-cc-page="group-offers"] .drawer-language-list a {
            display: grid !important;
            grid-template-columns: 32px 1fr !important;
            gap: 11px !important;
            align-items: center;
            padding: 12px 16px !important;
        }

        html[data-cc-page="group-offers"] .drawer-language-list .language-flag-img {
            width: 26px;
            height: 17px;
        }

        html[data-cc-page="group-offers"] .drawer-connect {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #ececec;
        }

        html[data-cc-page="group-offers"] .drawer-email {
            display: grid;
            grid-template-columns: 42px minmax(0,1fr);
            align-items: center;
            gap: 12px;
            padding: 13px 0;
            color: #1c1c1c;
        }

        html[data-cc-page="group-offers"] .drawer-contact-icon {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(169,0,97,.08);
            color: var(--pink);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
        }

        html[data-cc-page="group-offers"] .drawer-email-copy {
            min-width: 0;
        }

            html[data-cc-page="group-offers"] .drawer-email-copy small {
                display: block;
                margin-bottom: 4px;
                font-size: 8px;
                font-weight: 600;
                letter-spacing: .16em;
                text-transform: uppercase;
                color: #9a9a9a;
            }

            html[data-cc-page="group-offers"] .drawer-email-copy strong {
                display: block;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 11px;
                font-weight: 500;
                color: #2a2a2a;
            }

        html[data-cc-page="group-offers"] .drawer-email:hover .drawer-email-copy strong {
            color: var(--pink);
        }

        html[data-cc-page="group-offers"] .drawer-social-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 15px;
            margin-top: 14px;
        }

        html[data-cc-page="group-offers"] .drawer-social-label {
            font-size: 8px;
            font-weight: 600;
            letter-spacing: .14em;
            text-transform: uppercase;
            color: #949494;
        }

        html[data-cc-page="group-offers"] .drawer-socials {
            display: flex;
            align-items: center;
            gap: 8px;
        }

            html[data-cc-page="group-offers"] .drawer-socials a {
                width: 36px;
                height: 36px;
                border: 1px solid #dfdfdf;
                border-radius: 50%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #363636;
                font-size: 12px;
                transition: background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease;
            }

                html[data-cc-page="group-offers"] .drawer-socials a:hover {
                    background: var(--pink);
                    border-color: var(--pink);
                    color: #fff;
                    transform: translateY(-2px);
                }

        html[data-cc-page="group-offers"] .drawer .drawer-book-now {
            margin-top: 22px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-offers"] .topbar-language {
                display: none !important;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-offers"] .drawer {
                padding-left: 22px;
                padding-right: 22px;
            }

            html[data-cc-page="group-offers"] .drawer-social-row {
                align-items: flex-start;
                flex-direction: column;
            }

            html[data-cc-page="group-offers"] .drawer-socials {
                width: 100%;
            }
        }



        /* =====================================================
                   V25 MOBILE LANGUAGE - BESIDE BURGER MENU
                   ===================================================== */
        html[data-cc-page="group-offers"] .mobile-header-actions {
            display: none;
            margin-left: auto;
            align-items: center;
            gap: 7px;
            position: relative;
            z-index: 260;
        }

        html[data-cc-page="group-offers"] .mobile-language-switcher {
            position: relative;
            display: none;
            align-items: center;
        }

        html[data-cc-page="group-offers"] .mobile-language-trigger {
            width: 48px;
            height: 44px;
            padding: 0;
            border: 0;
            background: transparent;
            color: #171717;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            border-radius: 2px;
            transition: background .25s ease,color .25s ease;
        }

            html[data-cc-page="group-offers"] .mobile-language-trigger .language-flag-img {
                width: 25px;
                height: 16px;
            }

            html[data-cc-page="group-offers"] .mobile-language-trigger .fa-angle-down {
                font-size: 8px;
                color: #777;
                transition: transform .25s ease,color .25s ease;
            }

            html[data-cc-page="group-offers"] .mobile-language-switcher.open .mobile-language-trigger, html[data-cc-page="group-offers"] .mobile-language-trigger:hover {
                background: rgba(169,0,97,.06);
            }

                html[data-cc-page="group-offers"] .mobile-language-switcher.open .mobile-language-trigger .fa-angle-down {
                    transform: rotate(180deg);
                    color: var(--pink);
                }

        html[data-cc-page="group-offers"] .mobile-language-menu {
            position: absolute;
            right: 0;
            top: calc(100% + 8px);
            width: 188px;
            padding: 6px 0;
            background: #fff;
            color: #171717;
            border-top: 3px solid var(--pink);
            box-shadow: 0 18px 45px rgba(0,0,0,.18);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(8px);
            transition: opacity .2s ease,visibility .2s ease,transform .28s cubic-bezier(.22,1,.36,1);
            z-index: 290;
        }

        html[data-cc-page="group-offers"] .mobile-language-switcher.open .mobile-language-menu {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            transform: none;
        }

        html[data-cc-page="group-offers"] .mobile-language-menu a {
            min-height: 46px;
            padding: 8px 14px;
            display: grid;
            grid-template-columns: 32px 1fr;
            align-items: center;
            gap: 10px;
            border-bottom: 1px solid #eee;
            font-size: 11px;
            font-weight: 500;
            color: #242424;
            transition: background .2s ease,color .2s ease,padding-left .2s ease;
        }

            html[data-cc-page="group-offers"] .mobile-language-menu a:last-child {
                border-bottom: 0;
            }

            html[data-cc-page="group-offers"] .mobile-language-menu a:hover, html[data-cc-page="group-offers"] .mobile-language-menu a.is-current {
                color: var(--pink);
                background: #faf6f8;
                padding-left: 18px;
            }

        html[data-cc-page="group-offers"] .mobile-language-menu .language-flag-img {
            width: 27px;
            height: 17px;
        }

        @media(max-width:820px) {
            html[data-cc-page="group-offers"] .mobile-header-actions {
                display: flex;
            }

                html[data-cc-page="group-offers"] .mobile-header-actions .mobile-trigger {
                    display: block;
                    margin-left: 0;
                }

            html[data-cc-page="group-offers"] .mobile-language-switcher {
                display: flex;
            }
        }

        @media(max-width:390px) {
            html[data-cc-page="group-offers"] .mobile-header-actions {
                gap: 3px;
            }

                html[data-cc-page="group-offers"] .mobile-language-trigger, html[data-cc-page="group-offers"] .mobile-header-actions .mobile-trigger {
                    width: 42px;
                }

            html[data-cc-page="group-offers"] .mobile-language-menu {
                right: -43px;
            }
        }

/* Final reference sizing */
html[data-cc-page="group-offers"] .header-main{height:92px!important}
html[data-cc-page="group-offers"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="group-offers"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
html[data-cc-page="group-offers"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="group-offers"] .menu{gap:26px!important}
html[data-cc-page="group-offers"] .brand img{max-height:66px!important}
@media(max-width:1200px){html[data-cc-page="group-offers"] .menu{gap:18px!important}html[data-cc-page="group-offers"] .menu-link{font-size:10px!important}html[data-cc-page="group-offers"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="group-offers"] .header-main{height:72px!important}html[data-cc-page="group-offers"] .brand img{max-height:46px!important}html[data-cc-page="group-offers"] .mobile-trigger{font-size:20px!important}}


/* --- final-demo-v4.css --- */
/* Final Demo V4 - approved batch adjustments */

/* Bottom footer bar: improve legibility without making the footer bulky. */
html[data-cc-page="group-offers"] .footer-bottom{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-offers"] .footer-bottom nav{
  font-size:10px!important;
}
html[data-cc-page="group-offers"] .footer-reference-bottom .container{
  font-size:11px!important;
  line-height:1.6!important;
}
html[data-cc-page="group-offers"] .footer-powered{
  font-size:9.5px!important;
}
html[data-cc-page="group-offers"] .footer-reference-bottom nav{
  font-size:10px!important;
}

/* Internal page banners use the same proportions as the approved About Us banner. */
html[data-cc-page="group-offers"] .internal-banner{
  position:relative!important;
  height:82svh!important;
  min-height:680px!important;
  color:#fff!important;
  background:#111!important;
  overflow:hidden!important;
}
html[data-cc-page="group-offers"] .internal-banner img.hero-bg,
html[data-cc-page="group-offers"] .hero.internal-banner img.hero-bg{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  z-index:0!important;
}
html[data-cc-page="group-offers"] .internal-banner::after,
html[data-cc-page="group-offers"] .hero.internal-banner::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,.10) 45%,rgba(0,0,0,.58)),linear-gradient(90deg,rgba(0,0,0,.42),transparent 58%)!important;
  pointer-events:none!important;
}
html[data-cc-page="group-offers"] .internal-banner .hero-inner,
html[data-cc-page="group-offers"] .internal-banner .offers-page-hero-inner,
html[data-cc-page="group-offers"] .internal-banner .cl7-hero-inner{
  height:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  padding-top:0!important;
  padding-bottom:90px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-offers"] .internal-banner .hero-copy,
html[data-cc-page="group-offers"] .internal-banner .offers-page-hero-copy,
html[data-cc-page="group-offers"] .internal-banner .cl7-hero-copy{
  max-width:800px!important;
  position:relative!important;
  z-index:2!important;
}
html[data-cc-page="group-offers"] .internal-banner .hero-kicker,
html[data-cc-page="group-offers"] .internal-banner .hero-kicker.eyebrow,
html[data-cc-page="group-offers"] .internal-banner .offers-page-hero-copy .eyebrow,
html[data-cc-page="group-offers"] .internal-banner .cl7-kicker{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin-bottom:20px!important;
  color:#fff!important;
}
html[data-cc-page="group-offers"] .internal-banner .hero-kicker::before,
html[data-cc-page="group-offers"] .internal-banner .offers-page-hero-copy .eyebrow::before,
html[data-cc-page="group-offers"] .internal-banner .cl7-kicker::before{
  content:""!important;
  width:46px!important;
  height:2px!important;
  background:#fff!important;
}
html[data-cc-page="group-offers"] .internal-banner h1,
html[data-cc-page="group-offers"] .internal-banner .hero-title,
html[data-cc-page="group-offers"] .internal-banner .offers-page-hero h1,
html[data-cc-page="group-offers"] .internal-banner .cl7-hero-title{
  font-family:var(--display)!important;
  font-size:clamp(60px,6vw,96px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.045em!important;
  color:#fff!important;
}
html[data-cc-page="group-offers"] .internal-banner .stagger>*{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .7s ease,transform .8s cubic-bezier(.22,1,.36,1);
}
html[data-cc-page="group-offers"] .internal-banner .stagger.in-view>*{
  opacity:1!important;
  transform:none!important;
}
html[data-cc-page="group-offers"] .internal-banner .stagger.in-view>*:nth-child(2){transition-delay:.08s}
html[data-cc-page="group-offers"] .internal-banner .stagger.in-view>*:nth-child(3){transition-delay:.16s}
html[data-cc-page="group-offers"] .internal-banner .stagger.in-view>*:nth-child(4){transition-delay:.24s}
html[data-cc-page="group-offers"] .internal-banner .stagger.in-view>*:nth-child(5){transition-delay:.32s}

@media(max-width:820px){
  html[data-cc-page="group-offers"] .internal-banner{
    height:82svh!important;
    min-height:620px!important;
    padding-top:72px!important;
  }
  html[data-cc-page="group-offers"] .internal-banner .hero-inner,
  html[data-cc-page="group-offers"] .internal-banner .offers-page-hero-inner,
  html[data-cc-page="group-offers"] .internal-banner .cl7-hero-inner{
    padding-top:0!important;
    padding-bottom:70px!important;
  }
  html[data-cc-page="group-offers"] .internal-banner h1,
  html[data-cc-page="group-offers"] .internal-banner .hero-title,
  html[data-cc-page="group-offers"] .internal-banner .offers-page-hero h1,
  html[data-cc-page="group-offers"] .internal-banner .cl7-hero-title{
    font-size:clamp(46px,12vw,62px)!important;
  }
}
@media(max-width:560px){
  html[data-cc-page="group-offers"] .internal-banner{
    min-height:600px!important;
  }
  html[data-cc-page="group-offers"] .internal-banner h1,
  html[data-cc-page="group-offers"] .internal-banner .hero-title,
  html[data-cc-page="group-offers"] .internal-banner .offers-page-hero h1,
  html[data-cc-page="group-offers"] .internal-banner .cl7-hero-title{
    font-size:45px!important;
  }
}


/* Group footer standard - copied from group_Index.html */
html[data-cc-page="group-offers"] .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;
}
html[data-cc-page="group-offers"] .footer-reference{
  background:#121214!important;
  color:#fff;
  padding:0!important;
  position:relative;
  overflow:hidden;
}
html[data-cc-page="group-offers"] .footer-reference::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:-180px;
  bottom:-220px;
  width:620px;
  height:620px;
  background:radial-gradient(circle,rgba(169,0,97,.12) 0%,rgba(169,0,97,.04) 40%,rgba(169,0,97,0) 72%);
  pointer-events:none;
}
html[data-cc-page="group-offers"] .footer-reference::after{display:none!important;}
html[data-cc-page="group-offers"] .footer-reference-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .72fr .95fr 1.55fr;
  gap:clamp(38px,4.8vw,78px);
  padding-top:72px;
  padding-bottom:70px;
}
html[data-cc-page="group-offers"] .footer-reference-logo{display:inline-block;}
html[data-cc-page="group-offers"] .footer-reference-logo img{width:190px;height:auto;}
html[data-cc-page="group-offers"] .footer-reference-brand>p{
  margin-top:28px;
  max-width:310px;
  font-size:14px;
  line-height:1.95;
  color:rgba(255,255,255,.72);
}
html[data-cc-page="group-offers"] .footer-destination-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
html[data-cc-page="group-offers"] .footer-destination-line b{width:3px;height:3px;border-radius:50%;background:var(--pink);}
html[data-cc-page="group-offers"] .footer-follow-label{
  margin-top:32px;
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
html[data-cc-page="group-offers"] .footer-reference-socials{display:flex;gap:9px;margin-top:14px;}
html[data-cc-page="group-offers"] .footer-reference-socials a{
  width:39px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:12px;
  transition:background .28s ease,border-color .28s ease,transform .28s ease;
}
html[data-cc-page="group-offers"] .footer-reference-socials a:hover{background:var(--pink);border-color:var(--pink);transform:translateY(-3px);}
html[data-cc-page="group-offers"] .footer-reference h4{
  margin:0 0 24px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}
html[data-cc-page="group-offers"] .footer-reference-column nav{display:grid;gap:16px;}
html[data-cc-page="group-offers"] .footer-reference-column nav a{
  width:fit-content;
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.72);
  transition:color .22s ease,transform .22s ease;
}
html[data-cc-page="group-offers"] .footer-reference-column nav a:hover{color:#fff;transform:translateX(4px);}
html[data-cc-page="group-offers"] .footer-contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
html[data-cc-page="group-offers"] .footer-reference .footer-contact-card{
  min-width:0;
  min-height:76px;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.025);
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
}
html[data-cc-page="group-offers"] .footer-reference .footer-contact-card:hover{border-color:rgba(169,0,97,.62);background:rgba(169,0,97,.06);transform:translateY(-2px);}
html[data-cc-page="group-offers"] .footer-contact-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(169,0,97,.58);color:var(--pink);}
html[data-cc-page="group-offers"] .footer-reference .footer-contact-card small{display:block;margin-bottom:4px;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48);}
html[data-cc-page="group-offers"] .footer-reference .footer-contact-card strong{display:block;overflow-wrap:anywhere;font-size:10px;line-height:1.45;color:#fff;font-weight:600;}
html[data-cc-page="group-offers"] .footer-reference-newsletter{margin-top:30px;}
html[data-cc-page="group-offers"] .footer-reference-newsletter h4{margin-bottom:16px!important;}
html[data-cc-page="group-offers"] .footer-reference-newsletter>p{margin:0 0 14px;font-size:13px;line-height:1.65;color:rgba(255,255,255,.68);}
html[data-cc-page="group-offers"] .footer-reference-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.025);
}
html[data-cc-page="group-offers"] .footer-reference-form:focus-within{border-color:rgba(169,0,97,.72);}
html[data-cc-page="group-offers"] .footer-reference-form input{min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:0 16px;font-size:12px;}
html[data-cc-page="group-offers"] .footer-reference-form input::placeholder{color:rgba(255,255,255,.45);}
html[data-cc-page="group-offers"] .footer-reference-form button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-width:142px;
  border:0;
  background:var(--pink);
  color:#fff;
  padding:0 18px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  transition:transform .25s ease,filter .25s ease;
}
html[data-cc-page="group-offers"] .footer-reference-form button::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--pink-dark);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);}
html[data-cc-page="group-offers"] .footer-reference-form button:hover{transform:translateY(-2px);filter:brightness(1.06);}
html[data-cc-page="group-offers"] .footer-reference-form button:hover::before{transform:scaleX(1);}
html[data-cc-page="group-offers"] .footer-reference-newsletter>small{display:block;margin-top:9px;font-size:8px;color:rgba(255,255,255,.38);}
html[data-cc-page="group-offers"] .footer-reference-newsletter>small a{color:rgba(255,255,255,.72);text-decoration:underline;}
html[data-cc-page="group-offers"] .footer-reference-bottom{position:relative;z-index:2;background:#0c0c0d;border-top:1px solid rgba(255,255,255,.06);}
html[data-cc-page="group-offers"] .footer-reference-bottom .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(255,255,255,.56);font-size:11px!important;line-height:1.6!important;}
html[data-cc-page="group-offers"] .footer-reference-bottom .container>div{display:grid;gap:5px;}
html[data-cc-page="group-offers"] .footer-powered{font-size:9.5px!important;}
html[data-cc-page="group-offers"] .footer-reference-bottom a{color:rgba(255,255,255,.82);transition:color .2s ease;}
html[data-cc-page="group-offers"] .footer-reference-bottom a:hover{color:var(--pink);}
html[data-cc-page="group-offers"] .footer-reference-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:28px;font-size:10px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
html[data-cc-page="group-offers"] .footer-reference>.container.footer-reference-main{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html[data-cc-page="group-offers"] .footer-reference-bottom>.container{
  width:min(1420px,calc(100% - 80px))!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1180px){
  html[data-cc-page="group-offers"] .footer-reference-main{grid-template-columns:1fr 1fr 1fr;}
  html[data-cc-page="group-offers"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-offers"] .footer-contact-cards{grid-template-columns:1fr 1fr;}
  html[data-cc-page="group-offers"] .footer-reference-newsletter{max-width:720px;}
}
@media(max-width:1100px){
  html[data-cc-page="group-offers"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-offers"] .footer-reference-bottom>.container{width:min(100% - 44px,1420px)!important;}
}
@media(max-width:820px){
  html[data-cc-page="group-offers"] .footer-reference-main{grid-template-columns:1fr 1fr;gap:46px 30px;padding-top:58px;padding-bottom:56px;}
  html[data-cc-page="group-offers"] .footer-reference-brand, html[data-cc-page="group-offers"] .footer-reference-reservations{grid-column:1/-1;}
  html[data-cc-page="group-offers"] .footer-reference-brand>p{max-width:500px;}
  html[data-cc-page="group-offers"] .footer-reference-bottom .container{align-items:flex-start;flex-direction:column;justify-content:center;padding-top:22px;padding-bottom:22px;}
  html[data-cc-page="group-offers"] .footer-reference-bottom nav{justify-content:flex-start;gap:18px;}
  html[data-cc-page="group-offers"] .footer-reference>.container.footer-reference-main, html[data-cc-page="group-offers"] .footer-reference-bottom>.container{width:calc(100% - 30px)!important;}
}
@media(max-width:560px){
  html[data-cc-page="group-offers"] .footer-reference-main{grid-template-columns:1fr;gap:38px;padding-top:50px;padding-bottom:48px;}
  html[data-cc-page="group-offers"] .footer-reference-brand, html[data-cc-page="group-offers"] .footer-reference-reservations{grid-column:auto;}
  html[data-cc-page="group-offers"] .footer-reference-logo img{width:172px;}
  html[data-cc-page="group-offers"] .footer-reference-column nav{gap:13px;}
  html[data-cc-page="group-offers"] .footer-contact-cards{grid-template-columns:1fr;}
  html[data-cc-page="group-offers"] .footer-reference-form{grid-template-columns:1fr;gap:8px;border:0;background:transparent;}
  html[data-cc-page="group-offers"] .footer-reference-form input{height:52px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.025);}
  html[data-cc-page="group-offers"] .footer-reference-form button{min-height:52px;}
}


/* --- offers-modern-v7.css --- */
/* Final Demo V7 - modern editorial Offers page */

/* Hero: force the same crisp white legibility as the other group inner banners. */
html[data-cc-page="group-offers"] .offers-page-hero::after{
    background:
      linear-gradient(180deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.20) 34%,rgba(0,0,0,.13) 55%,rgba(0,0,0,.68) 100%),
      linear-gradient(90deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.22) 46%,rgba(0,0,0,.04) 100%) !important;
}
html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy, html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy .eyebrow, html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy h1{
    color:#fff !important;
    opacity:1 !important;
    filter:none !important;
}
html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy h1{
    text-shadow:0 3px 26px rgba(0,0,0,.30);
}
html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy .eyebrow{
    text-shadow:0 2px 15px rgba(0,0,0,.35);
}
html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy .eyebrow::before{background:#fff !important}

/* Intro */
html[data-cc-page="group-offers"] .offers-modern-main{background:#fff}
html[data-cc-page="group-offers"] .offers-modern-intro{padding:96px 0 86px;background:#fff;overflow:hidden}
html[data-cc-page="group-offers"] .offers-modern-intro-inner{max-width:900px;margin:0 auto;text-align:center}
html[data-cc-page="group-offers"] .offers-modern-intro .eyebrow{color:var(--pink);margin-bottom:16px}
html[data-cc-page="group-offers"] .offers-modern-intro h2{
    font-family:var(--display);font-size:clamp(44px,4.8vw,68px);font-weight:400;
    line-height:1.02;letter-spacing:-.04em;color:#191718
}
html[data-cc-page="group-offers"] .offers-modern-intro h2 em{font-weight:400;color:var(--pink)}
html[data-cc-page="group-offers"] .offers-modern-intro p{max-width:690px;margin:22px auto 0;font-size:13.5px;line-height:1.86;color:#756f72}

/* Main offer story - deliberately not a card grid. */
html[data-cc-page="group-offers"] .offers-modern-list{padding:0 0 120px;background:#fff;overflow:hidden}
html[data-cc-page="group-offers"] .offer-feature-modern{position:relative;min-height:650px;overflow:hidden;background:#121212;color:#fff}
html[data-cc-page="group-offers"] .offer-feature-modern-media{position:absolute;inset:0}
html[data-cc-page="group-offers"] .offer-feature-modern-media img{height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-offers"] .offer-feature-modern:hover .offer-feature-modern-media img{transform:scale(1.025)}
html[data-cc-page="group-offers"] .offer-feature-modern::after{
    content:"";position:absolute;inset:0;z-index:1;
    background:linear-gradient(90deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.22) 48%,rgba(0,0,0,.05) 76%),
               linear-gradient(180deg,transparent 42%,rgba(0,0,0,.32) 100%)
}
html[data-cc-page="group-offers"] .offer-feature-modern-overlay{position:absolute;left:58px;bottom:56px;z-index:2;max-width:510px}
html[data-cc-page="group-offers"] .offer-modern-kicker{display:flex;align-items:center;gap:13px;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--pink)}
html[data-cc-page="group-offers"] .offer-feature-modern .offer-modern-kicker, html[data-cc-page="group-offers"] .offer-wide-modern .offer-modern-kicker{color:#fff}
html[data-cc-page="group-offers"] .offer-modern-kicker span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid currentColor;border-radius:50%;font-size:9px;letter-spacing:0}
html[data-cc-page="group-offers"] .offer-feature-modern h3, html[data-cc-page="group-offers"] .offer-wide-modern h3, html[data-cc-page="group-offers"] .offer-editorial-copy h3{
    font-family:var(--display);font-weight:400;letter-spacing:-.035em;line-height:1
}
html[data-cc-page="group-offers"] .offer-feature-modern h3{font-size:clamp(54px,6vw,84px);margin:18px 0 18px}
html[data-cc-page="group-offers"] .offer-feature-modern p{font-size:14px;line-height:1.8;color:rgba(255,255,255,.84);max-width:430px}
html[data-cc-page="group-offers"] .offer-modern-link{display:inline-flex;align-items:center;gap:11px;margin-top:27px;color:#fff;font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.6);transition:gap .25s ease,color .25s ease,border-color .25s ease}
html[data-cc-page="group-offers"] .offer-modern-link:hover{gap:17px;border-color:#fff}
html[data-cc-page="group-offers"] .offer-modern-link.dark{color:#1c191b;border-color:rgba(28,25,27,.32)}
html[data-cc-page="group-offers"] .offer-modern-link.dark:hover{color:var(--pink);border-color:var(--pink)}

html[data-cc-page="group-offers"] .offer-editorial-stream{padding-top:112px}
html[data-cc-page="group-offers"] .offer-editorial-row{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(320px,.68fr);gap:82px;align-items:center;margin-bottom:128px}
html[data-cc-page="group-offers"] .offer-editorial-row.is-reverse{grid-template-columns:minmax(320px,.68fr) minmax(0,1.32fr)}
html[data-cc-page="group-offers"] .offer-editorial-row.is-reverse .offer-editorial-media{grid-column:2}
html[data-cc-page="group-offers"] .offer-editorial-row.is-reverse .offer-editorial-copy{grid-column:1;grid-row:1}
html[data-cc-page="group-offers"] .offer-editorial-media{height:520px;overflow:hidden;background:#eee}
html[data-cc-page="group-offers"] .offer-editorial-media img{height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-offers"] .offer-editorial-row:hover .offer-editorial-media img{transform:scale(1.025)}
html[data-cc-page="group-offers"] .offer-editorial-copy{max-width:430px}
html[data-cc-page="group-offers"] .offer-editorial-row:not(.is-reverse) .offer-editorial-copy{padding-right:18px}
html[data-cc-page="group-offers"] .offer-editorial-row.is-reverse .offer-editorial-copy{padding-left:18px}
html[data-cc-page="group-offers"] .offer-editorial-copy h3{font-size:clamp(46px,4.7vw,68px);margin:20px 0 19px;color:#191718}
html[data-cc-page="group-offers"] .offer-editorial-copy p{font-size:13.5px;line-height:1.88;color:#746e71;max-width:390px}
html[data-cc-page="group-offers"] .offer-modern-meta{display:flex;align-items:center;gap:12px;margin-top:24px;color:#9b9498;font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
html[data-cc-page="group-offers"] .offer-modern-meta b{display:block;width:26px;height:1px;background:#d7d0d4}

/* One cinematic interrupt so the page does not become a repeated left/right pattern. */
html[data-cc-page="group-offers"] .offer-wide-modern{position:relative;min-height:620px;margin:12px 0 132px;overflow:hidden;background:#151515;color:#fff}
html[data-cc-page="group-offers"] .offer-wide-modern-media{position:absolute;inset:0}
html[data-cc-page="group-offers"] .offer-wide-modern-media img{height:100%;object-fit:cover;object-position:center 46%;transition:transform 1s cubic-bezier(.22,1,.36,1)}
html[data-cc-page="group-offers"] .offer-wide-modern:hover .offer-wide-modern-media img{transform:scale(1.025)}
html[data-cc-page="group-offers"] .offer-wide-modern::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.30) 48%,rgba(0,0,0,.06) 77%)}
html[data-cc-page="group-offers"] .offer-wide-modern-copy{position:absolute;z-index:2;left:58px;top:50%;transform:translateY(-50%);max-width:470px}
html[data-cc-page="group-offers"] .offer-wide-modern h3{font-size:clamp(52px,5.6vw,80px);margin:20px 0 18px}
html[data-cc-page="group-offers"] .offer-wide-modern p{max-width:390px;font-size:13.5px;line-height:1.85;color:rgba(255,255,255,.82)}
html[data-cc-page="group-offers"] .offer-editorial-last{margin-bottom:112px}
html[data-cc-page="group-offers"] .offer-editorial-stream .offer-feature-modern{margin:12px 0 132px}

/* Closing CTA is a simple editorial split, not another box/card. */
html[data-cc-page="group-offers"] .offers-modern-close{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:end;padding:78px 0 8px;border-top:1px solid #e7e1e4}
html[data-cc-page="group-offers"] .offers-modern-close .eyebrow{color:var(--pink);margin-bottom:16px}
html[data-cc-page="group-offers"] .offers-modern-close h3{font-family:var(--display);font-size:clamp(40px,4.4vw,62px);font-weight:400;line-height:1.03;letter-spacing:-.035em}
html[data-cc-page="group-offers"] .offers-modern-close-action{max-width:470px;margin-left:auto}
html[data-cc-page="group-offers"] .offers-modern-close-action p{font-size:12.5px;line-height:1.8;color:#777174;margin-bottom:25px}

@media(max-width:980px){
    html[data-cc-page="group-offers"] .offer-feature-modern{min-height:560px}
    html[data-cc-page="group-offers"] .offer-feature-modern-overlay, html[data-cc-page="group-offers"] .offer-wide-modern-copy{left:36px}
    html[data-cc-page="group-offers"] .offer-editorial-row, html[data-cc-page="group-offers"] .offer-editorial-row.is-reverse{grid-template-columns:1.1fr .9fr;gap:48px;margin-bottom:96px}
    html[data-cc-page="group-offers"] .offer-editorial-media{height:430px}
    html[data-cc-page="group-offers"] .offer-wide-modern{min-height:540px;margin-bottom:100px}
    html[data-cc-page="group-offers"] .offers-modern-close{gap:52px}
}
@media(max-width:760px){
    html[data-cc-page="group-offers"] .offers-modern-intro{padding:68px 0 62px}
    html[data-cc-page="group-offers"] .offers-modern-intro h2{font-size:42px}
    html[data-cc-page="group-offers"] .offers-modern-list{padding-bottom:86px}
    html[data-cc-page="group-offers"] .offer-feature-modern{min-height:520px}
    html[data-cc-page="group-offers"] .offer-feature-modern-overlay{left:24px;right:24px;bottom:30px}
    html[data-cc-page="group-offers"] .offer-feature-modern h3{font-size:52px}
    html[data-cc-page="group-offers"] .offer-editorial-stream{padding-top:74px}
    html[data-cc-page="group-offers"] .offer-editorial-row, html[data-cc-page="group-offers"] .offer-editorial-row.is-reverse{display:flex;flex-direction:column;gap:28px;margin-bottom:72px}
    html[data-cc-page="group-offers"] .offer-editorial-row.is-reverse{flex-direction:column}
    html[data-cc-page="group-offers"] .offer-editorial-media{width:100%;height:330px}
    html[data-cc-page="group-offers"] .offer-editorial-copy, html[data-cc-page="group-offers"] .offer-editorial-row:not(.is-reverse) .offer-editorial-copy, html[data-cc-page="group-offers"] .offer-editorial-row.is-reverse .offer-editorial-copy{max-width:none;width:100%;padding:0 2px}
    html[data-cc-page="group-offers"] .offer-editorial-copy h3{font-size:44px}
    html[data-cc-page="group-offers"] .offer-wide-modern{min-height:500px;margin:0 0 78px}
    html[data-cc-page="group-offers"] .offer-editorial-stream .offer-feature-modern{margin:0 0 78px}
    html[data-cc-page="group-offers"] .offer-wide-modern-copy{left:24px;right:24px;top:auto;bottom:32px;transform:none}
    html[data-cc-page="group-offers"] .offer-wide-modern h3{font-size:50px}
    html[data-cc-page="group-offers"] .offer-editorial-last{margin-bottom:76px}
    html[data-cc-page="group-offers"] .offers-modern-close{grid-template-columns:1fr;gap:26px;padding-top:58px}
    html[data-cc-page="group-offers"] .offers-modern-close-action{margin-left:0;max-width:560px}
}
@media(max-width:480px){
    html[data-cc-page="group-offers"] .offer-feature-modern{min-height:470px}
    html[data-cc-page="group-offers"] .offer-feature-modern h3{font-size:46px}
    html[data-cc-page="group-offers"] .offer-feature-modern p, html[data-cc-page="group-offers"] .offer-wide-modern p{font-size:13px}
    html[data-cc-page="group-offers"] .offer-editorial-media{height:280px}
    html[data-cc-page="group-offers"] .offer-editorial-copy h3{font-size:39px}
    html[data-cc-page="group-offers"] .offer-wide-modern{min-height:450px}
    html[data-cc-page="group-offers"] .offer-wide-modern h3{font-size:44px}
}
@media(prefers-reduced-motion:reduce){
    html[data-cc-page="group-offers"] .offer-feature-modern-media img, html[data-cc-page="group-offers"] .offer-editorial-media img, html[data-cc-page="group-offers"] .offer-wide-modern-media img{transition:none!important;transform:none!important}
}


/* V14: keep the dark hero overlay behind the copy. The prior equal z-index values
   allowed the ::after overlay to paint over the title, making white text look grey. */
html[data-cc-page="group-offers"] .offers-page-hero-media{z-index:0!important;}
html[data-cc-page="group-offers"] .offers-page-hero::after{z-index:1!important;}
html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-inner{z-index:3!important;}
html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy{position:relative!important;z-index:4!important;opacity:1!important;filter:none!important;}
html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy .eyebrow, html[data-cc-page="group-offers"] .offers-page-hero .offers-page-hero-copy h1{color:#fff!important;opacity:1!important;filter:none!important;}


/* Final-demo: keep the offers hero copy as readable as the other internal banners. */
html[data-cc-page="group-offers"] .offers-page-hero::after{
  background:
    linear-gradient(90deg,rgba(8,8,9,.78) 0%,rgba(8,8,9,.58) 35%,rgba(8,8,9,.25) 62%,rgba(8,8,9,.08) 100%),
    linear-gradient(180deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.10) 44%,rgba(0,0,0,.34) 100%) !important;
}
html[data-cc-page="group-offers"] .offers-page-hero-copy, html[data-cc-page="group-offers"] .offers-page-hero-copy *{mix-blend-mode:normal!important}
html[data-cc-page="group-offers"] .offers-page-hero-copy .eyebrow, html[data-cc-page="group-offers"] .offers-page-hero-copy h1{
  color:#fff!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:0 3px 18px rgba(0,0,0,.42);
}
html[data-cc-page="group-offers"] .offers-page-hero-copy .eyebrow{font-weight:700!important}
@media(max-width:820px){
  html[data-cc-page="group-offers"] .offers-page-hero::after{
    background:linear-gradient(90deg,rgba(8,8,9,.76) 0%,rgba(8,8,9,.42) 72%,rgba(8,8,9,.18) 100%)!important;
  }
}

/* ============================================================
   PAGE: index   (index.html)
   ============================================================ */
html[data-cc-page="index"]{
      --brand:#A90061;
      --brand-dark:#6F0037;
      --ink:#171717;
      --muted:#777;
      --line:#e7e3e5;
      --surface:#f7f5f6;
      --white:#fff;
    }
    html[data-cc-page="index"], html[data-cc-page="index"] *{box-sizing:border-box}
    html[data-cc-page="index"]{scroll-behavior:smooth}
    html[data-cc-page="index"] body{
      margin:0;
      font-family:Inter,Arial,sans-serif;
      color:var(--ink);
      background:var(--surface);
    }
    html[data-cc-page="index"] .page-shell{
      width:min(1180px,calc(100% - 48px));
      margin:0 auto;
      padding:72px 0 90px;
    }
    html[data-cc-page="index"] .intro{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:36px;
      padding-bottom:36px;
      border-bottom:1px solid var(--line);
      margin-bottom:38px;
    }
    html[data-cc-page="index"] .eyebrow{
      display:flex;
      align-items:center;
      gap:12px;
      color:var(--brand);
      font-size:12px;
      font-weight:700;
      letter-spacing:.18em;
      text-transform:uppercase;
      margin-bottom:16px;
    }
    html[data-cc-page="index"] .eyebrow:before{content:"";width:34px;height:2px;background:var(--brand)}
    html[data-cc-page="index"] h1{
      font-family:"Playfair Display",serif;
      font-size:clamp(44px,6vw,76px);
      line-height:.98;
      font-weight:500;
      margin:0;
      letter-spacing:-.04em;
    }
    html[data-cc-page="index"] .intro p{
      max-width:440px;
      color:var(--muted);
      line-height:1.7;
      margin:0;
      font-size:15px;
    }
    html[data-cc-page="index"] .grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:28px;
    }
    html[data-cc-page="index"] .site-group{
      background:var(--white);
      border:1px solid var(--line);
      padding:34px;
      box-shadow:0 16px 50px rgba(24,10,18,.04);
    }
    html[data-cc-page="index"] .group-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
      padding-bottom:22px;
      border-bottom:1px solid var(--line);
      margin-bottom:8px;
    }
    html[data-cc-page="index"] .group-title{
      font-family:"Playfair Display",serif;
      font-size:34px;
      line-height:1;
      margin:0;
      font-weight:500;
    }
    html[data-cc-page="index"] .group-count{
      width:42px;
      height:42px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:#f6edf2;
      color:var(--brand);
      font-size:12px;
      font-weight:700;
    }
    html[data-cc-page="index"] .page-list{list-style:none;margin:0;padding:0}
    html[data-cc-page="index"] .page-list li{border-bottom:1px solid var(--line)}
    html[data-cc-page="index"] .page-list li:last-child{border-bottom:0}
    html[data-cc-page="index"] .page-list a{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      padding:20px 0;
      text-decoration:none;
      color:var(--ink);
      transition:transform .25s ease,color .25s ease;
    }
    html[data-cc-page="index"] .page-list a:hover{color:var(--brand);transform:translateX(4px)}
    html[data-cc-page="index"] .page-name{font-size:16px;font-weight:600}
    html[data-cc-page="index"] .file-name{display:block;font-size:12px;color:#999;margin-top:5px;font-weight:400}
    html[data-cc-page="index"] .arrow{
      flex:0 0 auto;
      width:34px;
      height:34px;
      border:1px solid var(--line);
      border-radius:50%;
      display:grid;
      place-items:center;
      transition:background .25s ease,border-color .25s ease,color .25s ease;
    }
    html[data-cc-page="index"] .page-list a:hover .arrow{background:var(--brand);border-color:var(--brand);color:#fff}
    html[data-cc-page="index"] .footer-note{
      margin-top:34px;
      color:#999;
      font-size:12px;
      text-align:center;
    }
    @media(max-width:820px){
      html[data-cc-page="index"] .page-shell{width:min(100% - 28px,1180px);padding:44px 0 64px}
      html[data-cc-page="index"] .intro{display:block}
      html[data-cc-page="index"] .intro p{margin-top:22px}
      html[data-cc-page="index"] .grid{grid-template-columns:1fr}
      html[data-cc-page="index"] .site-group{padding:26px 22px}
      html[data-cc-page="index"] .group-title{font-size:30px}
    }
  

/* FINAL DEMO V10 - global header/menu consistency + hero legibility */
html[data-cc-page="index"] .header-main{height:92px!important}
html[data-cc-page="index"] .header-main .container{height:100%!important;align-items:center!important}
html[data-cc-page="index"] .header-book{min-height:48px!important;padding:0 24px!important;font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important}
/* Hotel menu */
html[data-cc-page="index"] .menu>a{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
/* Group menu */
html[data-cc-page="index"] .menu-link{font-family:var(--body)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.075em!important;line-height:1!important;text-transform:uppercase!important}
html[data-cc-page="index"] .menu{gap:26px!important}
html[data-cc-page="index"] .brand img{max-height:66px!important}
html[data-cc-page="index"] .hero .eyebrow, html[data-cc-page="index"] .hero-kicker, html[data-cc-page="index"] .hero-kicker.eyebrow, html[data-cc-page="index"] .hero-copy .eyebrow{color:#fff!important}
html[data-cc-page="index"] .hero-kicker::before{background:#fff!important}
@media(max-width:1200px){html[data-cc-page="index"] .menu{gap:18px!important}html[data-cc-page="index"] .menu>a, html[data-cc-page="index"] .menu-link{font-size:10px!important}html[data-cc-page="index"] .header-book{margin-left:20px!important;padding:0 20px!important}}
@media(max-width:820px){html[data-cc-page="index"] .header-main{height:72px!important}html[data-cc-page="index"] .brand img{max-height:46px!important}html[data-cc-page="index"] .mobile-trigger{font-size:20px!important}}

/* ============================================================
   GROUP STANDARD: SectionHeaderGroup (.about-manifesto)
   Unified layout and refined typography across all Group pages:
   - group-about-us
   - group-offers
   - group-loyalty
   - group-meetings-events
   ============================================================ */
html[data-cc-page="group-about-us"] .about-manifesto,
html[data-cc-page="group-offers"] .about-manifesto,
html[data-cc-page="group-loyalty"] .about-manifesto,
html[data-cc-page="group-meetings-events"] .about-manifesto {
  position: relative !important;
  padding: 92px 0 88px !important;
  text-align: center !important;
  background: #fff !important;
}
html[data-cc-page="group-about-us"] .about-manifesto .container,
html[data-cc-page="group-offers"] .about-manifesto .container,
html[data-cc-page="group-loyalty"] .about-manifesto .container,
html[data-cc-page="group-meetings-events"] .about-manifesto .container {
  max-width: 920px !important;
  margin: 0 auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}
html[data-cc-page="group-about-us"] .about-manifesto .eyebrow,
html[data-cc-page="group-offers"] .about-manifesto .eyebrow,
html[data-cc-page="group-loyalty"] .about-manifesto .eyebrow,
html[data-cc-page="group-meetings-events"] .about-manifesto .eyebrow {
  display: inline-block !important;
  font-family: var(--body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  color: var(--pink) !important;
  margin-bottom: 16px !important;
}
html[data-cc-page="group-about-us"] .about-manifesto .statement,
html[data-cc-page="group-offers"] .about-manifesto .statement,
html[data-cc-page="group-loyalty"] .about-manifesto .statement,
html[data-cc-page="group-meetings-events"] .about-manifesto .statement {
  font-family: var(--display) !important;
  font-size: clamp(40px, 4.2vw, 58px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em !important;
  font-weight: 400 !important;
  color: #171717 !important;
  max-width: 920px !important;
  margin: 0 auto !important;
}
html[data-cc-page="group-about-us"] .about-manifesto .statement em,
html[data-cc-page="group-offers"] .about-manifesto .statement em,
html[data-cc-page="group-loyalty"] .about-manifesto .statement em,
html[data-cc-page="group-meetings-events"] .about-manifesto .statement em {
  font-style: italic !important;
  color: var(--pink) !important;
}
html[data-cc-page="group-about-us"] .about-manifesto .small-copy,
html[data-cc-page="group-offers"] .about-manifesto .small-copy,
html[data-cc-page="group-loyalty"] .about-manifesto .small-copy,
html[data-cc-page="group-meetings-events"] .about-manifesto .small-copy {
  display: block !important;
  max-width: 860px !important;
  margin: 38px auto 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  text-align: center !important;
}
html[data-cc-page="group-about-us"] .about-manifesto .small-copy p,
html[data-cc-page="group-offers"] .about-manifesto .small-copy p,
html[data-cc-page="group-loyalty"] .about-manifesto .small-copy p,
html[data-cc-page="group-meetings-events"] .about-manifesto .small-copy p {
  max-width: none !important;
  margin: 0 auto !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  color: #686467 !important;
}
html[data-cc-page="group-about-us"] .about-manifesto .reveal,
html[data-cc-page="group-offers"] .about-manifesto .reveal,
html[data-cc-page="group-loyalty"] .about-manifesto .reveal,
html[data-cc-page="group-meetings-events"] .about-manifesto .reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .8s ease, transform .9s cubic-bezier(.22,1,.36,1);
}
html[data-cc-page="group-about-us"] .about-manifesto .reveal.in-view,
html[data-cc-page="group-offers"] .about-manifesto .reveal.in-view,
html[data-cc-page="group-loyalty"] .about-manifesto .reveal.in-view,
html[data-cc-page="group-meetings-events"] .about-manifesto .reveal.in-view {
  opacity: 1 !important;
  transform: none !important;
}
html[data-cc-page="group-about-us"] .about-manifesto .stagger > *,
html[data-cc-page="group-offers"] .about-manifesto .stagger > *,
html[data-cc-page="group-loyalty"] .about-manifesto .stagger > *,
html[data-cc-page="group-meetings-events"] .about-manifesto .stagger > * {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity .7s ease, transform .8s cubic-bezier(.22,1,.36,1);
}
html[data-cc-page="group-about-us"] .about-manifesto .stagger.in-view > *,
html[data-cc-page="group-offers"] .about-manifesto .stagger.in-view > *,
html[data-cc-page="group-loyalty"] .about-manifesto .stagger.in-view > *,
html[data-cc-page="group-meetings-events"] .about-manifesto .stagger.in-view > * {
  opacity: 1 !important;
  transform: none !important;
}
@media (max-width: 820px) {
  html[data-cc-page="group-about-us"] .about-manifesto,
  html[data-cc-page="group-offers"] .about-manifesto,
  html[data-cc-page="group-loyalty"] .about-manifesto,
  html[data-cc-page="group-meetings-events"] .about-manifesto {
    padding: 72px 0 68px !important;
  }
  html[data-cc-page="group-about-us"] .about-manifesto .statement,
  html[data-cc-page="group-offers"] .about-manifesto .statement,
  html[data-cc-page="group-loyalty"] .about-manifesto .statement,
  html[data-cc-page="group-meetings-events"] .about-manifesto .statement {
    font-size: clamp(34px, 6vw, 44px) !important;
  }
}
@media (max-width: 560px) {
  html[data-cc-page="group-about-us"] .about-manifesto,
  html[data-cc-page="group-offers"] .about-manifesto,
  html[data-cc-page="group-loyalty"] .about-manifesto,
  html[data-cc-page="group-meetings-events"] .about-manifesto {
    padding: 58px 0 54px !important;
  }
  html[data-cc-page="group-about-us"] .about-manifesto .statement,
  html[data-cc-page="group-offers"] .about-manifesto .statement,
  html[data-cc-page="group-loyalty"] .about-manifesto .statement,
  html[data-cc-page="group-meetings-events"] .about-manifesto .statement {
    font-size: 32px !important;
    line-height: 1.1 !important;
  }
  html[data-cc-page="group-about-us"] .about-manifesto .small-copy,
  html[data-cc-page="group-offers"] .about-manifesto .small-copy,
  html[data-cc-page="group-loyalty"] .about-manifesto .small-copy,
  html[data-cc-page="group-meetings-events"] .about-manifesto .small-copy {
    margin-top: 26px !important;
    text-align: center !important;
  }
  html[data-cc-page="group-about-us"] .about-manifesto .small-copy p,
  html[data-cc-page="group-offers"] .about-manifesto .small-copy p,
  html[data-cc-page="group-loyalty"] .about-manifesto .small-copy p,
  html[data-cc-page="group-meetings-events"] .about-manifesto .small-copy p {
    font-size: 14px !important;
    line-height: 1.75 !important;
  }
}

/* Internal group banner kicker/eyebrow line must be white across all group pages */
html[data-cc-page="group-about-us"] .internal-banner .hero-kicker::before,
html[data-cc-page="group-offers"] .internal-banner .hero-kicker::before,
html[data-cc-page="group-loyalty"] .internal-banner .hero-kicker::before,
html[data-cc-page="group-meetings-events"] .internal-banner .hero-kicker::before,
html[data-cc-page="group-about-us"] .internal-banner .eyebrow::before,
html[data-cc-page="group-offers"] .internal-banner .eyebrow::before,
html[data-cc-page="group-loyalty"] .internal-banner .eyebrow::before,
html[data-cc-page="group-meetings-events"] .internal-banner .eyebrow::before {
  background: #fff !important;
}

