@font-face{font-family:Raleway;src:url(assets/raleway.ttf) format("truetype");font-display:swap}
:root{color-scheme:light;--wine:#381622;--deep:#251019;--cream:#f7f1ea;--gold:#e4bd8c;--ink:#302129}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);font:1.05rem/1.65 Raleway,system-ui,sans-serif;background:var(--cream)}
.wrap{width:min(1120px,calc(100% - 3rem));margin:auto}
.mast{background:var(--deep);color:var(--cream)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding-block:1rem}
.bar>span:last-child{color:var(--gold);font-size:.85rem}
.brand{text-decoration:none;color:inherit;font-family:Raleway,system-ui,sans-serif;font-weight:750;letter-spacing:.03em}
.brand sup{font-size:.6em}
.hero{background:radial-gradient(ellipse at 75% 56%,#683447 0%,var(--wine) 54%,var(--deep) 100%);color:var(--cream);padding:clamp(2.8rem,7vw,6.4rem) 0}
.hero-grid,.split{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.73rem;font-weight:750;color:#78435a;margin:0 0 1.1rem}
.hero .eyebrow,.dark .eyebrow{color:var(--gold)}
h1,h2,h3{font-family:inherit;font-weight:400;line-height:1.07;margin:0}
h1{font-size:clamp(2.9rem,6.2vw,5.5rem);letter-spacing:-.057em}
h1 em{display:block;color:var(--gold);font-weight:400}
h2{font-size:clamp(2.15rem,4.2vw,3.65rem);letter-spacing:-.045em}
h3{font-size:1.78rem;letter-spacing:-.025em}
.intro{max-width:52ch;font-size:1.13rem;margin:1.5rem 0 1rem}
.byline{font-weight:650;margin:0 0 1.7rem}
.button{display:inline-flex;justify-content:space-between;gap:1rem;align-items:center;min-height:3rem;padding:.75rem 1.15rem;background:var(--gold);color:var(--deep);font:700 .95rem/1.3 Raleway,system-ui,sans-serif;text-decoration:none;border:0;cursor:pointer}
.button:hover{background:#f1d3aa}
:focus-visible{outline:3px solid #bd708d;outline-offset:4px}
figure{margin:0;border:1px solid #e4bd8c65;padding:.65rem}
figure img{display:block;width:100%;aspect-ratio:4/4.65;object-fit:cover;object-position:center 23%}
figcaption{display:flex;justify-content:space-between;gap:.5rem;padding:.65rem .2rem .05rem;font-size:.8rem}
figcaption span{color:var(--gold)}
.light,.dark{padding:clamp(3rem,7vw,6rem) 0}
.light .split{align-items:start}
.dark{background:var(--wine);color:var(--cream)}
.body-copy p:first-child{margin-top:0}
.competencies{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:2.4rem}
article{border-top:1px solid #e4bd8c69;padding-top:1rem}
article p:last-child{color:#f0e1e4}
.index{margin:0 0 1rem;font-size:.8rem;color:var(--gold);letter-spacing:.08em}
.index span{margin-left:.6rem}
.check-panel{padding:clamp(1rem,3vw,2rem);border:1px solid #d6c2bc;background:#fffaf5}
@media(max-width:760px){.hero-grid,.split,.competencies{grid-template-columns:1fr}.wrap{width:calc(100% - 2.2rem)}figure{width:min(100%,380px)}.competencies{gap:1.25rem}.bar>span:last-child{text-align:right}}
.hero .byline{margin:1.2rem 0 0;font-size:.95rem}
.light article p:last-child{color:var(--ink)}
.light .index{color:#78435a}
.light article{border-color:#c5a9b2}
#inquiry label{display:flex;flex-direction:column;gap:.3rem;border:0;padding:.4rem 0;font-size:.9rem;font-weight:600}
#inquiry input:not([type=hidden]){width:100%;min-height:2.8rem;border:1px solid #bfa9b0;background:white;padding:.55rem;font:inherit;color:var(--ink);border-radius:0}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.form-note,#inquiry-status{font-size:.82rem}
.details{list-style:none;margin:0;padding:0}
.details li{padding:.85rem 0;border-top:1px solid #e4bd8c69}
.price{font-size:1.8rem;color:var(--gold)}
.closing{max-width:850px}
.closing>p{max-width:65ch}
.closing .byline{font-size:.9rem;margin-top:1.2rem}
@media(max-width:480px){.fields{grid-template-columns:1fr}h1{font-size:2.7rem}}
.marketing-bridge{max-width:780px;margin-bottom:4rem}
.marketing-bridge h2{margin-bottom:1.5rem}
.legal-links{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem}
.legal-links a{color:var(--gold);font-size:.9rem}
.legal-page{max-width:790px;padding-block:clamp(2.5rem,7vw,5rem)}
.legal-page h1{margin:1.25rem 0;font-size:clamp(2rem,6vw,3.7rem);overflow-wrap:anywhere}
.legal-page h2{font-size:clamp(1.35rem,3vw,1.8rem);letter-spacing:normal;line-height:1.2;margin-top:2rem}
.legal-page address{font-style:normal}
.legal-page a,.form-note a{color:#6a3449}
.outcomes{width:100%;border-collapse:collapse;margin-top:2rem;table-layout:fixed}
.outcomes th,.outcomes td{text-align:left;vertical-align:top;padding:.85rem .7rem;border-bottom:1px solid #e4bd8c69}
.outcomes th{color:var(--gold)}
blockquote{margin:1.5rem 0 0;padding-left:1rem;border-left:2px solid #a97854}
blockquote cite{display:block;margin-top:.4rem;font-size:.85rem}
.learning-note{margin-top:2rem;padding:1rem 1.25rem;background:#eee3db;border-left:3px solid #a97854}
.learning-note p{margin:0;max-width:68ch}
.learning-note p+p{margin-top:.35rem}
.fit{background:#eee3db}
.fit .split{margin-top:1.5rem}
.faq details{border-top:1px solid #c5a9b2;padding:1rem 0}
.faq summary{font-weight:700;cursor:pointer}
.faq details p{margin-bottom:0}
.dark .byline{margin-top:1rem}
.intake-title{font-size:clamp(2rem,5vw,3.7rem);overflow-wrap:anywhere}

/* Frame the visible logo within the supplied transparent canvas. */
.brand-logo{display:block;position:relative;overflow:hidden;width:clamp(9rem,24vw,13rem);aspect-ratio:465/190}
.brand-logo img{position:absolute;display:block;max-width:none;width:258.065%;height:auto;left:-75.484%;top:-233.684%}
.brand-mark{display:inline-block;position:relative;padding-right:.65rem;vertical-align:middle}
.brand-tm{position:absolute;right:0;top:43%;color:var(--gold);line-height:1}

.bio-content{align-items:center}
.bio-content .body-copy{margin-top:1.4rem}
.bio-portrait{display:block;width:min(100%,26rem);height:auto;aspect-ratio:1;object-fit:cover;object-position:65% center;justify-self:center}
.training-content{max-width:44rem;margin-top:1.5rem}

.association-note{margin:2.75rem 0 1.75rem;padding-top:1.5rem;border-top:1px solid #e4bd8c69}
.start-note{font-family:Raleway,system-ui,sans-serif;font-size:.95rem;font-weight:700;margin:1rem 0 0}
.association-note a{color:var(--gold);text-underline-offset:.18em}
@media(max-width:760px){.bio-portrait{justify-self:start}}

.testimonials{align-items:start;gap:1.25rem 2.5rem;margin-top:1.5rem}
.testimonials article{border-left:2px solid #a97854;padding-left:1rem}
.testimonials article p{margin:0}
.testimonial-credit{font-size:.9rem;margin:1rem 0 0}

.hero h1{font-size:clamp(1.8rem,4.1vw,3.65rem);line-height:1.12;text-wrap:balance}
@media(max-width:760px){.hero h1{font-size:clamp(1.65rem,5.5vw,2.65rem)}}
