:root{
  --ink:#171414;
  --paper:#f1ebe4;
  --paper-2:#e5d8cc;
  --cream:#fff8ef;
  --night:#0d0b0c;
  --wine:#8a2939;
  --wine-bright:#b13a50;
  --muted:#766d67;
  --line:rgba(28,22,21,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::selection{background:var(--wine);color:#fff}
img{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
.eyebrow{margin:0 0 22px;font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase}
.light{color:#f4ece5}
h1,h2{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:.87;letter-spacing:-.055em}
h1{font-size:clamp(68px,8.4vw,142px)}
h2{font-size:clamp(54px,6.8vw,105px)}
em{font-weight:400;color:var(--wine-bright)}

.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:88px;padding:0 clamp(22px,4vw,68px);display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid rgba(255,255,255,.15);transition:background .35s,color .35s,border-color .35s,backdrop-filter .35s}
.site-header.scrolled{background:rgba(16,13,13,.88);backdrop-filter:blur(16px);border-color:rgba(255,255,255,.08)}
.brand{display:flex;flex-direction:column;line-height:.8;position:relative;z-index:52}
.brand-name{font-family:Georgia,serif;font-size:31px;letter-spacing:.17em}
.brand-sub{font-size:8px;letter-spacing:.3em;margin-top:8px}
.nav{display:flex;gap:30px;align-items:center}
.nav a{font-size:9px;letter-spacing:.18em;text-transform:uppercase;position:relative}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:currentColor;transition:right .3s}
.nav a:hover::after{right:0}
.menu-toggle{display:none;border:0;background:none;width:34px;height:28px;padding:5px 0;position:relative;z-index:52}
.menu-toggle span{display:block;width:100%;height:1px;background:currentColor;margin:6px 0;transition:.25s}

.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding:clamp(120px,15vh,170px) clamp(22px,5vw,82px) clamp(54px,7vw,95px);overflow:hidden;background:#000;color:#fff}
.hero-bg,.hero-bg img,.hero-shade{position:absolute;inset:0}
.hero-bg img{object-position:center 29%}
.hero-shade{background:linear-gradient(90deg,rgba(6,4,5,.92) 0%,rgba(9,6,7,.72) 39%,rgba(10,7,8,.18) 70%,rgba(10,7,8,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.4),transparent 42%)}
.hero-copy{position:relative;z-index:2;max-width:900px}
.hero h1 em{display:inline-block;color:#d9566e;font-style:italic}
.hero-text{max-width:520px;margin:34px 0 0;color:rgba(255,255,255,.78);font:clamp(17px,1.5vw,23px)/1.55 Georgia,serif}
.hero-actions{display:flex;gap:28px;align-items:center;margin-top:38px}
.button{min-height:52px;padding:0 25px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;transition:transform .25s,background .25s,color .25s}
.button:hover{transform:translateY(-2px)}
.button-light{background:#fff;color:#111}
.text-link{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.light-link{color:#fff}
.light-link span{margin-left:9px}
.hero-index{position:absolute;z-index:2;right:5vw;bottom:68px;display:flex;align-items:center;gap:13px;font-size:9px;letter-spacing:.15em}
.hero-index i{display:block;width:64px;height:1px;background:rgba(255,255,255,.5)}
.hero-side{position:absolute;z-index:2;right:22px;top:50%;margin:0;font-size:8px;letter-spacing:.22em;writing-mode:vertical-rl;transform:translateY(-50%);color:rgba(255,255,255,.58)}

.mood-strip{padding:80px clamp(22px,4vw,66px) 40px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;background:var(--paper)}
.mood-card{margin:0;position:relative;overflow:hidden;height:clamp(360px,46vw,690px)}
.mood-card-up{transform:translateY(-42px)}
.mood-card img{transition:transform .9s cubic-bezier(.2,.7,.2,1);filter:saturate(.92) contrast(1.03)}
.mood-card:hover img{transform:scale(1.035)}
.mood-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.5))}
.mood-card figcaption{position:absolute;z-index:2;left:16px;bottom:16px;color:#fff;font-size:8px;letter-spacing:.22em}

.section-slim{padding:clamp(70px,8vw,120px) clamp(22px,6vw,100px)}
.manifesto-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end}
.manifesto-grid p{margin:0 0 5px;max-width:520px;color:var(--muted);font:16px/1.8 Georgia,serif}

.travel-section{padding:0 clamp(22px,4vw,66px) clamp(100px,12vw,170px)}
.travel-hero{position:relative;height:min(78vw,920px);overflow:hidden}
.travel-hero img{object-position:center 42%}
.travel-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,8,8,.72),rgba(10,8,8,.08) 65%)}
.travel-overlay{position:absolute;z-index:2;left:clamp(25px,5vw,75px);bottom:clamp(30px,6vw,80px);color:#fff;max-width:620px}
.travel-overlay h2{color:#fff}
.travel-overlay p:last-child{font:18px/1.55 Georgia,serif;max-width:410px;color:rgba(255,255,255,.82)}
.travel-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,5vw,78px);padding:70px clamp(0px,7vw,110px) 0}
.travel-card{margin:0}
.travel-card-lower{margin-top:130px}
.image-wrap{height:min(68vw,790px);overflow:hidden}
.travel-card img{transition:transform .8s ease}
.travel-card:hover img{transform:scale(1.025)}
.card-line{display:flex;justify-content:space-between;padding-top:13px;border-top:1px solid var(--line);margin-top:13px;font-size:8px;letter-spacing:.2em}

.afterdark{position:relative;overflow:hidden;background:var(--night);color:var(--cream);padding:clamp(105px,11vw,170px) clamp(22px,4vw,66px) clamp(110px,13vw,190px)}
.afterdark-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end;margin-bottom:70px;position:relative;z-index:2}
.afterdark-heading .eyebrow{grid-column:1/-1}
.afterdark-heading>p:last-child{margin:0 0 5px;color:#b8adab;max-width:500px;line-height:1.8}
.afterdark-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:20px;align-items:end;position:relative;z-index:2}
.night-shot{margin:0;overflow:hidden}
.night-shot img{aspect-ratio:3/4.35;transition:transform .8s ease;filter:saturate(.88) contrast(1.06)}
.night-shot-large img{aspect-ratio:3/4.65}
.night-shot:hover img{transform:scale(1.025)}
.night-shot figcaption{display:flex;gap:18px;padding-top:13px;font-size:8px;letter-spacing:.18em;color:#ccc3bf}
.night-shot figcaption span{color:#6c6260}
.oversized-word{position:absolute;left:-2vw;bottom:-.16em;margin:0;font-family:Georgia,serif;font-size:24vw;line-height:.8;letter-spacing:-.08em;color:rgba(255,255,255,.035);pointer-events:none}

.section{padding:clamp(95px,11vw,165px) clamp(22px,4vw,66px)}
.section-title-row{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;align-items:end;margin-bottom:65px}
.section-title-row>p{margin:0 0 8px;max-width:480px;color:var(--muted);line-height:1.8}
.together-collage{display:grid;grid-template-columns:1.28fr .86fr;grid-template-rows:1fr 1fr;gap:20px}
.couple-card{margin:0;position:relative;overflow:hidden}
.couple-main{grid-row:1/3;height:min(92vw,1050px)}
.couple-small{height:calc((min(92vw,1050px) - 20px)/2)}
.couple-card img{transition:transform .8s ease}
.couple-card:hover img{transform:scale(1.025)}
.couple-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 68%,rgba(0,0,0,.36))}
.couple-card figcaption{position:absolute;z-index:2;left:15px;bottom:15px;color:#fff;font-size:8px;letter-spacing:.19em}

.quote-section{padding:clamp(85px,11vw,160px) 7vw;background:#c5a894;overflow:hidden}
.quote-section p{margin:0;max-width:1100px;font:clamp(60px,9vw,142px)/.9 Georgia,serif;letter-spacing:-.055em;color:#1e1817}
.quote-section em{color:#6f2331}

.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(55px,8vw,125px);align-items:center}
.about-image{height:min(78vw,900px);overflow:hidden}
.about-image img{object-position:center 28%}
.about-copy{max-width:720px}
.about-copy .lead{margin:36px 0 23px;font:clamp(21px,2.2vw,33px)/1.4 Georgia,serif}
.about-copy>p:not(.eyebrow):not(.lead){max-width:610px;margin:0;color:var(--muted);line-height:1.85}
.signature{display:inline-block;margin-top:42px;font:italic 50px Georgia,serif;transform:rotate(-5deg)}

.contact{min-height:88vh;position:relative;display:flex;align-items:flex-end;padding:clamp(100px,12vw,175px) clamp(22px,5vw,82px);overflow:hidden;color:#fff;background:#111}
.contact-image,.contact-image img,.contact-shade{position:absolute;inset:0}
.contact-image img{object-position:center 48%;filter:saturate(.78) contrast(1.08)}
.contact-shade{background:linear-gradient(90deg,rgba(5,4,4,.88),rgba(5,4,4,.55) 46%,rgba(5,4,4,.2)),linear-gradient(0deg,rgba(5,4,4,.72),transparent 55%)}
.contact-inner{position:relative;z-index:2}
.contact h2{color:#fff;max-width:900px}
.contact-mail{display:inline-flex;gap:20px;align-items:center;margin-top:52px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.55);font:clamp(18px,2vw,28px) Georgia,serif}

footer{min-height:150px;padding:36px clamp(22px,4vw,66px);display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;background:#0b090a;color:#eee7df}
footer p,footer>a:last-child{font-size:8px;letter-spacing:.16em;text-transform:uppercase}
footer>a:last-child{justify-self:end}
.footer-brand .brand-name{color:#fff}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.reveal.visible{opacity:1;transform:none}

@media(max-width:980px){
  .nav{gap:18px}
  .mood-strip{grid-template-columns:1fr 1fr}
  .mood-card-up{transform:none}
  .manifesto-grid,.afterdark-heading,.section-title-row{grid-template-columns:1fr;gap:28px}
  .afterdark-heading .eyebrow{grid-column:auto}
  .afterdark-grid{grid-template-columns:1fr 1fr}
  .night-shot-large{grid-column:1/-1;width:70%}
  .travel-pair{padding-left:0;padding-right:0}
  .about{grid-template-columns:1fr}
  .about-image{width:78%}
}

@media(max-width:760px){
  .site-header{height:74px}
  .menu-toggle{display:block}
  .nav{position:fixed;inset:0;background:rgba(13,11,12,.98);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:23px;font:33px Georgia,serif;text-transform:none;opacity:0;pointer-events:none;transition:.25s;color:#fff}
  .nav a{font-size:31px;letter-spacing:-.02em;text-transform:none}
  .nav.open{opacity:1;pointer-events:auto}
  .menu-toggle.open span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle.open span:last-child{transform:translateY(-3px) rotate(-45deg)}
  .hero{padding-left:20px;padding-right:20px}
  .hero-bg img{object-position:58% 25%}
  .hero-shade{background:linear-gradient(90deg,rgba(5,4,5,.9),rgba(5,4,5,.48) 70%,rgba(5,4,5,.28)),linear-gradient(0deg,rgba(0,0,0,.5),transparent 48%)}
  .hero-index,.hero-side{display:none}
  .mood-strip{padding-left:20px;padding-right:20px}
  .travel-section,.afterdark,.section{padding-left:20px;padding-right:20px}
  .travel-pair{grid-template-columns:1fr;gap:55px}
  .travel-card-lower{margin-top:0}
  .image-wrap{height:125vw;max-height:760px}
  .together-collage{grid-template-columns:1fr;grid-template-rows:auto}
  .couple-main,.couple-small{height:125vw;max-height:800px;grid-row:auto}
}

@media(max-width:560px){
  h1{font-size:clamp(62px,19vw,94px)}
  h2{font-size:clamp(50px,15vw,78px)}
  .hero{min-height:92svh;align-items:flex-end;padding-bottom:44px}
  .hero-text{font-size:17px;max-width:330px}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:20px;margin-top:30px}
  .mood-strip{grid-template-columns:1fr 1fr;gap:9px;padding-top:38px}
  .mood-card{height:69vw;min-height:260px}
  .mood-card figcaption{font-size:7px;left:10px;bottom:10px}
  .section-slim{padding-left:20px;padding-right:20px}
  .travel-hero{height:138vw;max-height:760px}
  .travel-hero img{object-position:center 45%}
  .travel-overlay{left:18px;right:18px;bottom:22px}
  .travel-overlay p:last-child{font-size:16px}
  .afterdark-grid{grid-template-columns:1fr;gap:42px}
  .night-shot-large{grid-column:auto;width:100%}
  .night-shot img,.night-shot-large img{aspect-ratio:3/4.4}
  .about-image{width:92%;height:125vw;max-height:720px}
  .quote-section{padding-left:20px;padding-right:20px}
  .contact{padding-left:20px;padding-right:20px;min-height:78vh}
  .contact-mail{font-size:16px}
  footer{grid-template-columns:1fr 1fr;padding-left:20px;padding-right:20px}
  footer p{grid-column:1/-1;order:3;line-height:1.7}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}


/* Legal pages + consent manager */
.legal-page{background:#0b090a;color:#eee7df}
.legal-header{height:88px;padding:0 clamp(20px,4vw,66px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:5}
.legal-header .brand-name{color:#fff}.legal-header .brand-sub{color:#b8adab}.legal-back{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#eee7df}
.legal-shell{max-width:1180px;margin:0 auto;padding:0 clamp(20px,5vw,72px) 110px}
.legal-hero{padding:clamp(85px,11vw,150px) 0 clamp(70px,8vw,115px);border-bottom:1px solid rgba(255,255,255,.12)}
.legal-hero h1{margin:20px 0 30px;color:#fff;font-size:clamp(64px,9vw,132px);line-height:.85}.legal-hero h1 em{color:#b79682}
.legal-intro{max-width:700px;font:clamp(18px,2vw,26px)/1.6 Georgia,serif;color:#c9bfba}.legal-date{margin-top:24px;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#7f7774}
.legal-content{max-width:860px;padding:clamp(70px,8vw,110px) 0 20px}.legal-kicker{font-size:9px;letter-spacing:.24em;color:#b79682;margin-bottom:50px}.legal-content h2{font:clamp(28px,3.2vw,46px)/1.1 Georgia,serif;letter-spacing:-.03em;margin:48px 0 16px;color:#f6efe8}.legal-content p,.legal-content address{font:16px/1.85 Arial,sans-serif;color:#bfb5b0;font-style:normal}.legal-content strong{color:#eee7df}.legal-content a,.legal-content .inline-cookie-link{color:#e0c4b2;text-decoration:underline;text-underline-offset:4px}.legal-content code{font-size:.9em;background:rgba(255,255,255,.08);padding:2px 5px;border-radius:3px;color:#f1ded1}.inline-cookie-link{border:0;background:none;padding:0;font:inherit;cursor:pointer}
.legal-divider{display:flex;align-items:center;gap:16px;padding-top:55px;color:#8e817b;font-size:9px;letter-spacing:.2em}.legal-divider span{height:1px;background:rgba(255,255,255,.13);flex:1}.legal-divider b{font-weight:500}
.legal-footer{min-height:150px}.cookie-settings-footer{border:0;background:none;color:inherit;font:inherit;font-size:8px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;padding:0;text-align:right}.footer-actions{justify-self:end;display:flex;gap:24px;align-items:center}.footer-actions a,.footer-actions button{font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:inherit;background:none;border:0;padding:0;cursor:pointer}
.cookie-consent,.cookie-modal{position:fixed;inset:0;z-index:9999;background:rgba(7,5,6,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center;padding:18px}.cookie-consent[hidden],.cookie-modal[hidden]{display:none}
.cookie-card{width:min(100%,1120px);background:#151112;color:#eee7df;border:1px solid rgba(255,255,255,.14);padding:clamp(24px,4vw,46px);box-shadow:0 -20px 80px rgba(0,0,0,.35)}.cookie-card h2{font:clamp(38px,5vw,68px)/.95 Georgia,serif;margin:12px 0 18px;color:#fff;letter-spacing:-.04em}.cookie-card>p:not(.eyebrow):not(.cookie-legal){max-width:730px;color:#bfb5b0;line-height:1.7}.cookie-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.cookie-primary,.cookie-secondary,.cookie-text{min-height:48px;padding:0 20px;border:1px solid rgba(255,255,255,.22);font-size:9px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.cookie-primary{background:#f1e8df;color:#131011;border-color:#f1e8df}.cookie-secondary{background:transparent;color:#eee7df}.cookie-text{background:transparent;color:#cbb7aa;border-color:transparent;text-decoration:underline}.cookie-legal{margin:20px 0 0;font-size:11px}.cookie-legal a{color:#9f918a;text-decoration:underline}
.cookie-modal{align-items:center}.cookie-settings-card{position:relative;width:min(100%,720px);max-height:92vh;overflow:auto;background:#f1ebe5;color:#1b1718;padding:clamp(26px,5vw,54px);box-shadow:0 30px 120px rgba(0,0,0,.45)}.cookie-settings-card h2{font:clamp(42px,6vw,74px)/.92 Georgia,serif;margin:14px 0 38px}.cookie-close{position:absolute;right:18px;top:16px;border:0;background:none;font:34px/1 Georgia,serif;cursor:pointer}.cookie-option{display:flex;gap:25px;align-items:center;justify-content:space-between;padding:22px 0;border-top:1px solid rgba(27,23,24,.18)}.cookie-option:last-of-type{border-bottom:1px solid rgba(27,23,24,.18)}.cookie-option strong{font:20px Georgia,serif}.cookie-option p{margin:7px 0 0;max-width:470px;color:#6a6060;font-size:13px;line-height:1.5}.cookie-always{font-size:9px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.switch{position:relative;display:inline-block;width:52px;height:29px;flex:0 0 auto}.switch input{position:absolute;opacity:0}.switch span{position:absolute;inset:0;border-radius:30px;background:#c9c0ba;transition:.2s;cursor:pointer}.switch span::after{content:"";position:absolute;width:21px;height:21px;left:4px;top:4px;border-radius:50%;background:#fff;transition:.2s}.switch input:checked+span{background:#6f2331}.switch input:checked+span::after{transform:translateX(23px)}.cookie-settings-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.cookie-settings-card .cookie-primary{background:#171314;color:#fff;border-color:#171314}.cookie-settings-card .cookie-secondary{color:#171314;border-color:#706665}
.tiktok-consent-placeholder{min-height:460px;background:#121011;color:#eee7df;display:grid;place-items:center;text-align:center;padding:35px}.tiktok-consent-placeholder p{max-width:440px;line-height:1.7;color:#bdb0aa}.tiktok-consent-placeholder button{margin-top:18px}
@media(max-width:760px){.legal-header{height:74px}.legal-shell{padding-bottom:75px}.legal-content p,.legal-content address{font-size:15px}.legal-footer{grid-template-columns:1fr 1fr}.legal-footer p{grid-column:1/-1;order:3}.cookie-card{padding:24px 20px}.cookie-actions{flex-direction:column}.cookie-actions button{width:100%}.cookie-settings-card{padding:34px 20px 24px}.cookie-option{align-items:flex-start}.cookie-settings-actions{flex-direction:column}.cookie-settings-actions button{width:100%}.footer-actions{gap:14px;flex-direction:column;align-items:flex-end}}

/* TikTok profile integration */
.nav-social{opacity:.86}
.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:26px;margin-top:52px}
.contact-links .contact-mail{margin-top:0}
.tiktok-cta{display:inline-flex;align-items:center;gap:15px;min-width:min(100%,330px);padding:15px 18px;border:1px solid rgba(255,255,255,.25);background:rgba(15,12,13,.40);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .25s,background .25s,border-color .25s}
.tiktok-cta:hover{transform:translateY(-2px);background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.55)}
.tiktok-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;color:#0b090a;font:700 22px/1 Georgia,serif;flex:0 0 auto}
.tiktok-cta span:nth-child(2){display:flex;flex-direction:column;gap:3px}
.tiktok-cta small{font-size:8px;letter-spacing:.19em;color:rgba(255,255,255,.64)}
.tiktok-cta strong{font:20px/1.1 Georgia,serif;font-weight:400;color:#fff}
.tiktok-arrow{margin-left:auto;font-size:19px}
@media(max-width:760px){.contact-links{margin-top:38px;gap:22px;width:100%}.tiktok-cta{width:100%;max-width:360px}.nav-social{margin-top:8px;font-size:20px!important;letter-spacing:.05em!important;opacity:.72}.footer-actions{max-width:210px}}


/* V7 — privacy-friendly aggregate visit counter */
.footer-center{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
.visitor-counter{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid rgba(238,231,223,.18);border-radius:999px;background:rgba(255,255,255,.025);font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:rgba(238,231,223,.72);white-space:nowrap}
.visitor-counter strong{font:400 11px/1 Georgia,serif;letter-spacing:.08em;color:#fff;font-variant-numeric:tabular-nums}
.visitor-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.72;box-shadow:0 0 10px currentColor}
@media(max-width:760px){.footer-center{grid-column:1/-1;order:3}.visitor-counter{margin-top:2px}}


/* V8 — featured TikTok video */
.tiktok-feature{background:#efe7df;display:grid;grid-template-columns:minmax(0,.82fr) minmax(325px,.72fr);gap:clamp(50px,8vw,130px);align-items:center;padding-top:clamp(90px,11vw,160px);padding-bottom:clamp(95px,12vw,175px)}
.tiktok-feature-copy{max-width:590px}.tiktok-feature-copy h2{margin:18px 0 28px}.tiktok-feature-copy>p:not(.eyebrow){max-width:520px;font:17px/1.75 Arial,sans-serif;color:#665d5c}.tiktok-video-link{display:inline-flex;margin-top:30px;color:#211b1c;border-bottom:1px solid rgba(33,27,28,.32);padding-bottom:6px}
.tiktok-feature-player{justify-self:center;width:min(100%,430px)}
.tiktok-player-frame{position:relative;width:100%;aspect-ratio:9/16;min-height:578px;overflow:hidden;background:#090808;border:1px solid rgba(29,24,25,.16);box-shadow:0 35px 80px rgba(46,30,32,.18)}
.tiktok-player-frame iframe{display:block;width:100%;height:100%;min-height:578px;border:0;background:#000}
.tiktok-player-frame .tiktok-consent-placeholder{height:100%;min-height:578px;background:radial-gradient(circle at 50% 12%,rgba(111,35,49,.48),transparent 38%),linear-gradient(160deg,#1c1517,#090808 72%);padding:42px 28px}
.tiktok-consent-placeholder>div{display:flex;flex-direction:column;align-items:center}.tiktok-consent-placeholder a{display:inline-block;margin-top:20px;color:#bdb0aa;font-size:9px;letter-spacing:.11em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px}.tiktok-placeholder-mark{display:grid;place-items:center;width:64px;height:64px;border:1px solid rgba(255,255,255,.28);border-radius:50%;margin:0 auto 24px;font:34px/1 Georgia,serif;color:#fff}.tiktok-error .tiktok-fallback-button{color:#151112;text-decoration:none}.tiktok-player-loading{height:100%;min-height:578px;display:grid;place-content:center;text-align:center;color:#eee7df;gap:12px}.tiktok-player-loading span{font:38px/1 Georgia,serif}.tiktok-player-loading p{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#b9aca7}.tiktok-feature-note{margin:14px 0 0;text-align:center;font-size:8px;letter-spacing:.19em;color:#776d6b}
@media(max-width:850px){.tiktok-feature{grid-template-columns:1fr;gap:55px}.tiktok-feature-copy{max-width:650px}.tiktok-feature-player{width:min(100%,410px)}}
@media(max-width:560px){.tiktok-feature{padding-left:20px;padding-right:20px}.tiktok-player-frame{min-height:0}.tiktok-player-frame iframe,.tiktok-player-frame .tiktok-consent-placeholder,.tiktok-player-loading{min-height:0;height:100%}}

/* V9 — Sunset Drive editorial */
.drive-feature{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);min-height:900px;background:#0c0a0b;color:#f5ede7;overflow:hidden}
.drive-photo{position:relative;min-height:900px;overflow:hidden}
.drive-photo img{position:absolute;inset:0;object-position:center 47%;filter:saturate(.94) contrast(1.03);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.drive-photo:hover img{transform:scale(1.018)}
.drive-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 68%,rgba(12,10,11,.32)),linear-gradient(0deg,rgba(5,4,5,.32),transparent 38%);pointer-events:none}
.drive-number{position:absolute;z-index:2;left:24px;bottom:24px;font:clamp(54px,6vw,92px)/.8 Georgia,serif;color:rgba(255,255,255,.26);letter-spacing:-.05em}
.drive-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(70px,8vw,130px) clamp(34px,6vw,100px);position:relative}
.drive-copy::before{content:"";position:absolute;top:8%;right:-12%;width:380px;height:380px;border:1px solid rgba(255,255,255,.07);border-radius:50%;pointer-events:none}
.drive-copy h2{color:#fff;font-size:clamp(58px,6.5vw,104px);position:relative;z-index:1}
.drive-copy h2 em{color:#d9566e}
.drive-copy>p:not(.eyebrow){max-width:520px;margin:34px 0 0;color:#bcb0ac;font:17px/1.8 Georgia,serif;position:relative;z-index:1}
.drive-meta{display:flex;justify-content:space-between;gap:22px;margin-top:58px;padding-top:14px;border-top:1px solid rgba(255,255,255,.17);font-size:8px;letter-spacing:.18em;color:#8f8582;position:relative;z-index:1}
@media(max-width:900px){.drive-feature{grid-template-columns:1fr;min-height:0}.drive-photo{min-height:128vw;max-height:920px}.drive-copy{padding:75px 28px 85px}.drive-copy::before{width:280px;height:280px;right:-22%}}
@media(max-width:560px){.drive-photo{min-height:145vw}.drive-photo img{object-position:center 50%}.drive-number{left:16px;bottom:18px}.drive-copy{padding:64px 20px 76px}.drive-copy>p:not(.eyebrow){font-size:16px}.drive-meta{margin-top:44px;flex-direction:column;gap:9px}}

/* V10 — public comments */
.comments-section{background:#f3eee8;color:#171314;position:relative;overflow:hidden}
.comments-section::before{content:"";position:absolute;right:-180px;top:90px;width:520px;height:520px;border:1px solid rgba(92,35,48,.12);border-radius:50%;pointer-events:none}
.comments-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,460px);gap:60px;align-items:end;margin-bottom:70px;position:relative;z-index:1}
.comments-heading h2{font-size:clamp(58px,7vw,110px);line-height:.86;margin:12px 0 0;letter-spacing:-.055em}
.comments-heading h2 em{color:#8f2f42;font-weight:400}
.comments-heading>p{font:18px/1.75 Georgia,serif;color:#665b59;margin:0 0 6px}
.comments-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(48px,7vw,110px);position:relative;z-index:1}
.comment-form{background:#171314;color:#f5ede7;padding:clamp(30px,4vw,58px);align-self:start;position:sticky;top:115px}
.comment-field{margin-bottom:27px}.comment-field label,.comment-label-row label{display:block;font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:#c9bbb5;margin-bottom:10px}
.comment-label-row{display:flex;align-items:center;justify-content:space-between;gap:15px}.comment-label-row span{font-size:8px;letter-spacing:.12em;color:#807471;margin-bottom:10px}
.comment-field input,.comment-field textarea{width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;font:17px/1.55 Georgia,serif;padding:12px 0 14px;outline:none;border-radius:0;resize:vertical}
.comment-field input::placeholder,.comment-field textarea::placeholder{color:#706562}.comment-field input:focus,.comment-field textarea:focus{border-color:#d9566e}
.comment-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.comment-consent{display:grid;grid-template-columns:18px 1fr;gap:12px;align-items:start;color:#a99b96;font-size:10px;line-height:1.55;margin:6px 0 28px;cursor:pointer}
.comment-consent input{accent-color:#d9566e;margin-top:2px}.comment-consent a{color:#e3d5ce;text-decoration:underline;text-underline-offset:3px}
.comment-form-bottom{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.comment-submit{border:0;background:#f2e9e1;color:#171314;padding:16px 21px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;gap:26px;transition:transform .2s ease,background .2s ease}.comment-submit:hover{transform:translateY(-2px);background:#fff}.comment-submit:disabled{opacity:.5;cursor:wait;transform:none}
.comment-status{font-size:10px;color:#bcaeaa;margin:0;min-height:15px}.comment-status.error{color:#ff9fae}.comment-status.success{color:#d8c7c0}
.comments-feed{min-width:0}.comments-feed-top{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid rgba(23,19,20,.2)}.comments-feed-top .eyebrow{margin:0}.comments-total{font-size:8px;letter-spacing:.14em;color:#786d69;text-transform:uppercase}
.comments-list{display:flex;flex-direction:column}.comments-loading,.comments-empty{padding:42px 0;color:#7f7470;font:17px/1.6 Georgia,serif;margin:0}
.comment-card{display:grid;grid-template-columns:58px 1fr;gap:20px;padding:30px 0;border-bottom:1px solid rgba(23,19,20,.15)}
.comment-avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#211a1c;color:#f5ede7;font:22px/1 Georgia,serif;text-transform:uppercase}
.comment-meta{display:flex;justify-content:space-between;gap:14px;align-items:baseline;margin:2px 0 9px}.comment-meta strong{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.comment-meta time{font-size:8px;letter-spacing:.1em;color:#8a7f7b;text-transform:uppercase;white-space:nowrap}
.comment-card p{font:17px/1.65 Georgia,serif;color:#443b39;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.comments-smallprint{margin:26px 0 0;color:#8a7f7b;font-size:9px;line-height:1.6;max-width:620px}
@media(max-width:900px){.comments-heading{grid-template-columns:1fr;gap:28px}.comments-layout{grid-template-columns:1fr}.comment-form{position:relative;top:auto}.comments-section::before{right:-300px}}
@media(max-width:560px){.comments-section{padding-left:20px;padding-right:20px}.comments-heading{margin-bottom:45px}.comment-form{padding:30px 22px}.comment-card{grid-template-columns:44px 1fr;gap:14px}.comment-avatar{width:42px;height:42px;font-size:18px}.comment-meta{align-items:flex-start;flex-direction:column;gap:5px}.comment-meta time{white-space:normal}.comment-form-bottom{align-items:flex-start;flex-direction:column}}
