@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600&family=Work+Sans:wght@400;500;600&display=swap";:root{--ink: #15302a;--pine: #1f473c;--pine-dark: #16382f;--paper: #f4efe4;--card: #fffdf7;--sand: #ece4d2;--line: #ddd2ba;--honey: #c9822f;--honey-deep: #a9661e;--muted: #66746d;--white-soft: #f7f3e8;--shadow: 0 30px 80px -45px rgba(21, 48, 42, .68);color:var(--ink);background:var(--paper);font:16px/1.5 Work Sans,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;min-width:320px}button,input{font:inherit}button{color:inherit}.site-shell{min-height:100vh;display:grid;align-content:center;padding:clamp(1rem,3vw,2.75rem);background:radial-gradient(circle at 8% 12%,rgba(201,130,47,.11),transparent 24rem),radial-gradient(circle at 92% 88%,rgba(31,71,60,.12),transparent 28rem),var(--paper)}.booking-frame{width:min(74rem,100%);margin:0 auto;display:grid;grid-template-columns:minmax(18rem,.82fr) minmax(0,1.5fr);min-height:min(48rem,calc(100vh - 7rem));overflow:hidden;border:1px solid rgba(31,71,60,.16);border-radius:1.35rem;background:var(--card);box-shadow:var(--shadow)}.story{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:clamp(1.6rem,3.5vw,3.25rem);overflow:hidden;color:var(--white-soft);background:var(--pine)}.story:before{content:"";position:absolute;z-index:-1;width:22rem;height:22rem;right:-11rem;bottom:4rem;border:1px solid rgba(247,243,232,.18);border-radius:50%;box-shadow:0 0 0 4rem #f7f3e809,0 0 0 8rem #f7f3e806}.story-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{margin:0;font-family:Fraunces,Georgia,serif;font-size:1.05rem;letter-spacing:.01em}.availability{display:flex;align-items:center;gap:.5rem;margin:0;font-size:.7rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:#f7f3e8c2}.availability span{width:.45rem;height:.45rem;border-radius:50%;background:#e6b96f;box-shadow:0 0 0 .25rem #e6b96f21}.story-copy{margin:clamp(4rem,14vh,8rem) 0}.kicker{margin:0 0 .75rem;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--honey-deep)}.story .kicker{color:#e3ac5d}h1,h2,h3,p{text-wrap:pretty}h1{max-width:10ch;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(2.7rem,5vw,4.7rem);font-weight:400;line-height:.98;letter-spacing:-.035em}.intro-copy{max-width:29rem;margin:1.6rem 0 0;font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.75;color:#f7f3e8b8}.session-note{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;padding-top:1.5rem;border-top:1px solid rgba(247,243,232,.18)}.session-mark{font-family:Fraunces,Georgia,serif;font-size:1.7rem;color:#e3ac5d}.session-note strong{font-size:.92rem;font-weight:500}.session-note p{margin:.2rem 0 0;font-size:.8rem;color:#f7f3e894}.scheduler{min-width:0;padding:clamp(1.5rem,4vw,3.5rem);background:var(--card)}.scheduler-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:2.4rem}.scheduler-head h2,.confirmation h2{margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,3.3vw,2.8rem);font-weight:500;line-height:1.08;letter-spacing:-.025em;color:var(--pine-dark)}.duration{flex:none;padding:.5rem .75rem;border:1px solid var(--line);border-radius:99rem;font-size:.72rem;font-weight:600;color:var(--muted);background:var(--paper)}.booking-step+.booking-step{margin-top:2rem;padding-top:1.8rem;border-top:1px solid var(--line)}.step-heading{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:1rem}.step-heading>span{flex:none;display:grid;place-items:center;width:1.65rem;height:1.65rem;border-radius:50%;font-size:.7rem;font-weight:600;color:var(--card);background:var(--pine)}.step-heading h3{margin:0;font-size:.95rem;font-weight:600;color:var(--ink)}.step-heading p{margin:.15rem 0 0;font-size:.78rem;color:var(--muted)}.date-strip{display:grid;grid-auto-flow:column;grid-auto-columns:4.45rem;gap:.55rem;max-width:100%;overflow-x:auto;padding:.15rem .1rem .65rem;scrollbar-width:thin;scrollbar-color:var(--line) transparent;scroll-snap-type:x proximity}.date-card{scroll-snap-align:start;display:grid;justify-items:center;gap:.1rem;min-height:5.3rem;padding:.6rem .25rem;border:1px solid var(--line);border-radius:.85rem;cursor:pointer;background:var(--paper);transition:transform .14s ease,border-color .14s ease,background .14s ease}.date-card:hover{transform:translateY(-2px);border-color:var(--pine)}.date-card strong{font-family:Fraunces,Georgia,serif;font-size:1.55rem;font-weight:500;line-height:1.05}.date-card span{font-size:.65rem;color:var(--muted)}.date-card .date-weekday{font-weight:600;letter-spacing:.06em;text-transform:uppercase}.date-card.selected{border-color:var(--pine);color:var(--card);background:var(--pine)}.date-card.selected span{color:#fffdf7b8}.time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.time-card{min-height:3.1rem;padding:.6rem;border:1px solid var(--line);border-radius:.7rem;cursor:pointer;font-size:.83rem;font-weight:600;background:transparent;transition:color .14s ease,background .14s ease,border-color .14s ease}.time-card:hover:not(:disabled){border-color:var(--honey);color:var(--honey-deep)}.time-card.selected{border-color:var(--honey);color:#fff;background:var(--honey)}.time-card:disabled{cursor:not-allowed;color:#a5aaa6;border-color:#e6e2d8;background:#f5f3ed}.time-card span{display:block;font-size:.56rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.name-step{display:grid;grid-template-columns:minmax(12rem,.8fr) minmax(15rem,1.2fr);gap:1.5rem;align-items:end}.name-step .step-heading{margin-bottom:0}.name-field{display:grid;gap:.4rem}.name-field>span{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.name-field input{width:100%;min-width:0;padding:.85rem 0;border:0;border-bottom:1px solid var(--line);border-radius:0;outline:none;color:var(--ink);background:transparent}.name-field input:focus{border-color:var(--honey);box-shadow:0 1px 0 var(--honey)}.name-field input::placeholder{color:#99a099}.booking-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center;margin-top:2rem;padding:1rem 1rem 1rem 1.2rem;border-radius:.9rem;background:var(--sand)}.selection-summary{display:grid;gap:.2rem;min-width:0}.selection-summary span{font-size:.64rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.selection-summary strong{overflow:hidden;font-size:.8rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.book-button{display:inline-flex;align-items:center;gap:1.2rem;min-height:3.2rem;padding:.75rem 1.2rem;border:0;border-radius:.65rem;cursor:pointer;font-size:.82rem;font-weight:600;color:#fff;background:var(--honey);transition:transform .14s ease,background .14s ease}.book-button:hover:not(:disabled){transform:translateY(-1px);background:var(--honey-deep)}.book-button span{font-size:1.15rem}.book-button:disabled{cursor:not-allowed;color:#87918b;background:#d7d1c2}.inline-error{margin:1rem 0 0;font-size:.8rem;color:#a14732}.confirmation{min-height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:31rem;margin:auto}.confirmation-mark{display:grid;place-items:center;width:3.5rem;height:3.5rem;margin-bottom:2rem;border-radius:50%;font-size:1.4rem;color:var(--card);background:var(--pine);box-shadow:0 0 0 .6rem var(--sand)}.confirmation>p:not(.kicker){max-width:27rem;color:var(--muted)}.confirmed-slot{width:100%;display:flex;justify-content:space-between;gap:1rem;margin:2rem 0 1rem;padding:1.2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.confirmed-slot span{color:var(--muted)}.confirmed-slot strong{color:var(--honey-deep)}.secondary-button{margin-top:1.2rem;padding:.8rem 1rem;border:1px solid var(--pine);border-radius:.65rem;cursor:pointer;font-weight:600;color:var(--pine);background:transparent}.secondary-button:hover{color:var(--card);background:var(--pine)}.privacy-note{margin:1rem auto 0;text-align:center;font-size:.7rem;color:var(--muted)}button:focus-visible,input:focus-visible{outline:2px solid var(--honey);outline-offset:3px}@media(max-width:56rem){.site-shell{align-content:start}.booking-frame{grid-template-columns:1fr}.story{min-height:25rem}.story-copy{margin:4.5rem 0}h1{max-width:13ch}}@media(max-width:38rem){.site-shell{padding:0}.booking-frame{min-height:100vh;border:0;border-radius:0}.story{min-height:23rem;padding:1.4rem}.story-top{align-items:flex-start}.story-copy{margin:3.5rem 0}h1{font-size:clamp(2.6rem,13vw,3.7rem)}.intro-copy{line-height:1.6}.scheduler{padding:2rem 1.25rem}.scheduler-head{margin-bottom:2rem}.time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.name-step{grid-template-columns:1fr;gap:1rem}.booking-action{grid-template-columns:1fr;gap:.9rem}.book-button{justify-content:space-between;width:100%}.privacy-note{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
