:root{--orange:#ff7a2f;--black:#111;--charcoal:#181818;--warm:#f7f7f5;--line:#ddd;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--warm);color:var(--black);font:16px/1.6 'DM Sans',sans-serif}h1,h2,h3{font-family:Outfit,sans-serif;line-height:.98;margin:0 0 1.5rem;letter-spacing:-.04em}h1{font-size:clamp(3.8rem,8vw,7.5rem)}h2{font-size:clamp(2.6rem,5vw,4.8rem)}h3{font-size:1.5rem;letter-spacing:-.02em}p{max-width:62ch}.section{max-width:var(--max);margin:auto;padding:110px 32px}.eyebrow{font-size:.78rem;letter-spacing:.15em;font-weight:700;margin:0 0 1.5rem}.orange{color:var(--orange)}em{color:var(--orange);font-style:normal}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:#fff;position:sticky;top:0;z-index:5;border-bottom:1px solid #eee}.logo{color:var(--black);font:800 1.55rem/1 'Outfit';text-decoration:none;letter-spacing:-.06em}.logo b{color:var(--orange)}.logo small{display:block;font:700 .43rem/1.4 'DM Sans';letter-spacing:.2em}.site-header nav{display:flex;gap:25px;align-items:center}.site-header nav a,.text-link,footer a{color:inherit;text-decoration:none}.site-header nav a:not(.button){font-weight:600;font-size:.9rem}.button{display:inline-block;background:var(--orange);border:2px solid var(--orange);color:#111!important;padding:14px 24px;border-radius:3px;text-decoration:none;font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.08em;transition:.2s}.button:hover{transform:translateY(-2px);background:#111;border-color:#111;color:#fff!important}.button-small{padding:11px 16px}.button-light{background:#fff;border-color:#fff}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:47% 53%;min-height:690px;background:#fff}.hero-copy{padding:110px 8vw 80px;display:flex;flex-direction:column;justify-content:center}.lede{font-size:1.2rem;max-width:500px}.actions{display:flex;gap:28px;align-items:center;margin-top:22px}.text-link{font-weight:700;border-bottom:2px solid var(--orange);padding-bottom:4px}.text-link span{color:var(--orange)}.hero-image{position:relative;min-height:550px;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover}.image-note{position:absolute;bottom:25px;right:25px;background:#fff;padding:12px 16px;font-size:.75rem;font-weight:700;letter-spacing:.1em}.image-note b{color:var(--orange);margin-left:10px}.intro{text-align:center;padding-top:130px;padding-bottom:130px}.intro p:last-child{margin:0 auto;font-size:1.15rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;background:#fff}.portrait{height:600px}.portrait img{width:100%;height:100%;object-fit:cover}.quals{display:flex;gap:30px;border-left:3px solid var(--orange);padding:12px 0 12px 20px;margin:30px 0;font-size:.9rem}.dark{max-width:none;background:var(--black);color:#fff;padding-left:max(32px,calc((100% - var(--max))/2 + 32px));padding-right:max(32px,calc((100% - var(--max))/2 + 32px))}.section-top{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:50px}.section-intro{max-width:280px}.features,.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.features article{border-top:1px solid #555;padding-top:20px}.features b,.number{color:var(--orange);font-size:.9rem}.features p,.service-card p{color:#777}.dark .features p{color:#bbb}.cards{grid-template-columns:repeat(3,1fr)}.service-card{background:#fff;padding:30px;min-height:300px;display:flex;flex-direction:column}.service-card a{color:#111;font-weight:700;margin-top:auto;text-decoration:none}.service-card strong{margin-top:20px}.accent-card{background:var(--orange)}.accent-card .number,.accent-card a{color:#111}.classes-section{background:#fff;max-width:none;padding-left:max(32px,calc((100% - var(--max))/2 + 32px));padding-right:max(32px,calc((100% - var(--max))/2 + 32px))}.class-list{border-top:1px solid var(--line)}.class-row{display:grid;grid-template-columns:1.6fr 1fr;gap:30px;padding:28px 0;border-bottom:1px solid var(--line)}.class-row h3{margin:.5rem 0}.class-row p{margin:0;color:#666}.class-row>b{align-self:center;text-align:right}.class-row small{font-weight:400;color:#666}.tag{font-size:.7rem;letter-spacing:.12em;font-weight:700;color:var(--orange)}.fine-print{font-size:.8rem;color:#777;margin-top:30px}.pricing-band{background:var(--orange);padding:90px max(32px,calc((100% - var(--max))/2 + 32px));display:grid;grid-template-columns:1fr 1fr;gap:80px}.pricing-band .eyebrow{color:#111}.price-items p{border-bottom:1px solid #111;display:flex;justify-content:space-between;padding:12px 0;margin:0}.stories{background:#fff;max-width:none;padding-left:max(32px,calc((100% - var(--max))/2 + 32px));padding-right:max(32px,calc((100% - var(--max))/2 + 32px))}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:50px}.quote-grid blockquote{margin:0;border-left:3px solid var(--orange);padding:10px 25px;font-size:1.25rem}.quote-grid cite{display:block;font-size:.8rem;color:#777;margin-top:25px;font-style:normal}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:18px;border-bottom:1px solid var(--line)}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#777}.faq{max-width:850px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq summary{font-weight:700;cursor:pointer;font-size:1.1rem}.faq details p{color:#666}.cta{background:var(--black);color:#fff;text-align:center;padding:100px 32px}.cta p{margin:0 auto 20px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-links a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0;text-decoration:none;color:#111;font-weight:700}.contact-links span{color:#777;font-weight:400}footer{background:var(--charcoal);color:#fff;padding:55px max(32px,calc((100% - var(--max))/2 + 32px));display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;align-items:start}footer p{margin:0}footer div{display:flex;gap:18px;flex-wrap:wrap;justify-content:end}.logo-footer{color:#fff}.logo-footer small{color:#fff}.mobile-book{display:none}@media(max-width:850px){.site-header{padding:0 20px}.menu-toggle{display:block;background:none;border:0;font-weight:700;font-size:1rem}.site-header nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;align-items:stretch;gap:18px;border-bottom:1px solid #ddd}.site-header nav.open{display:flex}.hero{display:flex;flex-direction:column}.hero-copy{padding:75px 24px}.hero-image{height:450px;min-height:0}.section{padding:75px 24px}.split,.pricing-band,.contact{grid-template-columns:1fr;gap:40px}.portrait{height:450px}.features,.cards,.quote-grid{grid-template-columns:1fr 1fr}.section-top{display:block}.section-top>.button{margin-top:10px}.class-row{grid-template-columns:1fr}.class-row>b{text-align:left}.pricing-band{padding:75px 24px}footer{grid-template-columns:1fr;padding:45px 24px}.logo-footer{grid-column:auto}footer div{justify-content:start}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;z-index:6}.mobile-book a{display:block;text-align:center;background:var(--orange);color:#111;text-transform:uppercase;font-weight:800;padding:15px;text-decoration:none}.features{gap:30px}}@media(max-width:520px){h1{font-size:3.7rem}.features,.cards,.quote-grid{grid-template-columns:1fr}.actions{flex-direction:column;align-items:flex-start}.hero-image{height:340px}.intro{text-align:left}.intro p:last-child{margin:0}.quals{gap:18px}}
