            :root {
                --red: #8b0000;
                --red-deep: #8b0000;
                --gold: #b8860b;
                --gold-soft: #c9a35a;
                --cream: #fcf6f3;
                --paper: #ffffff;
                --ink: #2b2b2b;
                --ink-soft: #6f6f6f;
                --line: rgba(43, 43, 43, 0.12);
                --display: "Fraunces", Georgia, serif;
                --body: "Hanken Grotesk", system-ui, sans-serif;
                --proxy: "/assets/images/jpg/";
                --main-gutter: clamp(20px, 5vw, 64px);
            }
            .home-v2 {
                font-family: var(--body);
                color: var(--ink);
                background: var(--cream);
                -webkit-font-smoothing: antialiased;
                line-height: 1.5;
                margin: 0;
                padding: 0;
                overflow-x: clip;
            }
            html:has(body.home-v2) {
                margin: 0;
                padding: 0;
                overflow-x: clip;
            }
            .home-v2:has(.main > .about-hero) .main {
                padding-top: 0;
            }
            .home-v2 .top_home_block.about-hero {
                padding-top: 88px;
            }
            .home-v2 .main {
                padding-top: 72px;
            }
            .home-v2.bg-dark:has(.main > .top_home_block) .main,
            .home-v2.bg-dark:has(.main > .section-st-top) .main {
                padding-top: 0;
            }
            .home-v2.bg-dark:has(.main > .section-st-top) .main > .section-st-top:first-child {
                padding-top: 88px;
            }
            @media (max-width: 980px) {
                .home-v2 .main {
                    padding-top: 88px;
                }
                .home-v2:has(.main > .about-hero) .main {
                    padding-top: 0;
                }
                .home-v2.bg-dark:has(.main > .top_home_block) .main,
                .home-v2.bg-dark:has(.main > .section-st-top) .main {
                    padding-top: 0;
                }
                .home-v2.bg-dark:has(.main > .section-st-top) .main > .section-st-top:first-child {
                    padding-top: 72px;
                }
            }
            .home-v2 a {
                color: inherit;
                text-decoration: none;
            }
            .home-v2 a.btn {
                color: #fff;
            }
            .home-v2 a.btn-gold {
                color: #1d1a1a;
            }
            .home-v2 a.btn-gold:hover,
            .home-v2 a.btn-gold:focus-visible {
                color: #1d1a1a;
            }
            .home-v2 img {
                display: block;
                max-width: 100%;
            }
            .note {
                background: var(--red-deep);
                color: var(--cream);
                text-align: center;
                font-size: 0.82rem;
                padding: 8px 16px;
            }
            .note b {
                color: var(--gold-soft);
            }

            /* ---------- NAV ---------- */
            .nav {
                position: fixed;
                top: 0;
                left: 0;
                right: 0;
                width: 100%;
                z-index: 60;
                display: flex;
                flex-wrap: nowrap;
                align-items: center;
                gap: 30px;
                padding: 16px var(--main-gutter);
                transition:
                    background 0.35s,
                    backdrop-filter 0.35s,
                    box-shadow 0.35s;
            }
            .nav.scrolled,
            .home-v2:not(:has(.hero-crossfade)):not(:has(.ndp-feature-hero)):not(.bg-dark:has(.main > .top_home_block)):not(.bg-dark:has(.main > .section-st-top))
                .nav {
                background: rgba(139, 0, 0, 0.95);
                backdrop-filter: blur(10px);
                box-shadow: 0 1px 0 rgba(255, 255, 255, 0.08);
            }
            .nav .logo {
                flex-shrink: 0;
            }
            .nav .logo img {
                height: 34px;
                width: auto;
                max-width: 160px;
                filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.35));
            }
            .nav .logo .wordmark {
                font-family: var(--display);
                font-size: 1.35rem;
                font-weight: 600;
                color: var(--cream);
                text-shadow: 0 1px 8px rgba(0, 0, 0, 0.4);
            }
            .nav-links {
                display: flex;
                align-items: center;
                gap: 28px;
                margin-left: 8px;
            }
            .nav-links a {
                color: rgba(252, 246, 243, 0.9);
                font-size: 0.93rem;
                font-weight: 500;
                position: relative;
                padding: 6px 0;
                text-shadow: 0 1px 8px rgba(0, 0, 0, 0.4);
            }
            .nav-links a::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 0;
                height: 1.5px;
                background: var(--gold-soft);
                transition: right 0.28s;
            }
            .nav-links a:hover::after {
                right: 0;
            }
            .nav-right {
                margin-left: auto;
                display: flex;
                align-items: center;
                gap: 18px;
                flex-shrink: 0;
            }
            .lang {
                color: rgba(252, 246, 243, 0.92);
                font-size: 0.85rem;
                font-weight: 500;
                display: flex;
                align-items: center;
                gap: 6px;
                cursor: pointer;
                text-shadow: 0 1px 8px rgba(0, 0, 0, 0.4);
            }
            .lang::after {
                content: "▾";
                font-size: 0.7rem;
                opacity: 0.7;
            }
            .book-btn {
                font-family: var(--body);
                font-weight: 600;
                font-size: 0.9rem;
                background: var(--gold-soft);
                color: #3a1d00;
                padding: 11px 22px;
                border-radius: 999px;
                border: 0;
                cursor: pointer;
                transition:
                    transform 0.18s,
                    background 0.2s;
                box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
            }
            .book-btn:hover {
                background: #d8b878;
                transform: translateY(-1px);
            }

            /* ---------- HERO ---------- */
            .hero {
                position: relative;
                min-height: 94vh;
                margin-top: 0;
                padding: 130px var(--main-gutter) 48px;
                display: flex;
                flex-direction: column;
                overflow: hidden;
                isolation: isolate;
            }
            .hero-crossfade {
                position: absolute;
                inset: 0;
                z-index: -3;
                overflow: hidden;
                background: #280c0c;
            }
            .hero-crossfade img {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                min-width: 100%;
                min-height: 100%;
                object-fit: cover;
                backface-visibility: hidden;
                opacity: 0;
                transform: scale(1.08) rotate(4deg);
                transform-origin: center;
                animation: hero-crossfade 24s ease-in-out infinite;
                will-change: transform, opacity;
            }
            .hero-crossfade img:nth-child(1) {
                object-position: 82% 42%;
                animation-delay: 0s;
            }
            .hero-crossfade img:nth-child(2) {
                object-position: 74% 38%;
                animation-delay: -8s;
            }
            .hero-crossfade img:nth-child(3) {
                object-position: 38% 32%;
                animation-delay: -16s;
            }
            @keyframes hero-crossfade {
                0% {
                    opacity: 0;
                    transform: scale(1.08) rotate(4deg);
                }
                25% {
                    opacity: 1;
                    transform: scale(1) rotate(0deg);
                }
                40% {
                    opacity: 0;
                    transform: scale(1) rotate(0deg);
                }
                100% {
                    opacity: 0;
                    transform: scale(1.08) rotate(4deg);
                }
            }

            /* Slow Ken Burns for card/section imagery (hero uses crossfade above) */
            @keyframes cardKenBurns {
                from {
                    transform: scale(1);
                }
                to {
                    transform: scale(1.2);
                }
            }
            .hero::after {
                content: "";
                position: absolute;
                inset: 0;
                z-index: -2;
                pointer-events: none;
                background:
                    linear-gradient(
                        180deg,
                        rgba(40, 12, 12, 0.6) 0%,
                        rgba(40, 12, 12, 0.16) 36%,
                        rgba(40, 12, 12, 0.32) 62%,
                        rgba(40, 12, 12, 0.85) 100%
                    ),
                    linear-gradient(
                        100deg,
                        rgba(139, 0, 0, 0.5) 0%,
                        rgba(139, 0, 0, 0.04) 60%
                    );
            }
            .hero::before {
                content: "";
                position: absolute;
                inset: 0;
                z-index: -1;
                pointer-events: none;
                opacity: 0.05;
                background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
            }

            .eyebrow {
                color: var(--gold-soft);
                font-weight: 600;
                font-size: 0.78rem;
                letter-spacing: 0.28em;
                text-transform: uppercase;
                margin-bottom: 20px;
                text-shadow: 0 1px 12px rgba(0, 0, 0, 0.5);
            }
            .headline {
                font-family: var(--display);
                color: var(--cream);
                font-weight: 500;
                font-size: clamp(2.8rem, 7.5vw, 6rem);
                line-height: 0.96;
                letter-spacing: -0.02em;
                max-width: 16ch;
                text-shadow: 0 2px 30px rgba(0, 0, 0, 0.4);
            }
            .headline em {
                font-style: italic;
                font-weight: 600;
                color: var(--gold-soft);
            }
            .subhead {
                color: rgba(252, 246, 243, 0.94);
                font-size: clamp(1.02rem, 1.5vw, 1.22rem);
                max-width: 50ch;
                margin-top: 24px;
                line-height: 1.55;
                text-shadow: 0 1px 16px rgba(0, 0, 0, 0.45);
            }
            .cta-row {
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                gap: 16px 22px;
                margin-top: 34px;
            }
            .cta-primary {
                font-family: var(--body);
                font-weight: 600;
                font-size: 1.02rem;
                background: var(--cream);
                color: var(--red-deep);
                padding: 16px 32px;
                border-radius: 999px;
                border: 0;
                cursor: pointer;
                display: inline-flex;
                align-items: center;
                gap: 10px;
                text-decoration: none;
                transition:
                    transform 0.18s,
                    box-shadow 0.2s;
                box-shadow: 0 12px 34px rgba(0, 0, 0, 0.32);
            }
            .cta-primary:hover {
                transform: translateY(-2px);
            }
            .cta-primary .arr {
                transition: transform 0.2s;
            }
            .cta-primary:hover .arr {
                transform: translateX(4px);
            }
            .cta-secondary {
                color: var(--cream);
                font-weight: 500;
                font-size: 1rem;
                display: inline-flex;
                align-items: center;
                gap: 9px;
                padding: 8px 2px;
                border-bottom: 1.5px solid transparent;
                transition:
                    border-color 0.2s,
                    transform 0.18s;
                text-shadow: 0 1px 10px rgba(0, 0, 0, 0.4);
            }
            .cta-secondary__play {
                font-size: 0.92rem;
                line-height: 1;
                opacity: 0.95;
            }
            .cta-secondary:hover {
                border-color: var(--gold-soft);
                transform: translateY(-1px);
            }
            .trust {
                margin-top: 32px;
                display: inline-flex;
                align-items: center;
                gap: 14px;
                flex-wrap: wrap;
                background: rgba(255, 253, 251, 0.12);
                border: 1px solid rgba(252, 246, 243, 0.24);
                backdrop-filter: blur(8px);
                padding: 11px 20px;
                border-radius: 999px;
                width: fit-content;
            }
            .stars {
                color: var(--gold-soft);
                letter-spacing: 2px;
                font-size: 0.95rem;
            }
            .trust b {
                color: var(--cream);
                font-weight: 700;
            }
            .trust span {
                color: rgba(252, 246, 243, 0.86);
                font-size: 0.9rem;
            }
            .trust .div {
                width: 1px;
                height: 16px;
                background: rgba(252, 246, 243, 0.32);
            }
            .trust .src {
                color: rgba(252, 246, 243, 0.74);
                font-size: 0.82rem;
                font-style: italic;
                font-family: var(--display);
            }

            /* hero intro: announcement pill + city eyebrow */
            .hero-intro {
                display: flex;
                flex-direction: column;
                align-items: flex-start;
                gap: 20px;
                margin-bottom: 20px;
            }
            .home-v2 a.hero-flag,
            .home-v2 a.hero-flag .hero-flag__text {
                color: var(--cream);
            }
            .home-v2 a.cta-primary,
            .home-v2 a.cta-primary .arr {
                color: var(--red-deep);
            }
            .home-v2 a.cta-secondary {
                color: var(--cream);
                text-decoration: none;
            }
            .home-v2 a.cta-secondary:hover {
                color: var(--cream);
            }
            .hero-flag {
                display: inline-flex;
                align-items: center;
                gap: 10px;
                width: fit-content;
                max-width: min(100%, 44rem);
                margin-bottom: 0;
                background: rgba(201, 163, 90, 0.16);
                border: 1px solid rgba(201, 163, 90, 0.55);
                backdrop-filter: blur(6px);
                -webkit-backdrop-filter: blur(6px);
                font-size: 0.85rem;
                font-weight: 500;
                line-height: 1.35;
                padding: 7px 16px 7px 8px;
                border-radius: 999px;
                text-decoration: none;
                transition:
                    background 0.2s,
                    transform 0.2s;
                box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
            }
            .hero-flag:hover {
                background: rgba(201, 163, 90, 0.28);
                transform: translateY(-1px);
            }
            .hero-flag .tag {
                background: var(--gold-soft);
                color: #3a1d00;
                font-size: 0.64rem;
                font-weight: 700;
                letter-spacing: 0.1em;
                text-transform: uppercase;
                padding: 4px 9px;
                border-radius: 999px;
                flex-shrink: 0;
            }
            .hero-flag__text {
                text-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
            }
            .hero-flag .arr {
                color: var(--gold-soft);
                flex-shrink: 0;
                transition: transform 0.2s;
            }
            .hero-flag:hover .arr {
                transform: translateX(3px);
            }
            .hero-intro .eyebrow {
                margin-bottom: 0;
            }

            /* highlighted nav link */
            .nav-special {
                color: var(--gold-soft) !important;
                font-weight: 600;
                display: inline-flex;
                align-items: center;
                gap: 6px;
            }
            .nav-special .spark {
                color: var(--gold-soft);
            }
            .nav-special::after {
                background: var(--gold-soft) !important;
            }

            /* hero city ticker */
            .ticker {
                margin-top: auto;
                padding-top: 40px;
                display: flex;
                align-items: center;
                gap: 16px;
            }
            .dots {
                display: flex;
                gap: 10px;
            }
            .dots button {
                width: auto;
                height: auto;
                background: none;
                border: 0;
                cursor: pointer;
                display: flex;
                align-items: center;
                gap: 8px;
                color: rgba(252, 246, 243, 0.6);
                font-family: var(--body);
                font-weight: 600;
                font-size: 0.9rem;
                transition: color 0.25s;
            }
            .dots button .bar {
                width: 26px;
                height: 3px;
                border-radius: 3px;
                background: rgba(252, 246, 243, 0.35);
                transition:
                    background 0.25s,
                    width 0.25s;
            }
            .dots button[aria-current="true"] {
                color: var(--cream);
            }
            .dots button[aria-current="true"] .bar {
                background: var(--gold-soft);
                width: 42px;
            }

            /* ---------- SECTION SHELL ---------- */
            .wrap {
                width: 100%;
                margin-inline: auto;
                padding-inline: var(--main-gutter);
            }
            .sec-head {
                text-align: center;
                max-width: 60ch;
                margin: 0 auto clamp(34px, 5vw, 52px);
            }
            .sec-head .k {
                color: var(--red);
                font-weight: 700;
                font-size: 0.74rem;
                letter-spacing: 0.24em;
                text-transform: uppercase;
                margin-bottom: 12px;
            }
            .sec-head h2 {
                font-family: var(--display);
                font-weight: 600;
                font-size: clamp(1.9rem, 4vw, 3rem);
                line-height: 1.04;
                letter-spacing: -0.015em;
            }
            .sec-head h2 em {
                font-style: italic;
                background: linear-gradient(
                    100deg,
                    var(--gold) 0%,
                    #ecd8a1 22%,
                    var(--red) 50%,
                    #ecd8a1 78%,
                    var(--gold) 100%
                );
                background-size: 230% 100%;
                -webkit-background-clip: text;
                background-clip: text;
                color: transparent;
                animation: shimmer 6s linear infinite;
            }
            @keyframes shimmer {
                to {
                    background-position: -230% 0;
                }
            }
            .sec-head .flourish {
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 14px;
                margin-top: 20px;
                color: var(--gold-soft);
            }
            .sec-head .flourish .ln {
                height: 1.5px;
                width: 0;
                background: linear-gradient(
                    90deg,
                    transparent,
                    var(--gold-soft),
                    var(--gold)
                );
                border-radius: 2px;
                animation: drawLn 1s ease 0.3s forwards;
            }
            .sec-head .flourish .ln.r {
                background: linear-gradient(
                    90deg,
                    var(--gold),
                    var(--gold-soft),
                    transparent
                );
            }
            .sec-head .flourish .star {
                font-size: 0.9rem;
                animation: starPulse 2.6s ease-in-out infinite;
            }
            @keyframes drawLn {
                to {
                    width: 54px;
                }
            }
            @keyframes starPulse {
                0%,
                100% {
                    transform: scale(1);
                    opacity: 0.85;
                }
                50% {
                    transform: scale(1.25);
                    opacity: 1;
                }
            }
            .sec-head p {
                margin-top: 14px;
                color: var(--ink-soft);
                font-size: 1.05rem;
                line-height: 1.6;
            }

            /* ---------- DESTINATIONS TRIPTYCH ---------- */
            .dests {
                background: var(--cream);
                padding: clamp(60px, 8vw, 100px) 0;
            }
            .triptych {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 22px;
            }
            .dest {
                position: relative;
                border-radius: 20px;
                overflow: hidden;
                min-height: clamp(380px, 46vw, 520px);
                display: flex;
                align-items: flex-end;
                cursor: pointer;
                box-shadow: 0 14px 40px rgba(40, 12, 12, 0.18);
                transition:
                    transform 0.3s ease,
                    box-shadow 0.3s ease;
            }
            .dest:hover {
                transform: translateY(-6px);
                box-shadow: 0 26px 60px rgba(40, 12, 12, 0.28);
            }
            .dest img {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                z-index: 0;
                transform-origin: bottom left;
                backface-visibility: hidden;
                animation: cardKenBurns 40s ease infinite;
                transition: filter 0.4s ease;
            }
            .dest:nth-child(2) img {
                animation-delay: -13s;
            }
            .dest:nth-child(3) img {
                animation-delay: -27s;
            }
            .dest:hover img {
                filter: brightness(1.08) saturate(1.05);
            }
            .dest::after {
                content: "";
                position: absolute;
                inset: 0;
                z-index: 1;
                background: linear-gradient(
                    180deg,
                    rgba(40, 12, 12, 0.1) 30%,
                    rgba(40, 12, 12, 0.4) 60%,
                    rgba(40, 12, 12, 0.86) 100%
                );
            }
            .dest::before {
                content: "";
                position: absolute;
                inset: 0;
                z-index: 2;
                pointer-events: none;
                background: linear-gradient(
                    115deg,
                    transparent 32%,
                    rgba(252, 246, 243, 0.14) 44%,
                    rgba(201, 163, 90, 0.42) 50%,
                    rgba(252, 246, 243, 0.14) 56%,
                    transparent 68%
                );
                transform: translateX(-130%);
                animation: sheen 8s ease-in-out infinite;
            }
            .dest:nth-child(2)::before {
                animation-delay: 1.4s;
            }
            .dest:nth-child(3)::before {
                animation-delay: 2.8s;
            }
            @keyframes sheen {
                0% {
                    transform: translateX(-130%);
                }
                16% {
                    transform: translateX(130%);
                }
                100% {
                    transform: translateX(130%);
                }
            }
            .dest .inner {
                position: relative;
                z-index: 3;
                padding: 28px;
                color: var(--cream);
            }
            .dest .city {
                font-family: var(--display);
                font-weight: 600;
                font-size: 1.9rem;
                line-height: 1;
                letter-spacing: -0.01em;
            }
            .dest .desc {
                margin-top: 10px;
                font-size: 0.95rem;
                color: rgba(252, 246, 243, 0.9);
                max-width: 30ch;
                line-height: 1.5;
            }
            .dest .stat {
                margin-top: 16px;
                display: inline-flex;
                align-items: center;
                gap: 10px;
                font-weight: 600;
                font-size: 0.9rem;
                color: var(--cream);
            }
            .dest .stat .pill {
                background: rgba(252, 246, 243, 0.16);
                border: 1px solid rgba(252, 246, 243, 0.3);
                padding: 5px 12px;
                border-radius: 999px;
                backdrop-filter: blur(4px);
            }
            .dest .go {
                margin-left: 6px;
                color: var(--gold-soft);
                transition: transform 0.2s;
            }
            .dest:hover .go {
                transform: translateX(5px);
            }

            /* ---------- SIGNATURE SPOTLIGHT (Celine) ---------- */
            .feature {
                position: relative;
                min-height: clamp(520px, 74vh, 720px);
                display: flex;
                align-items: center;
                overflow: hidden;
                isolation: isolate;
                color: var(--cream);
            }
            .feature .bg {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: center 28%;
                z-index: -2;
                transform-origin: bottom left;
                backface-visibility: hidden;
                animation: cardKenBurns 40s ease infinite;
            }
            .feature::after {
                content: "";
                position: absolute;
                inset: 0;
                z-index: -1;
                background:
                    linear-gradient(
                        90deg,
                        rgba(10, 4, 4, 0.88) 0%,
                        rgba(10, 4, 4, 0.52) 48%,
                        rgba(10, 4, 4, 0.22) 100%
                    ),
                    linear-gradient(
                        180deg,
                        rgba(10, 4, 4, 0.28),
                        rgba(10, 4, 4, 0.55)
                    );
            }
            .feature .inner {
                max-width: 660px;
                padding: clamp(44px, 6vw, 76px) 0;
            }
            .feature .k {
                display: flex;
                align-items: center;
                gap: 12px;
                flex-wrap: wrap;
                color: var(--gold-soft);
                font-weight: 600;
                font-size: 0.76rem;
                letter-spacing: 0.22em;
                text-transform: uppercase;
                margin-bottom: 18px;
            }
            .feature .k .new {
                background: var(--gold-soft);
                color: #3a1d00;
                letter-spacing: 0.08em;
                padding: 5px 11px;
                border-radius: 999px;
                font-size: 0.7rem;
            }
            .feature h2 {
                font-family: var(--display);
                font-weight: 500;
                font-size: clamp(2.5rem, 5.6vw, 4.4rem);
                line-height: 1;
                letter-spacing: -0.02em;
                text-shadow: 0 2px 30px rgba(0, 0, 0, 0.5);
            }
            .feature h2 em {
                font-style: italic;
                color: var(--gold-soft);
            }
            .feature p {
                margin-top: 20px;
                font-size: clamp(1.02rem, 1.5vw, 1.2rem);
                line-height: 1.6;
                color: rgba(252, 246, 243, 0.92);
                max-width: 48ch;
                text-shadow: 0 1px 14px rgba(0, 0, 0, 0.5);
            }
            .feature p strong {
                color: var(--gold-soft);
                font-weight: 600;
            }
            .feature .moments {
                display: flex;
                flex-wrap: wrap;
                gap: 10px;
                margin-top: 24px;
            }
            .feature .moments span {
                border: 1px solid rgba(201, 163, 90, 0.55);
                background: rgba(255, 255, 255, 0.06);
                backdrop-filter: blur(4px);
                color: var(--cream);
                font-size: 0.82rem;
                padding: 7px 14px;
                border-radius: 999px;
            }
            .feature .invest {
                margin-top: 22px;
                font-family: var(--display);
                font-style: italic;
                color: var(--gold-soft);
                font-size: 1.08rem;
            }
            .feature .cta-row {
                margin-top: 28px;
            }

            /* ---------- COMPANY BAND ---------- */
            .company {
                position: relative;
                color: var(--cream);
                overflow: hidden;
                padding: clamp(76px, 10vw, 132px) 0;
                background: #8b0000;
            }
            .company .bgtex {
                position: absolute;
                inset: 0;
                z-index: 0;
                width: 100%;
                height: 100%;
                max-width: none;
                object-fit: cover;
                object-position: 42% 58%;
                opacity: 0.2;
                filter: grayscale(0.25);
            }
            .company::before {
                content: "";
                position: absolute;
                inset: 0;
                z-index: 1;
                background:
                    radial-gradient(
                        135% 95% at 80% 6%,
                        rgba(139, 0, 0, 0.1) 0%,
                        rgba(139, 0, 0, 0.9) 60%,
                        rgba(139, 0, 0, 1) 100%
                    ),
                    linear-gradient(
                        180deg,
                        rgba(0, 0, 0, 0.22),
                        rgba(0, 0, 0, 0.42)
                    );
            }
            .company .ornament {
                position: absolute;
                z-index: 1;
                top: -3.5rem;
                right: -1rem;
                font-family: var(--display);
                font-size: clamp(13rem, 26vw, 30rem);
                line-height: 1;
                color: rgba(201, 163, 90, 0.09);
                pointer-events: none;
                user-select: none;
            }
            .company .wrap {
                position: relative;
                z-index: 2;
            }
            .company-grid {
                display: grid;
                grid-template-columns: 1.05fr 0.95fr;
                gap: clamp(40px, 6vw, 88px);
                align-items: center;
            }
            .company .k {
                display: inline-flex;
                align-items: center;
                gap: 14px;
                color: var(--gold-soft);
                font-weight: 700;
                font-size: 0.74rem;
                letter-spacing: 0.24em;
                text-transform: uppercase;
                margin-bottom: 22px;
            }
            .company .k::before {
                content: "";
                width: 38px;
                height: 1.5px;
                background: var(--gold-soft);
            }
            .company h2 {
                font-family: var(--display);
                font-weight: 500;
                font-size: clamp(2rem, 4vw, 3.2rem);
                line-height: 1.08;
                letter-spacing: -0.015em;
            }
            .company h2 em {
                font-style: italic;
                color: var(--gold-soft);
            }
            .company p {
                margin-top: 22px;
                color: rgba(252, 246, 243, 0.88);
                font-size: 1.07rem;
                line-height: 1.75;
                max-width: 52ch;
            }
            .tagline {
                margin-top: 32px;
                padding-left: 30px;
                position: relative;
                font-family: var(--display);
                font-style: italic;
                font-size: clamp(1.3rem, 2vw, 1.75rem);
                color: var(--cream);
                line-height: 1.3;
                max-width: 32ch;
            }
            .tagline::before {
                content: "\201C";
                position: absolute;
                left: -4px;
                top: -0.35em;
                font-size: 3.6em;
                color: var(--gold-soft);
                line-height: 1;
                font-family: var(--display);
            }
            .trustline {
                margin-top: 34px;
                display: flex;
                align-items: center;
                gap: 10px;
                flex-wrap: wrap;
                color: rgba(252, 246, 243, 0.72);
                font-size: 0.72rem;
                letter-spacing: 0.16em;
                text-transform: uppercase;
            }
            .trustline b {
                color: var(--gold-soft);
                font-weight: 600;
            }
            .trustline .dot {
                opacity: 0.5;
            }

            .company .photo {
                position: relative;
            }
            .company .photo .img {
                position: relative;
                z-index: 2;
                border-radius: 18px;
                overflow: hidden;
                aspect-ratio: 4/5;
                box-shadow: 0 30px 70px rgba(0, 0, 0, 0.5);
                background: linear-gradient(135deg, var(--red), var(--gold));
            }
            .company .photo .img .slide {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                opacity: 0;
                transition: opacity 1.3s ease;
            }
            .company .photo .img .slide.active {
                opacity: 1;
                transform-origin: bottom left;
                backface-visibility: hidden;
                animation: cardKenBurns 40s ease infinite;
            }
            .company .photo .live {
                position: absolute;
                z-index: 4;
                top: 14px;
                right: 14px;
                display: flex;
                align-items: center;
                gap: 7px;
                background: rgba(10, 4, 4, 0.55);
                backdrop-filter: blur(5px);
                color: var(--cream);
                font-size: 0.66rem;
                font-weight: 600;
                letter-spacing: 0.14em;
                text-transform: uppercase;
                padding: 6px 11px;
                border-radius: 999px;
            }
            .company .photo .live .pulse {
                width: 7px;
                height: 7px;
                border-radius: 50%;
                background: var(--gold-soft);
                animation: livePulse 1.8s ease-in-out infinite;
            }
            @keyframes livePulse {
                0%,
                100% {
                    transform: scale(0.8);
                    opacity: 0.6;
                }
                50% {
                    transform: scale(1.3);
                    opacity: 1;
                }
            }
            .company .photo .frame {
                position: absolute;
                z-index: 1;
                inset: 22px -22px -22px 22px;
                border: 1.5px solid rgba(201, 163, 90, 0.7);
                border-radius: 18px;
            }
            .company .photo .rating {
                position: absolute;
                z-index: 3;
                left: -20px;
                bottom: 32px;
                display: flex;
                align-items: center;
                gap: 12px;
                background: var(--cream);
                color: var(--ink);
                border-radius: 14px;
                padding: 12px 17px;
                box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4);
            }
            .company .photo .rating .score {
                font-family: var(--display);
                font-weight: 600;
                font-size: 2rem;
                color: #8b0000;
                line-height: 1;
            }
            .company .photo .rating .stars {
                color: var(--gold);
                letter-spacing: 1px;
                font-size: 0.82rem;
            }
            .company .photo .rating small {
                display: block;
                color: var(--ink-soft);
                font-size: 0.72rem;
                margin-top: 3px;
            }

            .stats {
                position: relative;
                z-index: 2;
                margin-top: clamp(56px, 7vw, 92px);
                display: grid;
                grid-template-columns: repeat(4, 1fr);
            }
            .stat-cell {
                text-align: center;
                padding: 6px clamp(12px, 2vw, 26px);
                border-left: 1px solid rgba(201, 163, 90, 0.32);
            }
            .stat-cell:first-child {
                border-left: 0;
            }
            .stat-cell .n {
                font-family: var(--display);
                font-weight: 600;
                font-size: clamp(2.2rem, 4vw, 3.4rem);
                color: var(--gold-soft);
                line-height: 1;
                letter-spacing: -0.01em;
            }
            .stat-cell .l {
                margin-top: 12px;
                font-size: 0.74rem;
                color: rgba(252, 246, 243, 0.82);
                letter-spacing: 0.14em;
                text-transform: uppercase;
            }

            /* ---------- SIGNATURE RAIL ---------- */
            .rail-wrap {
                background: var(--cream);
                padding: clamp(60px, 8vw, 100px) 0;
            }
            .rail-head {
                display: flex;
                align-items: flex-end;
                justify-content: space-between;
                gap: 20px;
                flex-wrap: wrap;
                margin-bottom: 30px;
            }
            .rail-head .k {
                color: var(--red);
                font-weight: 700;
                font-size: 0.74rem;
                letter-spacing: 0.22em;
                text-transform: uppercase;
                margin-bottom: 8px;
            }
            .rail-head h2 {
                font-family: var(--display);
                font-weight: 600;
                font-size: clamp(1.7rem, 3.4vw, 2.6rem);
                line-height: 1.04;
                letter-spacing: -0.01em;
            }
            .rail-head h2 em {
                font-style: italic;
                color: var(--red);
            }
            .see-all {
                color: var(--red);
                font-weight: 600;
                font-size: 0.95rem;
                display: inline-flex;
                align-items: center;
                gap: 8px;
                white-space: nowrap;
            }
            .see-all .c {
                width: 30px;
                height: 30px;
                border-radius: 50%;
                background: var(--red);
                color: var(--cream);
                display: grid;
                place-items: center;
                transition: transform 0.2s;
            }
            .see-all:hover .c {
                transform: translateX(3px);
            }
            .rail {
                display: flex;
                gap: 22px;
                overflow-x: auto;
                padding: 6px 0 18px;
                scroll-snap-type: x mandatory;
                scrollbar-width: none;
            }
            .rail::-webkit-scrollbar {
                display: none;
            }
            .card {
                flex: 0 0 320px;
                scroll-snap-align: start;
                background: var(--paper);
                border-radius: 18px;
                overflow: hidden;
                box-shadow: 0 8px 28px rgba(40, 12, 12, 0.1);
                border: 1px solid rgba(184, 134, 11, 0.16);
                display: flex;
                flex-direction: column;
                transition:
                    transform 0.25s,
                    box-shadow 0.25s;
                cursor: pointer;
            }
            .card:hover {
                transform: translateY(-6px);
                box-shadow: 0 20px 48px rgba(40, 12, 12, 0.2);
            }
            .card .ph {
                position: relative;
                height: 210px;
                overflow: hidden;
                background: linear-gradient(
                    135deg,
                    var(--red-deep),
                    var(--gold)
                );
            }
            .card .ph img {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                transform-origin: bottom left;
                backface-visibility: hidden;
                animation: cardKenBurns 40s ease infinite;
            }
            .card .tag {
                position: absolute;
                top: 12px;
                left: 12px;
                background: rgba(139, 0, 0, 0.88);
                color: var(--cream);
                font-size: 0.7rem;
                font-weight: 600;
                letter-spacing: 0.06em;
                text-transform: uppercase;
                padding: 6px 11px;
                border-radius: 999px;
                backdrop-filter: blur(4px);
            }
            .card .badge {
                position: absolute;
                top: 12px;
                right: 12px;
                background: var(--gold-soft);
                color: #3a1d00;
                font-size: 0.68rem;
                font-weight: 700;
                padding: 5px 10px;
                border-radius: 999px;
            }
            .card__body {
                padding: 16px 18px 20px;
                display: flex;
                flex-direction: column;
                gap: 6px;
                flex: 1;
            }
            .card h3 {
                font-family: var(--display);
                font-weight: 600;
                font-size: 1.18rem;
                line-height: 1.12;
                color: var(--ink);
            }
            .card .meta {
                color: var(--ink-soft);
                font-size: 0.82rem;
                line-height: 1.45;
            }
            .card__foot {
                margin-top: auto;
                padding-top: 14px;
                border-top: 1px solid var(--line);
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px;
            }
            .card .price {
                color: var(--red);
                font-weight: 700;
                font-size: 1.05rem;
                line-height: 1.2;
            }
            .card .price small {
                font-weight: 500;
                color: var(--ink-soft);
                font-size: 0.74rem;
                margin-right: 0.25em;
            }
            .card .explore {
                font-weight: 600;
                font-size: 0.85rem;
                color: var(--red);
                white-space: nowrap;
            }
            .card-link:hover .explore {
                text-decoration: underline;
                text-underline-offset: 3px;
            }

            /* ---------- THE JOURNAL (editorial) ---------- */
            .journal {
                background: var(--paper);
                padding: clamp(64px, 8vw, 104px) 0;
                overflow: hidden;
            }
            .journal .mast {
                display: flex;
                align-items: flex-end;
                justify-content: space-between;
                gap: 20px;
                flex-wrap: wrap;
                margin-bottom: clamp(36px, 5vw, 58px);
            }
            .journal .mast .k {
                color: var(--red);
                font-weight: 700;
                font-size: 0.74rem;
                letter-spacing: 0.24em;
                text-transform: uppercase;
                margin-bottom: 12px;
            }
            .journal .mast h2 {
                font-family: var(--display);
                font-weight: 600;
                font-size: clamp(2rem, 4.4vw, 3.2rem);
                line-height: 1.02;
                letter-spacing: -0.02em;
            }
            .journal .mast h2 em {
                font-style: italic;
                color: var(--red);
            }
            .journal .view {
                color: var(--red);
                font-weight: 600;
                font-size: 0.95rem;
                display: inline-flex;
                align-items: center;
                gap: 9px;
                white-space: nowrap;
            }
            .journal .view .c {
                width: 30px;
                height: 30px;
                border-radius: 50%;
                background: var(--red);
                color: var(--cream);
                display: grid;
                place-items: center;
                transition: transform 0.2s;
            }
            .journal .view:hover .c {
                transform: translateX(3px);
            }

            .journal-grid {
                display: grid;
                grid-template-columns: 0.92fr 1.08fr;
                gap: clamp(36px, 5vw, 76px);
                align-items: center;
            }
            .stage {
                position: relative;
            }
            .stage .win {
                position: relative;
                z-index: 2;
                aspect-ratio: 4/5;
                border-radius: 18px;
                overflow: hidden;
                box-shadow: 0 30px 70px rgba(40, 12, 12, 0.24);
                background: linear-gradient(135deg, var(--red), var(--gold));
            }
            .stage .frame {
                position: absolute;
                z-index: 1;
                inset: 22px -22px -22px 22px;
                border: 1.5px solid rgba(201, 163, 90, 0.7);
                border-radius: 18px;
            }
            .stage .sl {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                opacity: 0;
                transition: opacity 1s ease;
            }
            .stage .sl.active {
                opacity: 1;
                transform-origin: bottom left;
                backface-visibility: hidden;
                animation: cardKenBurns 40s ease infinite;
            }
            .stage .cap {
                position: absolute;
                z-index: 3;
                left: 0;
                right: 0;
                bottom: 0;
                padding: 24px;
                color: var(--cream);
                font-family: var(--display);
                font-style: italic;
                font-size: 1.05rem;
                background: linear-gradient(transparent, rgba(20, 6, 6, 0.78));
            }

            .stories {
                display: flex;
                flex-direction: column;
            }
            .story {
                display: grid;
                grid-template-columns: auto 1fr;
                gap: 22px;
                align-items: start;
                padding: 26px 4px;
                border-top: 1px solid var(--line);
                cursor: pointer;
                color: inherit;
                transition: padding-left 0.25s ease;
            }
            .story:last-child {
                border-bottom: 1px solid var(--line);
            }
            .story .num {
                font-family: var(--display);
                font-style: italic;
                font-weight: 600;
                font-size: 1.5rem;
                color: var(--gold);
                line-height: 1.1;
            }
            .story .ey {
                color: var(--red);
                font-weight: 700;
                font-size: 0.66rem;
                letter-spacing: 0.18em;
                text-transform: uppercase;
                margin-bottom: 9px;
            }
            .story h3 {
                font-family: var(--display);
                font-weight: 600;
                font-size: clamp(1.3rem, 2.3vw, 2rem);
                line-height: 1.1;
                letter-spacing: -0.01em;
                transition:
                    color 0.25s,
                    transform 0.25s;
            }
            .story .meta {
                margin-top: 11px;
                color: var(--ink-soft);
                font-size: 0.84rem;
                display: flex;
                align-items: center;
                gap: 12px;
            }
            .story .meta .arrow {
                color: var(--red);
                font-weight: 600;
                opacity: 0;
                transform: translateX(-8px);
                transition:
                    opacity 0.25s,
                    transform 0.25s;
            }
            .story:hover h3,
            .story.active h3 {
                color: var(--red);
                transform: translateX(8px);
            }
            .story:hover .meta .arrow,
            .story.active .meta .arrow {
                opacity: 1;
                transform: none;
            }
            .story .row-img {
                display: none;
            }

            /* ---------- CLOSING CTA BAND ---------- */
            .cta-band {
                position: relative;
                overflow: hidden;
                isolation: isolate;
                color: var(--cream);
                text-align: center;
                padding: clamp(84px, 13vw, 156px) var(--main-gutter);
            }
            .cta-band .bg {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: center 35%;
                z-index: -2;
                transform-origin: bottom left;
                backface-visibility: hidden;
                animation: cardKenBurns 40s ease infinite;
            }
            .cta-band::after {
                content: "";
                position: absolute;
                inset: 0;
                z-index: -1;
                background:
                    linear-gradient(
                        180deg,
                        rgba(20, 6, 6, 0.7),
                        rgba(20, 6, 6, 0.55)
                    ),
                    linear-gradient(
                        100deg,
                        rgba(139, 0, 0, 0.5),
                        rgba(139, 0, 0, 0.15)
                    );
            }
            .cta-band .k {
                color: var(--gold-soft);
                font-weight: 600;
                font-size: 0.76rem;
                letter-spacing: 0.26em;
                text-transform: uppercase;
                margin-bottom: 18px;
            }
            .cta-band h2 {
                font-family: var(--display);
                font-weight: 500;
                font-size: clamp(2.4rem, 5.6vw, 4.6rem);
                line-height: 1;
                letter-spacing: -0.02em;
                text-shadow: 0 2px 30px rgba(0, 0, 0, 0.45);
            }
            .cta-band h2 em {
                font-style: italic;
                color: var(--gold-soft);
            }
            .cta-band p {
                margin: 22px auto 0;
                max-width: 46ch;
                font-size: clamp(1.02rem, 1.5vw, 1.2rem);
                color: rgba(252, 246, 243, 0.92);
                line-height: 1.6;
                text-shadow: 0 1px 14px rgba(0, 0, 0, 0.5);
            }
            .cta-band .btns {
                margin-top: 34px;
                display: flex;
                flex-wrap: wrap;
                gap: 16px 22px;
                justify-content: center;
                align-items: center;
            }

            /* ---------- FOOTER ---------- */
            footer.foot {
                background: #8b0000;
                color: var(--cream);
                padding: clamp(58px, 7vw, 88px) var(--main-gutter) 30px;
            }
            .foot-top {
                display: grid;
                grid-template-columns: 1.7fr 0.8fr 0.8fr 0.9fr 1.5fr;
                gap: clamp(28px, 4vw, 56px);
                padding-bottom: clamp(40px, 5vw, 60px);
                border-bottom: 1px solid rgba(252, 246, 243, 0.18);
            }
            .foot-brand .logo img {
                height: 34px;
                width: auto;
                max-width: 160px;
                margin-bottom: 18px;
            }
            .foot-brand .logo .wordmark {
                font-family: var(--display);
                font-size: 1.4rem;
                font-weight: 600;
                color: var(--cream);
                display: block;
                margin-bottom: 18px;
            }
            .foot-brand p {
                color: rgba(252, 246, 243, 0.82);
                font-size: 0.95rem;
                line-height: 1.6;
                max-width: 30ch;
                font-family: var(--display);
                font-style: italic;
            }
            .foot-brand .rate {
                margin-top: 18px;
                display: inline-flex;
                align-items: center;
                gap: 9px;
                font-size: 0.85rem;
                color: rgba(252, 246, 243, 0.9);
            }
            .foot-brand .rate .s {
                color: var(--gold-soft);
                letter-spacing: 1px;
            }
            .foot-col h5 {
                color: var(--gold-soft);
                font-size: 0.72rem;
                font-weight: 700;
                letter-spacing: 0.18em;
                text-transform: uppercase;
                margin-bottom: 18px;
            }
            .foot-col a {
                display: block;
                color: rgba(252, 246, 243, 0.86);
                font-size: 0.94rem;
                padding: 6px 0;
                transition:
                    color 0.2s,
                    padding-left 0.2s;
            }
            .foot-col a:hover {
                color: var(--gold-soft);
                padding-left: 4px;
            }
            .foot-news h5 {
                color: var(--gold-soft);
                font-size: 0.72rem;
                font-weight: 700;
                letter-spacing: 0.18em;
                text-transform: uppercase;
                margin-bottom: 14px;
            }
            .foot-news p {
                color: rgba(252, 246, 243, 0.82);
                font-size: 0.9rem;
                line-height: 1.5;
                margin-bottom: 14px;
            }
            .news-form {
                display: flex;
                gap: 8px;
                flex-wrap: wrap;
            }
            .news-form input {
                flex: 1;
                min-width: 170px;
                background: rgba(252, 246, 243, 0.1);
                border: 1px solid rgba(252, 246, 243, 0.3);
                color: var(--cream);
                padding: 12px 15px;
                border-radius: 999px;
                font-family: var(--body);
                font-size: 0.92rem;
                outline: none;
                transition: border-color 0.2s;
            }
            .news-form input::placeholder {
                color: rgba(252, 246, 243, 0.6);
            }
            .news-form input:focus {
                border-color: var(--gold-soft);
            }
            .news-form button {
                background: var(--gold-soft);
                color: #3a1d00;
                border: 0;
                border-radius: 999px;
                padding: 12px 20px;
                font-family: var(--body);
                font-weight: 600;
                font-size: 0.92rem;
                cursor: pointer;
                transition:
                    background 0.2s,
                    transform 0.15s;
            }
            .news-form button:hover {
                background: #d8b878;
                transform: translateY(-1px);
            }
            .news-note {
                margin-top: 10px;
                font-size: 0.82rem;
                color: var(--gold-soft);
                min-height: 1em;
            }

            .foot-bottom {
                display: grid;
                grid-template-columns: 1fr auto 1fr;
                align-items: center;
                gap: 18px 24px;
                padding-top: 26px;
            }
            .foot-langs {
                display: flex;
                gap: 6px;
                flex-wrap: wrap;
                justify-self: start;
            }
            .foot-langs a {
                color: rgba(252, 246, 243, 0.7);
                font-size: 0.74rem;
                font-weight: 600;
                letter-spacing: 0.06em;
                padding: 5px;
                border: 1px solid rgba(252, 246, 243, 0.2);
                border-radius: 999px;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                line-height: 0;
                transition:
                    color 0.2s,
                    border-color 0.2s;
            }
            .foot-langs a:hover {
                color: var(--gold-soft);
                border-color: var(--gold-soft);
            }
            .foot-langs a:focus-visible {
                outline: 2px solid var(--gold-soft);
                outline-offset: 2px;
            }
            .foot-langs a[aria-current="page"] {
                border-color: var(--gold-soft);
                box-shadow: 0 0 0 1px rgba(201, 163, 90, 0.35);
            }
            .foot-langs img {
                width: 20px;
                height: 20px;
                border-radius: 50%;
                object-fit: cover;
                display: block;
            }
            .foot-copy {
                justify-self: center;
                text-align: center;
                color: rgba(252, 246, 243, 0.66);
                font-size: 0.82rem;
            }
            .foot-legal {
                display: flex;
                align-items: center;
                justify-content: flex-end;
                justify-self: end;
                gap: 8px 18px;
                flex-wrap: wrap;
                color: rgba(252, 246, 243, 0.66);
                font-size: 0.82rem;
            }
            .foot-legal a {
                color: rgba(252, 246, 243, 0.66);
                transition: color 0.2s;
            }
            .foot-legal a:hover {
                color: var(--gold-soft);
            }

            .reveal {
                opacity: 0;
                transform: translateY(18px);
                animation: rise 0.9s cubic-bezier(0.2, 0.7, 0.2, 1) forwards;
            }
            .d1 {
                animation-delay: 0.05s;
            }
            .d2 {
                animation-delay: 0.18s;
            }
            .d3 {
                animation-delay: 0.3s;
            }
            .d4 {
                animation-delay: 0.42s;
            }
            .d5 {
                animation-delay: 0.54s;
            }
            .d6 {
                animation-delay: 0.66s;
            }
            @keyframes rise {
                to {
                    opacity: 1;
                    transform: none;
                }
            }

            @media (max-width: 980px) {
                .nav-links {
                    display: none !important;
                }
                .home-v2 #home-v2-nav {
                    display: grid;
                    grid-template-columns: minmax(0, 1fr) auto;
                    align-items: center;
                    column-gap: 12px;
                    row-gap: 0;
                }
                .home-v2 #home-v2-nav .logo {
                    min-width: 0;
                }
                .home-v2 #home-v2-nav .nav-right {
                    margin-left: 0;
                    justify-self: end;
                }
                .home-v2:has(.main > .about-hero) .main {
                    padding-top: 0;
                }
            }
            @media (max-width: 880px) {
                .nav {
                    flex-wrap: nowrap;
                    gap: 12px;
                    padding-left: var(--main-gutter);
                    padding-right: var(--main-gutter);
                    max-width: 100%;
                    box-sizing: border-box;
                }
                .nav .logo img {
                    height: 28px;
                    max-width: 132px;
                }
                .book-btn {
                    border-radius: 8px;
                    padding: 9px 14px;
                    font-size: 0.82rem;
                    white-space: nowrap;
                }
                .nav-right {
                    gap: 10px;
                    flex-shrink: 0;
                }
                .triptych {
                    grid-template-columns: 1fr;
                }
                .hero-crossfade img:nth-child(1) {
                    object-position: 82% 42%;
                }
                .hero-crossfade img:nth-child(2) {
                    object-position: 74% 38%;
                }
                .hero-crossfade img:nth-child(3) {
                    object-position: 38% 32%;
                }
                .company-grid {
                    grid-template-columns: 1fr;
                }
                .company .photo {
                    order: -1;
                    margin-bottom: 8px;
                }
                .company .photo .img {
                    aspect-ratio: 16/10;
                }
                .company .photo .frame {
                    inset: 14px -8px -14px 14px;
                }
                .company .photo .rating {
                    left: 12px;
                    bottom: -14px;
                }
                .journal-grid {
                    grid-template-columns: 1fr;
                }
                .stage {
                    display: none;
                }
                .story {
                    grid-template-columns: 1fr;
                }
                .story .num {
                    display: none;
                }
                .story .row-img {
                    display: block;
                    width: 100%;
                    aspect-ratio: 16/10;
                    object-fit: cover;
                    border-radius: 14px;
                    margin-bottom: 16px;
                }
                .foot-top {
                    grid-template-columns: 1fr 1fr;
                    gap: 32px 28px;
                }
                .foot-brand {
                    grid-column: 1 / -1;
                }
                .foot-news {
                    grid-column: 1 / -1;
                }
                .stats {
                    grid-template-columns: 1fr 1fr;
                }
            }
            @media (max-width: 520px) {
                .card {
                    flex-basis: 80vw;
                }
                .stats {
                    grid-template-columns: 1fr;
                }
                .foot-top {
                    grid-template-columns: 1fr;
                }
                .foot-bottom {
                    grid-template-columns: 1fr;
                    justify-items: start;
                    gap: 14px;
                }
                .foot-copy {
                    justify-self: center;
                    width: 100%;
                }
                .foot-legal {
                    justify-self: start;
                    justify-content: flex-start;
                }
            }
            @media (prefers-reduced-motion: reduce) {
                .reveal {
                    animation: none;
                    opacity: 1;
                    transform: none;
                }
                .hero-crossfade img {
                    animation: none;
                    opacity: 0;
                    transform: scale(1.03);
                }
                .hero-crossfade img:first-child {
                    opacity: 1;
                }
                .dest img,
                .feature .bg,
                .cta-band .bg,
                .card .ph img,
                .company .photo .img .slide.active,
                .stage .sl.active,
                .home-v2 .article-hero-kb__img {
                    animation: none;
                    transform: scale(1.03);
                }
                .dest::before {
                    animation: none;
                    opacity: 0;
                }
                .sec-head h2 em {
                    animation: none;
                    background-position: 0 0;
                }
                .sec-head .flourish .ln {
                    animation: none;
                    width: 54px;
                }
                .sec-head .flourish .star {
                    animation: none;
                }
                .company .photo .live .pulse {
                    animation: none;
                }
                html {
                    scroll-behavior: auto;
                }
            }
            .home-v2 :focus-visible {
                outline: 2.5px solid var(--gold-soft);
                outline-offset: 3px;
                border-radius: 6px;
            }

            /* Nav: existing dropdown + language switcher */
            .home-v2 .nav-links .nav_item--dropdown {
                position: relative;
            }
            .home-v2 .nav-links .nav_link--dropdown {
                position: relative;
                background: none;
                border: 0;
                cursor: pointer;
                color: rgba(252, 246, 243, 0.9);
                font-size: 0.93rem;
                font-weight: 500;
                font-family: var(--body);
                padding: 6px 0;
                display: inline-flex;
                align-items: center;
                gap: 6px;
                text-shadow: 0 1px 8px rgba(0, 0, 0, 0.4);
            }
            .home-v2 .nav-links .nav_link--dropdown::after {
                content: "";
                position: absolute;
                left: 0;
                right: 100%;
                bottom: 0;
                height: 1.5px;
                background: var(--gold-soft);
                transition: right 0.28s;
            }
            .home-v2 .nav-links .nav_link--dropdown:hover::after {
                right: 0;
            }
            .home-v2 .nav-links .nav_link--dropdown .dropdown_arrow {
                width: 10px;
                height: auto;
            }
            .home-v2 .nav-links .dropdown_menu {
                position: fixed;
                z-index: 100;
                min-width: 200px;
                margin: 0;
                padding: 8px 0;
                list-style: none;
                background: rgba(139, 0, 0, 0.98);
                border: 1px solid rgba(201, 163, 90, 0.35);
                border-radius: 12px;
                box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
                opacity: 0;
                visibility: hidden;
                pointer-events: none;
                transition: opacity 0.2s;
            }
            .home-v2 .nav-links .nav_item--dropdown:hover .dropdown_menu,
            .home-v2 .nav-links .dropdown_menu.show {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
            }
            .home-v2 .nav-links .dropdown_link {
                display: block;
                padding: 10px 18px;
                color: rgba(252, 246, 243, 0.92);
                font-size: 0.9rem;
            }
            .home-v2 .nav-links .dropdown_link:hover {
                color: var(--gold-soft);
                background: rgba(255, 255, 255, 0.06);
            }
            .home-v2 .nav-right .lang-switcher-wrapper {
                position: relative;
            }
            .home-v2 .nav-right .lang-switcher-btn {
                background: none;
                border: 0;
                cursor: pointer;
                padding: 4px;
                display: flex;
                align-items: center;
            }
            .home-v2 .nav-right .lang-dropdown {
                position: absolute;
                top: calc(100% + 8px);
                right: 0;
                min-width: 180px;
                margin: 0;
                padding: 8px 0;
                list-style: none;
                background: rgba(139, 0, 0, 0.98);
                border: 1px solid rgba(201, 163, 90, 0.35);
                border-radius: 12px;
                box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
                opacity: 0;
                visibility: hidden;
                pointer-events: none;
                z-index: 100;
            }
            .home-v2 .nav-right .lang-switcher-wrapper.lang-open .lang-dropdown {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
            }
            .home-v2 .nav-right .lang-dropdown-link {
                display: flex;
                align-items: center;
                gap: 10px;
                padding: 10px 16px;
                color: rgba(252, 246, 243, 0.92);
                font-size: 0.88rem;
            }
            .home-v2 .nav-right .lang-dropdown-link:hover,
            .home-v2 .nav-right .lang-dropdown-link.active {
                color: var(--gold-soft);
                background: rgba(255, 255, 255, 0.06);
            }
            .home-v2 .book-btn {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                text-decoration: none;
            }
            .home-v2 a.trust {
                text-decoration: none;
            }
            .home-v2 a.card-link {
                color: inherit;
                text-decoration: none;
                display: flex;
                flex-direction: column;
            }
            .home-v2 a.card-link h3,
            .home-v2 a.card-link .meta {
                color: inherit;
            }
            .home-v2 a.card-link .price {
                color: var(--red);
            }
            .home-v2 a.card-link .price small {
                color: var(--ink-soft);
            }
            .home-v2 a.card-link .explore {
                color: var(--red);
            }
            .home-v2 .nav-right .lang-switcher-btn .lang {
                color: rgba(252, 246, 243, 0.92);
                font-size: 0.85rem;
                font-weight: 500;
                margin-left: 4px;
            }
            .home-v2 .foot .news-form {
                flex-direction: column;
                align-items: stretch;
            }
            .home-v2 .foot .news-form > input,
            .home-v2 .foot .news-form > button {
                width: 100%;
            }
            .home-v2 .foot .news-form > .form-message {
                width: 100%;
            }
            .home-v2 .section-topic-links {
                background: var(--paper);
                padding: clamp(48px, 6vw, 72px) 0;
            }
            .home-v2 .foot .form-message {
                margin-top: 10px;
                font-size: 0.82rem;
                min-height: 1em;
            }
            .home-v2 .foot .form-message--success {
                color: var(--gold-soft);
            }
            .home-v2 .foot .form-message--error {
                color: #ffb4b4;
            }
            .home-v2 .back-to-top {
                position: fixed;
                right: 24px;
                bottom: 24px;
                z-index: 50;
                display: none;
            }

            /* Search page */
            .home-v2 .search-page {
                padding-top: clamp(3rem, 6vw, 4.5rem);
                padding-bottom: clamp(3rem, 5vw, 4rem);
            }
            .home-v2 .search-page .h1 {
                font-family: var(--display);
                font-weight: 500;
                letter-spacing: -0.02em;
            }
            .home-v2 .search-page__card-title {
                font-family: var(--display);
                font-weight: 500;
            }
            .home-v2 .search-page__intro {
                margin-bottom: 0.5rem;
            }
            .home-v2 .search-page__results {
                margin-top: 1.75rem;
            }

            /* About page typography */
            .home-v2 .about-hero .h2,
            .home-v2 .about-section-title {
                font-family: var(--display);
                font-weight: 500;
                letter-spacing: -0.02em;
            }
            .home-v2 .about-hero .h4 {
                font-family: var(--body);
                font-weight: 400;
                line-height: 1.45;
            }
            .home-v2 .about-person__name {
                font-family: var(--body);
                font-weight: 600;
            }

            /* Blog article hero — slow Ken Burns (matches homepage cards) */
            .home-v2 .article-hero-kb {
                position: relative;
                overflow: hidden;
                border-radius: 16px;
                height: 380px;
            }
            .home-v2 .article-hero-kb__img {
                position: absolute;
                inset: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
                transform-origin: bottom left;
                backface-visibility: hidden;
                animation: cardKenBurns 40s ease infinite;
            }
            @media (max-width: 767.98px) {
                .home-v2 .article-hero-kb {
                    margin-top: 24px;
                }
            }
