
:root{
  --ink:#181510; --muted:#6d655a; --paper:#f4efe7; --cream:#fbf8f2;
  --deep:#12100d; --deep2:#1a1712; --gold:#b5925d; --gold2:#d5b983;
  --line:rgba(24,21,16,.13); --white:rgba(255,255,255,.94);
  --serif: Georgia, "Times New Roman", serif;
  --sans: -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.62;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{width:100%;display:block}.wrap{max-width:1180px;margin:auto;padding:0 32px}.narrow{max-width:880px;margin:auto;padding:0 32px}
.eyebrow{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:var(--gold);margin-bottom:14px}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin-top:0}h1{font-size:clamp(46px,5.4vw,74px);line-height:1.01;letter-spacing:-.028em}h2{font-size:clamp(34px,3.7vw,50px);line-height:1.08;letter-spacing:-.018em}h3{font-size:24px;line-height:1.18}.lead{font-size:18px;color:var(--muted);max-width:760px}
.site-nav{position:sticky;top:0;z-index:100;background:rgba(16,14,11,.97);color:#fff;border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(12px)}
.nav{height:72px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{font-size:12px;letter-spacing:.235em;font-weight:800;white-space:nowrap}
.desktop-nav{display:flex;align-items:center;gap:4px}.desktop-nav>a,.dropbtn{padding:12px 12px;color:rgba(255,255,255,.78);font-size:12.5px;border:0;background:none;font:inherit;cursor:pointer}.desktop-nav>a:hover,.dropbtn:hover{color:#fff}
.dropdown{position:relative}.dropdown-menu{opacity:0;pointer-events:none;transform:translateY(7px);transition:.18s;position:absolute;top:46px;left:0;width:302px;background:#191612;border:1px solid rgba(255,255,255,.1);padding:8px;box-shadow:0 24px 70px rgba(0,0,0,.45)}
.dropdown:hover .dropdown-menu{opacity:1;pointer-events:auto;transform:none}.dropdown-menu a{display:block;padding:12px 13px;font-size:12.5px;color:rgba(255,255,255,.72);border-bottom:1px solid rgba(255,255,255,.06)}.dropdown-menu a:last-child{border:0}.dropdown-menu a:hover{background:rgba(255,255,255,.05);color:#fff}
.navcta{padding:10px 14px;border:1px solid rgba(255,255,255,.28);font-size:12px;white-space:nowrap}.mobile-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.2);color:#fff;padding:8px 10px}
.mobile-panel{display:none;background:#17140f;border-top:1px solid rgba(255,255,255,.08);padding:10px 28px 20px}.mobile-panel a,.mobile-panel summary{display:block;color:rgba(255,255,255,.82);padding:10px 0;font-size:13px}.mobile-panel details a{padding-left:16px;color:rgba(255,255,255,.67)}
.hero{position:relative;min-height:760px;color:#fff;background-size:cover;background-position:center;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,5,.96) 0%,rgba(8,7,5,.88) 42%,rgba(8,7,5,.50) 72%,rgba(8,7,5,.32) 100%)}
.hero-grid{position:relative;z-index:2;min-height:760px;display:grid;grid-template-columns:1.08fr .72fr;gap:64px;align-items:end;padding-top:110px;padding-bottom:72px}
.hero h1{max-width:800px;margin-bottom:20px}.hero-copy{max-width:700px;font-size:19px;color:rgba(255,255,255,.76);line-height:1.58}.hero-note{margin-top:24px;max-width:660px;padding:17px 19px;border-left:2px solid var(--gold2);background:rgba(255,255,255,.04);font-family:var(--serif);font-size:21px;color:rgba(255,255,255,.89)}
.hero-card{align-self:end;background:rgba(17,15,11,.72);border:1px solid rgba(255,255,255,.11);padding:25px;backdrop-filter:blur(8px)}.hero-card h3{font-size:27px;margin-bottom:15px}.minirow{padding:12px 0;border-top:1px solid rgba(255,255,255,.09)}.minirow b{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold2);margin-bottom:3px}.minirow span{font-size:13.5px;color:rgba(255,255,255,.68)}
.actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 17px;font-size:13px;font-weight:750}.btn-primary{background:#d6b67e;color:#17130e}.btn-outline{border:1px solid rgba(255,255,255,.28);color:#fff}.btn-dark{background:var(--deep);color:#fff}
section{padding:82px 0}.dark{background:var(--deep);color:#fff}.dark .lead{color:rgba(255,255,255,.64)}.cream{background:var(--cream)}
.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:62px;align-items:center}.editorial-stack{position:relative;height:530px}.editorial-stack .main{position:absolute;left:0;top:0;width:82%;height:88%;object-fit:cover}.editorial-stack .inset{position:absolute;right:0;bottom:0;width:43%;height:44%;object-fit:cover;border:8px solid var(--paper)}
.cards6{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:30px}.service-card{border:1px solid rgba(255,255,255,.10);background:#191611;padding:22px;min-height:290px;display:flex;flex-direction:column}.service-card .num{font-family:var(--serif);font-size:25px;color:var(--gold2)}.service-card h3{font-size:23px;margin:10px 0 10px}.service-card p{font-size:13.5px;color:rgba(255,255,255,.62);margin:0}.service-card .scene{margin-top:auto;padding-top:15px;border-top:1px solid rgba(255,255,255,.08);font-family:var(--serif);font-size:17px;color:#dbc69f}.service-card .link{margin-top:13px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:30px}.visual-card{position:relative;min-height:410px;overflow:hidden;background:#111}.visual-card img{position:absolute;inset:0;height:100%;object-fit:cover}.visual-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(0,0,0,.76) 100%)}.visual-card .cap{position:absolute;z-index:2;left:21px;right:21px;bottom:19px;color:#fff}.visual-card .cap small{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold2);font-weight:800}.visual-card .cap h3{font-size:25px;margin:4px 0 6px}.visual-card .cap p{font-size:13px;color:rgba(255,255,255,.70);margin:0}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:28px}.step{border-top:1px solid var(--line);padding-top:18px}.step .num{font-family:var(--serif);font-size:30px;color:var(--gold)}.step h3{font-size:19px;margin:5px 0 7px}.step p{font-size:13.5px;color:var(--muted);margin:0}
.page-hero{background:var(--deep);color:#fff;padding:86px 0 58px}.page-hero h1{max-width:930px;font-size:clamp(44px,5vw,67px);margin-bottom:18px}.page-hero p{max-width:810px;color:rgba(255,255,255,.70);font-size:18px}
.scene-intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:58px;align-items:start}.scene-quote{font-family:var(--serif);font-size:30px;line-height:1.3;padding-left:20px;border-left:2px solid var(--gold);margin:0}.scene-list{display:grid;gap:0}.scene-item{padding:20px 0;border-top:1px solid var(--line)}.scene-item:first-child{border-top:0;padding-top:0}.scene-item h3{font-size:22px;margin-bottom:7px}.scene-item p{margin:0;color:var(--muted);font-size:14.5px}
.moment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:23px}.moment{padding:16px 17px;background:rgba(255,255,255,.52);border:1px solid var(--line);font-size:13.5px}.what-box{margin-top:34px;padding:28px 30px;background:#d9c4a2}.what-box h3{font-size:25px;margin-bottom:9px}.what-box p{font-size:16px;margin:0;max-width:870px}
.delivery-lead{display:grid;grid-template-columns:.83fr 1.17fr;gap:60px;align-items:start}.delivery-spec{display:grid;gap:0}.delivery-spec .row{padding:18px 0;border-top:1px solid var(--line)}.delivery-spec .row:first-child{border-top:0;padding-top:0}.delivery-spec b{display:block;font-family:var(--serif);font-size:22px;font-weight:400;margin-bottom:5px}.delivery-spec span{font-size:14px;color:var(--muted)}
.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:34px}.proof{background:#fff;border:1px solid var(--line)}.proof img{height:320px;object-fit:cover}.proof .txt{padding:19px}.proof .txt small{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:800}.proof h3{font-size:21px;margin:5px 0 7px}.proof p{font-size:13.5px;color:var(--muted);margin:0}.privacy-note{font-size:12px;color:var(--muted);margin-top:13px}
.contact-band{background:#d7c19d}.contact-grid{display:grid;grid-template-columns:1fr .78fr;gap:50px;align-items:center}.contact-card{background:#fbf6ee;border:1px solid rgba(0,0,0,.11);padding:25px}.contact-card h3{font-size:26px;margin-bottom:10px}.contact-card p{font-size:14px;color:var(--muted)}
.faq details{padding:16px 0;border-top:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:700;font-size:14px}.faq p{font-size:14px;color:var(--muted);margin:10px 0 0}
.footer{background:#14120f;color:rgba(255,255,255,.56);padding:34px 0;font-size:11.5px}.footergrid{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer a{margin-left:14px}.footbrand{color:#fff;letter-spacing:.18em;font-weight:800}
@media(max-width:900px){
 .desktop-nav,.navcta{display:none}.mobile-toggle{display:block}.mobile-panel.open{display:block}
 .hero-grid,.intro-grid,.scene-intro,.delivery-lead,.contact-grid{grid-template-columns:1fr}.hero-grid{padding-top:80px;padding-bottom:52px;gap:30px}.hero{min-height:auto}.hero-card{max-width:540px}
 .cards6,.trio,.proof-grid,.steps{grid-template-columns:1fr}.moment-grid{grid-template-columns:1fr}.editorial-stack{height:440px}.visual-card{min-height:350px}.proof img{height:270px}
 section{padding:64px 0}.wrap,.narrow{padding:0 22px}
}

/* Production legal/contact pages */
.contact-direct{margin-top:28px;padding:26px 28px;background:#fbf6ee;border:1px solid var(--line)}
.contact-direct h3{margin-bottom:8px}.contact-email{display:inline-block;margin-top:10px;font-family:var(--serif);font-size:24px;border-bottom:1px solid rgba(24,21,16,.35)}
.legal{padding:68px 0 86px}.legal-meta{font-size:12px;color:var(--muted);margin-bottom:34px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.legal h2{font-size:28px;margin:34px 0 10px}.legal h3{font-size:20px;margin:24px 0 8px}.legal p,.legal li{font-size:14.5px;color:#514a41}.legal ul{padding-left:21px;margin-top:8px}.legal li{margin:7px 0}.legal-callout{margin:28px 0;padding:20px 22px;background:#efe4d2;border-left:2px solid var(--gold)}
.legal-contact{margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}
.footer-legal{margin-top:5px;font-size:10.5px;color:rgba(255,255,255,.42)}
.footer-legal a{margin-left:0;text-decoration:underline;text-underline-offset:2px}

.direct-contact{background:#d8c29f;padding:58px 0;border-top:1px solid rgba(24,21,16,.10)}
.direct-contact-inner{display:grid;grid-template-columns:1.25fr .75fr;gap:44px;align-items:center}
.direct-contact h2{margin:0 0 10px;font-size:clamp(34px,3.4vw,48px);line-height:1.08}
.direct-contact p{margin:0;color:#5f574d;font-size:17px;max-width:760px}
.direct-contact-mail{justify-self:end;text-align:right}
.direct-contact-mail a{font-family:var(--serif);font-size:24px;border-bottom:1px solid rgba(24,21,16,.45);padding-bottom:3px}
.direct-contact-mail small{display:block;margin-top:9px;color:#6d655a;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:900px){
  .direct-contact-inner{grid-template-columns:1fr}
  .direct-contact-mail{justify-self:start;text-align:left}
  .direct-contact-mail a{font-size:21px}
}

/* v16 simplified public funnel: homepage -> one scenario page -> direct email */
.simple-nav-note{font-size:11px;color:rgba(255,255,255,.48);letter-spacing:.06em}
.service-included{background:#f7f1e8;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.service-included-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.service-included .proofline{display:grid;gap:0}
.service-included .proofrow{padding:17px 0;border-top:1px solid var(--line)}
.service-included .proofrow:first-child{border-top:0;padding-top:0}
.service-included .proofrow b{display:block;font-family:var(--serif);font-size:21px;font-weight:400;margin-bottom:4px}
.service-included .proofrow span{font-size:14px;color:var(--muted)}
@media(max-width:900px){.service-included-grid{grid-template-columns:1fr}}
