:root{color-scheme:light;--paper:#faf9f5;--ink:#151515;--muted:#575650;--line:#d8d7d0;--yellow:#ffe38a}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;font-size:1rem;line-height:1.5}
a{color:inherit;text-underline-offset:4px}
button{font:inherit;color:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #826000;outline-offset:6px}
::selection{background:var(--yellow);color:var(--ink)}
.page-shell{max-width:1440px;margin:0 auto;padding:0 5.5%}
.skip-link{position:absolute;left:1rem;top:-8rem;padding:.7rem 1rem;background:var(--yellow);z-index:5}
.skip-link:focus{top:1rem}
.site-header{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--line)}
.wordmark{font-size:1rem;letter-spacing:.035em;font-weight:700;text-decoration:none;line-height:1.4}
.wordmark span{display:block;font-size:.75rem;letter-spacing:.09em;font-weight:400;margin-top:.3rem}
.header-link{font-size:.9375rem;font-weight:600;text-decoration:none;white-space:nowrap}
.header-link span{margin-left:.75rem}
.eyebrow{font-size:.75rem;letter-spacing:.08em;line-height:1.5;font-weight:700;margin:0 0 1.7rem}
.hero{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:5%;align-items:center;padding:5rem 0 5.5rem;border-bottom:1px solid var(--line)}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(3.4rem,6.7vw,6.4rem);font-weight:750;line-height:.99;letter-spacing:-.065em;margin-bottom:2.1rem}
.hero-intro{font-size:1.1875rem;line-height:1.6;letter-spacing:-.02em;margin-bottom:1.65rem;max-width:36rem}
.button{background:var(--ink);color:var(--paper);text-decoration:none;display:inline-flex;align-items:center;justify-content:space-between;gap:2.5rem;min-height:56px;padding:1rem 1.3rem;font-size:1rem;font-weight:600;border:1px solid var(--ink);transition:background .15s,color .15s}
.button:hover{background:var(--yellow);color:var(--ink)}
.button span{font-size:1.25rem;line-height:1}
.hero-note,.contact-note{font-size:.8125rem;color:var(--muted);margin:.9rem 0 0;line-height:1.5}
.schedule{border-left:1px solid var(--line);padding-left:2.4rem;margin-top:1rem}
.schedule-label{font-size:.75rem;font-weight:700;letter-spacing:.07em;max-width:15rem;margin-bottom:2rem}
.schedule-days{font-size:clamp(1.6rem,2.5vw,2.4rem);line-height:1.12;letter-spacing:-.04em;font-weight:700;margin-bottom:1rem}
.schedule-time{font-size:clamp(2.4rem,4.25vw,4.15rem);font-weight:700;letter-spacing:-.065em;line-height:1.2;margin-bottom:2rem;white-space:nowrap}
mark{background:var(--yellow);color:var(--ink);padding:.04em .16em .08em;margin-left:-.04em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.schedule-bottom p{font-size:1rem;line-height:1.5;margin-bottom:1.1rem}
.schedule-bottom p:last-child{margin-bottom:0}
.the-session{display:grid;grid-template-columns:1fr 1.12fr;gap:9%;padding:5.5rem 0;border-bottom:1px solid var(--line)}
h2{font-size:clamp(2rem,3.5vw,3.35rem);line-height:1.07;letter-spacing:-.045em;margin-bottom:1.5rem}
.section-heading .eyebrow{max-width:24rem;margin-bottom:1.5rem}
.section-heading>p:last-child{font-size:1.0625rem;line-height:1.65;max-width:26rem;color:var(--muted);margin-bottom:0}
.session-list{padding-top:.15rem}
.session-item{display:flex;align-items:flex-start;gap:1.35rem;padding:1.65rem 0;border-bottom:1px solid var(--line)}
.session-item:first-child{padding-top:0}
.session-item:last-child{border-bottom:0;padding-bottom:0}
.number{color:var(--muted);font-size:.8125rem;line-height:1.7;padding-top:.17rem}
h3{font-size:1.375rem;line-height:1.25;letter-spacing:-.025em;margin-bottom:.55rem}
.session-item p{font-size:1rem;line-height:1.6;color:var(--muted);margin:0;max-width:29rem}
.questions{padding:4.5rem 0;display:grid;grid-template-columns:1fr 1.12fr;gap:9%;border-bottom:1px solid var(--line)}
.questions h2{font-size:clamp(1.8rem,2.5vw,2.4rem)}
details{border-bottom:1px solid var(--line)}
details:first-child{border-top:1px solid var(--line)}
summary{padding:1.15rem 2rem 1.15rem 0;cursor:pointer;list-style:none;font-size:1rem;font-weight:600;position:relative}
summary::-webkit-details-marker{display:none}
summary:after{content:'+';position:absolute;right:.2rem;top:1rem;font-size:1.3rem;font-weight:400}
details[open] summary:after{content:'−'}
details p{margin:0 1.5rem 1.3rem 0;color:var(--muted);font-size:1rem;line-height:1.6}
.contact{display:grid;grid-template-columns:1.35fr 1fr;gap:12%;padding:5rem 0}
.contact .eyebrow{margin-bottom:1.5rem}
.contact h2{font-size:clamp(2.4rem,4.2vw,4rem)}
.contact>div>p:not(.eyebrow):not(.contact-note){max-width:32rem;font-size:1.0625rem;line-height:1.6;margin-bottom:1.75rem;color:var(--muted)}
.contact-direct{padding-top:1rem}
.phone{display:inline-block;font-size:clamp(1.9rem,3vw,2.75rem);line-height:1.2;font-weight:700;letter-spacing:-.045em;text-decoration:none;margin-bottom:.5rem}
.contact-direct>p:not(.eyebrow){font-size:.9375rem!important;margin-bottom:1rem!important}
.copy-number{padding:.5rem 0;background:none;border:0;text-decoration:underline;text-underline-offset:4px;font-size:.875rem;cursor:pointer;min-height:44px}
.copy-status{display:block;color:var(--muted);font-size:.8125rem;min-height:1.4rem}
address{font-style:normal;font-size:.9375rem;line-height:1.6;margin-top:1.3rem}
.site-footer{padding:1.5rem 0 2rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.75rem;letter-spacing:.02em}
.site-footer a{font-size:.875rem;letter-spacing:0;text-decoration:none}
.site-footer a:hover,.header-link:hover{text-decoration:underline}
@media(min-width:1440px){h1{font-size:6.4rem}}
@media(max-width:1000px){.page-shell{padding:0 5%}.hero{gap:4%;grid-template-columns:1.6fr 1fr}h1{font-size:clamp(3.1rem,6.7vw,5.5rem)}.schedule{padding-left:1.6rem}.hero-intro{font-size:1.0625rem}.desktop-break{display:none}.the-session,.questions{gap:6%}.contact{gap:7%}}
@media(max-width:700px){.page-shell{padding:0 6%}.site-header{min-height:88px;gap:1rem}.wordmark{font-size:.8125rem;letter-spacing:.015em}.wordmark span{font-size:.75rem;letter-spacing:.025em}.header-link{font-size:.8125rem}.header-link span{display:none}.hero{display:flex;flex-direction:column;align-items:stretch;gap:2.7rem;padding:2.8rem 0 3rem}.eyebrow{margin-bottom:1.35rem;font-size:.75rem}h1{font-size:clamp(2.7rem,10.8vw,4.6rem);line-height:1.02;letter-spacing:-.065em;margin-bottom:1.5rem}.hero-intro{font-size:1.0625rem;max-width:27rem;margin-bottom:1.4rem}.button{gap:1.5rem;min-height:54px}.hero-note{max-width:19rem}.schedule{border-left:0;border-top:1px solid var(--line);margin-top:0;padding:1.7rem 0 0;display:grid;grid-template-columns:1fr 1fr;column-gap:1rem;align-items:start}.schedule-label{grid-column:1/-1;margin-bottom:1.1rem;max-width:none}.schedule-days{font-size:1.45rem;line-height:1.15;margin-bottom:.8rem}.schedule-time{font-size:clamp(2.25rem,8vw,3.3rem);margin:0;grid-column:2;grid-row:2;justify-self:end}.schedule-bottom{grid-column:1/-1;display:flex;gap:1.5rem;justify-content:space-between;margin-top:.4rem}.schedule-bottom p{font-size:.875rem;margin:0}.schedule-bottom br{display:none}.the-session{display:block;padding:3rem 0}.section-heading{margin-bottom:2rem}.section-heading h2{font-size:2.35rem}.section-heading>p:last-child{font-size:1rem;max-width:30rem}.session-item{gap:1rem;padding:1.4rem 0}h3{font-size:1.25rem}.questions{display:block;padding:3rem 0}.questions h2{font-size:2rem;margin-bottom:1.8rem}.contact{display:block;padding:3rem 0}.contact h2{font-size:2.7rem}.contact>div>p:not(.eyebrow):not(.contact-note){font-size:1rem}.contact-direct{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:2rem}.contact-direct .eyebrow{margin-bottom:.7rem}.phone{font-size:2.4rem}.site-footer{flex-direction:column;gap:.75rem;padding:1.5rem 0 2rem}}
@media(max-width:360px){.header-link{max-width:5rem;text-align:right;white-space:normal}.button{padding:.85rem 1rem;font-size:.9375rem}.schedule-time{font-size:2.1rem}.schedule-days{font-size:1.25rem}.schedule-bottom{gap:.75rem}.contact h2{font-size:2.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
