@font-face{font-family:Libre Baskerville;src:url('/assets/fonts/LibreBaskerville-Regular.woff2') format('woff2');font-display:swap}
@font-face{font-family:Libre Baskerville;src:url('/assets/fonts/LibreBaskerville-Italic.woff2') format('woff2');font-display:swap;font-style:italic}
@font-face{font-family:Raleway;src:url('/assets/fonts/Raleway-Regular.woff2') format('woff2');font-display:swap}
@font-face{font-family:Raleway;src:url('/assets/fonts/Raleway-SemiBold.woff2') format('woff2');font-display:swap;font-weight:600}
:root{--paper:#FCFCFC;--ink:#252729;--line:#D0D3D9;font-family:Raleway,Arial,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.app-shell{min-height:100svh;display:grid;grid-template-rows:auto 1fr auto}.site-header{height:76px;border-bottom:1px solid var(--line);padding:0 clamp(20px,5vw,70px);display:flex;align-items:center;justify-content:space-between;gap:16px}.site-header img{width:160px;max-height:45px}.site-header>span,.eyebrow,.step-index,.site-footer,.option small{font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.site-header>span{color:var(--ink)}.main{display:grid;place-items:center;padding:24px 20px;min-height:0}.content{width:min(100%,680px);margin:auto}.eyebrow{margin:0 0 18px;color:var(--ink)}h1{font:400 clamp(2rem,8vw,4rem)/1.12 'Libre Baskerville',Georgia,serif;letter-spacing:-.045em;margin:0 0 18px}h1 em{font-style:italic}.intro,.feedback,.status{font-size:clamp(.9rem,2.4vw,1.02rem);line-height:1.55}.intro{max-width:540px;margin:0 0 26px}.feedback{margin:16px 0 0;min-height:1.6em;color:var(--ink)}.step-index{color:var(--ink);margin-bottom:14px}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.option{min-height:76px;background:var(--paper);border:1px solid var(--line);text-align:left;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:1rem;transition:background .2s,color .2s,border-color .2s}.option:hover,.option:focus-visible{background:var(--ink);color:var(--paper);border-color:var(--ink)}.option span:last-child{font-size:1.2rem}.option-wide{grid-column:1/-1}.form-grid{display:grid;gap:14px;margin-top:25px}label{display:grid;gap:7px;font-size:.8rem;font-weight:600;letter-spacing:.05em}input{border:1px solid var(--line);background:var(--paper);border-radius:0;color:var(--ink);height:54px;padding:0 15px;font-size:1rem}.primary{min-height:54px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:.75rem;letter-spacing:.13em;font-weight:600;text-transform:uppercase;padding:14px 20px}.primary:hover{background:var(--paper);color:var(--ink)}.error{color:#8b2929;min-height:1.3em;font-size:.88rem;margin:10px 0 0}.site-footer{min-height:82px;padding:12px clamp(20px,5vw,70px) max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);display:flex;align-items:center;gap:20px}.back{border:0;background:none;padding:12px 0;min-width:75px;text-align:left;text-transform:uppercase;letter-spacing:.1em;color:var(--ink)}.progress-wrap{width:min(100%,430px);margin:auto;display:grid;grid-template-columns:1fr auto;gap:8px 12px}.progress{grid-column:1/-1;height:3px;background:var(--line)}.progress span{display:block;height:100%;width:0;background:var(--ink);transition:width .35s}.footer-mark{min-width:75px;text-align:right;white-space:nowrap}.status{margin:22px 0}.confirmation-link{display:inline-block;margin-top:10px;border-bottom:1px solid var(--ink);padding-bottom:5px}.slot{display:grid;gap:4px}.slot small{font-size:.73rem;letter-spacing:.02em;text-transform:none}.slot-date{font-weight:600}.loading{font-family:'Libre Baskerville',Georgia,serif;font-size:1.4rem}.chat-note{border-left:2px solid var(--line);padding-left:15px;margin:18px 0 0;font-family:'Libre Baskerville',Georgia,serif;font-style:italic;font-size:.9rem;line-height:1.5}
@media(max-width:560px){.site-header{height:66px}.site-header img{width:133px}.site-header>span{font-size:.58rem}.site-footer{min-height:76px}.footer-mark{display:none}.main{padding:16px 20px}.options{grid-template-columns:minmax(0,1fr);justify-items:center;gap:6px;margin-top:12px}.option{width:95%;min-height:50px;padding:8px 12px;font-size:.88rem}.content h1{margin-bottom:12px}.feedback{margin-top:11px}.intro{margin-bottom:15px}.form-grid{margin-top:15px}}
@media(max-height:650px){.site-header{height:54px}.site-footer{min-height:60px}.main{padding-top:8px;padding-bottom:8px}h1{font-size:clamp(1.65rem,6vw,3rem)}.option{min-height:52px}.options{margin-top:10px}.eyebrow,.step-index{margin-bottom:6px}}
@media(max-width:560px) and (max-height:700px){.options{gap:4px}.option{min-height:44px;padding:6px 10px}.feedback{margin-top:7px}.intro{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.subtle{margin-top:12px;padding:10px 0;border:0;border-bottom:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.step-transition{text-align:center;padding:24px 0}.step-transition-message{font:400 clamp(1.6rem,6vw,2.5rem)/1.3 'Libre Baskerville',Georgia,serif;margin:0}.step-transition-note{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin:20px 0 0}
@media(max-width:560px){#identity-form{gap:8px}#identity-form input{height:46px}#identity-form .primary{min-height:48px}#identity-form label{gap:4px}}
select{border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);height:54px;padding:0 15px;font-size:1rem}
