:root{--black:#0b0b0a;--ink:#1c1b18;--gold:#dca62f;--gold-dark:#a8750b;--ivory:#faf8f3;--line:#ddd8cf;--muted:#6d6a65;--serif:"Cormorant Garamond",Georgia,serif;--sans:Manrope,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;color:var(--ink);font-family:var(--sans);background:#fff;overflow-x:hidden}button,input{font:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.skip-link{position:fixed;z-index:99;left:1rem;top:1rem;padding:.7rem 1rem;background:#fff;transform:translateY(-180%)}.skip-link:focus{transform:none}.utility{height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 3%;color:#fff;background:var(--black);font-size:.83rem}header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 3%;border-bottom:1px solid var(--line)}header img{width:218px;height:auto}header p{font-family:var(--serif);font-size:1.25rem;color:#555}.hero-grid{display:grid;grid-template-columns:minmax(0,57%) minmax(430px,43%);min-height:740px}.offer{position:relative;min-height:740px;color:#fff;background:#111;overflow:hidden}.offer picture,.offer picture img,.shade{position:absolute;inset:0;width:100%;height:100%}.offer img{object-fit:cover}.shade{background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.45))}.offer-copy{position:relative;z-index:1;max-width:660px;padding:13% 7%}.eyebrow,.progress{margin:0 0 .55rem;color:var(--gold-dark);font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.offer .eyebrow{color:#efb62a}.offer h1{margin:.8rem 0 1.25rem;font:500 clamp(3.4rem,5vw,5rem)/.92 var(--serif);letter-spacing:-.03em}.offer-copy>p:not(.eyebrow,.qualifier){max-width:530px;margin:0 0 1.2rem;font-size:1.08rem;line-height:1.55}.gold-rule{display:block;width:54px;height:2px;margin:1.6rem 0;background:var(--gold)}.qualifier{margin-top:1.8rem!important;color:#f2b72b}.quiz-wrap{display:flex;flex-direction:column;justify-content:center;padding:30px 6%;background:var(--ivory)}form,.unlocked{padding:34px 38px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.72);box-shadow:0 12px 40px rgba(30,25,15,.035)}.step{display:none}.step.active{display:block}.step h2,.unlocked h2,.location h2{margin:.15rem 0 .2rem;font:500 clamp(2.15rem,3vw,2.8rem)/1 var(--serif);letter-spacing:-.02em}.instruction{margin:.25rem 0 1.25rem;color:var(--muted)}fieldset{margin:0;padding:0;border:0}fieldset legend{margin:1rem 0 .65rem;font-weight:600}.choices{display:grid;gap:8px}.choices label{position:relative}.choices input{position:absolute;opacity:0}.choices span{min-height:58px;display:flex;align-items:center;gap:18px;padding:11px 18px;border:1px solid var(--line);border-radius:4px;background:#fff;cursor:pointer}.choices b{width:34px;color:var(--gold-dark);font-size:1.45rem;text-align:center}.choices input:checked+span{border-color:var(--gold-dark);background:#fff9e9;box-shadow:inset 4px 0 var(--gold)}.choices input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}.compact{grid-template-columns:1fr 1fr}.compact span{min-height:50px;padding:9px 13px;font-size:.88rem}.primary,.secondary{min-height:53px;border:1px solid var(--gold-dark);border-radius:3px;padding:.8rem 1.2rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.primary{width:100%;margin-top:22px;color:#12110e;background:var(--gold)}.primary:hover{background:#e9b640}.primary:disabled{cursor:not-allowed;opacity:.45}.secondary{color:var(--ink);background:#fff;letter-spacing:.04em}.actions{display:grid;grid-template-columns:120px 1fr;gap:12px;margin-top:20px}.actions .primary{margin:0}.speed{text-align:center;font-size:.8rem}.error{min-height:1rem;margin:.25rem 0;color:#a72b22;font-size:.78rem}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 13px;margin-top:1.2rem}.field-grid label{font-size:.78rem;font-weight:600}.field-grid input{width:100%;min-height:48px;margin-top:4px;padding:10px;border:1px solid #aaa49a;border-radius:3px;background:#fff}.field-grid .wide{grid-column:1/-1}.field-grid small{display:block}.consent{display:flex;gap:10px;margin-top:12px;color:#695a37;font-size:.69rem;line-height:1.4}.consent input{width:20px;height:20px;flex:0 0 auto}.submit-error{padding:10px;color:#8a1d16;background:#fff0ee}.disqualified{margin-top:1rem;padding:1rem;border-left:4px solid var(--gold);background:#fff6de}.disqualified h3{margin:0;font-family:var(--serif);font-size:1.5rem}.calendar-placeholder{min-height:220px;display:grid;place-items:center;margin:1.2rem 0;padding:1rem;border:1px dashed #aaa;background:#fff;text-align:center}.unlocked address{font-style:normal;line-height:1.6}.directions{display:inline-block;margin-top:.5rem;color:var(--gold-dark)}.disclaimer,.card-disclaimer{color:var(--muted);font-size:.72rem;text-align:center}.card-disclaimer{margin:12px auto 0;max-width:430px}.benefits{min-height:118px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;padding:0 5%;border-block:1px solid var(--line);font:500 1.22rem var(--serif)}.benefits div{padding:15px;text-align:center;border-right:1px solid var(--line)}.benefits div:last-child{border:0}.benefits span{display:block;margin-bottom:5px;color:var(--gold-dark);font:1.8rem var(--sans)}.location{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:2rem;align-items:center;padding:50px 6%;background:var(--ivory)}.location address{font-style:normal}.location p{line-height:1.55}.location a{color:var(--gold-dark)}footer{min-height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;color:#ccc;background:var(--black);font-size:.78rem}footer nav{display:flex;gap:20px}footer a{color:#fff}.sr-only,.honeypot{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){header{height:74px}.hero-grid{grid-template-columns:1fr}.offer{min-height:390px}.offer-copy{padding:40px 5%}.offer h1{font-size:clamp(2.7rem,8vw,4rem)}.offer-copy>p:not(.eyebrow,.qualifier){max-width:650px;font-size:.95rem;margin-bottom:.7rem}.quiz-wrap{padding:22px 4%}.location{grid-template-columns:1fr 1fr}.location>div{grid-column:1/-1}}
@media(max-width:540px){.utility{height:32px;justify-content:center;font-size:.69rem}.utility span:first-child{display:none}header{height:62px;padding:0 16px}header img{width:170px;max-width:100%}header p{display:none}.hero-grid,.offer,.quiz-wrap,form{min-width:0;width:100%}.offer{min-height:360px}.offer-copy{width:100%;padding:28px 20px}.offer h1{font-size:2.65rem;margin:.45rem 0}.gold-rule{margin:.8rem 0}.offer-copy>p:not(.eyebrow,.qualifier){max-width:100%;font-size:.82rem;line-height:1.4;margin-bottom:.5rem}.qualifier{margin-top:.8rem!important;font-size:.77rem}.quiz-wrap{padding:12px 10px 20px}form,.unlocked{padding:23px 16px;border-radius:8px}.step h2,.unlocked h2{font-size:2.05rem}.choices span{min-height:52px}.compact{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.benefits{grid-template-columns:1fr;padding:10px 20px}.benefits div{border-right:0;border-bottom:1px solid var(--line);font-size:1.05rem}.benefits span{display:inline;margin-right:10px}.location{grid-template-columns:1fr;gap:.7rem;padding:38px 22px}.location>div{grid-column:auto}footer{align-items:flex-start;gap:15px;flex-direction:column;padding:22px}}
@media(max-width:540px){.offer-copy>p,.offer h1{width:calc(100vw - 48px);white-space:normal;overflow-wrap:break-word}.step h2{max-width:calc(100vw - 58px);white-space:normal;overflow-wrap:break-word}}
@media(max-width:340px){.utility{font-size:.62rem}.offer h1{font-size:2.45rem}.step h2,.unlocked h2{font-size:1.85rem}}
.calendar-picker{margin:1.2rem 0;padding:1rem;border:1px solid var(--line);background:#fff}.calendar-picker>label{display:block;margin-bottom:.4rem;font-weight:700}.calendar-picker input{width:100%;min-height:48px;padding:.65rem;border:1px solid #aaa49a}.calendar-picker #calendar-status{margin:.8rem 0;color:var(--muted);font-size:.85rem}.time-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.time-slot{min-height:44px;border:1px solid var(--gold-dark);border-radius:3px;color:var(--ink);background:#fff;cursor:pointer}.time-slot[aria-pressed="true"]{background:var(--gold);font-weight:700}.booking-confirmed{margin:1.2rem 0;padding:1.2rem;border-left:4px solid var(--gold);background:#fff8e6}.booking-confirmed h3{margin:0 0 .5rem;font:600 1.7rem var(--serif)}.legal{max-width:760px;margin:8vh auto;padding:30px;font-family:var(--sans)}.legal h1{font:500 3rem var(--serif)}
@media(max-width:420px){.time-slots{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
