:root{color-scheme:light;--ink:#172033;--muted:#5d6677;--wash:#f3f6fb;--line:#dfe5ee;--brand:#2156d7;--radius:1.25rem;--shadow:0 18px 55px #1720331c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.7rem;z-index:9}.site-head,.site-foot{display:flex;justify-content:space-between;gap:1rem;padding:1rem max(5vw,calc((100vw - 1180px)/2));border-bottom:1px solid var(--line)}.brand{color:var(--ink);font-weight:850;text-decoration:none}main>section{padding:clamp(3rem,7vw,7rem) max(5vw,calc((100vw - 1180px)/2))}.hero{display:grid;grid-template-columns:1.15fr .65fr;align-items:center;gap:clamp(2rem,6vw,6rem);background:linear-gradient(135deg,#f7f9ff,#eef4ff 60%,#fff5e5)}.hero h1{font-size:clamp(2.8rem,7vw,5.8rem);line-height:.96;letter-spacing:-.055em;margin:.2em 0}.portrait{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2rem;box-shadow:var(--shadow)}.headline{font-size:clamp(1.35rem,2.7vw,2.25rem);line-height:1.2}.title{font-weight:750;color:var(--brand)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:850;color:var(--brand)}h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;letter-spacing:-.035em;margin:.25em 0 .7em}h3{line-height:1.2}.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.button{display:inline-flex;padding:.8rem 1.15rem;border:1px solid var(--brand);border-radius:999px;color:var(--brand);font-weight:800;text-decoration:none}.button.primary{background:var(--brand);color:#fff}.button:focus-visible{box-shadow:0 0 0 4px #2156d733}.section-nav{position:sticky;top:0;z-index:4;display:flex;gap:1.25rem;overflow:auto;padding:.85rem max(5vw,calc((100vw - 1180px)/2));background:#fffffff0;border-block:1px solid var(--line)}.section-nav a{color:var(--ink);font-weight:750;text-decoration:none;white-space:nowrap}.split{display:grid;grid-template-columns:1.5fr .75fr;gap:clamp(2rem,7vw,7rem)}aside{background:var(--wash);padding:1.5rem;border-radius:var(--radius)}dt{color:var(--muted);font-size:.85rem;margin-top:1rem}dd{margin:0;font-weight:750}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chips span{background:#e9efff;color:#183b8f;border-radius:999px;padding:.35rem .7rem;font-size:.84rem;font-weight:700}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cards article,figure{margin:0;padding:1.5rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.tint{background:var(--wash)}.play{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--brand);color:#fff}.quotes{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}blockquote{margin:0;font-size:1.15rem}figcaption{display:flex;flex-direction:column;margin-top:1rem;color:var(--muted)}aside ul{list-style:none;padding:0}aside li{display:flex;flex-direction:column;padding:.6rem 0}.cta{text-align:center;background:var(--ink);color:#fff}.site-foot{border-top:1px solid var(--line);border-bottom:0}@media(max-width:800px){.site-head span{display:none}.hero,.split{grid-template-columns:1fr}.cards,.quotes{grid-template-columns:1fr}.section-nav{position:static}main>section{padding-block:3.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.section-nav,.actions,.site-head,.site-foot{display:none}.tint{background:#fff}}

.contact-page{max-width:820px;margin:auto}.contact-page h1{font-size:clamp(2.4rem,6vw,4.5rem);line-height:1}.inquiry-form{display:grid;gap:1.15rem;margin-top:2rem}.inquiry-form label{display:grid;gap:.35rem;font-weight:750}.inquiry-form input,.inquiry-form textarea{width:100%;border:1px solid var(--line);border-radius:.75rem;padding:.8rem;font:inherit;color:var(--ink);background:#fff}.inquiry-form input:focus,.inquiry-form textarea:focus{outline:3px solid #2156d733;border-color:var(--brand)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.check{grid-template-columns:auto 1fr!important;align-items:start}.check input{width:auto;margin-top:.35rem}.error{color:#a32121;font-size:.9rem}.inquiry-form button{justify-self:start;cursor:pointer}@media(max-width:650px){.form-row{grid-template-columns:1fr}}

.gallery-image{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:.9rem;margin-bottom:1rem}audio{width:100%;margin-top:.75rem}

.preview-banner{position:sticky;top:0;z-index:8;display:flex;justify-content:center;gap:.65rem;flex-wrap:wrap;padding:.7rem 1rem;background:#fff4ce;border-bottom:1px solid #e2c45c;color:#493b05;text-align:center}.preview-banner span{color:#62520e}

.program-topics{margin-bottom:.65rem}.program-details{margin-top:1rem;border-top:1px solid var(--line);padding-top:.75rem}.program-details summary{color:var(--brand);font-weight:750;cursor:pointer}.program-details[open] summary{margin-bottom:.5rem}

.testimonial-evidence{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--line)}.testimonial-evidence a{font-weight:750;color:var(--brand)}.testimonial-evidence audio{flex:1 1 16rem;margin:0}

.portfolio-notice{padding:.8rem max(5vw,calc((100vw - 1180px)/2));background:#e7f6ec;border-bottom:1px solid #92c7a2;color:#174d2a;font-weight:750}.matchboard-card{max-width:48rem;margin:3rem auto;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.matchboard-card form{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}

@media(prefers-color-scheme:dark){:root{color-scheme:dark;--ink:#edf2ff;--muted:#b8c2d6;--wash:#172033;--line:#394762;--brand:#9bbcff;--shadow:0 18px 55px #0008}body{background:#0b1220}.skip:focus,.cards article,figure,.inquiry-form input,.inquiry-form textarea,.matchboard-card{background:#111b2d}.hero{background:linear-gradient(135deg,#101a2d,#182844 60%,#2a2114)}.section-nav{background:#0b1220f2}.chips span{background:#20345e;color:#dce7ff}.button.primary,.play{color:#08101e}.cta{background:#050914}.preview-banner{background:#493b05;border-color:#866f18;color:#fff4ce}.preview-banner span{color:#ffe89a}.portfolio-notice{background:#123b24;border-color:#377c50;color:#d9f8e3}.error{color:#ff9d9d}.button:focus-visible,.inquiry-form input:focus,.inquiry-form textarea:focus{box-shadow:0 0 0 4px #9bbcff55}}

.portfolio-intro{display:grid;gap:.35rem;max-width:34rem;margin-top:1.25rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:#ffffffb8}.portfolio-intro span{color:var(--muted)}.portfolio-intro audio{margin-top:.35rem}.client-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;list-style:none;padding:0;margin:0}.client-list li{display:flex;flex-direction:column;padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--wash)}.client-list span{color:var(--muted);font-size:.9rem}@media(prefers-color-scheme:dark){.portfolio-intro{background:#111b2db8}}


/* Compact portfolio presentation: visible section directory and shorter decision path. */
:root{--ink:#13233a;--muted:#5a687b;--wash:#f4f7f8;--line:#dce4e7;--brand:#0b6b67;--accent:#e86f51;--radius:1rem;--shadow:0 14px 36px #17324d17}
body{line-height:1.55;background:#fbfcfc}
.site-head{background:#fff;padding-block:.8rem}
main{display:flex;flex-direction:column}
main>.portfolio-notice,main>.preview-banner{order:0}
main>.hero{order:1}
main>.section-nav{order:2}
main>#overview{order:3}
main>#clients{order:4}
main>#programs{order:5}
main>#media{order:6}
main>#testimonials{order:7}
main>#gallery{order:8}
main>#audio{order:9}
main>#about{order:10}
main>#credentials{order:11}
main>#resources{order:12}
main>.cta{order:13}
main>section{width:100%;padding:clamp(2.25rem,4vw,4rem) max(4vw,calc((100vw - 1120px)/2));scroll-margin-top:5.5rem}
.hero{min-height:0;grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr);gap:clamp(2rem,5vw,4.5rem);padding-block:clamp(2.5rem,5vw,4.5rem);background:linear-gradient(135deg,#f7fbfa 0%,#e9f4f1 60%,#fff3ee 100%)}
.hero h1{max-width:12ch;font-size:clamp(2.65rem,5.2vw,4.75rem);line-height:.98;margin:.16em 0 .2em;letter-spacing:-.045em}
.hero .headline{max-width:24ch;font-size:clamp(1.35rem,2.25vw,2rem);margin:.65rem 0}
.hero>div>p:not(.eyebrow):not(.title):not(.company):not(.headline){max-width:48rem}
.portrait{max-height:480px;aspect-ratio:4/5;border-radius:1.4rem;box-shadow:0 22px 55px #18344a2c}
.eyebrow{color:var(--brand);letter-spacing:.15em}
h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.08;margin:.15em 0 .65em}
h3{margin:.1rem 0 .65rem}
.actions{gap:.55rem;margin-top:1.35rem}
.button{padding:.68rem 1rem;border-radius:.7rem}
.button.primary{background:var(--brand);border-color:var(--brand)}
.section-nav{top:0;z-index:7;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.45rem;overflow:visible;padding:.65rem max(3vw,calc((100vw - 1180px)/2));background:#fffffffa;border-block:1px solid var(--line);box-shadow:0 8px 22px #17324d0d}
.section-nav-label{margin-right:.35rem;color:var(--muted);font-size:.72rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.section-nav a{display:inline-flex;align-items:center;min-height:2.2rem;padding:.38rem .7rem;border:1px solid transparent;border-radius:.6rem;color:var(--ink);font-size:.88rem;font-weight:760}
.section-nav a:hover,.section-nav a:focus-visible{color:var(--brand);background:#eaf5f3;border-color:#b9d9d5;outline:0}
.split{grid-template-columns:minmax(0,1.45fr) minmax(250px,.65fr);gap:clamp(1.5rem,4vw,4rem)}
.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem}
.cards article,figure{padding:1.15rem;border-radius:.9rem;box-shadow:0 4px 16px #17324d0a}
.cards article p{margin:.5rem 0}
.quotes{gap:.8rem}
blockquote{font-size:1.05rem}
aside{padding:1.2rem;border-radius:.9rem}
dt{margin-top:.65rem}
.gallery-image{aspect-ratio:16/10;margin-bottom:.75rem}
#gallery .cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
#gallery article p{font-size:.9rem;color:var(--muted)}
#programs .cards article{border-top:3px solid var(--brand)}
#media .cards article{border-top:3px solid var(--accent)}
#testimonials figure{border-left:3px solid var(--accent)}
.tint{background:#f2f6f6}
.cta{padding-block:3rem;background:linear-gradient(135deg,#10243a,#0b5654);color:#fff}
.cta h2{max-width:22ch;margin-inline:auto}
.site-foot{background:#fff}
@media(max-width:800px){
 .hero,.split{grid-template-columns:1fr}
 .hero{padding-block:2rem}
 .hero h1{font-size:clamp(2.45rem,12vw,3.7rem)}
 .portrait{width:min(72vw,330px);max-height:none;justify-self:center}
 main>section{padding-block:2.25rem;scroll-margin-top:8.8rem}
 .section-nav{position:sticky;top:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem;padding:.5rem .65rem}
 .section-nav-label{grid-column:1/-1;margin:0;text-align:center;font-size:.64rem}
 .section-nav a{justify-content:center;min-height:1.9rem;padding:.28rem .25rem;font-size:.74rem;text-align:center}
 .cards,.quotes{grid-template-columns:1fr}
}
@media(max-width:420px){.section-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.section-nav a{font-size:.72rem}}
@media(prefers-color-scheme:dark){
 :root{--ink:#edf5f5;--muted:#b5c5ca;--wash:#16252d;--line:#334850;--brand:#75d3c9;--accent:#ff9a7f}
 body{background:#0c171d}.site-head,.site-foot{background:#101d24}.hero{background:linear-gradient(135deg,#102128,#12332f 60%,#30211e)}
 .section-nav{background:#0c171df8}.section-nav a:hover,.section-nav a:focus-visible{background:#163b38;border-color:#326b66}.tint{background:#14232a}
 .button.primary{background:#75d3c9;border-color:#75d3c9}.cta{background:linear-gradient(135deg,#071118,#103b39)}
}
