:root{--navy:#2f3b43;--navy-soft:#4d5b63;--ink:#231f20;--muted:#5d666c;--paper:#fff;--ice:#f1f9fc;--ice-2:#d8f1f9;--sky:#8ddcf0;--lavender:#b8bce3;--cream:#fdf1dc;--line:#e5e9ec;--beak:#fbb54c;--beak-dark:#a85d0a;--blush:#fdb8a8;--radius:20px;--shadow:0 1px 2px #18223a0f, 0 8px 24px #18223a0f;--serif:"Fraunces", Georgia, serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--navy);text-underline-offset:3px}a:hover{color:var(--beak-dark)}h1,h2,h3{font-family:var(--serif);color:var(--navy);letter-spacing:-.01em;margin:0 0 .5em;line-height:1.15}h1{font-size:clamp(2.4rem,5.5vw,4rem);font-weight:700}h2{font-size:clamp(1.8rem,3.6vw,2.6rem);font-weight:600}h3{font-size:1.3rem;font-weight:600}p{margin:0 0 1em}.container{width:min(1120px,100% - 32px);margin-inline:auto}.narrow{width:min(760px,100% - 32px)}.skip-link{background:var(--navy);color:#fff;z-index:100;border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-999px}.skip-link:focus{left:8px}:focus-visible{outline:3px solid var(--beak);outline-offset:2px;border-radius:6px}.btn{font:600 1rem/1 var(--sans);cursor:pointer;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:15px 24px;text-decoration:none;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{background:var(--navy-soft);color:#fff}.btn-ghost{border-color:var(--line);color:var(--navy);background:#fff}.btn-ghost:hover{border-color:var(--navy);color:var(--navy)}.btn-light{color:var(--navy);background:#fff}.btn-light:hover{background:var(--ice-2);color:var(--navy)}.btn-sm{padding:10px 18px;font-size:.92rem}.site-header{z-index:50;backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--line);background:#ffffffe0;position:sticky;top:0}.header-inner{align-items:center;gap:24px;min-height:72px;display:flex}.brand-mark{width:auto;height:44px}.brand{font:600 1.15rem var(--serif);color:var(--navy);align-items:center;gap:10px;text-decoration:none;display:flex}.site-header nav{margin-left:auto}.nav-links{gap:4px;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:var(--muted);border-radius:999px;padding:8px 12px;font-size:.95rem;font-weight:500;text-decoration:none;display:block}.nav-links a:hover{color:var(--navy);background:var(--ice)}@media (width<=860px){.header-inner{flex-wrap:wrap;gap:8px 16px;padding-block:10px}.brand{margin-right:auto}.site-header nav{scrollbar-width:none;order:3;width:100%;margin:0 -12px;overflow-x:auto}.site-header nav::-webkit-scrollbar{display:none}.nav-links a{white-space:nowrap;padding:4px 12px}}@media (width<=420px){.brand{gap:8px;font-size:1rem}.brand-mark{height:36px}.site-header .btn-sm{padding:9px 14px;font-size:.85rem}}.hero{background:linear-gradient(180deg, var(--ice) 0%, #fff 100%);padding:64px 0 40px;overflow:hidden}.hero-inner{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;display:grid}.eyebrow{font:600 .8rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--beak-dark);margin-bottom:12px}.lede{color:var(--muted);max-width:34em;font-size:1.2rem}.hero-actions{flex-wrap:wrap;gap:12px;margin:28px 0 14px;display:flex}.hero-note{color:var(--muted);font-size:.9rem}.hero-photo{aspect-ratio:4/3;object-fit:cover;border-radius:28px;width:100%;box-shadow:0 24px 60px #18223a2e}@media (width<=860px){.hero{padding-top:40px}.hero-inner{grid-template-columns:1fr;gap:24px}.hero-photo{aspect-ratio:16/10;border-radius:20px}}.facts{padding:8px 0 24px}.facts-list{grid-template-columns:repeat(4,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.facts-list li{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:18px 20px}.facts-list strong{font:700 1.6rem var(--serif);color:var(--navy);display:block}.facts-list span{color:var(--muted);font-size:.92rem}@media (width<=720px){.facts-list{grid-template-columns:repeat(2,1fr)}}.section{padding:88px 0}.section-tinted{background:var(--ice)}.section-head{max-width:640px;margin-bottom:40px}.section-head p:last-child{color:var(--muted)}.split{grid-template-columns:.9fr 1.1fr;gap:56px;display:grid}.prose{color:var(--ink)}.checks{gap:10px;margin:24px 0 0;padding:0;list-style:none;display:grid}.checks li{padding-left:32px;font-weight:500;position:relative}.checks li:before{content:"♪";background:var(--lavender);width:22px;height:22px;color:var(--navy);border-radius:50%;place-items:center;font-size:.8rem;display:grid;position:absolute;top:-1px;left:0}@media (width<=860px){.section{padding:64px 0}.split{grid-template-columns:1fr;gap:16px}}.quote-band{background:linear-gradient(#2f3b43d6, #2f3b43d6), var(--quote-bg,none) center / cover;color:#fff;text-align:center;padding:88px 0}.quote-band blockquote{margin:0}.quote-band p{font:500 clamp(1.5rem, 3vw, 2.2rem)/1.3 var(--serif);max-width:24em;margin:0 auto 12px}.quote-band cite{color:var(--blush);font-style:normal;font-weight:500}.teacher{grid-template-columns:.8fr 1.2fr;align-items:center;gap:56px;display:grid}.teacher-photo{margin:0}.teacher-photo .photo{border-radius:var(--radius);box-shadow:var(--shadow);aspect-ratio:4/5;object-fit:cover;object-position:40% 60%;width:100%}.teacher-photo figcaption{color:var(--muted);margin-top:10px;font-size:.88rem}.venues{flex-wrap:wrap;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.venues li{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 14px;font-size:.92rem;font-weight:500}@media (width<=860px){.teacher{grid-template-columns:1fr;gap:28px}.teacher-photo{max-width:360px}}.pricing{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.price-card,.theory-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:28px}.price-card h3{font-family:var(--sans);color:var(--muted);font-size:1rem;font-weight:600}.price{color:var(--muted);margin-bottom:12px}.price span{font:700 2.6rem var(--serif);color:var(--navy)}.price-card p:last-child{margin:0}.theory-card{justify-content:space-between;align-items:center;gap:24px;margin-top:20px;display:flex}.theory-card p{color:var(--muted);margin:0}.fee-note{color:var(--muted);margin-top:20px;font-size:.95rem}@media (width<=860px){.pricing{grid-template-columns:1fr}.theory-card{flex-direction:column;align-items:flex-start}}.reviews{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.review{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;flex-direction:column;margin:0;padding:28px;display:flex}.stars{color:var(--beak);letter-spacing:2px;margin-bottom:8px}.review blockquote{flex:1;margin:0 0 16px}.review figcaption{color:var(--navy);font-weight:600}.review figcaption:before{content:"— "}@media (width<=860px){.reviews{grid-template-columns:1fr}}.faq{gap:12px;display:grid}.faq details{border:1px solid var(--line);background:#fff;border-radius:16px;padding:4px 22px}.faq summary{cursor:pointer;color:var(--navy);justify-content:space-between;gap:16px;padding:16px 0;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:1.4rem;line-height:1;transition:transform .2s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{color:var(--muted);padding-bottom:8px}.cta{background:var(--navy);color:#dbe4f3;border-radius:28px;justify-content:space-between;align-items:center;gap:32px;padding:48px;display:flex}.cta h2{color:#fff}.cta p{max-width:36em}.cta-actions{flex-wrap:wrap;flex-shrink:0;gap:12px;display:flex}.cta .btn-ghost{color:#fff;background:0 0;border-color:#ffffff59}.cta .btn-ghost:hover{border-color:#fff}@media (width<=860px){.cta{flex-direction:column;align-items:flex-start;padding:32px 24px}}.page-hero{background:linear-gradient(180deg, var(--ice) 0%, #fff 100%);padding:64px 0 32px}.page-hero p{color:var(--muted);max-width:36em;font-size:1.15rem}.form-layout{grid-template-columns:1.4fr .6fr;align-items:start;gap:40px;padding-bottom:88px;display:grid}.form-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:32px}.form-card fieldset{border:0;margin:0 0 28px;padding:0}.form-card legend{font:600 1.25rem var(--serif);color:var(--navy);margin-bottom:14px;padding:0}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid .full{grid-column:1/-1}.field{flex-direction:column;gap:6px;font-size:.95rem;font-weight:500;display:flex}.field .hint{color:var(--muted);font-size:.85rem;font-weight:400}.req{color:var(--beak-dark)}input[type=text],input[type=email],input[type=tel],input[type=number],select,textarea{font:inherit;color:var(--ink);border:1.5px solid var(--line);background:#fff;border-radius:12px;width:100%;padding:12px 14px;font-size:1rem;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--navy);box-shadow:0 0 0 4px var(--ice-2);outline:none}textarea{resize:vertical;min-height:120px}.choice-group{flex-wrap:wrap;gap:8px;display:flex}.choice{position:relative}.choice input{opacity:0;cursor:pointer;position:absolute;inset:0}.choice span{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:9px 16px;font-size:.92rem;font-weight:500;transition:all .15s;display:inline-block}.choice input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}.choice input:focus-visible+span{outline:3px solid var(--beak);outline-offset:2px}.availability-label{margin:18px 0 8px;font-size:.95rem;font-weight:500}.availability-label:first-of-type{margin-top:0}.hidden-field{display:none}.form-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.form-actions p{color:var(--muted);margin:0;font-size:.88rem}.aside-card{background:var(--cream);border-radius:var(--radius);padding:28px}.aside-card h2{font-size:1.4rem}.aside-photo{aspect-ratio:3/2;object-fit:cover;border-radius:14px;width:100%;margin-bottom:20px}.aside-card ul{color:var(--muted);margin:0 0 1em;padding-left:1.1em}@media (width<=860px){.form-layout,.form-grid{grid-template-columns:1fr}.form-card{padding:24px 20px}}.post-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:0 0 88px;padding:0;list-style:none;display:grid}.post-card{border:1px solid var(--line);border-radius:var(--radius);height:100%;box-shadow:var(--shadow);background:#fff;flex-direction:column;padding:28px;transition:transform .15s,box-shadow .15s;display:flex}.post-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px #18223a1a}.post-card h2{font-size:1.4rem}.post-card h2 a{text-decoration:none}.post-card h2 a:after{content:"";position:absolute;inset:0}.post-card{position:relative}.post-card p{color:var(--muted);flex:1}.post-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;font-size:.88rem;display:flex}.tag{background:var(--cream);color:var(--navy);border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:600}.empty-state{text-align:center;color:var(--muted);padding:64px 0 120px}.article{padding:56px 0 40px}.article-header{margin-bottom:32px}.article-body{font-size:1.08rem}.article-body h2{margin-top:1.8em;font-size:1.8rem}.article-body h3{margin-top:1.5em}.article-body ul,.article-body ol{padding-left:1.3em}.article-body li{margin-bottom:.4em}.article-body blockquote{border-left:4px solid var(--beak);color:var(--muted);margin:1.5em 0;padding:4px 0 4px 20px;font-style:italic}.article-body img{border-radius:16px;margin:1.5em 0}.article-body table{border-collapse:collapse;width:100%;margin:1.5em 0;font-size:.98rem}.article-body th,.article-body td{border-bottom:1px solid var(--line);text-align:left;padding:10px 12px}.article-body th{color:var(--navy)}.article-body .post-cta{background:var(--cream);border-left:5px solid var(--beak);border-radius:16px;margin:2em 0;padding:22px 26px}.article-body .post-cta p{margin:0 0 .6em}.article-body .post-cta p:last-child{margin:0}.article-body .post-cta strong{color:var(--navy)}.article-body .post-cta a{font-weight:600}.back-link{color:var(--muted);margin-bottom:20px;font-weight:500;text-decoration:none;display:inline-block}.site-footer{background:var(--ice);color:var(--muted);padding:56px 0 24px;font-size:.95rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:32px;display:flex}.footer-logo{border-radius:16px;width:140px;height:auto;margin-bottom:12px}.footer-brand{font:600 1.2rem var(--serif);color:var(--navy);margin-bottom:4px}.site-footer ul{grid-template-columns:repeat(2,auto);gap:6px 32px;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--navy)}.footer-bottom{border-top:1px solid var(--line);margin-top:32px;padding-top:20px;font-size:.85rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
