/* Ori Naftaly V4.10 | lessons template | original cascade preserved + targeted UI refinements */

/* --- Source: lessons/assets/site.css --- */
/* Ori Naftaly | V4.1 single-page cinematic portfolio. Single, cohesive stylesheet. */
:root{--night:#0C2340;--night2:#153554;--paper:#F2F5FA;--ivory:#FFFFFF;--ink:#10243C;--muted:#526780;--copper:#FFC72C;--copper2:#FFD66A;--line:#D5DFEB;--serif:'Newsreader',Georgia,serif;--sans:'Instrument Sans',Arial,sans-serif;--wide:1190px;--gutter:clamp(17px,4.1vw,64px)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font:400 16px/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}body.modal-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}h2{font-size:clamp(42px,5.2vw,72px);line-height:1.05;text-wrap:balance}h2 em,h1 em,h3 em{font-weight:400}h2 em,h3 em{color:#705000}button:disabled{opacity:.65;cursor:wait}:focus-visible{outline:3px solid #FFC72C;outline-offset:4px}.skip-link{position:fixed;top:-100px;left:15px;z-index:1000;background:#fff;color:#111;padding:12px 20px}.skip-link:focus{top:15px}
.container{width:min(var(--wide),calc(100% - 2*var(--gutter)));margin:auto}.eyebrow{font:700 10px/1.5 var(--sans);letter-spacing:.17em;text-transform:uppercase}.eyebrow.copper{color:#715100}.eyebrow.warm,.eyebrow.light{color:#FFD66A}.eyebrow-line{display:inline-block;width:20px;height:2px;background:currentColor;vertical-align:middle;margin-right:12px}.action{display:inline-flex;gap:19px;align-items:center;justify-content:center;min-height:51px;min-width:44px;padding:13px 22px;text-decoration:none;border:1px solid transparent;font:700 11px/1.3 var(--sans);letter-spacing:.075em;text-transform:uppercase;transition:background .22s,transform .22s,color .22s}.action:hover{transform:translateY(-2px)}.action-copper{background:var(--copper);color:#0C2340}.action-copper:hover{background:#FFE083}.action-dark{background:var(--night);color:#fff}.action-dark:hover{background:#2C527A}.action span{font-size:20px;line-height:.8;font-weight:400}
/* Navigation */
.site-header{position:fixed;top:0;left:0;right:0;z-index:70;border-bottom:1px solid #ffffff24;background:linear-gradient(180deg,#0C2340C7,#0C23405E);color:#fff;transition:background .2s}.site-header.scrolled{background:#0C2340FA;box-shadow:0 12px 30px #0C234034}.header-wrap{max-width:1450px;margin:auto;width:calc(100% - 2*var(--gutter));min-height:75px;display:flex;align-items:center;gap:29px}.wordmark{display:flex;flex-direction:column;align-items:flex-start;flex-shrink:0;line-height:1.1;text-decoration:none;white-space:nowrap}.wordmark>span{font:700 16px/1.1 var(--sans);letter-spacing:.18em}.wordmark>small{font:600 7px/1.1 var(--sans);letter-spacing:.215em;color:#DDE8F5;margin-top:6px}.desktop-nav{display:flex;align-items:center;gap:clamp(19px,2.5vw,35px);margin-left:auto}.desktop-nav a{font:600 11px/1.4 var(--sans);letter-spacing:.03em;text-decoration:none;white-space:nowrap}.desktop-nav a:hover,.footer-layout a:hover{color:var(--copper2)}.header-inquire{min-height:43px;font-size:10px;white-space:nowrap;padding:10px 16px}.mobile-nav{display:none}
/* Cinematic hero (keep V4 depth, saturation, warmth). */
.hero{min-height:min(860px,98svh);background:#0C2340;color:#fff;position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;top:0;right:0;bottom:0;width:78%;z-index:-3}.hero-photo picture,.hero-photo img{width:100%;height:100%}.hero-photo img{object-fit:cover;object-position:23% 44%;transform:scale(1.055);filter:contrast(1.12) saturate(1.16) brightness(.97)}.hero-grade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0C2340 0%,#0C2340FA 25%,#0C2340E8 42%,#0C234090 62%,#0C234022 84%),linear-gradient(0deg,#0C2340 0%,transparent 28%),radial-gradient(ellipse at 78% 15%,#7D9BC159,transparent 51%)}.hero-grain{position:absolute;inset:0;z-index:-1;opacity:.065;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.5' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}.hero-inner{padding:127px 0 90px;position:relative;z-index:1}.hero-content{max-width:750px}.hero h1{font-size:clamp(63px,6.4vw,101px);line-height:.92;max-width:740px;margin:21px 0 17px;text-wrap:balance}.hero h1 em{display:block;color:#FFD66A}.hero-line{font:400 clamp(22px,2.5vw,33px)/1.23 var(--serif);max-width:650px;color:#FFFFFF}.hero-pitch{font:400 16.5px/1.75 var(--sans);max-width:625px;color:#DEE9F6;margin:22px 0 0}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:27px}.watch-link{font:700 12px/1.45 var(--sans);text-decoration:none;border-bottom:1px solid #CADAEA;display:inline-flex;gap:13px;align-items:center;padding:9px 0}.watch-link span{font-size:12px;color:var(--copper2)}.watch-link:hover{color:var(--copper2)}.hero-trust{font:600 9px/1.5 var(--sans);letter-spacing:.13em;color:#FFD66A;margin-top:29px}.hero-trust span{margin:0 8px}.photo-credit{position:absolute;bottom:24px;right:28px;z-index:2;color:#fff9;letter-spacing:.12em;font:600 9px var(--sans)}
/* Lesson pathways */
.section-light{background:var(--paper)}.lessons{padding:clamp(66px,8vw,110px) 0}.section-header{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:31px}.section-header h2{margin-top:13px}.section-header>p{max-width:330px;line-height:1.75;color:var(--muted);font-size:14px;margin-bottom:5px}.lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.lesson-card{background:var(--ivory);border:1px solid #D6E0ED;scroll-margin-top:100px;min-width:0}.lesson-card>summary{position:relative;min-height:205px;display:grid;grid-template-columns:36% minmax(0,1fr) 32px;align-items:center;list-style:none;cursor:pointer}.lesson-card>summary::-webkit-details-marker{display:none}.lesson-card>summary:focus-visible{outline-offset:-4px}.lesson-visual{position:relative;align-self:stretch;min-height:0;overflow:hidden;background:#1E3C5B}.lesson-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}.lesson-card:hover img{transform:scale(1.055)}#kids .lesson-visual img{object-position:44% 45%}#adults .lesson-visual img{object-position:48% 31%}#groups .lesson-visual img{object-position:33% 40%}#artist-development .lesson-visual img{object-position:50% 24%}.lesson-summary{display:flex;flex-direction:column;align-items:flex-start;padding:22px 0 22px 24px;min-width:0}.lesson-kicker{font:700 9px/1.5 var(--sans);letter-spacing:.11em;color:#755400}.lesson-summary strong{font:400 clamp(27px,3vw,43px)/1.04 var(--serif);letter-spacing:-.044em;color:#153554;margin:4px 0 10px}.lesson-intro{font-size:12px;line-height:1.55;color:#536A83}.lesson-plus{justify-self:end;align-self:start;padding:19px 14px 0 0;font:400 26px var(--serif);color:#7D5E00;transition:transform .2s}.lesson-card[open] .lesson-plus{transform:rotate(45deg)}.lesson-expand{border-top:1px solid #E7EEF6;padding:24px 25px 25px}.expand-lead{font:700 10px var(--sans);text-transform:uppercase;letter-spacing:.15em;color:#6C5000;margin-bottom:14px}.lesson-expand ul{padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;margin:0 0 20px}.lesson-expand li strong{display:block;font:600 13px/1.4 var(--sans);margin-bottom:5px}.lesson-expand li span{display:block;color:#637065;font-size:12px;line-height:1.65}.quiet-cta{display:inline-flex;gap:16px;border-bottom:1px solid currentColor;padding-bottom:4px;color:#824b30;font:700 12px/1.45 var(--sans);text-decoration:none}.program-foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;margin-top:24px;font-size:12px;color:#546983}.program-foot a{color:#6C5000;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}
/* Teaching + professional proof */
.section-dark{color:#E6EDF6;background:var(--night)}.about{padding:clamp(74px,8.4vw,119px) 0 84px}.about-layout{display:grid;grid-template-columns:40% minmax(0,1fr);gap:clamp(38px,6.7vw,98px);align-items:start}.about-portrait{position:relative;align-self:stretch;min-height:580px;background:#23496E;overflow:hidden}.about-portrait img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 35%;filter:contrast(1.06) saturate(1.06)}.about-portrait:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0008)}.about-portrait span{position:absolute;bottom:20px;left:20px;right:20px;color:#fff;z-index:1;font:600 10px var(--sans);letter-spacing:.09em}.about-main h2{margin:12px 0 21px}.about-main h2 em{color:#FFD16A}.about-main>p:not(.eyebrow){font-size:14px;line-height:1.78;margin:0 0 17px;color:#DCE7F3}.about-main>p.about-lead{font:400 clamp(21px,2.1vw,28px)/1.34 var(--serif);color:#EDF3FA;margin-bottom:21px}.teacher-values{border-top:1px solid #405B78;margin-top:25px;padding-top:22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.teacher-values span{font:400 24px var(--serif);color:#e7a981}.teacher-values strong{display:block;font:600 13px/1.3 var(--sans);margin:8px 0 6px}.teacher-values p{font-size:12px;line-height:1.7;color:#B9CDE0}.artist-proof{border-top:1px solid #466785;margin-top:63px;padding-top:42px;display:grid;grid-template-columns:33% minmax(0,1fr);gap:70px}.artist-proof-intro h3{font:400 clamp(32px,3.9vw,51px)/1.05 var(--serif);margin-top:12px}.artist-proof-intro h3 em{color:#e7a981}.proof-copy p{font-size:14px;line-height:1.85;color:#D4E2F1;margin-bottom:15px}.proof-copy strong{color:#EFF6FF}.proof-links{display:flex;gap:15px 22px;flex-wrap:wrap;margin-top:25px}.proof-links a{font:700 11px var(--sans);text-decoration:none;color:#FFD66A;border-bottom:1px solid #755A00;padding-bottom:5px}.proof-copy p.disclaimer{font-size:11px;color:#ADC4DE;margin-top:20px;margin-bottom:0}
/* Video feature */
.watch-section{padding:clamp(62px,7.5vw,105px) 0;background:#E8EEF7}.watch-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(35px,7vw,99px);align-items:center}.watch-copy h2{margin:12px 0 19px}.watch-copy p:not(.eyebrow){font-size:15px;line-height:1.75;max-width:425px;margin-bottom:24px;color:#536A83}.watch-copy p.video-note{font-size:10px;color:#687F99;margin:13px 0 0}.video-card{position:relative;border:0;width:100%;aspect-ratio:16/10;padding:0;overflow:hidden;background:#193B59;color:#fff}.video-card img{width:100%;height:100%;object-fit:cover;filter:brightness(.66) saturate(.94);transition:transform .4s}.video-card:hover img{transform:scale(1.04)}.round-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:76px;height:76px;border:1px solid #ffffffa9;border-radius:50%;display:grid;place-items:center;font-size:23px}.video-card-label{position:absolute;bottom:25px;left:28px;font:700 10px var(--sans);letter-spacing:.14em}
/* Lesson process and FAQ */
.guide{padding:clamp(72px,8vw,108px) 0}.guide-heading{text-align:center;max-width:650px;margin:0 auto 39px}.guide-heading h2{margin:13px 0 11px}.guide-heading>p:not(.eyebrow){color:var(--muted);font-size:14px}.step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.step-grid article{border-top:1px solid #A4B9D0;padding:20px 0}.step-grid article>span{font:400 30px var(--serif);color:#a66844}.step-grid h3{font:400 clamp(28px,2.8vw,39px)/1.08 var(--serif);margin:10px 0 10px}.step-grid p{font-size:13px;line-height:1.77;color:#637065}.faq-wrap{scroll-margin-top:90px;border-top:1px solid #d1d5c9;margin-top:57px;padding-top:55px;display:grid;grid-template-columns:38% minmax(0,1fr);gap:55px}.faq-title h2{font-size:clamp(36px,4vw,55px);margin:12px 0}.faq-title>p:not(.eyebrow){font-size:13px;color:#657165}.faq-questions{border-top:1px solid #ccd1c6}.faq-questions details{border-bottom:1px solid #ccd1c6}.faq-questions summary{list-style:none;cursor:pointer;padding:18px 38px 18px 0;position:relative;font:500 15px/1.5 var(--sans)}.faq-questions summary::-webkit-details-marker{display:none}.faq-questions summary:after{content:'+';position:absolute;right:8px;font:400 24px var(--serif);top:11px;color:#945d39}.faq-questions details[open] summary:after{content:'−'}.faq-questions details p{font-size:13px;line-height:1.78;color:#67756a;padding:0 35px 20px 0}
/* Real, statically present Netlify form; JS modal is optional enhancement */
.inquire{padding:clamp(72px,7.6vw,108px) 0}.inquire-layout{display:grid;grid-template-columns:.87fr 1.13fr;gap:clamp(45px,7vw,102px);align-items:start}.inquire h2{margin:17px 0 16px;font-size:clamp(55px,5.3vw,76px)}.inquire h2 em{color:#e6a679}.inquire-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:#dce4d8;max-width:450px}.service-locations{border-top:1px solid #526354;padding-top:19px;margin-top:36px;color:#e4b58f;font:600 11px/1.6 var(--sans)}.inquire-copy p.inquire-assurance{font-size:12px;color:#b3c1b5;margin-top:14px}.form-card{background:var(--ivory);padding:35px 35px 29px;color:#25352b;min-width:0}.form-intro h3{font-size:clamp(36px,3.8vw,51px);line-height:1;margin:10px 0 25px}.form-intro h3 span{color:#b87953}.lead-form{display:grid;gap:15px}.honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 15px}.form-grid label,.full-label{min-width:0;font:700 10px/1.4 var(--sans);letter-spacing:.09em;color:#445448;text-transform:uppercase}.form-grid input,.form-grid select,.full-label textarea{width:100%;display:block;min-height:47px;min-width:0;background:#f9f8f4;border:1px solid #d9ddd2;border-radius:0;color:#1c3025;padding:12px 13px;margin-top:8px;font:400 15px/1.4 var(--sans);letter-spacing:0;text-transform:none;outline-offset:2px}.form-grid input:focus,.form-grid select:focus,.full-label textarea:focus{border-color:#956046}.full-label{display:block}.full-label span{font-weight:400;color:#7d897d;text-transform:none;letter-spacing:0}.full-label textarea{resize:vertical;min-height:85px}.checkbox-line{display:flex;gap:11px;align-items:start;color:#59685c;font:400 12px/1.55 var(--sans)}.checkbox-line input{accent-color:#97603c;margin-top:3px;width:17px;height:17px;flex:0 0 17px}.submit-button{width:100%;border:0}.form-message{min-height:0;font-size:12px;line-height:1.45;color:#985035}.privacy{font-size:10.5px;line-height:1.7;color:#819083}.form-message:empty{display:none}
/* Footer, dialogs, sticky CTA */
.site-footer{padding:61px 0 25px;color:#e8eee4;background:#0a130e}.footer-layout{display:grid;grid-template-columns:1.15fr .6fr .65fr;gap:70px;padding-bottom:50px}.footer-name{font:400 37px var(--serif);text-decoration:none}.footer-name span{color:var(--copper)}.footer-layout p{font-size:12px;color:#aabbac;line-height:1.65;margin:12px 0}.footer-layout p.footer-muted{font-size:10px;color:#839486}.footer-layout nav,.footer-layout>div:last-child{display:flex;flex-direction:column;gap:8px;align-items:start}.footer-layout nav p,.footer-layout p.footer-heading{margin:0 0 7px;color:#e8b38c;font:700 10px var(--sans);letter-spacing:.15em}.footer-layout nav a,.footer-layout>div:last-child a{font-size:12px;text-decoration:none}.footer-bottom{border-top:1px solid #3f5142;padding-top:21px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:10px;color:#a2b3a4}.mobile-sticky{display:none}.mobile-sticky[hidden]{display:none!important}
.inquiry-dialog,.video-dialog{border:0;background:transparent;padding:0;color:var(--ink);max-width:min(680px,calc(100vw - 32px));max-height:min(92dvh,900px)}dialog::backdrop{background:#08120fe8;backdrop-filter:blur(5px)}.dialog-shell{padding:24px;background:var(--paper);max-height:90dvh;overflow:auto}.dialog-head{display:flex;justify-content:space-between;gap:16px;align-items:start}.dialog-head h2{font-size:43px;margin:7px 0 0}.dialog-hint{font-size:13px;margin:10px 0 16px;color:#5e7064}.close-dialog{flex:0 0 44px;height:44px;border:1px solid #b6c2b4;background:none;color:var(--ink);font-size:29px;display:grid;place-items:center}.inquiry-dialog .lead-form{background:var(--ivory);padding:18px}.inquiry-dialog .form-grid input,.inquiry-dialog .form-grid select{min-height:44px}.video-dialog{max-width:min(980px,calc(100vw - 28px));width:980px}.video-shell{background:#0c1511;padding:18px;color:#fff}.video-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px}.video-top p{font:600 14px var(--sans)}.video-top .close-dialog{color:#fff;border-color:#fff7}.video-frame{aspect-ratio:16/9;background:#000}.video-frame iframe{width:100%;height:100%;border:0}.video-shell>p{color:#bdc7bd;font-size:12px;margin-top:12px}.video-shell a{color:#e9b286}
.thanks-page{background:var(--night);min-height:100dvh;display:grid;place-items:center;color:#fff}.thanks-center{width:min(640px,calc(100% - 36px));padding:60px 10px}.thanks-center h1{font-size:clamp(56px,9vw,84px);line-height:.98;margin:16px 0 22px}.thanks-center>p:not(.eyebrow){color:#d2ded1;max-width:510px;margin-bottom:27px}
/* RESPONSIVE */
@media(max-width:1080px){.header-wrap{gap:20px}.desktop-nav{gap:18px}.desktop-nav a{font-size:10px}.header-inquire{font-size:9px;padding:10px}.hero h1{font-size:clamp(60px,7vw,88px)}.lesson-summary{padding-left:18px}.about-layout{gap:45px}.teacher-values{gap:13px}.artist-proof{gap:35px}}
@media(max-width:900px){.desktop-nav,.header-inquire{display:none}.header-wrap{min-height:70px}.mobile-nav{display:block;position:relative;margin-left:auto}.mobile-nav>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;gap:9px;border:1px solid #d9e1d255;padding:8px 10px}.mobile-nav>summary::-webkit-details-marker{display:none}.menu-icon{display:flex;flex-direction:column;gap:4px}.menu-icon i{display:block;width:17px;height:1.5px;background:#fff}.menu-label{font:600 11px var(--sans)}.mobile-nav nav{position:absolute;top:calc(100% + 11px);right:-4px;width:min(330px,calc(100vw - 28px));padding:10px 18px 20px;background:#17251e;border:1px solid #ffffff25;box-shadow:0 14px 45px #0009;display:flex;flex-direction:column;max-height:calc(100dvh - 87px);overflow-y:auto}.mobile-nav nav a{text-decoration:none;padding:10px 2px;border-bottom:1px solid #ffffff19;font:600 13px var(--sans)}.mobile-nav nav a.mobile-menu-cta{margin-top:12px;background:var(--copper);color:#172217;text-align:center;padding:13px}.hero{min-height:720px}.hero-photo{width:100%}.hero-grade{background:linear-gradient(90deg,#07100df0 0%,#07100dcb 48%,#0C234055 90%),linear-gradient(0deg,#0C2340 0%,transparent 35%),radial-gradient(ellipse at 80% 8%,#d78b4b40,transparent 49%)}.hero-inner{padding:120px 0 85px}.hero-content{max-width:665px}.about-layout{grid-template-columns:38% 1fr;gap:32px}.about-portrait{min-height:550px}.about-main>p:not(.eyebrow){font-size:13px}.teacher-values{grid-template-columns:1fr;gap:14px}.teacher-values>div{display:grid;grid-template-columns:33px 1fr;gap:0 10px}.teacher-values strong{margin:0}.teacher-values p{grid-column:2}.artist-proof{grid-template-columns:1fr;gap:18px}.watch-layout{gap:35px}.inquire-layout{gap:35px}}
@media(max-width:700px){:root{--gutter:20px}html{scroll-padding-top:78px}body{font-size:15px}.header-wrap{width:calc(100% - 36px);min-height:68px}.wordmark>span{font-size:14px}.wordmark>small{font-size:7px}.hero{display:block;min-height:0}.hero-photo{top:0;left:0;right:0;bottom:auto;width:100%;height:302px}.hero-photo img{object-position:48% 13%;transform:scale(1.005);filter:contrast(1.13) saturate(1.16)}.hero-grade{background:linear-gradient(180deg,#07100d66 0%,#07100d03 20%,#07100d15 32%,#08130f 304px,#08130f 100%),radial-gradient(ellipse at 83% 12%,#cf8a454d,transparent 38%)}.hero-grain{opacity:.045}.hero-inner{padding:289px 0 34px}.hero-content{max-width:100%}.hero .eyebrow{font-size:8.5px;letter-spacing:.12em}.eyebrow-line{width:14px;margin-right:7px}.hero h1{font-size:clamp(47px,10.9vw,72px);margin:13px 0 11px;line-height:.93}.hero h1 em{display:inline}.hero-line{font-size:clamp(22px,5vw,29px)}.hero-pitch{font-size:13px;line-height:1.65;margin-top:14px}.hero-actions{margin-top:18px;gap:15px}.hero-actions .action{min-height:49px;padding:12px 17px}.watch-link{font-size:11px}.hero-trust{font-size:8px;margin-top:21px}.photo-credit{top:268px;bottom:auto;right:17px;font-size:7px}.lessons{padding:57px 0 62px}.section-header{display:block;margin-bottom:22px}.section-header>p{max-width:100%;margin-top:10px}.section-header h2{font-size:clamp(40px,9.5vw,55px)}.lesson-grid{grid-template-columns:1fr;gap:11px}.lesson-card>summary{grid-template-columns:115px minmax(0,1fr) 25px;min-height:128px}.lesson-visual{min-height:0}.lesson-summary{padding:12px 0 13px 14px}.lesson-kicker{font-size:8px;letter-spacing:.06em}.lesson-summary strong{font-size:clamp(26px,6.3vw,35px);margin:2px 0 5px}.lesson-intro{font-size:11px}.lesson-plus{font-size:23px;padding:12px 10px 0 0}.lesson-expand{padding:20px}.lesson-expand ul{grid-template-columns:1fr;gap:12px}.program-foot{margin-top:22px;align-items:start;flex-direction:column}.about{padding:65px 0}.about-layout{grid-template-columns:1fr;gap:30px}.about-portrait{min-height:0;height:340px;max-width:100%}.about-portrait img{object-position:center 38%}.about-main h2{font-size:clamp(45px,9.8vw,62px)}.about-main>p:not(.eyebrow){font-size:14px}.about-main>p.about-lead{font-size:23px}.teacher-values{grid-template-columns:1fr;gap:20px;padding-top:20px}.artist-proof{margin-top:40px;padding-top:32px}.artist-proof-intro h3{font-size:clamp(35px,8vw,47px)}.proof-copy p{font-size:13px;line-height:1.75}.watch-section{padding:62px 0}.watch-layout{grid-template-columns:1fr;gap:26px}.watch-copy h2{font-size:clamp(48px,10vw,66px)}.watch-copy p:not(.eyebrow){font-size:14px;margin-bottom:20px}.video-card{aspect-ratio:16/10}.round-play{width:59px;height:59px;font-size:19px}.guide{padding:65px 0}.guide-heading{margin-bottom:25px}.guide-heading h2{font-size:clamp(43px,9.8vw,63px)}.step-grid{grid-template-columns:1fr;gap:8px}.step-grid article{display:grid;grid-template-columns:48px 1fr;gap:0 8px;padding:13px 0}.step-grid article>span{grid-row:1/3}.step-grid h3{font-size:30px;margin:3px 0 6px}.step-grid p{grid-column:2}.faq-wrap{display:block;margin-top:37px;padding-top:40px}.faq-title{margin-bottom:25px}.faq-title h2{font-size:clamp(39px,9vw,52px)}.faq-questions summary{font-size:14px}.inquire{padding:66px 0}.inquire-layout{grid-template-columns:1fr;gap:27px}.inquire h2{font-size:clamp(55px,12vw,73px)}.inquire-copy>p:not(.eyebrow){font-size:14px}.service-locations{margin-top:20px}.form-card{padding:24px 20px}.form-intro h3{font-size:36px;margin-bottom:21px}.form-grid{grid-template-columns:1fr;gap:13px}.form-grid input,.form-grid select,.full-label textarea{font-size:16px}.site-footer{padding:49px 0 95px}.footer-layout{grid-template-columns:1fr 1fr;gap:31px 17px}.footer-layout>div:first-child{grid-column:1/-1}.footer-layout nav{gap:9px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:6px}.mobile-sticky{display:flex;align-items:center;position:fixed;z-index:55;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(370px,calc(100vw - 32px));box-shadow:0 8px 36px #0008}.mobile-sticky:hover{transform:translateX(-50%) translateY(-2px)}.inquiry-dialog{max-width:100vw;width:100vw;height:100dvh;max-height:100dvh;margin:0}.dialog-shell{padding:20px 16px calc(20px + env(safe-area-inset-bottom));max-height:100dvh}.dialog-head h2{font-size:38px}.inquiry-dialog .lead-form{padding:15px}.video-dialog{max-width:100vw;width:100vw}.video-shell{padding:12px}}
@media(max-width:390px){:root{--gutter:16px}.header-wrap{width:calc(100% - 28px)}.wordmark>span{font-size:12px}.wordmark>small{font-size:6.5px}.hero-photo{height:270px}.hero-grade{background:linear-gradient(180deg,#07100d60 0%,#07100d0c 25%,#07100d21 31%,#08130f 274px,#08130f 100%)}.hero-inner{padding-top:258px}.photo-credit{top:238px}.hero h1{font-size:clamp(44px,11.5vw,51px)}.hero-line{font-size:22px}.hero-actions{flex-direction:column;align-items:stretch;gap:9px}.hero-actions .action{width:100%}.watch-link{justify-content:center}.lesson-card>summary{grid-template-columns:92px minmax(0,1fr) 22px;min-height:118px}.lesson-visual{min-height:0}.lesson-summary{padding:10px}.lesson-summary strong{font-size:26px}.lesson-kicker{font-size:7px}.lesson-intro{font-size:10px}.lesson-plus{font-size:22px;padding:12px 8px 0 0}.form-card{padding:20px 16px}}
@media(max-width:330px){:root{--gutter:13px}.hero h1{font-size:43px}.hero .eyebrow{font-size:7.5px}.lesson-card>summary{grid-template-columns:83px minmax(0,1fr) 20px}.lesson-summary strong{font-size:24px}.lesson-kicker{font-size:6.7px}.wordmark>span{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* V4.2 / Bartlett-first service, resilient email contact, refined form microcopy */
.service-locations strong{color:#f4dcc4;font-weight:700}
.travel-note{max-width:485px;margin-top:12px!important;font-size:12.5px!important;line-height:1.7!important;color:#becac0!important}
.direct-email{margin-top:20px!important;font-size:13px!important;line-height:1.65!important;color:#d1dacd}
.direct-email a{color:#efbe99;text-decoration-color:#efbe99;text-underline-offset:4px;overflow-wrap:anywhere}
.form-email-alt{font:500 11px/1.6 var(--sans);color:#5c6b60;margin-top:10px}
.form-email-alt a{color:#824d2e;text-underline-offset:3px}
.photo-note{margin:10px 0 0;font:400 10px/1.5 var(--sans);color:#7b8075}
.hero-trust{line-height:1.7}
@media(max-width:700px){.travel-note{font-size:12px!important}.direct-email{font-size:12px!important}.service-locations{line-height:1.8}.hero-trust{font-size:8px;line-height:1.6}}
@media(max-width:390px){.hero-trust{letter-spacing:.065em}}

/* V4.2 fixed desktop hero composition: preserve visible photo and readable pitch.
   Photo/gradient are baked into a responsive original image so stacking contexts
   cannot obscure the guitarist on desktop; mobile keeps the existing live crop. */
@media(min-width:701px){
  .hero-photo{width:100%;right:0;z-index:0}
  .hero-photo img{object-position:center center;transform:none;filter:none}
  .hero-grade{display:none}
  .hero-grain{z-index:1;opacity:.035}
  .hero-inner{z-index:2}
  .photo-credit{z-index:3}
}


/* V4.3 | Motion & responsive polish / dependency-free progressive enhancement.
   Never hides content without JS, respects reduced-motion & keyboard access. */
:root{--ease-out:cubic-bezier(.2,.75,.2,1);--ease-spring:cubic-bezier(.17,1,.35,1)}
.read-progress{position:fixed;z-index:75;top:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,#b56f46,#eeb489);transform:scaleX(0);transform-origin:left;pointer-events:none;will-change:transform}
.desktop-nav a{position:relative;padding:10px 0}
.desktop-nav a::after{content:"";position:absolute;bottom:4px;left:0;right:0;height:1px;background:#e7b58e;transform:scaleX(0);transform-origin:left;transition:transform .32s var(--ease-out)}
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after,.desktop-nav a[aria-current="location"]::after{transform:scaleX(1)}
.desktop-nav a[aria-current="location"]{color:#f1c6a5}
.action{position:relative;isolation:isolate;overflow:hidden;transition:background .24s var(--ease-out),transform .24s var(--ease-out),box-shadow .24s var(--ease-out)}
.action::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;pointer-events:none;background:linear-gradient(110deg,transparent 28%,#ffffff40 48%,transparent 68%);transform:translateX(-120%)}
@media(hover:hover) and (pointer:fine){.action:hover::before{opacity:1;transform:translateX(120%);transition:opacity .15s,transform .75s ease}.action:hover{box-shadow:0 8px 23px #080b0729}.action:active{transform:translateY(0) scale(.985)}}
.lesson-card{transition:border-color .33s var(--ease-out),box-shadow .35s var(--ease-out);border-color:#d9d8d0}
.lesson-card:has(>summary:hover),.lesson-card:focus-within{border-color:#d8a37d;box-shadow:0 16px 36px #24382a16}
.lesson-card>summary{overflow:hidden}
.lesson-card>summary::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(320px circle at var(--spot-x,65%) var(--spot-y,45%),#c8916b15,transparent 68%);opacity:0;transition:opacity .4s}
@media(hover:hover) and (pointer:fine){.lesson-card>summary:hover::after{opacity:1}}
.lesson-visual img{transition:transform .75s var(--ease-out),filter .6s ease}
.lesson-card:is(:hover,:focus-within) .lesson-visual img{transform:scale(1.065);filter:saturate(1.09) contrast(1.05)}
.lesson-plus{transition:transform .35s var(--ease-spring),color .2s}
.lesson-card[open] .lesson-plus{color:#824b30}
.lesson-card[open] .lesson-expand{animation:detail-appear .36s var(--ease-out) both}
.faq-questions details[open]>p{animation:detail-appear .3s var(--ease-out) both}
@keyframes detail-appear{from{opacity:.1;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.watch-section .round-play{transition:background .35s ease,transform .42s var(--ease-spring),box-shadow .35s ease;box-shadow:0 0 0 0 #ffffff2c}
.video-card:is(:hover,:focus-visible) .round-play{background:#FFC72C;color:#18291f;transform:translate(-50%,-50%) scale(1.1);box-shadow:0 0 0 13px #ffffff21}
.video-card img{transition:transform .85s var(--ease-out),filter .5s ease}
.video-card:is(:hover,:focus-visible) img{transform:scale(1.055);filter:brightness(.78) saturate(1.08)}
.video-card::after{content:"";position:absolute;inset:0;border:1px solid transparent;pointer-events:none;transition:border .3s ease}
.video-card:focus-visible::after{border:3px solid #dba277}
/* On-load hero entry: the hero remains fully visible if scripts are disabled. */
@keyframes hero-intro{from{opacity:.94;transform:translate3d(0,6px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes hero-photo-enter{from{opacity:.75;transform:scale(1.026)}to{opacity:1;transform:scale(1)}}
.motion-on .hero-content>.eyebrow{animation:hero-intro .65s var(--ease-out) .08s backwards}
.motion-on .hero-content>h1{animation:hero-intro .85s var(--ease-out) .18s backwards}
.motion-on .hero-line{animation:hero-intro .76s var(--ease-out) .32s backwards}
.motion-on .hero-pitch{animation:hero-intro .76s var(--ease-out) .42s backwards}
.motion-on .hero-actions{animation:hero-intro .75s var(--ease-out) .55s backwards}
.motion-on .hero-trust{animation:hero-intro .65s var(--ease-out) .66s backwards}
@media(min-width:701px){.motion-on .hero-photo img{animation:hero-photo-enter 1.7s var(--ease-out) both}}
/* Below-the-fold content reveal; IO only adds 'will-reveal' to offscreen elements. */
/* Optional entrance only: content never relies on IntersectionObserver for visibility. */
.motion-on [data-reveal].in-view{animation:lesson-soft-entrance .44s var(--ease-out) backwards}
@keyframes lesson-soft-entrance{from{opacity:.94;transform:translate3d(0,6px,0)}to{opacity:1;transform:none}}
@media (min-width:901px) and (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    .about-portrait img{animation:portrait-pan linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
    @keyframes portrait-pan{from{transform:scale(1.08) translateY(-1%)}to{transform:scale(1.08) translateY(2%)}}
  }
}
/* Lightweight modal entrance, with no CSS dependence for close behavior. */
@keyframes dialog-pop{from{opacity:0;transform:translateY(15px) scale(.982)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes backdrop-appear{from{opacity:0}to{opacity:1}}
.inquiry-dialog[open] .dialog-shell,.video-dialog[open] .video-shell{animation:dialog-pop .38s var(--ease-spring) both}
.inquiry-dialog[open]::backdrop,.video-dialog[open]::backdrop{animation:backdrop-appear .3s ease-out both}
/* Tablet and narrow-desktop editorial rhythm improvements. */
@media(min-width:701px) and (max-width:1120px){
 .hero-inner{padding-bottom:85px}.hero-pitch{max-width:570px}.lesson-summary strong{font-size:clamp(28px,3.15vw,38px)}
 .lesson-card>summary{grid-template-columns:35% minmax(0,1fr) 28px}.lesson-summary{padding-left:16px}.lesson-plus{padding-right:10px}
 .watch-layout{gap:35px}.teacher-values p{font-size:12px}
}
@media(min-width:701px) and (max-width:820px){
 .lesson-grid{gap:12px}.lesson-card>summary{min-height:180px}.lesson-summary strong{font-size:29px}.lesson-intro{font-size:11px}
 .lesson-kicker{font-size:8px}.about-layout{grid-template-columns:36% minmax(0,1fr);gap:25px}.about-portrait{min-height:480px}
 .artist-proof{gap:22px}.inquire-layout{gap:30px}
}
/* Small phones: no card clipping and reliable sticky CTA hit areas. */
@media(max-width:700px){
 .read-progress{height:2px}.lesson-card>summary{min-width:0}.lesson-summary{min-width:0;overflow-wrap:break-word}
 .lesson-visual img{transition-duration:.42s}.lesson-card[open] .lesson-expand{animation-duration:.26s}
 .about-portrait img{animation:none!important}
 .dialog-shell{overscroll-behavior:contain}.inquiry-dialog{overscroll-behavior:contain}
 .mobile-sticky{transition:background .22s ease,box-shadow .22s ease;min-height:49px}
}
@media(max-width:350px){.lesson-intro{line-height:1.4}.wordmark>small{letter-spacing:.15em}}
/* Accessibility + resource saving: disable ALL decorative animation. */
@media(prefers-reduced-motion:reduce){
 .read-progress{display:none}.motion-on .hero-content>* , .motion-on .hero-photo img , .motion-on [data-reveal].in-view{animation:none!important}
 .lesson-card[open] .lesson-expand,.faq-questions details[open]>p,.inquiry-dialog[open] .dialog-shell,.video-dialog[open] .video-shell{animation:none!important}
 .action::before{display:none}.lesson-visual img,.video-card img{transition:none!important}
}
@media(prefers-reduced-data:reduce){.lesson-card>summary::after{display:none}}
/* V4.3 QA correction: the responsive hero must retain readable text where
   the guitarist's light shirt crosses the editorial text column. */
@media(min-width:701px){
 .hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#0C2340E0 0%,#07100db4 37%,#07100d71 55%,#07100d13 82%,transparent)}
 .hero-inner{z-index:2}
 .hero-pitch{max-width:590px}
}
@media(min-width:701px) and (max-width:900px){
 .hero::before{background:linear-gradient(90deg,#07100df2 0%,#07100de7 43%,#07100dc8 70%,#07100d45 100%)}
 .hero-content{max-width:600px}
 .hero-pitch{max-width:560px}
}
/* The gradient belongs inside the photo stack, above the rasterized image. */
@media(min-width:701px){
 .hero-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0C2340E0 0%,#07100d9c 43%,#07100d37 68%,transparent 90%)}
}
@media(min-width:701px) and (max-width:900px){
 .hero-photo::after{background:linear-gradient(90deg,#07100def 0%,#07100ddf 42%,#07100dba 75%,#0C234055 100%)}
}
/* V4.4 / Memphis-first musician & educator + live online program.
   Uses the established V4 design system; all new visuals remain CSS-native. */
:root { --reading-max: 66ch; }
/* Optical typography refinements: never publish a 6.5px brand subtitle. */
.wordmark>small { font-size: 9px; letter-spacing: .145em; margin-top: 5px; color:#ded9cc; }
.wordmark>span { letter-spacing: .155em; }
.desktop-nav { gap:clamp(14px,1.9vw,28px); }
.desktop-nav a { font-size:11px; }
.eyebrow { font-size: 11px; letter-spacing:.12em; }
.lesson-kicker { font-size:10px; }
.lesson-intro { font-size:13px; }
.hero-pitch { max-width:560px; font-size:16px; line-height:1.74; }
.hero-content { max-width:720px; }
.hero-trust { max-width:730px; font-size:10px; letter-spacing:.09em; }
.lesson-visual img { filter:contrast(1.075) saturate(.98); }
.lesson-card:is(:hover,:focus-within) .lesson-visual img { filter:contrast(1.12) saturate(1.08); }
.about-main>p:not(.eyebrow) { font-size:15px; line-height:1.82; }
.about-main>p.about-lead { font-size:clamp(23px,2.2vw,30px); }
.teacher-values { gap:24px; }
.teacher-values p { font-size:13px; }
.proof-teaching-link { margin-top:20px; padding:18px 20px; border-left:2px solid #d6a17a; background:#ffffff09; color:#f0e8db!important; font-size:15px!important; line-height:1.77!important; }
.proof-copy p { font-size:15px; }
/* Prominent remote teaching section: no stock image or simulated screenshot. */
.online-section { scroll-margin-top:80px; position:relative; overflow:hidden; background:#192d25; color:#f7f0e5; padding:clamp(78px,8vw,116px) 0; isolation:isolate; }
.online-section::before { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(ellipse at 87% 12%,#bf865437 0,transparent 45%),radial-gradient(ellipse at 8% 88%,#6178671f,transparent 55%),linear-gradient(115deg,#14251d,#1a3026); }
.online-section::after { content:""; pointer-events:none; position:absolute; top:-15%; right:-17%; border:1px solid #e5bd8840; border-radius:50%; width:55vw; height:55vw; min-width:600px; min-height:600px; z-index:-1; opacity:.45; }
.online-layout { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr); align-items:center; gap:clamp(52px,7.8vw,125px); }
.online-main h2 { max-width:690px; font-size:clamp(52px,5.7vw,80px); margin:16px 0 24px; }
.online-main h2 em { color:#efb587; }
.online-main>p:not(.eyebrow) { max-width:610px; color:#d1dfd4; font-size:15px; line-height:1.83; margin-bottom:17px; }
.online-main>p.online-lead { font:400 clamp(21px,2.1vw,29px)/1.42 var(--serif); color:#fff7e9; letter-spacing:-.012em; margin-bottom:20px; }
.online-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 20px; margin-top:32px; }
.online-actions>span { color:#b7c8b9; font:500 11px/1.5 var(--sans); max-width:220px; }
.online-aside { background:rgba(7,17,12,.46); border:1px solid #a5c2ac30; box-shadow:0 28px 65px #07130b46; padding:clamp(26px,3vw,41px); position:relative; overflow:hidden; }
.online-aside::after { content:""; pointer-events:none; position:absolute; width:180px; height:180px; right:-105px; top:-113px; border:1px solid #efbc8b55; border-radius:50%; box-shadow:0 0 0 40px #d6ac7110,0 0 0 85px #d6ac7107; }
.remote-live { display:flex; gap:12px; align-items:center; color:#ebba93; font:700 10px/1.45 var(--sans); letter-spacing:.15em; padding-bottom:19px; border-bottom:1px solid #9aa89542; }
.live-dot { width:8px; height:8px; flex:0 0 8px; border-radius:50%; background:#e6ac78; box-shadow:0 0 0 5px #e6ac7819; }
.remote-note { display:grid; grid-template-columns:39px minmax(0,1fr); gap:12px; padding:23px 0; border-bottom:1px solid #9aa89536; }
.remote-note>span { font:400 29px/1.1 var(--serif); color:#e7ad84; }
.remote-note strong { display:block; font:500 23px/1.14 var(--serif); letter-spacing:-.018em; color:#f9f0e3; margin-bottom:6px; }
.remote-note p { color:#c6d2c6; font-size:13px; line-height:1.69; max-width:44ch; }
.remote-kit { margin-top:23px; font-size:12px; line-height:1.8; color:#c5d5c6; }
.remote-kit b { color:#f3dfc5; font-weight:700; }
/* FAQ gets its own semantic section and visual rest, retaining original accordion. */
.guide { padding-bottom:clamp(60px,7vw,92px); }
.faq-section { background:#e6e8df; padding:clamp(62px,7vw,95px) 0; }
.faq-wrap { display:grid; grid-template-columns:35% minmax(0,1fr); gap:55px; border:0; margin-top:0; padding-top:0; scroll-margin-top:99px; }
.faq-questions summary { font-size:15px; }
.faq-questions details p { font-size:14px; line-height:1.75; }
/* Well-defined lesson format so online inquiries have their own route. */
.optional-inline { font-weight:400; font-size:10px; letter-spacing:0; text-transform:none; color:#6c756b; margin-left:3px; }
.format-hint { font:400 12px/1.65 var(--sans); color:#66766a; margin:-1px 0 4px; }
.form-grid select { text-overflow:ellipsis; }
.footer-muted { max-width:320px; }
/* Tablet / preserve breathing room, remove 2x2 card squeeze around 700-820px. */
@media(min-width:901px) and (max-width:1130px) {
  .header-wrap { gap:13px; }
  .desktop-nav { gap:13px; }
  .desktop-nav a { font-size:10px; }
  .wordmark>span { font-size:14px; }
  .wordmark>small { font-size:8px; }
  .header-inquire { padding:10px 11px; }
}
@media(min-width:701px) and (max-width:1030px) {
  .online-layout { grid-template-columns:1fr 1fr; gap:30px; }
  .online-main h2 { font-size:clamp(44px,5.3vw,62px); }
  .online-main>p.online-lead { font-size:23px; }
  .online-aside { padding:25px 23px; }
  .remote-note { padding:17px 0; }
  .remote-note strong { font-size:22px; }
  .faq-wrap { gap:28px; }
}
@media(max-width:900px){
  .wordmark>small{font-size:9px;letter-spacing:.13em;}
  .about-main>p:not(.eyebrow){font-size:14px;}
  .online-section { padding:70px 0; }
  .online-layout { gap:25px; }
}
@media(max-width:700px){
  /* Focused phone composition: CTA remains early without reducing body readability. */
  .wordmark>span { font-size:14px; }
  .wordmark>small { font-size:9px; letter-spacing:.085em; }
  .hero-inner{padding-bottom:42px;}
  .hero h1{font-size:clamp(46px,10vw,66px);margin-bottom:12px;}
  .hero-pitch{font-size:14px;line-height:1.7; margin-top:15px;}
  .hero-trust{font-size:9px;line-height:1.7;letter-spacing:.055em;}
  .hero .eyebrow{font-size:10px;line-height:1.5;letter-spacing:.085em;}
  .eyebrow{font-size:10.5px;line-height:1.5;}
  .lesson-kicker{font-size:9px;}
  .lesson-intro{font-size:12px;}
  .online-layout{display:grid;grid-template-columns:1fr;gap:35px;}
  .online-main h2{font-size:clamp(45px,10.5vw,65px);margin:13px 0 20px;}
  .online-main>p.online-lead{font-size:24px;line-height:1.35;}
  .online-main>p:not(.eyebrow){font-size:14px;line-height:1.74;}
  .online-actions{margin-top:25px;align-items:stretch;flex-direction:column;gap:12px;}
  .online-actions .action{width:100%;}
  .online-actions>span{max-width:unset;}
  .online-aside{padding:25px 20px;}
  .remote-note{padding:19px 0;}
  .remote-kit{font-size:12px;}
  .online-section::after{right:-350px;top:38%;}
  .about-main>p:not(.eyebrow){font-size:14px;line-height:1.8;}
  .teacher-values strong{font-size:14px;}
  .teacher-values p{font-size:13px;}
  .proof-copy p{font-size:14px;}
  .faq-section{padding:65px 0;}
  .faq-wrap{display:block;}
  .faq-title{margin-bottom:24px;}
  .faq-questions summary{font-size:15px;}
  .faq-questions details p{font-size:14px;}
  .form-grid label{line-height:1.5;}
}
@media(max-width:390px){
  .wordmark>span{font-size:13px;}
  .wordmark>small{font-size:8.5px;letter-spacing:.08em;}
  .hero .eyebrow{font-size:9.5px;}
  .hero h1{font-size:clamp(44px,11vw,50px);}
  .hero-pitch{font-size:14px;}
  .lesson-kicker{font-size:8.5px;}
  .lesson-intro{font-size:11.5px;}
  .lesson-summary strong{font-size:26px;}
  .remote-note strong{font-size:22px;}
}
@media(max-width:330px){
  .wordmark>small{font-size:8.3px;letter-spacing:.035em;}
  .hero .eyebrow{font-size:8.8px;}
  .lesson-kicker{font-size:8px;}
  .lesson-summary strong{font-size:24px;}
  .lesson-intro{font-size:11px;}
}
@media(prefers-reduced-motion:reduce){.online-section::after{box-shadow:none}}


/* V4.5 / photography art direction, authentic owner-supplied source images. */
/* All cards share a measured tonal treatment without erasing each shot's character. */
.lesson-visual img { filter:contrast(1.055) saturate(.91); }
.lesson-card:is(:hover,:focus-within) .lesson-visual img { filter:contrast(1.08) saturate(.98); }
/* Photo-specific focal points; do not hide students/teachers in a generic center crop. */
#kids .lesson-visual img { object-position:46% 40%; }
#adults .lesson-visual img { object-position:44% 42%; }
#groups .lesson-visual img { object-position:38% 40%; }
#artist-development .lesson-visual img { object-position:53% 38%; }
.about-portrait { background:#393657; }
.about-portrait img { object-position:50% 32%; filter:contrast(1.03) saturate(.95); }
.about-portrait::after{background:linear-gradient(180deg,transparent 55%,rgba(12,20,17,.64) 100%)}
/* Tiny interaction enhancement: direct focus has the same image treatment as hover. */
.lesson-card>summary:focus-visible .lesson-visual img { transform:scale(1.025); }
@media (max-width:900px) {
  #groups .lesson-visual img { object-position:38% 43%; }
  .about-portrait img { object-position:50% 37%; }
}
@media (max-width:700px) {
  #kids .lesson-visual img { object-position:45% 39%; }
  #adults .lesson-visual img { object-position:42% 40%; }
  #groups .lesson-visual img { object-position:42% 46%; }
  #artist-development .lesson-visual img { object-position:54% 40%; }
  .about-portrait img { object-position:50% 33%; }
}
@media (prefers-reduced-motion:reduce) {
  .lesson-card>summary:focus-visible .lesson-visual img { transform:none; }
}


/* V4.5 final audit / legibility without changing the visual system */
.wordmark>small{font-size:10px;letter-spacing:.12em;line-height:1.25}
@media(max-width:700px){
 .wordmark>span{letter-spacing:.105em}
 .wordmark>small{font-size:10px;letter-spacing:.105em}
 .hero .eyebrow{font-size:10px;line-height:1.55}
 .hero-trust{font-size:10px;letter-spacing:.07em;line-height:1.6}
 .lesson-kicker{font-size:10px;line-height:1.35;letter-spacing:.05em}
 .lesson-intro{font-size:12px;line-height:1.43}
 .faq-section{scroll-margin-top:77px}
}
@media(max-width:390px){
 .wordmark>span{font-size:12px}
 .wordmark>small{font-size:9.5px;letter-spacing:.09em}
 .lesson-kicker{font-size:9.5px;letter-spacing:.045em}
 .lesson-intro{font-size:11.5px}
}
@media(max-width:330px){
 .wordmark>small{font-size:10px;letter-spacing:.045em}
 .hero .eyebrow{font-size:10px}
 .lesson-kicker{font-size:10px}
}


/* Match professional portfolio's Bricolage wordmark and navigation */
:root{--display:'Bricolage Grotesque','Instrument Sans',Arial,sans-serif}
.wordmark>span{font-family:var(--display);font-size:22px;font-weight:800;letter-spacing:-.055em;line-height:1.04}
.wordmark>small{font-size:9px;font-weight:650;letter-spacing:.08em;margin-top:7px}
.desktop-nav a,.mobile-nav nav a{font-family:var(--display);font-size:13px;font-weight:700;letter-spacing:-.01em}
.menu-label{font-family:var(--display);font-weight:700;font-size:12px}
.footer-name{font-family:var(--display);font-weight:700;letter-spacing:-.045em}
@media(max-width:600px){.wordmark>span{font-size:19px}.wordmark>small{font-size:8.5px;letter-spacing:.045em}}
@media(max-width:360px){.wordmark>span{font-size:18px}.wordmark>small{font-size:8px}}

.header-inquire{font-family:var(--display);font-weight:800;letter-spacing:.005em}
@media(max-width:600px){.wordmark>small{font-size:10px;letter-spacing:.025em}}
@media(max-width:360px){.wordmark>small{font-size:9.5px;letter-spacing:0}}


/* V2.2 shared Memphis-blue identity: match main Ori Naftaly portfolio. */
:root{--night:#0C2340;--night2:#153554;--paper:#F2F5FA;--ivory:#FFFFFF;--ink:#10243C;--muted:#536A84;--copper:#FFC72C;--copper2:#FFD96A;--line:#CFDDEB;--display:'Bricolage Grotesque',Arial,sans-serif}
.site-header{background:linear-gradient(180deg,rgba(12,35,64,.97),rgba(12,35,64,.90));border-bottom-color:#7D9BC144}
.site-header.scrolled{background:#0C2340}
.wordmark>span{font-family:var(--display);font-size:21px;line-height:1.04;font-weight:800;letter-spacing:-.055em}
.wordmark>small{font-size:10px;line-height:1.25;letter-spacing:.075em;color:#D8E5F4;margin-top:5px}
.desktop-nav a{font-family:var(--display);font-size:13px;letter-spacing:0;font-weight:700}
.desktop-nav a:hover,.desktop-nav a[aria-current]{color:#FFD66A}
.action-copper{background:#FFC72C;color:#0C2340}
.action-copper:hover{background:#FFDD70}
.action-dark{background:#0C2340;color:#fff}
.action-dark:hover{background:#254C74}
.eyebrow.copper{color:#765200}
.eyebrow.warm,.eyebrow.light{color:#FFD66A}
h2 em,h3 em{color:#7A5900}
.hero{background:#0C2340}
.hero-grade{background:linear-gradient(90deg,#0C2340 0%,#0C2340FA 25%,#0C2340DE 42%,#0C234085 63%,#0C23401B 84%),linear-gradient(0deg,#0C2340 0%,transparent 28%),radial-gradient(ellipse at 80% 15%,#7D9BC15C,transparent 53%)}
.hero h1 em,.hero-trust{color:#FFD66A}
.watch-link{border-color:#7D9BC1}
.lesson-card{border-color:#CCD9E8}
.lesson-card .lesson-visual{background:#1B3B5A}
:focus-visible{outline-color:#FFC72C}
::selection{background:#FFC72C;color:#0C2340}
/* integrated portfolio navigation and direct access to other work */
.lesson-global-links{background:#153554;color:#F6F9FD;border-block:1px solid #3C6287}
.lesson-global-links .container{display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;padding-block:16px}
.lesson-global-links strong{font:700 10px/1.4 var(--display);letter-spacing:.11em;text-transform:uppercase;color:#FFD66A;margin-right:7px}
.lesson-global-links a{font:600 13px/1.35 var(--display);color:#E8F1FB;text-decoration:none;border-bottom:1px solid transparent;padding:5px 0}
.lesson-global-links a:hover,.lesson-global-links a:focus-visible{border-color:#FFD66A;color:#FFD66A}
.more-than-lessons{padding:clamp(62px,7vw,92px) 0;background:#E4EBF3;color:#10243C}
.more-than-lessons .more-intro{max-width:780px;margin:12px 0 26px;font-size:clamp(16px,1.5vw,19px);line-height:1.75;color:#405875}
.more-than-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.more-than-links a{padding:23px 22px;background:#FFF;border:1px solid #C5D6E7;color:#0C2340;text-decoration:none;display:flex;flex-direction:column;gap:9px;min-width:0;transition:box-shadow .2s,transform .2s}
.more-than-links a:hover{transform:translateY(-3px);box-shadow:0 10px 24px #0C234026}
.more-than-links strong{font:500 clamp(25px,2.2vw,33px)/1.1 var(--serif)}
.more-than-links span{font:400 13px/1.65 var(--sans);color:#4B6178}
.more-than-lessons .eyebrow{color:#715200}
.wordmark>span,.wordmark>small{text-transform:none}
@media(max-width:980px){.desktop-nav{gap:16px}.desktop-nav a{font-size:12px}}
@media(max-width:700px){.more-than-links{grid-template-columns:1fr}.lesson-global-links .container{gap:8px 17px}.lesson-global-links a{font-size:12px}.wordmark>span{font-size:19px}.wordmark>small{font-size:9px;letter-spacing:.055em}}
@media(prefers-reduced-motion:reduce){.more-than-links a:hover{transform:none}}

/* Final harmony */
.site-footer{background:#091B31;color:#E3EDF8}.site-footer p,.footer-muted,.site-footer a{color:#CADAE9}.site-footer a:hover{color:#FFD66A}.hero-trust{color:#FFD66A}.mobile-nav nav{background:#102E4D}.mobile-nav a:hover{color:#FFD66A}

/* Grizzlies palette completion for inherited legacy lesson sections */
.online-section{background:#153554;color:#F5F9FE}
.online-section::before{background:radial-gradient(ellipse at 89% 14%,rgba(125,155,193,.25),transparent 48%),radial-gradient(ellipse at 5% 89%,rgba(255,199,44,.10),transparent 58%),linear-gradient(115deg,#102B4B,#1B4168)}
.online-section::after{border-color:rgba(255,199,44,.27)}
.online-main h2 em,.inquire h2 em{color:#FFD66A}
.online-main>p:not(.eyebrow){color:#E0EBF7}
.online-main>p.online-lead{color:#F0F6FD}
.faq-questions{border-color:#CBD9E9}
.faq-questions details{border-color:#CBD9E9}
.faq-questions summary::after{color:#755600}
.faq-questions details p{color:#4F6681}
.faq-title>p:not(.eyebrow){color:#536982}
.faq-wrap{border-color:#C7D5E5}
.inquire-copy>p:not(.eyebrow){color:#D9E8F6}
.service-locations{color:#FFD66A;border-color:#55779A}
.site-footer{background:#091B31;color:#E2EDF7}
.site-footer .footer-name{color:#FFFFFF}

/* V2.3: album and award context belongs to Southern Avenue, not an invented solo accolade */
.artist-proof .proof-copy .lesson-honors{border-left:3px solid #FFC72C;background:rgba(125,155,193,.11);padding:14px 18px;margin:18px 0;line-height:1.72;color:#E4EDF9}
.artist-proof .proof-links{flex-wrap:wrap;row-gap:12px}
@media(max-width:600px){.artist-proof .proof-copy .lesson-honors{padding:14px 15px;font-size:14px;line-height:1.7}}

/* v2.5: clear, local service-area information with a responsive editorial layout */
.local-focus-lessons{background:#E8EFF7;color:#12304E;padding:clamp(72px,8vw,112px) 0;border-block:1px solid #C7D5E5}
.local-focus-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,7vw,100px);align-items:start}
.local-focus-lead h2{font-family:var(--serif);font-size:clamp(42px,5vw,68px);line-height:1.04;letter-spacing:-.045em;font-weight:400;margin:12px 0 25px}
.local-focus-lead h2 em{color:#315A83;font-weight:400}.local-focus-lead p:not(.eyebrow){font-size:16px;line-height:1.8;color:#3B5571;max-width:700px}
.local-focus-aside{background:#FFF;border:1px solid #C9D8E7;padding:clamp(24px,3vw,36px);box-shadow:0 14px 35px #0C234012}
.local-focus-aside h3{font-family:var(--serif);font-size:clamp(27px,3vw,37px);font-weight:400;line-height:1.08;margin:0 0 25px}
.local-focus-aside ul{list-style:none;padding:0;margin:0 0 26px}.local-focus-aside li{display:grid;gap:2px;border-bottom:1px solid #D8E2EC;padding:11px 0}.local-focus-aside strong{font-size:14px;color:#142F50}.local-focus-aside li span{font-size:13px;line-height:1.65;color:#526985}
.local-focus-link{display:inline-block;background:#0C2340;color:#fff;font-weight:700;text-decoration:none;padding:13px 18px;margin-bottom:14px}.local-focus-link:hover{background:#1E3A5C}
.local-focus-note{font-size:12px;line-height:1.6;color:#546A82;margin:0}
@media(max-width:840px){.local-focus-inner{grid-template-columns:1fr}.local-focus-lead p:not(.eyebrow){font-size:15px}.local-focus-aside{padding:23px}}

/* V2.6 lessons page: shift hero content for the shared, in-flow main navigation. */
@media(min-width:701px){.hero{min-height:min(780px,calc(98svh - 80px))}.hero-inner{padding-top:70px;padding-bottom:80px}}
@media(max-width:700px){.hero-inner{padding-top:242px}.hero-photo{height:302px}.hero-grade{background:linear-gradient(180deg,#07100d55 0%,#07100d08 20%,#07100d24 32%,#08130f 304px,#08130f 100%),radial-gradient(ellipse at 83% 12%,#cf8a454d,transparent 38%)}}
@media(max-width:390px){.hero-inner{padding-top:215px}.hero-photo{height:270px}.hero-grade{background:linear-gradient(180deg,#07100d55 0%,#07100d0c 25%,#07100d21 31%,#08130f 274px,#08130f 100%)}}

/* Keep the photo credit from crossing the mobile hero copy. */
@media(max-width:700px){.hero .photo-credit{display:none}}

/* V4 consistency repair: legacy mobile overlays used green-black instead of Memphis navy. */
@media(max-width:700px){
 .hero-grade{display:block;background:linear-gradient(180deg,#061c33 0%,#0c234010 18%,#0c234033 33%,#0c2340 304px,#0c2340 100%),radial-gradient(ellipse at 78% 11%,#7d9bc144,transparent 44%)}
 .hero-photo::after{background:linear-gradient(180deg,rgba(12,35,64,.12),rgba(12,35,64,.45) 65%,#0c2340)}
 dialog::backdrop{background:rgba(5,20,36,.88)}
}
@media(max-width:390px){.hero-grade{background:linear-gradient(180deg,#0c234033 0%,#0c23400f 25%,#0c234033 31%,#0c2340 274px,#0c2340 100%)}}


/* --- Source: assets/shared-nav.css --- */
/* Ori Naftaly shared global navigation. Used on all professional and lesson pages. */
.site-head{position:sticky;top:0;left:0;right:0;z-index:150;background:rgba(12,35,64,.975);border-bottom:1px solid rgba(190,211,234,.25);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff}
.site-head .nav-inner{height:80px;width:min(1540px,calc(100% - 2 * clamp(20px,4.6vw,76px)));margin:0 auto;display:flex;align-items:center;gap:clamp(15px,2.5vw,40px)}
.site-head .brand{display:block;color:#fff;text-decoration:none;white-space:nowrap;line-height:1.2;flex-shrink:0;min-width:0}
.site-head .brand>span{display:block;font:800 22px/1.03 'Bricolage Grotesque','Instrument Sans',Arial,sans-serif;letter-spacing:-.055em}
.site-head .brand>small{display:block;margin-top:7px;color:#D3DDEB;font:700 9px/1.2 'Instrument Sans',Arial,sans-serif;letter-spacing:.125em}
.site-head .nav-primary{display:flex;align-items:center;gap:clamp(16px,2.4vw,32px);margin-left:auto}
.site-head .nav-primary>a,.site-head .nav-primary summary{font:700 14px/1.2 'Bricolage Grotesque','Instrument Sans',Arial,sans-serif;letter-spacing:-.012em;text-decoration:none;color:#EAF2FF;white-space:nowrap;cursor:pointer;list-style:none}
.site-head .nav-primary>a:hover,.site-head .nav-primary summary:hover,.site-head .nav-primary>a[aria-current=page],.site-head .nav-dd[open] summary{color:#FFD55D}
.site-head .nav-primary summary::-webkit-details-marker{display:none}
.site-head .nav-primary summary::after{content:'⌄';padding-left:8px;color:#FFC72C}
.site-head .nav-dd{position:relative}
.site-head .nav-dd-panel{position:absolute;top:calc(100% + 29px);left:-27px;min-width:232px;padding:10px;background:#132F50;border:1px solid #6384A8;box-shadow:0 16px 40px #0008}
.site-head .nav-dd-panel a{display:block;text-decoration:none;color:#fff;font:600 14px/1.25 'Bricolage Grotesque','Instrument Sans',Arial,sans-serif;letter-spacing:-.01em;padding:11px 12px}
.site-head .nav-dd-panel a:hover,.site-head .nav-dd-panel a[aria-current=page]{background:#284E75;color:#FFE08A}
.site-head .nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:43px;padding:11px 16px;white-space:nowrap;text-decoration:none;text-transform:uppercase;border:1px solid transparent;background:#FFC72C;color:#0C2340;font:800 11px/1.3 'Bricolage Grotesque','Instrument Sans',Arial,sans-serif;letter-spacing:.008em;transition:background .2s}
.site-head .nav-cta:hover{background:#FFDA64;color:#0C2340;transform:none}
.site-head .menu-btn{display:none;min-width:46px;min-height:44px;align-items:center;justify-content:center;background:transparent;border:1px solid #7D9BC1;color:#fff;font-size:22px;cursor:pointer}
.site-head .mobile-menu[hidden]{display:none!important}
.site-head .mobile-menu{display:none}
.site-head :focus-visible{outline:3px solid #FFC72C;outline-offset:3px}
body.menu-open{overflow:hidden}
@media(max-width:1120px){.site-head .nav-primary{gap:18px}.site-head .nav-primary>a,.site-head .nav-primary summary{font-size:13px}.site-head .nav-cta{display:none}}
@media(max-width:820px){.site-head .nav-primary{display:none}.site-head .nav-cta{display:inline-flex;margin-left:auto}.site-head .menu-btn{display:flex}.site-head .mobile-menu{position:absolute;display:flex;flex-direction:column;top:100%;left:0;right:0;background:#102D4E;padding:16px clamp(20px,4.6vw,76px) 28px;max-height:calc(100dvh - 80px);overflow:auto;box-shadow:0 18px 40px #0007}.site-head .mobile-menu a{padding:12px 0;color:#F3F7FC;text-decoration:none;font:650 16px/1.3 'Bricolage Grotesque','Instrument Sans',Arial,sans-serif;letter-spacing:-.012em;border-bottom:1px solid #3B5878}.site-head .mobile-menu a:last-child{color:#FFC72C}.site-head .mobile-menu a[aria-current=page]{color:#FFD55D}}
@media(max-width:600px){.site-head .nav-inner{height:70px;gap:12px}.site-head .brand>span{font-size:20px}.site-head .brand>small{font-size:10px;letter-spacing:.06em}.site-head .nav-cta{display:none}.site-head .menu-btn{margin-left:auto}.site-head .mobile-menu{max-height:calc(100dvh - 70px)}}
@media(max-width:360px){.site-head .brand>span{font-size:19px}.site-head .brand>small{font-size:9.5px;letter-spacing:.025em}}


/* --- Source: assets/motion.css --- */
/* Ori Naftaly V2.7. Lightweight, editorial motion for the professional portfolio.
   Content is visible by default, with or without JavaScript. The lesson site
   keeps its existing animation system, and both sites share navigation polish. */
:root{--ori-motion-ease:cubic-bezier(.2,.72,.18,1)}
@media (prefers-reduced-motion:no-preference){
  /* Interactive navigation and calls to action, consistent across pages. */
  .site-head .nav-primary>a{position:relative;transition:color .24s ease}
  .site-head .nav-primary>a::after{content:"";position:absolute;bottom:-9px;left:0;right:0;height:2px;background:#FFC72C;transform:scaleX(0);transform-origin:left;transition:transform .28s var(--ori-motion-ease);pointer-events:none}
  .site-head .nav-primary>a:hover::after,.site-head .nav-primary>a:focus-visible::after,.site-head .nav-primary>a[aria-current="page"]::after{transform:scaleX(1)}
  .site-head .nav-cta{transition:background .22s ease,box-shadow .32s ease!important}
  .site-head .nav-cta:hover,.site-head .nav-cta:focus-visible{box-shadow:0 4px 20px rgba(255,199,44,.18)}

  /* Main portfolio. Short initial entrance with no endless motion or layout shift. */
  html.ori-portfolio-motion .hero-content>.eyebrow{animation:ori-hero-rise .58s var(--ori-motion-ease) .08s backwards}
  html.ori-portfolio-motion .hero-content>h1{animation:ori-hero-rise .78s var(--ori-motion-ease) .16s backwards}
  html.ori-portfolio-motion .hero-content>.hero-intro{animation:ori-hero-rise .75s var(--ori-motion-ease) .28s backwards}
  html.ori-portfolio-motion .hero-content>.hero-actions{animation:ori-hero-rise .72s var(--ori-motion-ease) .40s backwards}
  html.ori-portfolio-motion .hero-content>.hero-meta{animation:ori-hero-rise .65s var(--ori-motion-ease) .51s backwards}
  html.ori-portfolio-motion .inner-content>.eyebrow{animation:ori-hero-rise .58s var(--ori-motion-ease) .08s backwards}
  html.ori-portfolio-motion .inner-content>h1{animation:ori-hero-rise .76s var(--ori-motion-ease) .17s backwards}
  html.ori-portfolio-motion .inner-content>.lead{animation:ori-hero-rise .72s var(--ori-motion-ease) .29s backwards}
  html.ori-portfolio-motion .inner-content>.hero-actions,html.ori-portfolio-motion .inner-content>.btn{animation:ori-hero-rise .72s var(--ori-motion-ease) .40s backwards}
  @keyframes ori-hero-rise{from{opacity:.94;transform:translate3d(0,6px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
  @media(min-width:821px){
    html.ori-portfolio-motion .hero-image{animation:ori-photo-settle 1.75s var(--ori-motion-ease) both;transform-origin:70% 42%}
    @keyframes ori-photo-settle{from{transform:scale(1.035)}to{transform:scale(1)}}
  }
  /* Content is already visible. Entrance animation adds a slight emphasis only. */
  html.ori-portfolio-motion .ori-motion-in{animation:ori-soft-entrance .44s var(--ori-motion-ease) var(--ori-delay,0ms) backwards}
  @keyframes ori-soft-entrance{from{opacity:.94;transform:translate3d(0,6px,0)}to{opacity:1;transform:none}}
  /* Album cover motion is part of the existing interaction, not a carousel. */
  .record .record-cover img,.work-feature .work-art img{transition:transform .62s var(--ori-motion-ease)}
  @media(hover:hover) and (pointer:fine){
    .record:hover .record-cover img,.record:focus-visible .record-cover img{transform:scale(1.045)}
  }
}
@media(prefers-reduced-motion:reduce){
  html.ori-portfolio-motion .ori-motion-in{animation:none!important}
  .site-head .nav-primary>a::after{display:none!important}
  html.ori-portfolio-motion .hero-image,html.ori-portfolio-motion .hero-content>*,html.ori-portfolio-motion .inner-content>*{animation:none!important}
}
@media print{
  html.ori-portfolio-motion .ori-motion-in{animation:none!important}
}


/* --- Source: assets/editorial-v3.css --- */
/* ORI NAFTALY / V3.0 / EDITORIAL DESIGN SYSTEM
   Content-led layouts; no third-party UI framework; consistent accessible navigation.
   Site colors: Memphis midnight, soft paper, Beale blue, brass gold. */
:root{--v3-navy:#0c2340;--v3-ink:#152b44;--v3-blue:#7d9bc1;--v3-gold:#ffc72c;--v3-paper:#f3f5f5;--v3-paper2:#e8edf0;--v3-hairline:#cbd5dc;--v3-body:'Instrument Sans',Arial,sans-serif;--v3-display:'Bricolage Grotesque','Instrument Sans',sans-serif;--v3-serif:'Newsreader',Georgia,serif}
.v3-site{background:var(--v3-paper)}
.v3-site h1,.v3-site h2,.v3-site h3{letter-spacing:-.035em}
.v3-site .wrap{width:min(1420px,calc(100% - 2*clamp(22px,4.5vw,82px)))}
.v3-site .site-head{box-shadow:none;background:#0b2039f7}
.v3-site .brand span{font-size:clamp(20px,1.9vw,27px);font-weight:800}
.v3-site .site-head .nav-primary a,.v3-site .site-head .nav-primary summary{font-size:14px}
.v3-overline{font-family:var(--v3-display);font-size:11px;line-height:1.5;letter-spacing:.18em;font-weight:750!important;text-transform:uppercase;margin:0 0 27px;color:inherit;opacity:.78}
.v3-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:34px}
.v3-solid-link{background:var(--v3-gold);color:#071b32!important;min-height:54px;padding:15px 21px;display:inline-flex;align-items:center;gap:30px;text-decoration:none;font-family:var(--v3-display);font-weight:800;font-size:13px;letter-spacing:-.01em;transition:background .2s,transform .2s}
.v3-solid-link:hover{background:#ffe18a;transform:translateY(-2px)}
.v3-quiet-link{color:inherit;text-decoration:underline;text-underline-offset:6px;text-decoration-color:rgba(255,255,255,.6);font-weight:700;font-size:13px}
.v3-quiet-link:hover{color:var(--v3-gold)}
.v3-editorial-link{display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid currentColor;padding:12px 0;font-family:var(--v3-display);font-size:14px;font-weight:750;color:inherit;text-decoration:none}
.v3-editorial-link:hover{color:#205f90}
.v3-site section :is(h1,h2,h3){text-wrap:balance}
.v3-site :is(p,li){text-wrap:pretty}
/* Hero: open space, a full visual panel and a small typeset marginal note. */
.v3-home-hero.hero{background:#0c2340;position:relative;isolation:isolate;min-height:min(840px,90svh);align-items:stretch;display:block;overflow:hidden}
.v3-home-photo{position:absolute;z-index:-1;right:0;top:0;width:55%;height:100%;background-image:linear-gradient(90deg,#0c2340 0%,#0c2340bf 16%,#0c234015 57%),linear-gradient(0deg,#0c23408c,transparent 40%),url('/assets/photos/ori-electric-guitar-stage.webp');background-position:center,center,center 40%;background-size:cover}
.v3-home-hero::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#0c2340 0%,#0c2340f0 31%,#0c234000 76%);pointer-events:none}
.v3-home-hero-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(140px,.45fr);align-items:center;min-height:750px;padding:82px 0 98px;gap:20px}
.v3-home-hero-copy{max-width:860px}
.v3-home-hero h1{font-family:var(--v3-display);font-weight:800;font-size:clamp(64px,7.6vw,135px);letter-spacing:-.075em;line-height:.94;margin:0 0 35px;color:#fff}
.v3-home-hero h1 span{font-family:var(--v3-serif);font-style:italic;font-weight:430;letter-spacing:-.06em;color:#f1f6fe}
.v3-home-lede{color:#e5ecf3!important;font-size:clamp(17px,1.6vw,21px);line-height:1.62;max-width:49ch;margin:0}
.v3-hero-margin{border-left:1px solid #8fa8c14a;padding-left:22px;align-self:end;margin-bottom:74px;color:#c3d4e7;min-height:150px;font-size:12px;letter-spacing:.035em;line-height:1.6}
.v3-hero-margin span{font-size:10px;font-weight:750;letter-spacing:.14em}.v3-hero-margin p{max-width:24ch}
.v3-hero-margin .v3-vertical-mark{display:block;color:#f4c742;margin-top:24px}
.v3-hero-base{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:58px;display:flex;justify-content:space-between;align-items:center;color:#ccd9e8;border-top:1px solid #7286a449;font-size:10px;font-weight:700;letter-spacing:.16em}
.v3-hero-base a{color:#ffd769;text-decoration:none;white-space:nowrap}
/* Acclaim as a compact printed ledger, not 4 boxes. */
.v3-credentials{background:#edf0f2;color:var(--v3-ink);padding:36px 0 28px;border-bottom:1px solid #cad2db}
.v3-credentials-grid{display:grid;grid-template-columns:180px 1fr;gap:40px;align-items:start}
.v3-index-label{font-family:var(--v3-display);font-weight:800;font-size:13px;line-height:1.45;letter-spacing:.06em;margin:8px 0 0}.v3-index-label span{color:#526c85;font-size:10px;letter-spacing:.12em}
.v3-credential-line{display:grid;grid-template-columns:repeat(4,1fr)}
.v3-credential-line a{display:flex;flex-direction:column;gap:8px;text-decoration:none;padding:0 20px;color:var(--v3-ink);border-left:1px solid #c9d3dd;min-width:0}
.v3-credential-line b{font-size:clamp(26px,3vw,46px);line-height:1;letter-spacing:-.065em;font-family:var(--v3-display);font-weight:850}
.v3-credential-line span{font-size:12px;line-height:1.4;font-weight:750}.v3-credential-line small{display:block;color:#5d6f80;font-weight:450;line-height:1.45;margin-top:3px}
.v3-credential-line a:hover b{color:#346c99}.v3-credential-note{font-size:11px;color:#566c80;line-height:1.5;margin-top:18px;margin-bottom:0}
/* Big editorial index of services */
.v3-services{background:var(--v3-paper);padding:clamp(90px,10vw,160px) 0}
.v3-services-layout{display:grid;grid-template-columns:minmax(270px,.84fr) minmax(0,1.16fr);gap:clamp(48px,8vw,130px);align-items:start}
.v3-services h2,.v3-records h2,.v3-story h2,.v3-production-credits h2,.v3-production-method h2,.v3-local-production h2{font-size:clamp(56px,6vw,98px);font-family:var(--v3-serif);font-weight:500;line-height:.96;letter-spacing:-.06em;margin:0 0 23px}
.v3-services h2 i,.v3-records h2 i,.v3-story h2 i,.v3-production-credits h2 i,.v3-production-method h2 i,.v3-local-production h2 i{font-weight:440}
.v3-services-intro>p:not(.v3-overline){max-width:35ch;font-size:17px;color:#4c6477;line-height:1.65}
.v3-service-portrait{margin:55px 0 0;position:relative;max-width:520px}.v3-service-portrait img{width:100%;height:clamp(260px,30vw,430px);object-fit:cover;display:block;filter:saturate(.86)}
.v3-service-portrait figcaption{font-size:10px;font-weight:800;letter-spacing:.15em;margin-top:14px;color:#50677d}
.v3-services-menu{border-top:2px solid var(--v3-ink)}
.v3-services-menu>a{display:grid;grid-template-columns:42px 1fr 25px;gap:15px;padding:28px 3px 29px;border-bottom:1px solid #bac7d1;text-decoration:none;color:var(--v3-ink);align-items:start;transition:padding .2s,background .2s}
.v3-services-menu>a:hover{padding-left:14px;background:#e7edf2}.v3-num{color:#526f8b;font-family:var(--v3-display);font-size:12px;font-weight:750;padding-top:10px}
.v3-service-main{display:flex;flex-direction:column;gap:10px}.v3-service-main strong{font-family:var(--v3-display);font-size:clamp(24px,3vw,42px);line-height:1.1;letter-spacing:-.05em;font-weight:750}.v3-service-main small{font-size:14px;line-height:1.55;color:#5e7489;max-width:43ch}
.v3-arrow{font-size:24px;transition:transform .2s}.v3-services-menu>a:hover .v3-arrow{transform:translate(3px,-3px)}
.v3-services-bottom{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px;font-size:13px;color:#60778a}.v3-services-bottom strong{color:#233c56}
/* Records: one hero album and three compact sleeves. */
.v3-records{background:#0c2340;padding:clamp(90px,9vw,145px) 0 105px;color:#fff}
.v3-records-top{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:end;margin-bottom:53px}
.v3-records-top>div:last-child{max-width:390px}.v3-records-top p:not(.v3-overline){color:#c9d6e5;font-size:17px;line-height:1.7}
.v3-records .v3-inline-light{color:#ffdb77;font-size:13px;font-weight:800;text-decoration:none;border-bottom:1px solid #ffc72c;padding-bottom:9px;display:inline-block;margin-top:7px}
.v3-records-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:clamp(30px,4vw,70px)}
.v3-record-feature{display:grid;grid-template-columns:1fr;align-content:start;color:#fff;text-decoration:none}.v3-record-feature figure{margin:0;background:#152f4b;aspect-ratio:1.13/1;overflow:hidden;display:grid;place-items:center}
.v3-record-feature img{height:100%;width:100%;object-fit:contain;transition:transform .35s}.v3-record-feature:hover img{transform:scale(1.022)}
.v3-record-description{display:grid;grid-template-columns:1.12fr 1fr;gap:8px 22px;padding-top:23px}.v3-record-description>span{grid-column:1/-1;color:#b2cce1;font-size:11px;font-weight:750;letter-spacing:.09em}
.v3-record-description h3{font-size:clamp(43px,5vw,68px);margin:0;font-weight:500}.v3-record-description p{font-size:14px;line-height:1.7;color:#c2d0e1;margin:7px 0 0}
.v3-record-description strong{grid-column:1/-1;color:#ffd578;font-size:13px;margin-top:12px}
.v3-record-stack{border-top:1px solid #7390aa60}.v3-record-stack a{display:grid;grid-template-columns:145px 1fr;gap:20px;padding:21px 0;border-bottom:1px solid #7390aa60;color:#fff;text-decoration:none;align-items:center}
.v3-record-stack a img{width:145px;height:145px;object-fit:contain;background:#1c3b58;transition:transform .25s}.v3-record-stack a:hover img{transform:scale(1.025)}
.v3-record-stack a span{display:flex;flex-direction:column;gap:5px;min-width:0}.v3-record-stack small{font-family:var(--v3-display);font-size:10px;color:#99b9d0;letter-spacing:.08em;font-style:normal}.v3-record-stack b{font-family:var(--v3-serif);font-size:clamp(27px,2.7vw,40px);font-weight:500;line-height:1.12;letter-spacing:-.04em}.v3-record-stack em{font-style:normal;color:#bdccdb;font-size:13px;line-height:1.55}.v3-record-stack strong{color:#ffdc7d;font-size:12px}
.v3-cover-disclaimer{color:#9db7cd;font-size:11px;line-height:1.55;margin:30px 0 0}
/* Portrait and live visual chapters */
.v3-story{padding:clamp(90px,10vw,155px) 0;background:#e5ebee;color:#182e45}.v3-story-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(50px,9vw,145px);align-items:center}
.v3-story-portrait{position:relative;max-width:510px}.v3-story-portrait img{display:block;width:100%;height:clamp(480px,55vw,715px);object-fit:cover;object-position:center 36%;filter:saturate(.86)}.v3-story-portrait>span{display:block;margin-top:13px;font-family:var(--v3-display);font-size:10px;letter-spacing:.12em;font-weight:750}
.v3-story-copy{max-width:690px}.v3-story-lede{font-family:var(--v3-serif);font-size:clamp(27px,2.6vw,40px);line-height:1.23;color:#263c50;margin:35px 0 21px}.v3-story-copy>p:not(.v3-overline):not(.v3-story-lede){font-size:17px;line-height:1.7;color:#51697d;max-width:49ch}.v3-story-footnote{font-weight:700;letter-spacing:.12em;font-size:10px;color:#5d7588;margin-top:80px;line-height:1.6}
.v3-performance{min-height:600px;position:relative;background:#102740;color:white;display:flex;align-items:center;isolation:isolate}.v3-performance-image{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#0c2340 5%,#0c2340da 43%,#0c23403d 100%),url('/assets/photos/crowd.webp') center 52%/cover}.v3-performance-content{padding:100px 0}.v3-performance h2{font-family:var(--v3-display);font-size:clamp(75px,10vw,160px);line-height:.84;letter-spacing:-.075em;font-weight:850;margin:20px 0}.v3-performance h2 i{font-family:var(--v3-serif);font-weight:450;color:#ffdc79;letter-spacing:-.07em}.v3-performance-content>p:not(.v3-overline){color:#e1e9f1;line-height:1.7;max-width:40ch;font-size:16px;margin-bottom:28px}
/* Production: distinct case-study-led layout */
.v3-production-hero.inner-hero{min-height:730px;display:block;background:#0b223c;color:white;position:relative;overflow:hidden}
.v3-production-hero.inner-hero:before{display:none}
.v3-subhero-layout{display:grid;grid-template-columns:1.04fr .96fr;gap:60px;align-items:center;padding:clamp(90px,8vw,130px) 0 100px;min-height:720px}
.v3-subhero-text{position:relative;z-index:2}.v3-page-number{display:block;color:#a9c1d7;margin-bottom:15px;font-family:var(--v3-display);font-size:12px;letter-spacing:.15em}
.v3-subhero h1{font-family:var(--v3-display);font-size:clamp(83px,9vw,155px);letter-spacing:-.09em;line-height:.85;font-weight:850;margin:0 0 38px}.v3-subhero h1 i{font-family:var(--v3-serif);font-weight:400;color:#ffdb7a;letter-spacing:-.065em}
.v3-subhero-text>p:not(.v3-overline){font-size:clamp(17px,1.6vw,20px);line-height:1.65;color:#d4e0eb;max-width:47ch}.v3-subhero-image{margin:0;position:relative;align-self:stretch;min-height:495px;display:flex;align-items:center}.v3-subhero-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:61% center;filter:saturate(.88)}.v3-subhero-image figcaption{position:absolute;right:0;bottom:-30px;letter-spacing:.1em;font-size:10px;color:#b0c6dc;font-weight:750}
.v3-production-credits{background:var(--v3-paper);color:#162a42;padding:clamp(90px,9vw,155px) 0}
.v3-production-intro{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:60px}.v3-production-intro .v3-overline{grid-column:1/-1;margin-bottom:0}.v3-production-intro h2{margin:0}.v3-production-intro>p:not(.v3-overline){font-size:17px;line-height:1.7;color:#536c81;max-width:34ch;align-self:end}
.v3-prod-work{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,8vw,130px);align-items:center;border-top:1px solid #b8c9d4;padding:55px 0 78px}.v3-prod-work:last-child{padding-bottom:0}
.v3-prod-cover{width:100%;background:#193955;aspect-ratio:1/1;display:grid;place-items:center}.v3-prod-cover img{width:100%;height:100%;object-fit:contain}
.v3-prod-work-reverse .v3-prod-cover{grid-column:2;grid-row:1}.v3-prod-work-reverse .v3-prod-detail{grid-column:1;grid-row:1}
.v3-prod-index{display:block;font-family:var(--v3-display);font-size:12px;color:#617d94;letter-spacing:.13em;font-weight:700;margin-bottom:22px}.v3-prod-detail h3{font-family:var(--v3-serif);font-size:clamp(56px,7vw,110px);font-weight:500;line-height:.94;letter-spacing:-.06em;margin:0 0 25px}.v3-prod-role{font-family:var(--v3-display);font-weight:750;font-size:clamp(18px,2vw,26px);line-height:1.3;color:#1c3e61;margin:0 0 22px}
.v3-prod-detail>p:not(.v3-prod-role){font-size:16px;line-height:1.75;max-width:48ch;color:#53687b}.v3-prod-detail>a{display:inline-block;text-decoration:none;border-bottom:1px solid #183a58;padding:12px 0;color:#173f66;font-weight:800;margin-top:16px}.v3-prod-detail>a:hover{color:#3673a9}.v3-prod-detail small{display:block;color:#62798b;font-size:11px;margin-top:17px}
.v3-production-method{background:#dfe8ed;color:#192f46;padding:clamp(95px,10vw,160px) 0}.v3-method-layout{display:grid;grid-template-columns:.93fr 1.07fr;gap:clamp(45px,8vw,150px)}.v3-method-heading>p:not(.v3-overline){font-size:17px;line-height:1.75;max-width:36ch;color:#536a7b}.v3-method-lines{border-top:2px solid #173047}.v3-method-lines>div{display:grid;grid-template-columns:48px 1fr;gap:18px;border-bottom:1px solid #aabdc9;padding:26px 0 29px}.v3-method-lines>div>span{color:#50718c;font-size:12px;font-weight:800;font-family:var(--v3-display);padding-top:7px}.v3-method-lines h3{font-family:var(--v3-display);font-size:clamp(25px,2.5vw,39px);font-weight:750;line-height:1.08;letter-spacing:-.045em;margin:0 0 8px}.v3-method-lines p{font-size:15px;line-height:1.65;color:#536b80;max-width:49ch;margin:0}
.v3-local-production{padding:clamp(95px,9vw,145px) 0;background:#f6f7f6}.v3-local-production-layout{display:grid;grid-template-columns:1fr .85fr;gap:clamp(55px,9vw,140px);align-items:center}.v3-local-production p:not(.v3-overline){font-size:16px;line-height:1.76;color:#4b6377;max-width:56ch}.v3-local-production figure{margin:0}.v3-local-production img{display:block;width:100%;height:500px;object-fit:cover}.v3-local-production figcaption{font-family:var(--v3-display);font-weight:750;font-size:10px;letter-spacing:.13em;margin-top:12px;color:#547087}
/* Other professional pages: editorial rhythm, differentiated from the homepage. */
.v3-site .inner-hero:not(.v3-production-hero){min-height:570px;background:#0c2340}.v3-site .inner-hero:not(.v3-production-hero)::before{opacity:.78}.v3-site .inner-hero:not(.v3-production-hero) h1{font-size:clamp(62px,7.1vw,115px);line-height:.94;font-weight:450;letter-spacing:-.06em;max-width:11.5ch;margin-bottom:20px}.v3-site .inner-hero:not(.v3-production-hero) .lead{max-width:58ch;font-size:clamp(17px,1.6vw,21px)}
.v3-site .inner-hero:not(.v3-production-hero) .eyebrow{font-family:var(--v3-display)}
.v3-site .section-heading{align-items:end}.v3-site .section-heading h2{max-width:20ch}
.v3-site .feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid #17334d;border-bottom:1px solid #b1bfcd}.v3-site .feature-grid .feature{background:transparent;border:0;border-right:1px solid #bdcbd6;padding:35px 35px 38px 0;margin-right:30px}.v3-site .feature-grid .feature:last-child{border-right:0}.v3-site .feature-grid .feature h3{font-family:var(--v3-display);font-size:clamp(27px,2.5vw,37px);font-weight:750;letter-spacing:-.045em}.v3-site .feature-grid .feature p{font-size:15px;line-height:1.7}
.v3-site .work-grid{gap:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;border-top:1px solid #aebdca}.v3-site .work-feature{padding:32px 3vw 35px 0!important;border-bottom:1px solid #b7c5d0!important;background:transparent!important}.v3-site .work-feature:nth-child(even){padding:32px 0 35px 3vw!important;border-left:1px solid #b7c5d0}.v3-site .work-feature h3{font-family:var(--v3-serif);font-size:clamp(32px,3.4vw,53px);font-weight:500;letter-spacing:-.05em}
.v3-site .writing-examples{gap:0;border-top:1px solid #8197ab}.v3-site .writing-examples article{background:transparent;border:0;border-bottom:1px solid #6d879e;padding:30px 25px 30px 0}.v3-site .writing-examples article p{color:#d9e5f3}.v3-site .writing-examples h3{font-family:var(--v3-serif);font-weight:500;font-size:clamp(30px,3vw,45px)}
.v3-site .story-grid{grid-template-columns:.9fr 1.1fr}.v3-site .story-copy h2{max-width:15ch}.v3-site .story-photo{height:680px}.v3-site .story-photo img{object-position:center top}
.v3-site .section.paper,.v3-site .section.warm-paper{color:#142a41}.v3-site .more-call{border-top:1px solid #c7d1d9}
/* Lesson pages share brand while retaining interactive program tabs, FAQs and form. */
.v3-site .lessons .section-header h2,.v3-site .online-section h2,.v3-site .about h2,.v3-site .faq-section h2,.v3-site .inquire h2{letter-spacing:-.05em;text-wrap:balance}
.v3-site .lessons .lesson-grid{gap:15px}.v3-site .lesson-grid .lesson-card{border-radius:0;box-shadow:none!important}.v3-site .lesson-grid .lesson-card:hover{transform:translateY(-2px)}
.v3-site .lesson-grid .lesson-card h3{font-family:var(--v3-display);font-weight:750;letter-spacing:-.03em}
.v3-site .about .about-layout{align-items:center}.v3-site .hero .hero-content{max-width:670px}
.v3-site .more-than-lessons{background:#e5ecf1}.v3-site .local-focus-lessons{background:#f5f7f8}
.v3-site .inquire .form-card{box-shadow:none;border:1px solid #91abc6}
/* Clean CTA and footer after visual chapters */
.v3-site .contact-section{background:#0c2340;border-top:1px solid #44637f}.v3-site .contact-section .form{border-radius:0;box-shadow:none}
.v3-site .foot{border-top:1px solid #44617a}
/* Motion is gentle. Core content never depends on animation. */
.v3-services-menu a,.v3-record-stack a,.v3-prod-work,.v3-credential-line a{will-change:auto}
@media(max-width:1080px){.v3-home-hero-grid{grid-template-columns:1fr;min-height:720px}.v3-hero-margin{display:none}.v3-credentials-grid{grid-template-columns:1fr;gap:20px}.v3-credential-line a:first-child{padding-left:0;border-left:0}.v3-services-layout{gap:35px}.v3-services h2,.v3-records h2,.v3-story h2,.v3-production-credits h2,.v3-production-method h2,.v3-local-production h2{font-size:clamp(53px,6vw,85px)}.v3-subhero-layout{gap:35px}}
@media(max-width:800px){.v3-home-hero.hero{min-height:720px}.v3-home-photo{width:100%;background-image:linear-gradient(90deg,#0c2340ef,#0c234079),linear-gradient(0deg,#0c2340cc,transparent 60%),url('/assets/photos/ori-electric-guitar-stage.webp');background-position:center,center,70% center}.v3-home-hero::after{background:linear-gradient(90deg,#0c2340de,#0c23402d)}.v3-home-hero-grid{padding:90px 0 95px}.v3-home-hero h1{font-size:clamp(63px,10vw,100px)}.v3-credential-line{grid-template-columns:repeat(2,1fr);gap:18px 0}.v3-credential-line a:nth-child(3){padding-left:0;border-left:0}.v3-credential-note{padding-top:5px}.v3-services-layout,.v3-records-top,.v3-records-grid,.v3-story-layout,.v3-production-intro,.v3-method-layout,.v3-local-production-layout{grid-template-columns:1fr}.v3-service-portrait{display:none}.v3-services-intro>p:not(.v3-overline){max-width:50ch}.v3-records-top{gap:20px}.v3-records-top>div:last-child{max-width:600px}.v3-records-grid{gap:35px}.v3-story-layout{gap:50px}.v3-story-portrait{max-width:500px}.v3-story-portrait img{height:440px}.v3-story-footnote{margin-top:35px}.v3-subhero-layout{grid-template-columns:1fr;min-height:0;padding:75px 0 85px}.v3-subhero-text{max-width:680px}.v3-subhero h1{font-size:clamp(75px,11vw,115px)}.v3-subhero-image{height:350px;min-height:350px}.v3-prod-work{gap:30px}.v3-prod-work-reverse .v3-prod-cover,.v3-prod-work-reverse .v3-prod-detail{grid-column:auto;grid-row:auto}.v3-prod-work{grid-template-columns:.75fr 1fr}.v3-production-intro>p:not(.v3-overline){max-width:60ch}.v3-method-heading>p:not(.v3-overline){max-width:60ch}.v3-local-production img{height:380px}.v3-site .work-grid{grid-template-columns:1fr!important}.v3-site .work-feature,.v3-site .work-feature:nth-child(even){padding:25px 0!important;border-left:0}.v3-site .feature-grid{grid-template-columns:1fr}.v3-site .feature-grid .feature{border-right:0;border-bottom:1px solid #c0cbd6;padding:24px 0;margin:0}.v3-site .feature-grid .feature:last-child{border-bottom:0}}
@media(max-width:600px){.v3-site .wrap{width:calc(100% - 40px)}.v3-home-hero.hero{min-height:720px}.v3-home-photo{background-position:center,center,64% center}.v3-home-hero-grid{padding:90px 0 75px;min-height:660px;align-items:center}.v3-home-hero h1{font-size:clamp(57px,11.6vw,76px);line-height:.98;margin-bottom:24px}.v3-home-lede{font-size:16px;line-height:1.65}.v3-actions{gap:17px;margin-top:26px}.v3-quiet-link{font-size:12px}.v3-solid-link{min-height:51px;padding:13px 17px}.v3-hero-base{font-size:9px;height:52px}.v3-hero-base>span{display:none}.v3-hero-base a{margin-left:auto}.v3-credentials{padding:28px 0}.v3-credentials-grid{gap:17px}.v3-index-label{font-size:12px}.v3-credential-line a{padding:0 8px 0 13px}.v3-credential-line a:nth-child(odd){padding-left:0}.v3-credential-line b{font-size:30px}.v3-credential-line span{font-size:11px}.v3-credential-note{font-size:10px}.v3-services,.v3-records,.v3-story,.v3-production-credits,.v3-production-method,.v3-local-production{padding:75px 0}.v3-services h2,.v3-records h2,.v3-story h2,.v3-production-credits h2,.v3-production-method h2,.v3-local-production h2{font-size:clamp(48px,11vw,72px)}.v3-services-layout{gap:30px}.v3-services-menu>a{grid-template-columns:25px 1fr 20px;gap:12px;padding:22px 0}.v3-service-main strong{font-size:26px}.v3-service-main small{font-size:13px}.v3-arrow{font-size:21px}.v3-records-top{margin-bottom:30px}.v3-records-top p:not(.v3-overline){font-size:15px}.v3-record-description{grid-template-columns:1fr}.v3-record-description p{margin-top:0}.v3-record-description h3{font-size:47px}.v3-record-stack a{grid-template-columns:104px 1fr;gap:14px}.v3-record-stack a img{width:104px;height:104px}.v3-record-stack b{font-size:28px}.v3-record-stack small{font-size:9px}.v3-record-stack em{font-size:12px}.v3-story-portrait img{height:410px}.v3-story-lede{font-size:31px}.v3-story-copy>p:not(.v3-overline):not(.v3-story-lede){font-size:15px}.v3-performance{min-height:550px}.v3-performance-content{padding:80px 0}.v3-performance h2{font-size:clamp(76px,17vw,112px)}.v3-subhero-layout{padding:65px 0 75px;gap:43px}.v3-subhero h1{font-size:clamp(66px,16vw,100px)}.v3-subhero-text>p:not(.v3-overline){font-size:16px}.v3-subhero-image{height:270px;min-height:270px}.v3-prod-work,.v3-prod-work-reverse{display:flex;flex-direction:column;align-items:stretch;padding:36px 0 55px}.v3-prod-cover{width:min(100%,420px)}.v3-prod-detail h3{font-size:65px}.v3-method-lines h3{font-size:29px}.v3-local-production img{height:280px}.v3-site .inner-hero:not(.v3-production-hero) h1{font-size:clamp(52px,11vw,78px)}.v3-site .section-heading>p{font-size:15px}.v3-site .work-feature{grid-template-columns:120px 1fr;gap:15px}.v3-site .work-art{width:120px;height:120px}.v3-site .story-photo{height:480px}}
@media(max-width:360px){.v3-home-hero h1{font-size:53px}.v3-record-stack a{grid-template-columns:88px 1fr}.v3-record-stack a img{width:88px;height:88px}.v3-service-main strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){.v3-site *,.v3-site *::before,.v3-site *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* V3 finish: keep the hero's photography uncluttered and mobile titles intentional. */
.v3-home-hero-grid{grid-template-columns:minmax(0,1fr)}
.v3-home-hero-copy{max-width:890px}
.v3-site .lessons.hero,.v3-site .hero:has(.hero-photo){background:#0c2340}
.v3-site .hero-grade{background:linear-gradient(90deg,#0c2340e8,#0c234043)!important}
.v3-site .about.section-dark{background:#0c2340!important}
.v3-site .inquire.section-dark{background:#0c2340!important}
.v3-site .site-footer{background:#091b31!important;color:#e3eaf4!important}
.v3-site .more-than-lessons{display:none}
.v3-error-screen{background:#0c2340;color:white;min-height:65svh;display:flex;align-items:center;padding:100px 0}
.v3-error-screen h1{font-family:var(--v3-display);font-size:clamp(70px,12vw,160px);line-height:.9;letter-spacing:-.075em;font-weight:800;margin:0 0 25px}
.v3-error-screen h1 i{font-family:var(--v3-serif);font-weight:400;color:#ffda79}
.v3-error-screen p:not(.v3-overline){color:#d6e3ed;max-width:45ch;font-size:18px}
.v3-error-links{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px}
.v3-error-links a{border:1px solid #6887a3;padding:12px 16px;color:#fff;text-decoration:none;font-size:13px;font-weight:750}
.v3-error-links a:hover{border-color:#ffc72c;color:#ffc72c}
@media(max-width:600px){.v3-home-hero h1{font-size:clamp(40px,11.6vw,50px);line-height:1.07;letter-spacing:-.075em}.v3-home-hero h1 span{white-space:nowrap;font-size:.91em}.v3-home-hero-grid{min-height:630px}.v3-site .hero-grade{background:linear-gradient(180deg,#0c234010 0%,#0c2340ed 53%,#0c2340 100%)!important}.v3-site .hero:has(.hero-photo){background:#0c2340}.v3-error-screen{padding:75px 0}}


/* --- Source: assets/header-v31.css --- */
/* V3.1 — Editorial masthead. A quiet typographic signature, not an agency template. */
.site-head{position:sticky;top:0;z-index:150;color:#F0F4F8;background:#0C2340;border-bottom:1px solid rgba(172,197,220,.32);backdrop-filter:none;-webkit-backdrop-filter:none}
.site-head .nav-inner{height:85px;width:min(1480px,calc(100% - 2 * clamp(22px,4.2vw,66px)));margin-inline:auto;display:flex;align-items:center;gap:0}
.site-head .brand{display:inline-flex;align-items:baseline;gap:.16em;min-width:auto;flex:none;color:#FAF5E9;text-decoration:none;white-space:nowrap;font:500 clamp(29px,2.65vw,40px)/1 'Newsreader',Georgia,serif;letter-spacing:-.065em}
.site-head .brand .brand-first,.site-head .brand .brand-last{display:inline;letter-spacing:inherit;font:inherit;color:inherit}
.site-head .brand .brand-first{font-style:italic;font-weight:400;padding-right:.02em}
.site-head .brand .brand-last{font-weight:500}
.site-head .nav-primary{display:flex;gap:clamp(19px,1.75vw,30px);align-items:center;margin-left:auto;padding-left:clamp(28px,3.3vw,50px)}
.site-head .nav-primary>a{position:relative;display:inline-flex;align-items:center;min-height:50px;font:500 clamp(13px,1.02vw,15px)/1.3 'Instrument Sans',Arial,sans-serif;letter-spacing:0;color:#DEE7F1;text-decoration:none;white-space:nowrap;transition:color .18s ease}
.site-head .nav-primary>a::after{content:'';position:absolute;bottom:9px;left:0;right:100%;height:1px;background:#FFC72C;transition:right .2s ease}
.site-head .nav-primary>a:hover,.site-head .nav-primary>a[aria-current=page]{color:#FFFFFF}
.site-head .nav-primary>a:hover::after,.site-head .nav-primary>a[aria-current=page]::after{right:0}
.site-head .nav-contact{display:inline-flex;flex:none;align-items:center;gap:8px;margin-left:clamp(20px,2.3vw,36px);padding:11px 0 10px;color:#FFC72C;border-bottom:1px solid #FFC72C;font:600 13px/1.2 'Instrument Sans',Arial,sans-serif;letter-spacing:0;text-decoration:none;white-space:nowrap;transition:color .2s,border-color .2s}
.site-head .nav-contact span{font-size:17px;font-weight:400;transition:transform .2s}
.site-head .nav-contact:hover{color:#fff;border-color:#fff}
.site-head .nav-contact:hover span{transform:translate(2px,-2px)}
.site-head .menu-btn{display:none;align-items:center;gap:13px;padding:10px 0 10px 12px;color:#F0F4F8;background:transparent;border:0;min-height:44px;min-width:70px;cursor:pointer;text-transform:none}
.site-head .menu-word{font:600 12px/1 'Instrument Sans',Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.site-head .menu-lines{width:24px;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.site-head .menu-lines i{display:block;height:1px;background:currentColor;width:24px;transition:transform .2s,width .2s}
.site-head .menu-lines i:last-child{width:16px}
.site-head .menu-btn[aria-expanded=true] .menu-lines i:first-child{transform:translateY(3.5px) rotate(45deg)}
.site-head .menu-btn[aria-expanded=true] .menu-lines i:last-child{width:24px;transform:translateY(-3.5px) rotate(-45deg)}
.site-head .mobile-menu[hidden]{display:none!important}
.site-head .mobile-menu{display:none}
.site-head :focus-visible{outline:2px solid #FFC72C;outline-offset:5px}
@media(max-width:1200px){.site-head .nav-primary{gap:19px;padding-left:35px}.site-head .nav-primary>a{font-size:13px}.site-head .nav-contact{margin-left:24px}}
@media(max-width:1080px){
.site-head .nav-primary,.site-head .nav-contact{display:none}
.site-head .menu-btn{display:inline-flex;margin-left:auto}
.site-head .nav-inner{height:76px}
.site-head .mobile-menu{position:absolute;display:flex;top:100%;left:0;right:0;flex-direction:column;background:#0C2340;padding:25px clamp(24px,5vw,66px) 45px;max-height:calc(100dvh - 76px);overflow:auto;box-shadow:0 20px 42px #03172b66;border-bottom:1px solid #54749a}
.site-head .mobile-menu-title{font:500 12px/1.2 'Instrument Sans',Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;color:#97B3D0;margin-bottom:16px}
.site-head .mobile-menu>a:not(.mobile-inquiry){display:grid;grid-template-columns:38px 1fr;align-items:baseline;gap:8px;padding:12px 0;color:#F1F3F7;text-decoration:none;border-bottom:1px solid rgba(173,195,219,.2);font:400 clamp(28px,5.6vw,42px)/1.16 'Newsreader',Georgia,serif;letter-spacing:-.03em}
.site-head .mobile-menu>a:not(.mobile-inquiry)[aria-current=page]{color:#FFC72C}
.site-head .mobile-menu .menu-index{font:500 11px/1 'Instrument Sans',Arial,sans-serif;color:#9AB1CC;letter-spacing:.08em}
.site-head .mobile-inquiry{margin-top:29px;display:flex;align-items:center;justify-content:space-between;color:#FFC72C;font:600 15px/1.3 'Instrument Sans',Arial,sans-serif;text-decoration:none;border-bottom:1px solid #FFC72C;padding:10px 0 14px}
.site-head .mobile-inquiry span{font-size:23px;font-weight:400}
}
@media(max-width:600px){.site-head .nav-inner{height:69px}.site-head .brand{font-size:31px}.site-head .mobile-menu{max-height:calc(100dvh - 69px);padding-top:22px}.site-head .menu-word{font-size:11px}}
@media(max-width:360px){.site-head .brand{font-size:28px}}
@media(prefers-reduced-motion:reduce){.site-head .menu-lines i,.site-head .nav-primary>a::after,.site-head .nav-contact{transition:none!important}}


/* --- Source: assets/ui-audit-v41.css --- */
/* Ori Naftaly V4.1 | Sitewide typography, rhythm, spacing, and masthead corrections. */
:root { --ui-header: 70px; --ui-rule: rgba(141,168,192,.32); }
html { scroll-padding-top: calc(var(--ui-header) + 14px); }
body [id] { scroll-margin-top: calc(var(--ui-header) + 14px); }

/* The navigation is a centered editorial index, not a logo-and-agency header. */
.site-head, .v3-site .site-head, .onepage-site .site-head {
  background: #0c2340; border-bottom: 1px solid var(--ui-rule); box-shadow:none;
}
.site-head .nav-inner, .onepage-site .site-head .nav-inner {
  display:flex; justify-content:center; align-items:center; position:relative;
  height:var(--ui-header); min-height:var(--ui-header);
  width:min(1200px,calc(100% - 40px)); margin:0 auto; padding:0; gap:0;
}
.site-head .brand {display:none!important}
.site-head .nav-primary, .v3-site .site-head .nav-primary, .onepage-site .site-head .nav-primary {
  display:flex; align-items:center; justify-content:center;
  gap:clamp(20px,2.8vw,41px); margin:0; padding:0;
  width:auto; max-width:100%;
}
.site-head .nav-primary > a, .v3-site .site-head .nav-primary > a, .onepage-site .site-head .nav-primary > a {
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  margin:0; padding:7px 0; min-height:46px;
  color:#d9e5f1; border:0; background:transparent;
  font:500 14px/1.3 'DM Sans','Instrument Sans',Arial,sans-serif;
  letter-spacing:.005em; white-space:nowrap; text-decoration:none;
}
.site-head .nav-primary > a::after {bottom:6px}
.site-head .nav-primary > a:hover, .onepage-site .site-head .nav-primary > a:hover,
.site-head .nav-primary > a[aria-current="location"], .onepage-site .site-head .nav-primary > a[aria-current="location"] {color:#fff}
.site-head .nav-primary > a.nav-inquire, .v3-site .site-head .nav-primary > a.nav-inquire,
.onepage-site .site-head .nav-primary > a.nav-inquire {
  color:#ffd05d; border-bottom:0; gap:7px; font-weight:700;
}
.site-head .nav-primary > a.nav-inquire span {font-size:15px; line-height:1; transition:transform .2s ease}
.site-head .nav-primary > a.nav-inquire:hover span{transform:translate(2px,-2px)}
.site-head .menu-btn{display:none}

/* A visible but quiet focus treatment, with no click target smaller than 44px. */
.site-head :focus-visible{outline:2px solid #ffc72c;outline-offset:3px}
.site-head .nav-primary a {touch-action:manipulation}

/* Main homepage hero: keep kicker, name and description in separate readable bands. */
.onepage-site .opening {
  min-height:clamp(620px,calc(100svh - var(--ui-header)),790px);
  padding:clamp(100px,10vw,142px) 0 105px;
}
.onepage-site .opening-inner{isolation:isolate}
.onepage-site .opening .kicker{
  font-size:11px; line-height:1.65; letter-spacing:.13em;
  max-width:760px; margin:0 0 20px;
}
.onepage-site .opening h1 {
  font-size:clamp(88px,10.3vw,155px);
  line-height:1.02; letter-spacing:-.063em;
  max-width:950px; margin:0 0 26px;
  text-wrap:balance;
}
.onepage-site .opening h1 i{letter-spacing:-.063em}
.onepage-site .opening-intro{
  max-width:525px; font-size:clamp(18px,1.55vw,22px); line-height:1.56;
  text-wrap:pretty; margin-bottom:0;
}
.onepage-site .opening-actions{gap:18px 29px; margin-top:27px}
.onepage-site .opening-bottom{bottom:22px}

/* Across the long read: intentional line breaks, more legible small copy. */
.onepage-site section h2 {line-height:1.035;letter-spacing:-.046em}
.onepage-site .section-heading{margin-bottom:clamp(28px,3.6vw,52px)}
.onepage-site .kicker{font-size:11.5px;line-height:1.55;letter-spacing:.12em}
.onepage-site p:not(.kicker){text-wrap:pretty}
.onepage-site .recognition-grid span{font-size:12px}
.onepage-site .recognition-footnote,
.onepage-site .micro-caption,.onepage-site .image-note,
.onepage-site .privacy-note{font-size:12px;line-height:1.65}
.onepage-site .recognition-grid>div{min-width:0}
.onepage-site .record-row strong{line-height:1.12}
.onepage-site .record-caption h3{line-height:1.08}
.onepage-site .production-intro h2,.onepage-site .writing-intro h2,
.onepage-site .about-layout h2{margin-top:20px}
.onepage-site .production-intro .large-prose,
.onepage-site .lessons-block .large-prose,
.onepage-site .about-layout .large-prose{line-height:1.25}
.onepage-site .production-proof{padding-top:clamp(16px,3vw,55px)}
.onepage-site .production-credit strong{line-height:1.13}
.onepage-site .song-ledger{padding-top:clamp(15px,3vw,45px)}
.onepage-site .contact-head h2{font-size:clamp(76px,10vw,142px);line-height:1.02}
.onepage-site .form-panel label {font-size:13px;line-height:1.5}
.onepage-site .form-panel input:not([type=checkbox]),
.onepage-site .form-panel textarea,.onepage-site .form-panel select{font-size:16px}
.onepage-site .form-panel button {min-height:50px}
.onepage-site .footer-bottom{font-size:12px}

/* Supporting pages use the same quiet header and readable text scale. */
.v3-site :is(.v3-subhero h1,.inner-hero h1) {line-height:1.01;letter-spacing:-.055em}
.v3-site .v3-subhero h1{font-size:clamp(72px,8vw,130px)}
.v3-site :is(.v3-production-credits h2,.v3-production-method h2,.v3-local-production h2){line-height:1.04}
.v3-site .v3-overline{line-height:1.65;letter-spacing:.13em;font-size:11.5px}
.v3-site :is(.v3-prod-detail h3,.v3-performance h2){line-height:1.04}
.v3-site .eyebrow{line-height:1.6}
.v3-site .lead,.v3-site .hero-line,.v3-site .hero-pitch{line-height:1.6}
.v3-site .lead-form :is(input,select,textarea){font-size:16px}

@media(max-width:980px){
 :root{--ui-header:64px}
 .site-head .nav-inner,.onepage-site .site-head .nav-inner{height:var(--ui-header);min-height:var(--ui-header)}
 .site-head .nav-primary,.v3-site .site-head .nav-primary,.onepage-site .site-head .nav-primary{display:none!important}
 .site-head .menu-btn,.onepage-site .site-head .menu-btn {
   display:inline-flex; justify-content:center; align-items:center; margin:0;
   min-width:105px;min-height:48px; padding:10px 14px; gap:12px;
 }
 .site-head .mobile-menu,.onepage-site .site-head .mobile-menu {
   max-height:calc(100dvh - var(--ui-header));padding:25px clamp(24px,5vw,66px) 40px;
 }
 .site-head .mobile-menu[hidden]{display:none!important}
 .onepage-site .opening {min-height:700px}
}
@media(max-width:650px){
 :root{--ui-header:62px}
 .site-head .nav-inner,.onepage-site .site-head .nav-inner{height:62px;min-height:62px}
 .site-head .mobile-menu,.onepage-site .site-head .mobile-menu{max-height:calc(100dvh - 62px)}
 .onepage-site .opening {
   min-height:clamp(685px,calc(100svh - 62px),820px);
   padding:94px 0 100px;align-items:flex-end;
 }
 .onepage-site .opening .kicker {
   font-size:10.5px;line-height:1.6;letter-spacing:.105em;
   margin:0 0 15px;max-width:340px;
 }
 .onepage-site .opening h1 {
   font-size:clamp(59px,17vw,83px);line-height:1.08;
   margin:0 0 18px;letter-spacing:-.063em;
 }
 .onepage-site .opening-intro{font-size:16px;line-height:1.58;max-width:410px}
 .onepage-site .opening-actions{margin-top:22px;gap:12px 23px}
 .onepage-site .opening-actions .text-action{font-size:13px;min-height:40px;align-items:center}
 .onepage-site .opening-bottom{bottom:15px}
 .onepage-site section h2{font-size:clamp(50px,13vw,78px);line-height:1.04}
 .onepage-site .record-caption h3{font-size:clamp(44px,12vw,62px)}
 .onepage-site .record-row strong{font-size:clamp(28px,8vw,35px)}
 .onepage-site .contact-head h2{font-size:clamp(70px,15vw,98px)}
 .onepage-site .contact-head{margin-bottom:38px}
 .onepage-site .form-panel{padding:clamp(22px,6vw,30px)}
 .onepage-site .form-panel h3{font-size:clamp(39px,11vw,52px);line-height:1.08}
 .onepage-site .recognition-grid span{font-size:12px}
 .onepage-site .recognition-grid>div{padding:19px 13px}
 .onepage-site .records-block,.onepage-site .production-block,
 .onepage-site .writing-block,.onepage-site .lessons-block,
 .onepage-site .about-block,.onepage-site .contact-block{padding-top:clamp(68px,18vw,91px);padding-bottom:clamp(69px,18vw,94px)}
 .v3-site .v3-subhero h1 {font-size:clamp(62px,11vw,95px);line-height:1.04}
 .v3-site .inner-hero:not(.v3-production-hero) h1{font-size:clamp(52px,12vw,76px);line-height:1.05}
 .v3-site :is(.v3-production-credits h2,.v3-production-method h2,.v3-local-production h2){font-size:clamp(48px,12vw,72px);line-height:1.055}
}
@media(max-width:360px){
 .onepage-site .opening h1{font-size:clamp(54px,16.5vw,61px)}
 .onepage-site .opening-actions{gap:8px 14px}
 .onepage-site .opening-actions .text-action{font-size:12px}
 .onepage-site .contact-head h2{font-size:70px}
}
@media(prefers-reduced-motion:reduce){.site-head .nav-primary a::after{transition:none!important}}

/* Final audit findings: preserve breathing room in the dedicated Lessons hero. */
.v3-site .hero h1{line-height:1.055;letter-spacing:-.045em}
.v3-site .v3-subhero-image figcaption{
  bottom:12px;right:12px;max-width:calc(100% - 24px);
  padding:7px 10px;background:rgba(9,31,51,.78);color:#eff5fa;
  line-height:1.5;letter-spacing:.06em;
}
body.menu-open{overflow:hidden}

/* Keep the mobile navigation as a complete screen-level panel, not a short dropdown. */
@media(max-width:980px){
 .site-head .mobile-menu,.onepage-site .site-head .mobile-menu{
   height:calc(100dvh - var(--ui-header));
   max-height:calc(100dvh - var(--ui-header));
   min-height:0; overflow-y:auto; overscroll-behavior:contain;
   box-shadow:none;
 }
}


/* --- Source: assets/forms-v42.css --- */
/* V4.2: shorter forms with clearer hierarchy and comfortable mobile fields. */
.onepage-site .form-panel form{gap:16px}
.onepage-site .form-panel>p:not(.kicker){margin-bottom:23px}
.onepage-site .form-panel label{gap:7px;font-size:13px;line-height:1.45}
.onepage-site .form-panel :is(input:not([type=checkbox]),select,textarea){font-size:16px;line-height:1.5;min-height:48px;padding:12px 14px}
.onepage-site .form-panel textarea{min-height:92px}
.onepage-site .form-panel button{margin-top:3px;min-height:52px;align-items:center;cursor:pointer}
.onepage-site .form-panel .form-short-note{margin:0;color:#516b80;font-size:12px;line-height:1.55}
.onepage-site .form-panel .field-label{display:block}
/* The /lessons/ form is a separate visual shell but has the same short fields. */
.lead-form .simplified-fields{margin-bottom:13px}
.lead-form .full-label{display:block;margin:15px 0 0}
.lead-form .field-label{display:block;margin-bottom:7px}
.lead-form .form-short-note{margin:14px 0 18px;color:#526b83;font-size:13px;line-height:1.6}
.lead-form .full-label select,.lead-form .full-label textarea{display:block;width:100%;margin-top:5px;font-size:16px;min-height:48px}
.lead-form .full-label textarea{min-height:100px;resize:vertical}
.lead-form .form-email-alt{margin-top:14px}
@media(max-width:650px){.onepage-site .form-panel{padding:26px 23px}.onepage-site .form-panel form{gap:14px}}
/* Match the existing two input labels and remove legacy form spacing. */
.lead-form{gap:13px}
.lead-form .full-label{margin:0;font:700 10px/1.45 var(--sans);color:#405447;letter-spacing:.08em;text-transform:uppercase}
.lead-form .full-label .field-label{font-weight:700;color:#405447;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.lead-form .full-label select,.lead-form .full-label textarea{margin-top:0}
.lead-form .form-short-note{margin:1px 0 0;font-size:12px;color:#596b65}
.lead-form .privacy{margin:0;line-height:1.6}
.lead-form .form-email-alt{margin:0;font-size:12px}


/* --- Source: assets/targeted-ui-v410.css --- */
/* Ori Naftaly V4.10 | four targeted UX refinements; no redesign */
.contact-chooser{display:none}
@media (max-width:700px){
  /* Mobile inquiry chooser is only enabled when JS can manage form visibility.
     If JS fails, both native Netlify forms remain accessible, as before. */
  .onepage-site.contact-js .contact-chooser{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:-22px 0 17px}
  .onepage-site .contact-chooser button{appearance:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;text-align:left;min-height:72px;width:100%;border:1px solid #b9c8d2;border-radius:0;background:#fff;color:#17344e;padding:12px;cursor:pointer}
  .onepage-site .contact-chooser button[aria-pressed="true"]{border-color:#0c2340;box-shadow:inset 0 0 0 1px #0c2340;background:#e9f1f7}
  .onepage-site .contact-chooser button strong{font:700 14px/1.2 'Instrument Sans',Arial,sans-serif}
  .onepage-site .contact-chooser button span{font:400 11px/1.35 'Instrument Sans',Arial,sans-serif;color:#446176}
  .onepage-site .contact-chooser button:focus-visible{outline:3px solid #b48a27;outline-offset:3px}
  .onepage-site .contact-block .form-panel[hidden]{display:none!important}
  /* Make important action links and footer navigation finger-friendly. */
  .onepage-site .footer-bottom nav{gap:4px 6px}
  .onepage-site .footer-bottom nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 6px;font-size:12px}
  .onepage-site :is(.editorial-link,.text-action){display:inline-flex;align-items:center;min-height:44px;padding-block:8px;max-width:100%}
  .onepage-site :is(.fallback-email a,.privacy-note a){display:inline-flex;align-items:center;min-height:44px;vertical-align:middle}
  .onepage-site :is(.kicker,.micro-heading,.record-caption small,.record-row small){font-size:11px}
  body:not(.onepage-site) .eyebrow{font-size:11px}
  .lesson-kicker,.hero-trust{font-size:10px}
  .foot .foot-grid nav a{display:flex;align-items:center;min-height:44px;padding-block:7px;font-size:14px}
  .foot :is(.text-link,.play-link){display:inline-flex;align-items:center;min-height:44px;padding-block:8px}
  .site-footer .footer-layout nav,.site-footer .footer-layout>div:last-child{gap:0}
  .site-footer :is(.footer-layout nav a,.footer-layout>div:last-child a){display:inline-flex;align-items:center;min-height:44px;font-size:14px;padding:7px 0}
  .site-footer .footer-layout :is(.footer-muted,.footer-heading){font-size:12px;line-height:1.5}
  .site-footer :is(.quiet-cta,.watch-link,.youtube-direct,.local-focus-link){display:inline-flex;align-items:center;min-height:44px;padding-block:7px}
}


/* V4.6: previously inline stagger variables, now CSP-safe. */
.lesson-delay-0{--reveal-delay:0ms}
.lesson-delay-75{--reveal-delay:75ms}
.lesson-delay-150{--reveal-delay:150ms}
.lesson-delay-225{--reveal-delay:225ms}
