:root{--paper:#F3EBE0;--paper-deep:#E8DCCB;--ink:#1E1914;--ink-soft:#4A433A;--rule:#C9BBA8;--tc:#8B3320;--tch:#6F2818;--tcs:#F0D9CF;--gold:#8A6A32;--sage:#4E7C74;--max:68rem;--serif:"Fraunces",Georgia,serif;--sans:"Source Sans 3","Segoe UI",system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.65}
img{display:block;max-width:100%}a{color:var(--tc)}:focus-visible{outline:2px solid var(--tc);outline-offset:3px}
.wrap{width:min(100% - 2rem,var(--max));margin-inline:auto}
header{border-bottom:1px solid #D3C6B4;background:color-mix(in srgb,#F4EDE2 90%,transparent);position:sticky;top:0;z-index:40}
.nav{display:flex;justify-content:space-between;align-items:center;min-height:3.5rem;width:min(100% - 2rem,68rem);margin-inline:auto;gap:1rem;flex-wrap:wrap;padding:.35rem 0}
.wordmark{font-family:var(--serif);font-weight:600;font-size:1rem;color:#3A342C;text-decoration:none}.wordmark span{color:var(--tc);font-weight:500}
.nav-links{display:flex;gap:1.2rem;list-style:none;margin:0;padding:0;flex-wrap:wrap;align-items:center}
.nav-links a{color:#5A5247;text-decoration:none;font-weight:500;font-size:.95rem}.nav-links a[href="agencies.html"]{color:#3E655E}
.nav-links a[aria-current=page]{color:#3A342C;text-decoration:underline;text-decoration-color:var(--tc);text-underline-offset:.3em}
.nav-cta{background:var(--tc);color:#FBF6F0!important;padding:.45rem .9rem;border-radius:999px;font-weight:600;font-size:.9rem}.nav-cta:hover{background:var(--tch)}
h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:-.02em;line-height:1.15;margin:0 0 .6rem}
h1{font-size:clamp(2.2rem,5vw,3.4rem)}h2{font-size:clamp(1.7rem,3.6vw,2.4rem)}
.kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:var(--gold);font-weight:600;margin:0 0 .4rem}
.lead{font-size:1.2rem;color:var(--ink-soft);max-width:40rem}
section{padding:4.5rem 0}section.alt{background:var(--paper-deep)}
.hero{padding:3.5rem 0 2rem;text-align:center}.hero .lead{margin:0 auto 1.5rem}
.btn{display:inline-block;background:var(--tc);color:#FBF6F0;padding:.8rem 1.4rem;border-radius:999px;font-weight:600;text-decoration:none;border:0;cursor:pointer;font:inherit;font-weight:600}.btn:hover{background:var(--tch);color:#fff}
.btn.ghost{background:transparent;color:var(--tc);border:1.5px solid var(--tc)}
/* before/after */
.ba{position:relative;max-width:900px;margin:2rem auto 0;border-radius:16px;overflow:hidden;box-shadow:0 10px 40px rgba(30,25,20,.12);aspect-ratio:736/501;background:#fff;touch-action:pan-y}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba .after{clip-path:inset(0 0 0 var(--pos,50%))}
.ba .handle{position:absolute;top:0;bottom:0;left:var(--pos,50%);width:3px;background:#fff;transform:translateX(-50%);pointer-events:none}
.ba .handle::after{content:"\2194";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:var(--tc);color:#fff;display:grid;place-items:center;font-size:1.2rem;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.ba .tag{position:absolute;top:12px;padding:.2rem .7rem;border-radius:999px;font-size:.8rem;font-weight:600;background:rgba(30,25,20,.75);color:#fff}
.ba .tag.l{left:12px}.ba .tag.r{right:12px;background:var(--tc)}
.toggle{display:inline-flex;gap:.4rem;margin-top:1rem;background:#fff;padding:.3rem;border-radius:999px;border:1px solid var(--rule)}
.toggle button{border:0;background:transparent;padding:.45rem 1rem;border-radius:999px;font:inherit;font-weight:600;color:var(--ink-soft);cursor:pointer}
.toggle button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
/* seats */
.table-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:2.5rem;align-items:start;margin-top:2rem}
.seats{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
.seat{display:flex;gap:.6rem;align-items:center;text-align:left;background:#fff;border:1.5px solid var(--rule);border-radius:12px;padding:.7rem .9rem;font:inherit;cursor:pointer;color:var(--ink)}
.seat .dot{width:12px;height:12px;border-radius:50%;background:var(--rule);flex:none;transition:background .2s}
.seat[aria-selected=true]{border-color:var(--tc);background:var(--tcs)}.seat[aria-selected=true] .dot{background:var(--tc)}
.seat.seated .dot{background:var(--sage)}
.panel{background:#fff;border:1px solid var(--rule);border-radius:14px;padding:1.5rem;min-height:16rem}
.panel .row{display:grid;grid-template-columns:6.5rem 1fr;gap:.6rem;margin:.6rem 0}.panel .row b{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}
.meter{margin-top:1rem;font-size:.95rem;color:var(--ink-soft)}.bar{height:8px;background:var(--paper-deep);border-radius:9px;overflow:hidden;margin-top:.3rem}.bar i{display:block;height:100%;width:0;background:var(--sage);transition:width .3s}
/* stepper */
.stepper{margin-top:2rem}.steps{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.4rem}
.steps button{flex:1 0 auto;min-width:6.5rem;border:1.5px solid var(--rule);background:#fff;border-radius:10px;padding:.55rem .7rem;font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;color:var(--ink-soft)}
.steps button[aria-selected=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.steps button.done{border-color:var(--sage);color:var(--sage)}
.progress{height:6px;background:#fff;border-radius:9px;margin:1rem 0;overflow:hidden}.progress i{display:block;height:100%;background:var(--tc);transition:width .3s}
.stepcard{background:#fff;border:1px solid var(--rule);border-radius:14px;padding:1.6rem}
.stepcard .feel{color:var(--sage);font-weight:600}
.stepnav{display:flex;justify-content:space-between;margin-top:1rem}
/* video */
.vsl{max-width:820px;margin:2rem auto 0}.vsl video{width:100%;border-radius:12px;background:#000}
/* price */
.price{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;background:var(--ink);color:var(--paper);border-radius:18px;padding:3rem}
.price h2{color:#fff}.price .amt{font-family:var(--serif);font-size:3rem;color:#fff;line-height:1}.price ul{padding-left:1.1rem;margin:.8rem 0}.price a.btn{margin-top:1rem}
.price small{color:#CFC3B3}
/* faq */
.faq{max-width:46rem;margin:2rem auto 0}.faq details{background:#fff;border:1px solid var(--rule);border-radius:12px;margin-bottom:.6rem;padding:0 1.2rem}
.faq summary{cursor:pointer;padding:1rem 0;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:1rem}.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--tc);font-size:1.3rem;line-height:1}.faq details[open] summary::after{content:"\2212"}
.faq details p{margin:0 0 1rem;color:var(--ink-soft)}
footer{border-top:1px solid var(--rule);padding:2.5rem 0 1.5rem;font-size:.92rem;color:var(--ink-soft)}
.foot{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}.legal p{margin:.2rem 0}
.staging{background:#3E655E;color:#fff;text-align:center;font-size:.85rem;padding:.3rem}
.center{text-align:center}.center .lead{margin-inline:auto}
@media (max-width:760px){.table-grid,.price{grid-template-columns:1fr}.price{padding:2rem 1.4rem}.nav-links{gap:.8rem}.nav-links a{font-size:.88rem}section{padding:3rem 0}.seats{grid-template-columns:1fr 1fr}}

.ba .hand{position:absolute;width:44px;height:44px;left:var(--pos,50%);top:calc(50% + 14px);transform:translateX(-30%);opacity:0;pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.35));transition:opacity .2s}
.ba.hinting .hand{opacity:1}
.ba-prompt{margin:.9rem 0 0;font-weight:600;color:var(--tc)}
.ba-done{margin:.3rem 0 0;min-height:1.6em;font-family:var(--serif);font-size:1.15rem;color:var(--sage);opacity:0;transition:opacity .4s}.ba-done.show{opacity:1}

h1,h2,h3,.lead{text-wrap:balance}
.hero-note{font-size:.92rem;color:var(--ink-soft);margin:.6rem auto 0;max-width:34rem}
.seat.outside{border-style:dashed;color:var(--ink-soft)}.seat.outside .dot{background:#d8cfc2}
@media (max-width:760px){
 .nav{flex-wrap:nowrap;min-height:3rem;gap:.6rem}.wordmark{flex:none;font-size:.95rem}
 .nav-links{flex-wrap:nowrap;overflow-x:auto;gap:.7rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav-links::-webkit-scrollbar{display:none}
 .nav-links li{flex:none}.nav-links a{font-size:.8rem;white-space:nowrap}.nav-cta{padding:.35rem .65rem;font-size:.78rem}
 .staging{font-size:.75rem;padding:.15rem}.hero{padding-top:1.6rem}h1{font-size:1.9rem}.hero .lead{font-size:1.05rem}}
@media (max-width:760px){
 .nav-links li:last-child{position:sticky;right:0;background:#F4EDE2;padding-left:.4rem;box-shadow:-10px 0 10px -4px #F4EDE2}
 h1{font-size:1.7rem}.ba{margin-top:1.2rem}}
