body.sub{margin:0;background:var(--bg);color:var(--ink)}
.contact-main{margin-inline:0;padding-bottom:96px}.contact-hero.hero{min-height:0;padding:calc(var(--nav) + 36px) 24px 66px;}
.contact-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,640px);align-items:center;justify-content:space-between;gap:56px;width:min(100%,1200px);margin:auto}.contact-hero-copy{color:#fff}.contact-hero .eyebrow{margin:0;color:#d8efff}.contact-hero h1{margin:7px 0 12px;font-size:clamp(44px,3.6vw,52px);line-height:1;letter-spacing:-.055em}.contact-hero-lede{max-width:470px;margin:0;color:#fff;font-size:17px;line-height:1.55}.contact-reassurance{display:grid;gap:10px;margin:25px 0 0;padding:0;list-style:none;color:#eef7ff;font-size:14px;line-height:1.4}.contact-reassurance li{display:flex;align-items:flex-start;gap:9px}.contact-reassurance li::before{content:'✓';display:grid;width:17px;height:17px;place-items:center;flex:none;border:1px solid rgba(255,255,255,.6);border-radius:50%;font-size:11px;font-weight:700}.contact-reassurance button{padding:0;border:0;background:transparent;color:#fff;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.contact-wizard-wrap{position:relative;margin-bottom:-116px}.contact-wizard{padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--white);box-shadow:0 12px 32px -24px rgba(15,42,74,.35)}#contactWizard{overflow:visible}#contactWizard:empty{min-height:419px}@media(min-width:721px) and (max-width:1023px){#contactWizard:empty{min-height:424px}}@media(min-width:1024px){#contactWizard:empty{min-height:424px}}.wizard-progress{display:grid;gap:7px;margin-bottom:22px}.wizard-step-label{color:var(--quiet);font-size:12px;font-weight:700;letter-spacing:.02em}.wizard-progress-bar{height:3px;overflow:hidden;border-radius:999px;background:#dce9f5}.wizard-progress-bar span{display:block;height:100%;border-radius:inherit;background:var(--forest);transition:width 220ms ease}
.wizard-question{animation:wizard-in 210ms var(--ease) both}.wizard-question h2{margin:0 0 10px;font-size:24px;font-weight:600;line-height:1.2;letter-spacing:-.035em}.wizard-helper{margin:0 0 18px;color:var(--soft);font-size:14px;line-height:1.5}.wizard-choices{display:flex;flex-wrap:wrap;gap:9px}.wizard-goals{display:grid}.wizard-choice{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:600 14px/1.3 var(--sans);text-align:left;cursor:pointer;transition:border-color 180ms ease,background 180ms ease,color 180ms ease}.wizard-goals .wizard-choice{width:100%;min-height:48px;border-radius:12px}.wizard-choice b{display:none;font-size:12px}.wizard-choice:hover{border-color:var(--sky-1)}.wizard-choice[aria-checked="true"]{border-color:var(--forest);background:var(--forest);color:#fff}.wizard-choice[aria-checked="true"] b{display:block}.wizard-choice:focus-visible,.wizard-continue:focus-visible,.wizard-back:focus-visible,.wizard-booker:focus-visible,.contact-reassurance button:focus-visible{outline:3px solid var(--sky-1);outline-offset:3px}
.wizard-followup{display:grid;gap:9px;margin-top:16px}.wizard-followup label,.contact-details label{font-size:14px;font-weight:600}.wizard-followup small,.contact-details small{color:var(--soft);font-size:12px;font-weight:400}.wizard-followup input,.wizard-followup textarea,.contact-details input,.contact-details textarea{box-sizing:border-box;width:100%;min-height:44px;margin-top:6px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:16px/1.4 var(--sans)}.wizard-followup textarea{min-height:106px;resize:vertical}.wizard-actions{display:flex;align-items:center;gap:14px;margin-top:18px}.wizard-back{padding:4px 0;border:0;background:none;color:var(--soft);font:600 14px/1 var(--sans);cursor:pointer}
.wizard-summary-line .wizard-back{margin-left:auto;color:var(--sky-1);flex:none}.wizard-continue,.wizard-booker{min-height:42px;padding:0 18px;border:0;border-radius:999px;background:var(--forest);color:#fff;font:600 14px/1 var(--sans);cursor:pointer}.wizard-summary-line{display:flex;align-items:center;gap:12px;margin:-4px 0 16px;color:var(--soft);font-size:13px;line-height:1.4}.wizard-summary-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wizard-error{min-height:0;margin:0;color:#a22e2e;font-size:13px;line-height:1.4}.wizard-error:empty{display:none}.wizard-field-error{border-color:#a22e2e!important}.contact-details{display:grid;gap:12px}.contact-name-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-details .contact-submit{min-width:112px;margin-left:auto;background:var(--forest)}.contact-details .contact-submit[disabled]{opacity:.68;cursor:wait}.sms-consent{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;align-items:start;margin:3px 0;color:var(--soft);font-size:12px;font-weight:400;line-height:1.5;cursor:pointer}.sms-consent input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--forest);cursor:pointer}.sms-consent a{color:var(--forest);text-decoration:underline;text-underline-offset:2px}.website-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-status{min-height:0;margin:0;color:#a22e2e;font-size:14px;line-height:1.4}.contact-status:empty{display:none}.contact-status button{margin-left:6px;padding:0;border:0;background:none;color:var(--sky-1);font:600 14px/1 var(--sans);text-decoration:underline;cursor:pointer}.wizard-success{text-align:left}.wizard-success h2{margin:0;font-size:26px;line-height:1.22;letter-spacing:-.04em}.wizard-success p{margin:12px 0 21px;color:var(--soft);line-height:1.5}.wizard-booker{background:var(--forest)}
.contact-booker-wrap{width:min(calc(100% - 48px),1120px);margin:170px auto 0}.booker-direct{padding:0;border:0;background:none;color:var(--soft);font:14px/1.4 var(--sans);cursor:pointer}.booker-direct span{color:var(--forest);font-weight:600;text-decoration:underline;text-underline-offset:3px}.contact-booker{display:grid;grid-template-columns:260px minmax(0,1fr);margin-top:22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 20px 48px -34px rgba(15,42,74,.45);overflow:hidden}.booker-meta{padding:28px 24px;border-right:1px solid var(--line)}.booker-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover}.booker-owner{margin:17px 0 5px;color:var(--soft);font-size:13px}.booker-meta h2{margin:0;font-size:22px;letter-spacing:-.03em}.booker-description,.booker-meta ul{color:var(--soft);font-size:14px;line-height:1.5}.booker-meta ul{display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none}.booker-meta li{display:flex;align-items:center;gap:10px}.booker-icon{width:18px;height:18px;flex:none}.booker-main{display:grid;grid-template-columns:minmax(320px,1fr) 220px}.booker-calendar{padding:28px;border-right:1px solid var(--line)}.booker-month-head,.booker-slots-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.booker-month-head h3,.booker-slots h3{margin:0;font-size:16px}.booker-arrow{display:grid;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}.booker-week,.booker-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.booker-week{margin-top:25px;color:var(--quiet);font-size:10px;font-weight:700;text-align:center}.booker-days{margin-top:9px}.booker-blank{min-height:42px}.booker-day{position:relative;min-height:44px;border:0;border-radius:10px;background:transparent;font:600 14px/1 var(--sans);cursor:pointer}.booker-day[aria-disabled="true"]{color:#aeb8c5;cursor:not-allowed}.booker-day.is-selected{background:var(--forest);color:#fff}.booker-slots{padding:28px 18px}.booker-format{display:flex;padding:2px;border-radius:8px;background:#edf4fb}.booker-format button{min-height:28px;padding:0 7px;border:0;border-radius:6px;background:transparent;color:var(--soft);font:600 11px/1 var(--sans);cursor:pointer}.booker-format button[aria-pressed="true"]{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(15,42,74,.12)}.booker-note{min-height:20px;margin:12px 0 0;color:#a22e2e;font-size:13px;line-height:1.4}.booker-slot-list{display:grid;gap:9px;max-height:310px;overflow:auto}.booker-slot-list button{width:100%;min-height:44px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--forest);font:600 14px/1 var(--sans);cursor:pointer}.booker-slot-list p{margin:4px 0;color:var(--soft);font-size:14px}.booker-confirm{padding:32px;max-width:540px}.booker-back{padding:0;border:0;background:none;color:var(--forest);font:600 14px/1 var(--sans);cursor:pointer}.booker-confirm h2,.booker-error h2,.booker-done h2{margin:22px 0 7px;font-size:26px;letter-spacing:-.035em}.booker-when{margin:0 0 28px;color:var(--soft);line-height:1.5}.booker-confirm form{display:grid;gap:8px}.booker-confirm label{font-size:14px;font-weight:600}.booker-confirm input{width:100%;min-height:48px;margin-top:6px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font:16px/1.3 var(--sans)}.booker-field-error{min-height:17px;margin:0;color:#a22e2e;font-size:13px}.booker-confirm .btn,.booker-error .btn{margin-top:6px;background:var(--forest)}.booker-skeleton{display:grid;min-height:300px;place-items:center;color:var(--soft)}.booker-error>section,.booker-done{padding:46px}.booker-error p,.booker-done>section>p{color:var(--soft)}.booker-done>section{width:min(100%,620px);margin:auto}.booker-check{display:grid;width:52px;height:52px;place-items:center;border-radius:50%;background:#edf4fb;color:var(--forest)}.booker-done dl{display:grid;gap:12px;margin:28px 0}.booker-done dl div{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px}.booker-done dt{color:var(--soft)}.booker-done dd{margin:0;word-break:break-word}.booker-done dd a,.booker-calendar-links a{color:var(--forest);text-decoration:underline;text-underline-offset:3px}.booker-calendar-links{display:flex;flex-wrap:wrap;gap:14px;font-size:14px;font-weight:600}
@keyframes wizard-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:1023px){.contact-hero.hero{padding-bottom:48px}.contact-hero-grid{grid-template-columns:1fr;gap:28px}.contact-hero-copy{max-width:600px}.contact-wizard-wrap{width:min(100%,620px);margin:0 auto -104px}.contact-booker-wrap{margin-top:152px}.contact-booker{grid-template-columns:1fr}.booker-meta{display:flex;gap:15px;border-right:0;border-bottom:1px solid var(--line)}.booker-owner{margin:2px 0 4px}.booker-meta ul{display:flex;flex-wrap:wrap;gap:8px 16px;margin:11px 0 0}.booker-main{grid-template-columns:1fr}.booker-calendar{border-right:0;border-bottom:1px solid var(--line)}.booker-slots{padding:22px}.booker-slot-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}}
@media(max-width:600px){.contact-main{padding-bottom:70px}.contact-hero.hero{padding:calc(var(--nav) + 28px) 16px 36px}.contact-hero h1{font-size:42px}.contact-hero-lede{font-size:16px}.contact-reassurance{margin-top:20px}.contact-wizard-wrap{width:calc(100% - 32px);margin-bottom:-70px}.contact-wizard{padding:20px;border-radius:18px}.wizard-question h2{font-size:21px}.wizard-choice{min-height:42px;font-size:14px}.wizard-goals .wizard-choice{min-height:48px}.contact-name-fields{grid-template-columns:1fr}.contact-booker-wrap{width:calc(100% - 32px);margin-top:112px}.booker-meta{padding:18px}.booker-calendar{padding:20px 12px}.booker-slots{padding:20px 12px}.booker-confirm,.booker-error>section{padding:24px 20px}.booker-done{padding:32px 22px}}
@media(prefers-reduced-motion:reduce){#contactWizard,.wizard-progress-bar span,.wizard-choice{transition:none}.wizard-question{animation:none}}

/* Contact wizard v2: keep the card above the hero art and self-contained. */
.contact-hero.hero{padding-bottom:0;overflow:visible}.contact-hero::after{z-index:1}.contact-hero .clouds{z-index:0}.contact-hero-grid{position:relative;z-index:2;align-items:start}.contact-hero-grid>*{min-width:0}.contact-hero .contact-wizard-wrap{z-index:1;box-sizing:border-box;width:min(100%,640px);min-width:0;margin-bottom:0}.contact-wizard{box-sizing:border-box;overflow:visible;background:#fff;opacity:1}.contact-wizard,.contact-wizard *{color:var(--ink)}.contact-wizard,.contact-wizard .wizard-question h2,.contact-wizard .wizard-success h2{scroll-margin-top:calc(var(--nav,76px) + 24px)}.contact-wizard .wizard-question h2{color:var(--ink)}.contact-wizard .wizard-helper,.contact-wizard .wizard-step-label{color:var(--soft)!important}.contact-wizard .wizard-step-label{color:var(--quiet)!important}.wizard-group-label{margin:16px 0 9px;color:var(--ink)!important;font-size:14px;font-weight:600}.wizard-choice[aria-checked="true"],.wizard-choice[aria-checked="true"] *{color:#fff}.wizard-summary-line{min-width:0}.wizard-summary-line span{flex:1 1 auto;min-width:0}.contact-wizard .wizard-continue:not([disabled]),.contact-wizard .wizard-booker,.contact-wizard .contact-submit:not([disabled]){background:var(--forest);color:#fff}.contact-wizard .wizard-continue:not([disabled]):hover,.contact-wizard .wizard-booker:hover,.contact-wizard .contact-submit:not([disabled]):hover{background:#215da4;color:#fff}.wizard-continue[disabled]{background:var(--forest-wash);color:#324a65;cursor:not-allowed}.contact-wizard .sms-consent span{font-weight:400}.contact-wizard .sms-consent a{font-weight:600;text-decoration:underline}.contact-booker-wrap{margin-top:0}
.contact-wizard input:focus,.contact-wizard textarea:focus,.contact-booker input:focus,.contact-booker textarea:focus{border-color:var(--sky-1);box-shadow:0 0 0 3px rgba(28,88,168,.15);outline:none}.contact-booker button:focus-visible{outline:3px solid var(--sky-1);outline-offset:3px}.wizard-place-field{position:relative}.wizard-place-suggestions{position:absolute;z-index:3;top:calc(100% - 60px);right:0;left:0;display:grid;gap:2px;max-height:228px;margin:0;padding:5px;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 14px 28px -20px rgba(15,42,74,.45);list-style:none}.wizard-place-suggestions[hidden]{display:none}.wizard-place-suggestions [role="option"]{padding:10px 11px;border-radius:7px;color:var(--ink);font:500 14px/1.35 var(--sans);cursor:pointer}.wizard-place-suggestions [role="option"][aria-selected="true"],.wizard-place-suggestions [role="option"]:hover{background:#edf4fb;color:var(--forest)}
@media(max-width:1023px){.contact-wizard-wrap{width:min(100%,520px);margin:0 auto}.contact-booker-wrap{margin-top:0}}
@media(max-width:600px){.contact-main{padding-bottom:64px}.contact-hero.hero{padding:calc(var(--nav) + 28px) 20px 0}.contact-hero-grid{width:100%;margin:0}.contact-hero-copy,.contact-hero h1{text-align:left}.contact-wizard-wrap{width:100%;max-width:100%;margin:0}.contact-booker-wrap{width:calc(100% - 40px);margin-top:0}}
@media(min-width:601px){.contact-hero.hero{min-height:520px}}

/* Contact wizard v3: progressive details and the inline booking payoff. */
.contact-progressive{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows 220ms var(--ease),opacity 180ms ease,visibility 0s linear 220ms}.contact-progressive>div{min-height:0;overflow:hidden}.contact-progressive.is-visible{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows 220ms var(--ease),opacity 180ms ease}.contact-progressive.is-visible>div{overflow:visible}.contact-progressive label{display:grid;gap:0;font-size:14px;font-weight:600}.contact-progressive input,.contact-progressive textarea{box-sizing:border-box;width:100%;min-height:44px;margin-top:6px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:16px/1.4 var(--sans)}.contact-progressive textarea{min-height:82px;resize:vertical}.contact-finish{display:grid;gap:12px;padding-top:12px}.contact-consent{margin:0;color:var(--soft);font-size:12px;font-weight:400;line-height:1.45}.contact-consent a{color:var(--forest);font-weight:600;text-decoration:underline;text-underline-offset:2px}.contact-finish .wizard-actions{margin-top:0}.contact-finish .contact-submit{margin-left:auto}.contact-wizard .btn{color:#fff}.contact-wizard #booker{min-width:0}.contact-wizard #booker .contact-booker{display:grid;grid-template-columns:1fr;margin:0;border:0;border-radius:0;box-shadow:none}.contact-wizard #booker .booker-meta{display:flex;gap:15px;padding:0 0 18px;border-right:0;border-bottom:1px solid var(--line)}.contact-wizard #booker .booker-owner{margin:2px 0 4px}.contact-wizard #booker .booker-meta ul{display:flex;flex-wrap:wrap;gap:8px 16px;margin:11px 0 0}.contact-wizard #booker .booker-main{grid-template-columns:1fr}.contact-wizard #booker .booker-calendar{padding:22px 0;border-right:0;border-bottom:1px solid var(--line)}.contact-wizard #booker .booker-slots{padding:20px 0}.contact-wizard #booker .booker-slot-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.booker-progress{margin-bottom:8px;color:var(--quiet);font-size:12px;font-weight:700;letter-spacing:.02em}.booker-return{justify-self:start;margin:0 0 18px;padding:0;border:0;background:none;color:var(--forest);font:600 14px/1 var(--sans);cursor:pointer}.booker-return:focus-visible{outline:3px solid var(--sky-1);outline-offset:3px}.contact-wizard #booker .booker-confirm,.contact-wizard #booker .booker-done{padding:4px 0}.contact-wizard #booker .booker-error>section,.contact-wizard #booker .booker-empty>section{padding:20px 0}.contact-wizard #booker .booker-empty,.contact-wizard #booker .booker-error{border:0;box-shadow:none}
@media(prefers-reduced-motion:reduce){.contact-progressive{transition:none}}
.contact-wizard #booker .contact-booker{overflow:visible}.contact-wizard input:focus,.contact-wizard textarea:focus{outline-offset:0}

/* Contact wizard v4: multi-price market reveal and native solo-volume control. */
.wizard-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.wizard-price-grid .wizard-choice{width:100%}.wizard-choice[aria-pressed="true"],.wizard-choice[aria-pressed="true"] *{border-color:var(--forest);background:var(--forest);color:#fff}.wizard-choice[aria-pressed="true"] b{display:block}.wizard-market-reveal{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows 220ms var(--ease),opacity 220ms ease,visibility 0s linear 220ms}.wizard-market-reveal[hidden]{display:none}.wizard-market-reveal.is-visible{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows 220ms var(--ease),opacity 220ms ease}.wizard-market-reveal-content{min-height:0;overflow:hidden}.wizard-market-reveal.is-visible .wizard-market-reveal-content{overflow:visible}.wizard-slider{display:grid;justify-items:center;padding:8px 0 0}.wizard-slider output{color:var(--ink);font:700 40px/1 var(--sans);letter-spacing:-.05em}.wizard-slider-label{margin-top:3px;color:var(--soft);font-size:14px;font-weight:600}.wizard-slider input[type="range"]{width:100%;height:28px;margin:22px 0 0;border:0;appearance:none;background:transparent;box-shadow:none;outline:none;cursor:pointer}.wizard-slider input[type="range"]::-webkit-slider-runnable-track{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--sky-1) 0 var(--range-fill),#dce9f5 var(--range-fill) 100%)}.wizard-slider input[type="range"]::-webkit-slider-thumb{width:24px;height:24px;margin-top:-8px;border:3px solid #fff;border-radius:50%;appearance:none;background:var(--forest);box-shadow:0 1px 4px rgba(15,42,74,.25)}.wizard-slider input[type="range"]::-moz-range-track{height:8px;border-radius:999px;background:#dce9f5}.wizard-slider input[type="range"]::-moz-range-progress{height:8px;border-radius:999px;background:var(--sky-1)}.wizard-slider input[type="range"]::-moz-range-thumb{width:24px;height:24px;border:3px solid #fff;border-radius:50%;background:var(--forest);box-shadow:0 1px 4px rgba(15,42,74,.25)}.wizard-slider .wizard-helper{justify-self:start;width:100%;margin:8px 0 0}.wizard-slider .wizard-actions{justify-self:stretch;width:100%}
@media(min-width:721px){.wizard-price-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.wizard-market-reveal{transition:none}}

/* Contact wizard v4-B: quiet detail column and one stable animated surface. */
.contact-cover{max-width:490px;margin-top:28px}.contact-cover h2{margin:0 0 11px;color:#fff;font-size:15px;font-weight:600;letter-spacing:-.01em}.contact-cover ul{display:grid;gap:10px;margin:0;padding:0;list-style:none;color:#eef7ff;font-size:14px;line-height:1.4}.contact-cover li{display:flex;align-items:flex-start;gap:9px}.contact-cover li::before{content:'✓';display:grid;width:17px;height:17px;place-items:center;flex:none;border:1px solid rgba(216,239,255,.85);border-radius:50%;color:#d8efff;font-size:11px;font-weight:700}.contact-founder{display:flex;align-items:center;gap:11px;margin-top:23px}.contact-founder img{width:42px;height:42px;flex:none;border:1px solid rgba(255,255,255,.55);border-radius:50%;object-fit:cover}.contact-founder p{display:grid;gap:2px;margin:0;color:#fff;font-size:14px;line-height:1.25}.contact-founder strong{font-weight:600}.contact-founder span,.contact-reassurance{color:#d8efff;font-size:13px}.contact-reassurance{display:block;margin:17px 0 0;padding:0;list-style:none;line-height:1.4}.wizard-question-region,#booker{position:relative;transition:height 220ms ease-out}.is-settling{opacity:.35;transform:translateY(8px)}.is-settling.wizard-question{animation:none}.is-settling.is-settling-active{opacity:1;transform:translateY(0);transition:opacity 220ms ease-out,transform 220ms ease-out}.contact-wizard{position:relative;transition:height 220ms ease-out}.booker-review{display:flex;align-items:flex-start;gap:13px;margin:20px 0 24px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.booker-review-avatar{width:42px;height:42px;flex:none;border-radius:50%;object-fit:cover}.booker-review dl{display:grid;gap:8px;margin:0}.booker-review dl div{display:grid;grid-template-columns:58px minmax(0,1fr);gap:8px;font-size:14px;line-height:1.35}.booker-review dt{color:var(--soft)}.booker-review dd{margin:0;color:var(--ink);font-weight:600}.wizard-reveal{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows 200ms var(--ease),opacity 200ms ease,visibility 0s linear 200ms}.wizard-reveal>div{min-height:0;overflow:hidden}.wizard-reveal.is-visible{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows 200ms var(--ease),opacity 200ms ease}.wizard-reveal.is-visible>div{overflow:visible}
@media(max-width:720px){.contact-hero-copy{display:contents}.contact-hero-grid{gap:0}.contact-hero-copy>.eyebrow{order:1}.contact-hero-copy>h1{order:2}.contact-hero-copy>.contact-hero-lede{order:3}.contact-wizard-wrap{order:4;margin-top:24px}.contact-hero-copy>.contact-cover{order:5;margin-top:22px}.contact-hero-copy>.contact-founder{order:6;margin-top:18px}.contact-hero-copy>.contact-reassurance{order:7;margin-top:13px}.contact-cover ul{gap:7px;font-size:13px}.wizard-price-grid .wizard-choice{padding:9px 10px;font-size:13px}.wizard-price-grid .wizard-choice span{white-space:nowrap}.contact-wizard{margin-top:0}.contact-wizard #booker .booker-confirm{min-height:0}.booker-review{margin:17px 0 21px;padding:13px 0}.booker-review dl{gap:6px}}
@media(prefers-reduced-motion:reduce){.wizard-question-region,#booker,.contact-wizard,.contact-progressive,.wizard-reveal,.is-settling,.is-settling.is-settling-active{transition:none}.is-settling,.is-settling.is-settling-active{opacity:1;transform:none}}

/* Contact wizard v4-D: stable booking transitions and compact confirmation. */
@media(min-width:1024px){.contact-hero.hero{min-height:680px}}
.contact-founder span,.contact-reassurance{color:#eef7ff}.wizard-slider input[type="range"]:focus-visible{outline:none}.wizard-slider input[type="range"]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--sky-1),0 1px 4px rgba(15,42,74,.25)}.wizard-slider input[type="range"]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px var(--sky-1),0 1px 4px rgba(15,42,74,.25)}.contact-wizard #booker .booker-confirm{max-width:none}.contact-wizard #booker .booker-review{margin:20px 0 0}.contact-wizard #booker .booker-confirm .booker-note:empty{display:none}.contact-wizard #booker #bookerConfirm{min-height:42px;margin-top:24px;padding:0 18px;border:0;border-radius:999px;background:var(--forest);box-shadow:none;color:#fff;font:600 14px/1 var(--sans)}
@media(min-width:721px){.contact-hero.hero{padding-bottom:112px}}
@media(max-width:720px){.contact-hero.hero{padding-bottom:112px}}

/* Contact wizard v4-F: one settle transition, with no entry-animation restart. */
.wizard-question{animation:none;opacity:1}.contact-wizard,#booker,.contact-wizard .wizard-question h2,.contact-wizard .wizard-success h2{scroll-margin-top:calc(var(--nav,76px) + 16px)}#booker{transition:height 220ms ease-out,min-height 220ms ease-out}

/* Contact wizard v4-J: compact cal.com-style inline booker (visual refinement only). */
.contact-wizard #booker .contact-booker{grid-template-columns:1fr auto;align-items:center;column-gap:12px}
.contact-wizard #booker .booker-progress{grid-column:1;grid-row:1;margin:0;font-size:12px;line-height:1.3}
.contact-wizard #booker .booker-return{grid-column:2;grid-row:1;justify-self:end;margin:0;font-size:13px;line-height:1.3}
.contact-wizard #booker .booker-meta{grid-column:1/-1;grid-row:2;align-items:center;gap:12px;margin-top:12px;padding:0 0 14px}
.contact-wizard #booker .booker-avatar{width:40px;height:40px;flex:none}
.contact-wizard #booker .booker-meta-copy{min-width:0}
.contact-wizard #booker .booker-owner{margin:0 0 1px;font-size:12px;line-height:1.3}
.contact-wizard #booker .booker-meta h2{margin:0;font-size:20px;font-weight:600;line-height:1.2;letter-spacing:-.025em}
.contact-wizard #booker .booker-description{margin:2px 0 0;font-size:14px;line-height:1.4}
.contact-wizard #booker .booker-meta ul{gap:4px 14px;margin:8px 0 0;font-size:13px;line-height:1.3}
.contact-wizard #booker .booker-meta li{gap:6px}
.contact-wizard #booker .booker-icon{width:15px;height:15px}
.contact-wizard #booker .booker-main{grid-column:1/-1;grid-row:3;grid-template-columns:minmax(0,1fr) 188px;align-items:start}
.contact-wizard #booker .booker-calendar{padding:16px 18px 16px 0;border-bottom:0;border-right:1px solid var(--line)}
.contact-wizard #booker .booker-month-head h3,.contact-wizard #booker .booker-slots h3{font-size:15px;font-weight:600}
.contact-wizard #booker .booker-arrow{width:32px;height:32px;border-radius:8px}
.contact-wizard #booker .booker-arrow svg{width:16px;height:16px}
.contact-wizard #booker .booker-week{margin-top:12px;font-size:11px;letter-spacing:.02em}
.contact-wizard #booker .booker-days{margin-top:4px;gap:4px}
.contact-wizard #booker .booker-blank{min-height:38px}
.contact-wizard #booker .booker-day{width:38px;height:38px;min-height:38px;justify-self:center;border-radius:50%;font-size:14px}
.contact-wizard #booker .booker-day:not([aria-disabled="true"]):not(.is-selected){background:#edf4fb;color:var(--forest)}
.contact-wizard #booker .booker-day:not([aria-disabled="true"]):not(.is-selected):hover{background:#dcebf9}
.contact-wizard #booker .booker-slots{padding:16px 0 0 16px}
.contact-wizard #booker .booker-note{min-height:0;margin:6px 0 0;font-size:12px}
.contact-wizard #booker .booker-note:empty{display:none}
.contact-wizard #booker .booker-format button{min-height:24px}
.contact-wizard #booker .booker-slot-list{grid-template-columns:1fr;gap:6px;max-height:280px;margin-top:10px;padding-right:2px}
.contact-wizard #booker .booker-slot-list button{min-height:38px;border-radius:8px;font-size:14px}
.contact-wizard #booker .booker-slot-list button:hover,.contact-wizard #booker .booker-slot-list button[aria-checked="true"]{border-color:var(--forest)}
.contact-wizard #booker .booker-slot-list p{margin:2px 0;font-size:13px;line-height:1.4}
@media(max-width:600px){
.contact-wizard #booker .booker-main{grid-template-columns:1fr}
.contact-wizard #booker .booker-calendar{padding:12px 0;border-right:0;border-bottom:1px solid var(--line)}
.contact-wizard #booker .booker-day{width:100%;max-width:44px;height:40px;min-height:40px}
.contact-wizard #booker .booker-blank{min-height:40px}
.contact-wizard #booker .booker-slots{padding:14px 0 0}
.contact-wizard #booker .booker-slot-list{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none}
}

/* Contact booker v4-K: select a time, review it in the same view, then confirm; time zone chip. */
.contact-wizard #booker .booker-slot-list button[aria-checked="true"]{border-color:var(--forest);background:var(--forest);color:#fff}
.contact-wizard #booker .booker-review-bar{grid-column:1/-1;grid-row:4;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:10px 0 0;border-top:1px solid var(--line)}
.contact-wizard #booker .booker-review-line{min-width:0;margin:0;color:var(--soft);font-size:13px;line-height:1.35}
.contact-wizard #booker .booker-review-bar.has-slot .booker-review-line{color:var(--ink);font-weight:600}
.contact-wizard #booker .booker-review-bar #bookerConfirm{flex:none;margin:0;white-space:nowrap}
.contact-wizard #booker .booker-review-bar #bookerConfirm:disabled{opacity:.45;cursor:not-allowed}
.contact-wizard #booker .booker-meta li.booker-tz{gap:4px}
.contact-wizard #booker .booker-tz-select{max-width:190px;min-height:0;margin:0;padding:2px 4px;border:1px solid transparent;border-radius:6px;background:transparent;color:inherit;font:inherit;font-size:13px;line-height:1.3;cursor:pointer}
.contact-wizard #booker .booker-tz-select:hover{border-color:var(--line);background:#edf4fb}
.contact-wizard #booker .booker-tz-select:focus-visible{outline:3px solid var(--sky-1);outline-offset:1px}
@media(prefers-reduced-motion:no-preference){.contact-wizard #booker .booker-slot-list button,.contact-wizard #booker .booker-review-bar #bookerConfirm,.contact-wizard #booker .booker-review-line{transition:background-color 140ms ease,color 140ms ease,border-color 140ms ease,opacity 140ms ease}}
@media(max-width:600px){.contact-wizard #booker .booker-review-bar{flex-direction:column;align-items:stretch;gap:8px}.contact-wizard #booker .booker-review-bar #bookerConfirm{width:100%}.contact-wizard #booker .booker-tz-select{max-width:min(200px,60vw)}}
.contact-wizard #booker .booker-review-bar{min-height:0;padding-top:8px}
.contact-wizard #booker .booker-review-bar #bookerConfirm{min-height:38px}
.contact-wizard #booker .booker-meta{padding-bottom:10px}
.contact-wizard #booker .booker-calendar{padding-top:12px;padding-bottom:12px}
.contact-wizard #booker .booker-slots{padding-top:12px}
.contact-wizard #booker .booker-tz-select{max-width:170px}
@media(max-width:600px){.contact-wizard #booker .booker-calendar{padding:12px 0}.contact-wizard #booker .booker-slots{padding:14px 0 0}.contact-wizard #booker .booker-review-bar{padding-top:10px}}

/* Other ways to reach us: quiet row under the wizard card */
.contact-ways{margin-top:14px}.contact-ways-heading{margin:0 0 7px;color:rgba(255,255,255,.8);font-size:12.5px;font-weight:600;letter-spacing:.02em}

/* Booked screen */
.contact-wizard #booker .booker-done{padding:6px 0 2px;text-align:center}.contact-wizard #booker .booker-done>section{width:100%}
.contact-wizard #booker .booker-check{width:48px;height:48px;margin:0 auto;background:var(--forest);color:#fff}.contact-wizard #booker .booker-check .booker-icon{width:24px;height:24px;stroke-width:2}
.contact-wizard #booker .booker-done h2{margin:14px 0 4px;font-size:24px;line-height:1.2}
.contact-wizard #booker .booker-done-sub{margin:0 0 18px;color:var(--soft);font-size:14px;overflow-wrap:anywhere}
.booker-done-card{display:grid;gap:10px;margin:0 0 16px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;list-style:none;text-align:left;font-size:14px;color:var(--ink)}
.booker-done-card li{display:flex;align-items:center;gap:12px;min-width:0}.booker-done-card .booker-icon{width:18px;height:18px;flex:none;color:var(--soft)}.booker-done-avatar{width:18px;height:18px;flex:none;border-radius:50%;object-fit:cover}.booker-done-card span{min-width:0;overflow-wrap:anywhere}
.booker-join{margin-left:6px;padding:1px 10px;border:1px solid var(--line);border-radius:999px;color:var(--forest);font-size:13px;font-weight:600;text-decoration:none}.booker-join:hover{background:var(--forest-wash)}
.contact-wizard #booker .booker-calendar-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}
.booker-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:10px;font-size:14px;font-weight:600;text-decoration:none!important;transition:background 160ms ease,border-color 160ms ease}
.booker-btn-primary{background:var(--forest);color:#fff!important}.booker-btn-primary:hover{background:var(--forest-hover)}
.booker-btn-secondary{border:1px solid var(--line);background:#fff;color:var(--forest)!important}.booker-btn-secondary:hover{background:var(--forest-wash)}
.booker-btn-text{padding:8px 6px;color:var(--soft)!important;font-size:13px;font-weight:600;text-decoration:none!important}.booker-btn-text:hover{color:var(--forest)!important}
.contact-wizard #booker .booker-done a:focus-visible{outline:2px solid var(--forest);outline-offset:2px;border-radius:8px}
.booker-done-foot{margin:14px 0 0;color:var(--soft);font-size:13px}.booker-done-foot a{color:var(--forest);font-weight:600}
@media(prefers-reduced-motion:no-preference){.contact-wizard #booker .booker-check{animation:bookerPop 360ms cubic-bezier(.2,.9,.3,1.3) both}@keyframes bookerPop{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}}
@media(max-width:600px){.contact-wizard #booker .booker-calendar-links{flex-direction:column;align-items:stretch}.booker-btn{width:100%}.booker-btn-text{text-align:center}}
.contact-wizard #booker .booker-check .booker-icon{stroke:#fff;color:#fff}
/* Contact hero sky (v4 clouds): one gradient that lands exactly on --bg, plus layered clouds along the bottom ~220px, same system as the site .clouds. */
.contact-hero.hero{background:linear-gradient(180deg,#174c8e 0,#2769b5 180px,#2f74c2 calc(100% - 250px),#6aa3da calc(100% - 140px),#aecdee calc(100% - 60px),var(--bg) 100%)}
.contact-hero::after{z-index:1;height:56px;background:linear-gradient(180deg,rgba(246,248,251,0),var(--bg))}
.contact-hero .clouds{z-index:0;top:auto;height:300px;bottom:0;background:radial-gradient(ellipse 150px 46px at 8% 78%,rgba(255,255,255,.9),transparent 70%),radial-gradient(ellipse 210px 54px at 27% 90%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 170px 44px at 49% 72%,rgba(236,246,255,.85),transparent 70%),radial-gradient(ellipse 230px 56px at 71% 88%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 160px 44px at 92% 70%,rgba(236,246,255,.85),transparent 70%);filter:blur(4px)}
.contact-hero .clouds::before,.contact-hero .clouds::after{top:auto;left:-10%;width:120%;height:200px;filter:blur(11px);transform:none}
.contact-hero .clouds::before{bottom:40px;opacity:.8}
.contact-hero .clouds::after{bottom:-60px;opacity:.9;animation-duration:26s}
@media(max-width:720px){.contact-hero.hero{padding-bottom:312px}.contact-hero .clouds{height:280px;background:radial-gradient(ellipse 120px 38px at 6% 40%,rgba(236,246,255,.88),transparent 70%),radial-gradient(ellipse 150px 44px at 38% 30%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 130px 40px at 72% 38%,rgba(236,246,255,.88),transparent 70%),radial-gradient(ellipse 110px 34px at 96% 28%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 160px 48px at 18% 62%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 140px 44px at 55% 58%,rgba(236,246,255,.88),transparent 70%),radial-gradient(ellipse 170px 50px at 88% 64%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 180px 54px at 4% 86%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 200px 58px at 40% 92%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 170px 52px at 76% 86%,rgba(255,255,255,.95),transparent 70%),radial-gradient(ellipse 150px 46px at 100% 94%,rgba(236,246,255,.88),transparent 70%);filter:blur(3px)}.contact-hero .clouds::before,.contact-hero .clouds::after{height:190px;left:-30%;width:160%}.contact-hero .clouds::before{bottom:70px;opacity:.95}.contact-hero::after{height:70px}}
@media(prefers-reduced-motion:reduce){.contact-hero .clouds::before,.contact-hero .clouds::after{animation:none}}
.contact-main{background:var(--bg)}

/* === Contact support form (site/support-form): "Send a message" switch + plain support form. Self-contained block, safe to append-merge. === */
.support-panel.is-switching,.contact-wizard #contactWizard.is-switching,.contact-wizard #booker.is-switching{animation:support-in 220ms var(--ease,ease-out) both}
@keyframes support-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.support-title{margin:0 0 8px;font-size:24px;font-weight:600;line-height:1.2;letter-spacing:-.035em}
.support-panel[hidden],.support-panel [hidden]{display:none}
.support-details{gap:10px}
.support-details label{display:block}
.support-details select{box-sizing:border-box;width:100%;min-height:44px;margin-top:6px;padding:10px 38px 10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230f2a4a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;color:var(--ink);font:16px/1.4 var(--sans);-webkit-appearance:none;appearance:none;cursor:pointer}
.support-details select:focus{border-color:var(--sky-1);box-shadow:0 0 0 3px rgba(28,88,168,.15);outline:none}
.support-details textarea{min-height:120px;resize:vertical}
.support-details [aria-invalid="true"]{border-color:#a22e2e}
.support-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.support-label-row small{font-variant-numeric:tabular-nums}
.support-label-row small.is-near{color:#a22e2e}
.support-actions{margin-top:6px}
.contact-details .support-submit{min-width:140px}
.support-status{padding:0}
.support-status:not(:empty){padding:10px 12px;border:1px solid #e8c4c4;border-radius:10px;background:#fdf4f4}
.support-status a{color:var(--forest);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.support-status a:focus-visible,.support-again:focus-visible{outline:3px solid var(--sky-1);outline-offset:2px;border-radius:4px}
.support-done{padding:14px 0 8px;text-align:center;outline:none}
.support-check{display:grid;place-items:center;width:52px;height:52px;margin:0 auto;border-radius:50%;background:var(--forest);color:#fff}
.support-done h2{margin:16px 0 6px;font-size:26px;line-height:1.2;letter-spacing:-.04em}
.support-check svg{stroke:#fff;color:#fff}.support-done p{margin:0 auto 20px;max-width:40ch;text-wrap:balance;color:var(--soft);font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.support-done p strong{color:var(--ink);font-weight:600}
.support-again{padding:8px 6px;border:0;background:none;color:var(--forest);font:600 14px/1.3 var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media(prefers-reduced-motion:no-preference){.support-check{animation:bookerPop 360ms cubic-bezier(.2,.9,.3,1.3) both}}
@media(prefers-reduced-motion:reduce){.support-panel.is-switching,.contact-wizard #contactWizard.is-switching,.contact-wizard #booker.is-switching{animation:none}}
@media(max-width:600px){.support-title{font-size:21px}.contact-details .support-submit{width:100%}.support-actions{justify-content:stretch}}
/* support tile + back link */

.support-back{display:inline-block;margin:0 0 12px;padding:2px 0;border:0;background:none;color:var(--soft);font:600 13px/1.3 var(--sans);cursor:pointer}
.support-back:hover{color:var(--forest)}.support-back:focus-visible{outline:3px solid var(--sky-1);outline-offset:2px;border-radius:4px}
.support-title:focus{outline:none}

/* contact cards + next steps: white surface family, same tokens as the wizard card */
.contact-ways{margin-top:18px}
.contact-ways-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.contact-way{display:flex;align-items:center;gap:12px;box-sizing:border-box;min-width:0;min-height:88px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 32px -24px rgba(15,42,74,.35);color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer;transition:transform 180ms var(--ease,ease-out),box-shadow 180ms ease,border-color 180ms ease}
.contact-way-icon{display:grid;flex:none;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--forest-wash);color:var(--sky-1)}
.contact-way-text{display:grid;min-width:0;gap:2px}
.contact-way-text small{color:var(--quiet);font-size:12px;font-weight:600;letter-spacing:.02em;line-height:1.3}
.contact-way-text strong{color:var(--forest);font-size:16px;font-weight:600;line-height:1.3;letter-spacing:-.01em;overflow-wrap:anywhere}
.contact-way:hover:not(:disabled){transform:translateY(-2px);border-color:var(--sky-3);box-shadow:0 18px 36px -22px rgba(15,42,74,.45)}
.contact-way:focus-visible{outline:3px solid var(--sky-1);outline-offset:2px}
.contact-way:disabled{cursor:default;opacity:1;background:var(--forest-wash)}
@media(max-width:720px){.contact-ways-row{grid-template-columns:1fr;gap:10px}.contact-way{min-height:72px;padding:14px}}
@media(prefers-reduced-motion:reduce){.contact-way{transition:none}.contact-way:hover:not(:disabled){transform:none}}
@media(min-width:721px){.contact-hero.hero{padding-bottom:214px}.contact-way{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:10px;row-gap:4px;min-height:0;padding:14px}.contact-way-text{display:contents}.contact-way-icon{grid-row:1}.contact-way-text small{grid-column:2;grid-row:1}.contact-way-text strong{grid-column:1/-1;grid-row:2;white-space:nowrap}}
/* left column: one white panel in the same family as the right column cards */
.contact-panel{box-sizing:border-box;max-width:490px;margin-top:32px;padding:20px 22px 18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 32px -24px rgba(15,42,74,.35);color:var(--ink)}
.contact-panel .contact-cover{max-width:none;margin:0}
.contact-panel .contact-cover h2{margin:0 0 12px;color:var(--quiet);font-size:12px;font-weight:600;letter-spacing:.02em}
.contact-panel .contact-cover ul{gap:12px;color:var(--ink-2);font-size:14px}
.contact-panel .contact-cover li::before{border-color:var(--sky-3);background:var(--forest-wash);color:var(--sky-1)}
.contact-panel .contact-founder{margin:16px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.contact-panel .contact-founder img{width:44px;height:44px;border-color:var(--line)}
.contact-panel .contact-founder p{color:var(--forest)}
.contact-panel .contact-founder span{color:var(--soft)}
.contact-panel .contact-reassurance{margin:12px 0 0;padding-left:55px;color:var(--soft);font-size:13px}
@media(max-width:720px){.contact-hero-copy>.contact-panel{order:5;max-width:none;margin-top:18px;padding:16px}}
.contact-founder picture{display:flex;flex:none}
/* learn-about-Recasi callout in the support form */
.support-learn{display:grid;justify-items:start;gap:10px;margin-top:2px;padding:14px;border:1px solid var(--sky-3);border-radius:12px;background:var(--forest-wash)}
.support-learn p{margin:0;color:var(--ink-2);font-size:14px;line-height:1.5}
.contact-details .support-learn-go{min-width:0;margin:0;padding:0 18px;min-height:42px}
.support-learn-or{color:var(--soft);font-size:13px}
@media(max-width:600px){.contact-details .support-learn-go{width:100%}.support-learn-or{justify-self:center}}
/* programmatic focus on headings should not draw a box; real controls keep their rings */
[tabindex="-1"]:focus{outline:none}
/* the root carries the hero sky so any overscroll or gutter area matches the hero instead of near-white */
html:has(.contact-hero){background:linear-gradient(180deg,#174c8e 0,#2769b5 180px,#2f74c2 560px,#7fb0e0 780px,#f6f8fb 900px);scrollbar-gutter:auto}
/* full-bleed without 100vw: vw ignores scrollbar gutters and left a white strip beside the hero */
body.sub .wrap:has(>.contact-main){display:block!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
/* phone verification step (built by contact-support.js) */
.support-verify{outline:none}.support-verify[hidden]{display:none}
.support-verify .support-title{font-size:22px}
.support-code-label{display:block;margin-top:14px}
.support-verify #s-code{box-sizing:border-box;width:100%;min-height:56px;margin-top:6px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:600 28px/1.2 var(--sans);letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums}
.support-verify #s-code::placeholder{color:#c3ccd8;letter-spacing:.35em}
.support-verify #s-code:focus{border-color:var(--sky-1);box-shadow:0 0 0 3px rgba(28,88,168,.15);outline:none}
.support-verify #s-code[aria-invalid="true"]{border-color:#a22e2e}
.support-verify .support-status:not(:empty){margin-top:10px}
.support-verify-links{display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:flex-start;margin-top:8px}
.support-again:disabled{color:var(--soft);text-decoration:none;cursor:default}
@media(max-width:600px){.support-verify .support-title{font-size:19px}.support-verify #s-code{font-size:24px}}
/* === end contact support form === */

/* Role step on phone: even 2x2 grid so no single chip wraps alone onto its own line. */

/* left panel polish: checklist fills the panel evenly (no dead gap above the founder row); reassurance reads as part of the founder block. */
.contact-panel .contact-reassurance{margin-top:4px}
/* left panel no longer stretches with the right column (Oliver: weird when the wizard/booker grows). Fixed height matching the default first screen; items keep fixed spacing. */

/* Role step: Apple-style 2x2 tile picker that fills the right column. */
.wizard-question.is-role h2{margin:2px 0 8px;font-size:32px;line-height:1.1;letter-spacing:-.045em}
.wizard-role-sub{margin:0 0 26px;font-size:16px;line-height:1.45}
.contact-wizard .wizard-role-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.contact-wizard .wizard-role-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:18px;box-sizing:border-box;width:100%;min-height:132px;margin:0;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:#fff;text-align:left;box-shadow:0 12px 32px -26px rgba(15,42,74,.35);transition:transform 180ms var(--ease),border-color 180ms ease,box-shadow 180ms ease}
.role-tile-icon{display:grid;flex:none;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--forest-wash);color:var(--sky-1)}
.role-tile-text{display:grid;gap:4px;min-width:0}
.contact-wizard .role-tile-text strong{color:var(--forest);font-size:19px;font-weight:600;line-height:1.2;letter-spacing:-.025em}
.contact-wizard .role-tile-text small{color:var(--soft);font-size:14px;font-weight:400;line-height:1.4}
.contact-wizard .role-tile-check{position:absolute;top:16px;right:16px;display:none;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--forest);color:#fff;font-size:0}
.contact-wizard .role-tile-check svg{stroke:#fff}
.contact-wizard .wizard-role-tile:hover{transform:translateY(-2px);border-color:var(--sky-3);box-shadow:0 18px 36px -22px rgba(15,42,74,.45)}
.contact-wizard .wizard-role-tile:focus-visible{outline:3px solid var(--sky-1);outline-offset:2px}
.contact-wizard .wizard-role-tile[aria-checked="true"]{border-color:var(--forest);background:#fff;box-shadow:0 0 0 2px var(--forest),0 18px 36px -22px rgba(15,42,74,.45)}
.contact-wizard .wizard-role-tile[aria-checked="true"] .role-tile-icon{background:var(--forest);color:#fff}
.contact-wizard .wizard-role-tile[aria-checked="true"] .role-tile-icon svg{stroke:#fff}
.contact-wizard .wizard-role-tile[aria-checked="true"] .role-tile-text strong{color:var(--forest)}
.contact-wizard .wizard-role-tile[aria-checked="true"] .role-tile-text small{color:var(--soft)}
.contact-wizard .wizard-role-tile[aria-checked="true"] .role-tile-check{display:grid}
@media(min-width:901px){#contactWizard:has(.wizard-question){min-height:350px}}
@media(max-width:600px){.wizard-question.is-role h2{font-size:26px}.wizard-role-sub{margin-bottom:18px;font-size:15px}.contact-wizard .wizard-role-tiles{gap:10px}.contact-wizard .wizard-role-tile{min-height:132px;padding:14px;gap:12px}.role-tile-icon{width:38px;height:38px}.contact-wizard .role-tile-text strong{font-size:16px}.contact-wizard .role-tile-text small{font-size:13px}.contact-wizard .role-tile-check{top:10px;right:10px}}
@media(prefers-reduced-motion:reduce){.contact-wizard .wizard-role-tile{transition:none}.contact-wizard .wizard-role-tile:hover{transform:none}}
/* /contact#message marker: the browser scrolls here on arrival; keep the panel heading clear of the sticky header. */
#message{display:block;height:0;scroll-margin-top:calc(var(--nav,76px) + 20px)}
