*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:#191a19;color:#f5f1e8;font-family:Arial,sans-serif}
a{color:inherit;text-decoration:none}
header{display:flex;justify-content:space-between;align-items:center;padding:25px 6%;border-bottom:1px solid #444;background:#191a19;position:sticky;top:0;z-index:3}
.brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-size:24px;font-weight:900;letter-spacing:-1px}
.brand-icon{width:42px;height:42px;object-fit:contain;flex-shrink:0}
.brand span,.accent{color:#ff6b2b}
nav{display:flex;gap:25px;font-size:13px}
section{padding:85px 8%;border-bottom:1px solid #444}
.hero{min-height:690px;position:relative;overflow:hidden}
.eyebrow{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#b3b4ac;margin-bottom:45px}
h1{font-size:clamp(70px,11vw,155px);line-height:.92;letter-spacing:-.075em;margin:0 0 35px}
h2{font-size:clamp(36px,5vw,66px);line-height:1.05;letter-spacing:-2px;margin:0 0 25px}
p{color:#b3b4ac;line-height:1.75;max-width:700px}
.hero p{font-size:22px;max-width:420px}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.btn{display:inline-block;background:#ff6b2b;color:#191a19;padding:19px 24px;font-size:13px;font-weight:bold;border:1px solid #ff6b2b}
.outline{background:transparent;color:#f5f1e8;border-color:#777}
.btn:hover{filter:brightness(1.2)}
.split{display:grid;grid-template-columns:1fr 2fr;gap:55px}
.label{color:#ff6b2b;font-size:12px;letter-spacing:2px}
.intro{font-size:23px}
.service{display:grid;grid-template-columns:50px 1fr 1fr;gap:25px;padding:30px 0;border-top:1px solid #555}
.service h3{font-size:28px;margin:0}
.service p{margin:0}
.promo{background:#ff6b2b;color:#191a19;display:grid;grid-template-columns:1fr 1fr;gap:50px}
.promo p,.promo .eyebrow{color:#29221e}
.promo .btn{background:#191a19;color:#f5f1e8}
.discount{font-size:clamp(120px,16vw,220px);font-weight:900;letter-spacing:-.08em;line-height:1}
.email{font-size:clamp(20px,4vw,45px);border-bottom:1px solid #ff6b2b;display:inline-block;margin:15px 0}
.meter{position:absolute;right:6%;bottom:90px;color:#ff6b2b;font-size:180px;opacity:.2;letter-spacing:-25px;transform:rotate(-8deg);pointer-events:none}
footer{display:flex;justify-content:space-between;padding:30px 8% 100px;color:#aaa;font-size:11px}
.float{position:fixed;bottom:22px;right:22px;background:#f5f1e8;color:#191a19;padding:17px 23px;border-radius:30px;font-size:13px;font-weight:bold;z-index:4}
.hidden{display:none!important}
#portfolio-view{min-height:70vh}
@media(max-width:380px){header{flex-wrap:wrap;gap:16px}nav{width:100%;justify-content:space-between}}
@media(max-width:700px){header{padding:20px 5%}.brand{font-size:18px;gap:6px}.brand-icon{width:25px;height:25px}nav{gap:12px;font-size:11px}section{padding:65px 7%}.hero{min-height:650px}h1{font-size:76px}.split,.promo{grid-template-columns:1fr;gap:25px}.service{grid-template-columns:25px 1fr;gap:15px}.service p{grid-column:2}.meter{right:-20px;bottom:145px}.eyebrow{line-height:1.7}footer{gap:25px}}
.course-card{border:1px solid #555;padding:36px;margin-top:45px;max-width:880px}
.course-card h3{font-size:46px;letter-spacing:-2px;margin:25px 0 10px}
.course-info{display:block;margin-top:24px;color:#ff6b2b}
.upcoming{border-top:1px solid #555;margin-top:50px;padding-top:36px}
.upcoming h3{font-size:27px}
nav a[aria-current]{color:#ff6b2b}
a:focus-visible{outline:2px solid #ff6b2b;outline-offset:5px}
@media(max-width:800px){header{flex-wrap:wrap;gap:18px}nav{width:100%;justify-content:space-between;gap:10px}.course-card{padding:24px}.course-card h3{font-size:38px}}
.profile{max-width:800px;margin-top:45px}
.profile h3{font-size:clamp(36px,5vw,56px);letter-spacing:-2px;margin:24px 0}
.profile strong,.course-card strong{color:#f5f1e8}
.hero-detail{font-size:16px!important;max-width:580px!important;margin-top:24px}
.text-link{display:inline-block;color:#ff6b2b;border-bottom:1px solid #ff6b2b;padding-bottom:7px;margin:14px 0}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:45px}
.steps article{border-top:1px solid #555;padding-top:25px}
.steps h3{font-size:25px;line-height:1.2}
.profile-layout{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:55px;margin-top:50px;align-items:start}
.profile-layout .profile{margin-top:0}
.profile-layout h3{margin-top:20px}
.portrait{margin:0;position:sticky;top:140px}
.portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 27%;border-radius:2px}
.portrait figcaption{font-size:11px;letter-spacing:1px;color:#b3b4ac;margin-top:15px}
.service a:hover{color:#ff6b2b}
.service-detail{max-width:850px}
.service-detail h1{font-size:clamp(48px,8vw,105px);letter-spacing:-.055em;line-height:1.02}
.service-detail h2{font-size:32px;margin-top:45px}
@media(max-width:800px){.steps,.profile-layout{grid-template-columns:1fr;gap:30px}.portrait{position:static;max-width:420px}.hero{min-height:0}.hero h1{font-size:clamp(58px,12vw,88px)}.hero-detail{font-size:16px!important}.steps h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
