
@font-face{font-family:"Calibre";src:url("assets/fonts/Calibre-Light.otf") format("opentype");font-weight:300}
@font-face{font-family:"Calibre";src:url("assets/fonts/Calibre-Regular.otf") format("opentype");font-weight:400}
@font-face{font-family:"Calibre";src:url("assets/fonts/Calibre-RegularItalic.otf") format("opentype");font-weight:400;font-style:italic}
@font-face{font-family:"Calibre";src:url("assets/fonts/Calibre-Semibold.otf") format("opentype");font-weight:600}
:root{--o:#F05430;--ink:#1a1512;--paper:#f6f1ea;--pad:clamp(20px,4vw,56px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--o);color:#fff;font-family:"Calibre",sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit}a:hover{color:var(--ink)}
p{text-wrap:pretty}
img{display:block;max-width:100%}
.w{padding:0 var(--pad);max-width:1600px;margin:0 auto}
.band{padding:clamp(80px,9vw,140px) 0}
.or{background:var(--o);color:#fff}
.ink{background:var(--ink);color:#fff}.ink a:hover{color:var(--o)}
.pp{background:var(--paper);color:var(--ink)}.pp a:hover{color:var(--o)}
.lbl{font-size:15px;text-transform:uppercase;letter-spacing:.14em;font-weight:600}
.or .lbl{color:var(--ink)}.ink .lbl,.pp .lbl{color:var(--o)}
.g .ac,.lbl .ac{text-transform:none}
.g{font-weight:600;letter-spacing:-.055em;line-height:.84;text-transform:none;margin:0}
.g1{font-size:clamp(88px,16vw,280px)}
.g1 .ln+.ln{margin-top:-.08em}
.g2{font-size:clamp(60px,9vw,160px)}
.g3{font-size:clamp(46px,6vw,104px)}
.lede{font-size:clamp(21px,1.9vw,28px);line-height:1.3;margin:0;max-width:30ch}
.lede em{font-style:italic}
.btn{display:inline-flex;align-items:center;background:var(--ink);color:#fff;text-decoration:none;padding:14px 22px;font-weight:600;font-size:17px;border:0;cursor:pointer;font-family:inherit}
.btn:hover{background:#fff;color:var(--ink)}
.ink .btn,.pp .btn{background:var(--o)}.ink .btn:hover{background:#fff;color:var(--ink)}.pp .btn:hover{background:var(--ink);color:#fff}
.lnk{font-weight:600;font-size:17px;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:2px}
/* corner frame */
.fr{position:relative;padding:28px}
.fr::before,.fr::after,.fr>.c1,.fr>.c2{content:"";position:absolute;width:22px;height:22px;border-style:solid;border-color:currentColor;pointer-events:none}
.fr::before{top:0;left:0;border-width:2px 0 0 2px}.fr::after{bottom:0;right:0;border-width:0 2px 2px 0}
.fr>.c1{top:0;right:0;border-width:2px 2px 0 0}.fr>.c2{bottom:0;left:0;border-width:0 0 2px 2px}
.ink .fr::before,.ink .fr::after,.ink .fr>.c1,.ink .fr>.c2,.pp .fr::before,.pp .fr::after,.pp .fr>.c1,.pp .fr>.c2{border-color:var(--o)}
/* header */
.top{display:flex;align-items:center;gap:28px;padding:22px 0;font-size:17px}
.top img{height:32px;filter:brightness(0) invert(1)}
.top nav{display:flex;gap:26px;margin-right:auto}.top nav a,.top .si{text-decoration:none}
.top .btn{padding:11px 20px;font-size:16px}
/* hero */
.hero{padding:34px 0 90px}
.intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;margin-top:40px;align-items:end}
.intro .cta{display:flex;gap:24px;align-items:center;margin-top:32px;flex-wrap:wrap}
.bw img{width:100%;object-fit:cover}
.bw small{display:block;margin-top:10px;font-size:15px}
.intro .bw img{aspect-ratio:16/10}
.hlede{max-width:none;font-size:clamp(19px,1.55vw,25px)}
@media(max-width:1100px){.intro{grid-template-columns:1fr}.hlede{max-width:46ch;font-size:22px}}
.facts{display:flex;gap:36px;margin-top:40px;flex-wrap:wrap;font-size:17px}
.facts b{display:block;font-size:34px;font-weight:600;letter-spacing:-.02em}
/* logos */
.logos{padding:44px 0}
.logos .row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:26px 44px;margin-top:22px}
.logos img{height:30px;width:auto;filter:grayscale(1);mix-blend-mode:multiply;opacity:.8}
.logos img.lg{height:40px}.logos img.sm{height:24px}
/* paths */
.paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:34px}
.path{display:flex;flex-direction:column;text-decoration:none;min-height:300px}
.path h3{font-size:clamp(28px,2.4vw,38px);font-weight:600;letter-spacing:-.02em;line-height:1.04;margin:14px 0 0}
.path p{font-size:19px;line-height:1.4;margin:14px 0 0}
.path .go{margin-top:auto;padding-top:24px;font-weight:600;font-size:18px}
.path{padding:34px;transition:transform .25s ease}.path::before,.path::after,.path>.c1,.path>.c2{display:none}
.path:hover{transform:translateY(-6px)}
.path .step{font-size:84px;font-weight:600;letter-spacing:-.05em;line-height:.8}
.p-cra{background:#fff;color:var(--ink)}.p-cra .step,.p-cra .lbl{color:var(--o)}.p-cra:hover{color:var(--ink)}
.p-new{background:linear-gradient(150deg,#ffe3d6 0%,#ffb896 100%);color:var(--ink)}.p-new .step{color:#c8401f}.p-new .lbl{color:#c8401f}.p-new:hover{color:var(--ink)}
.p-mgr{background:var(--ink);color:#fff}.p-mgr .step,.p-mgr .lbl{color:var(--o)}.p-mgr:hover{color:#fff}
/* membership */
.cols3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:56px}
.mc{background:#fff;padding:34px;transition:transform .25s ease,background .25s ease,color .25s ease;cursor:default}
.mc:hover{transform:translateY(-8px);background:var(--o);color:#fff}
.mc:hover .n{color:#fff}.mc:hover .tags span{color:#fff}
.cols3 .n{transition:color .25s ease;font-size:64px;font-weight:300;letter-spacing:-.04em;line-height:1;color:var(--o)}
.cols3 h3{font-size:30px;font-weight:600;letter-spacing:-.02em;margin:16px 0 0;line-height:1.05}
.cols3 p{font-size:19px;line-height:1.45;margin:14px 0 0}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.tags span{font-size:15px;font-weight:600;border:1.5px solid currentColor;padding:5px 11px}
.pp .tags span{color:var(--o)}
.oneline{margin-top:48px;font-size:clamp(24px,2.2vw,32px);font-weight:300}
.oneline b{font-weight:600}
/* split */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(40px,5vw,80px);align-items:center;margin-top:52px}
.shot img{width:100%;border:1px solid rgba(255,255,255,.18)}
.pp .shot img{border-color:rgba(26,21,18,.15)}
.ticks{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:18px}
.ticks li{font-size:21px;line-height:1.38;padding-left:34px;position:relative}
.ticks li::before{content:"";position:absolute;left:0;top:10px;width:16px;height:16px;border:2px solid var(--o)}
.or .ticks li::before{border-color:#fff}
/* academy levels */
.lvs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:64px;height:520px;align-items:end;border-bottom:3px solid #fff}
.st{background:var(--ink);color:#fff;padding:28px 26px;display:flex;flex-direction:column;position:relative}
.st:nth-child(2){background:#2b221d}.st:nth-child(3){background:#3a2a22}.st:nth-child(4){background:#fff;color:var(--ink)}
.st .badge{width:64px;height:64px;border-radius:50%;background:var(--o);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:22px;color:#fff;box-shadow:0 0 0 5px rgba(240,84,48,.28)}
.st .n{font-size:15px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--o);margin-top:22px}
.st b{display:block;font-size:40px;font-weight:600;letter-spacing:-.03em;margin-top:6px;line-height:1}
.st p{font-size:17px;line-height:1.42;margin:12px 0 0;opacity:.88}
.st .cert{margin-top:auto;padding-top:18px;font-size:15px;font-weight:600;color:var(--o)}
.lv .n{font-size:15px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--ink)}
.lv b{display:block;font-size:40px;font-weight:600;letter-spacing:-.03em;margin-top:8px}
.lv p{font-size:18px;line-height:1.42;margin:12px 0 0}
.lv .bar{height:4px;background:rgba(255,255,255,.35);margin-top:22px}
.lv .bar i{display:block;height:100%;background:#fff}
/* tabs */
.tabs{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}
.tab{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.45);padding:11px 18px;font:600 17px "Calibre",sans-serif;cursor:pointer}
.tab:hover{border-color:#fff}
.tab.on{background:var(--o);border-color:var(--o)}
.view{margin-top:26px;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.7fr);gap:40px;align-items:start}
.stack{position:relative;aspect-ratio:16/10;background:#241e1a;overflow:hidden}
.stack img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:0;transition:opacity .25s ease}
.stack img.on{opacity:1}
.cap h3{font-size:34px;font-weight:600;letter-spacing:-.02em;margin:16px 0 0;line-height:1.05}
.cap p{font-size:20px;line-height:1.42;margin:14px 0 0;color:rgba(255,255,255,.85)}
/* proof */
.nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:48px}
.nums b{display:block;font-size:clamp(52px,5.4vw,90px);font-weight:600;letter-spacing:-.04em;line-height:.9}
.nums span{display:block;font-size:19px;margin-top:12px}
.quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 44px;margin-top:90px}
.q p{font-size:22px;line-height:1.36;margin:0}
.q .by{display:flex;align-items:center;gap:14px;margin-top:20px;font-size:16px}
.q .by img,.q .by .av{width:48px;height:48px;object-fit:cover;flex:none}
.q .by .av{display:flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;font-weight:600;filter:none}
.q .by b{display:block;font-weight:600;font-size:17px}
.q.more{display:none}.quotes.open .q.more{display:block}
.qbtn{margin-top:48px}
/* pricing */
.price{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:52px;align-items:stretch}
.pc{display:flex;flex-direction:column}
.pc .k{font-size:15px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--o)}
.pc .amt{font-size:64px;font-weight:600;letter-spacing:-.04em;line-height:1;margin-top:16px}
.pc .amt small{font-size:22px;font-weight:400;letter-spacing:0}
.pc .d{font-size:19px;margin-top:10px}
.pc ul{list-style:none;padding:0;margin:24px 0 28px;display:grid;gap:12px;font-size:18px}
.pc ul li{padding-left:24px;position:relative;line-height:1.36}
.pc ul li::before{content:"";position:absolute;left:0;top:9px;width:10px;height:10px;background:var(--o)}
.pc .btn{margin-top:auto;align-self:flex-start}
.pc.feat{background:var(--o);color:#fff}
.pc.feat .k{color:var(--ink)}.pc.feat ul li::before{background:#fff}
.pc.feat::before,.pc.feat::after,.pc.feat>.c1,.pc.feat>.c2{border-color:var(--ink)!important}
.pc.feat .btn{background:var(--ink)}.pc.feat .btn:hover{background:#fff;color:var(--ink)}
.reim{margin-top:34px;font-size:19px}
.reim button{background:none;border:0;border-bottom:2px solid var(--o);color:var(--o);font:600 19px "Calibre",sans-serif;cursor:pointer;padding:0 0 2px;margin-left:8px}
/* employers */
.emp{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px,5vw,80px);margin-top:52px;align-items:start}
.emp .it{padding:22px 0;border-top:1px solid rgba(255,255,255,.2)}
.emp .it:last-child{border-bottom:1px solid rgba(255,255,255,.2)}
.emp .it b{display:block;font-size:26px;font-weight:600;letter-spacing:-.015em}
.emp .it span{display:block;font-size:19px;margin-top:6px;color:rgba(255,255,255,.8)}
/* conference */
.conf{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(40px,5vw,80px);margin-top:52px;align-items:center}
.conf .bw img{aspect-ratio:4/3}
.conf .facts span{font-size:19px;font-weight:600;border:1.5px solid #fff;padding:7px 14px}
.conf .facts{gap:10px}
/* end */
.end{display:flex;align-items:flex-end;gap:32px;flex-wrap:wrap}
.end .g{margin-right:auto}
.ftr{border-top:1px solid rgba(255,255,255,.25);padding:22px 0 34px;margin-top:80px;display:flex;gap:26px;font-size:15px;flex-wrap:wrap}
.ftr a{text-decoration:none}

/* v3: italic tails, pill buttons, grain, motion */
.g em{font-style:italic;font-weight:400;letter-spacing:-.045em}
.g .ln{display:block;overflow:hidden;padding-bottom:.22em;margin-bottom:-.16em}
.g .ln>*,.g .ln{}
.js .g .ln{transform:translateY(40%);opacity:0;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .9s ease}
.js .g.in .ln{transform:none;opacity:1}
.js .g.in .ln:nth-child(2){transition-delay:.09s}.js .g.in .ln:nth-child(3){transition-delay:.18s}.js .g.in .ln:nth-child(4){transition-delay:.27s}
.btn{border-radius:999px;padding:8px 8px 8px 22px;gap:14px}
.btn .ar{font-style:normal;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.16);display:inline-flex;align-items:center;justify-content:center;font-size:18px;transition:transform .3s cubic-bezier(.2,.8,.2,1),background .3s}
.btn:hover .ar{transform:translateX(4px) rotate(-8deg);background:var(--o);color:#fff}
.or .btn:hover .ar{background:var(--o)}
.pc.feat .btn:hover .ar{background:var(--o)}
.top .btn{padding:6px 6px 6px 18px}.top .btn .ar{width:30px;height:30px;font-size:15px}
.or,.ink{position:relative;isolation:isolate}
.or::after,.ink::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.14;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.bar-p{position:fixed;top:0;left:0;height:4px;width:100%;background:var(--ink);transform-origin:0 50%;transform:scaleX(0);z-index:100}
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.js .rv.in{opacity:1;transform:none}
.js .lvs .st{transform:scaleY(.2);transform-origin:bottom;opacity:0;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .6s ease}
.js .lvs.in .st{transform:none;opacity:1}
.js .lvs.in .st:nth-child(2){transition-delay:.12s}.js .lvs.in .st:nth-child(3){transition-delay:.24s}.js .lvs.in .st:nth-child(4){transition-delay:.36s}
.hero .bw .frm{overflow:hidden}.hero .bw img{will-change:transform}
@media(prefers-reduced-motion:reduce){.js .g .ln,.js .rv,.js .lvs .st{transform:none!important;opacity:1!important;transition:none!important}}
/* modal */
dialog{border:0;padding:0;max-width:640px;width:calc(100% - 40px);background:var(--paper);color:var(--ink)}
dialog::backdrop{background:rgba(26,21,18,.7)}
dialog .in{padding:40px}
dialog h3{font-size:34px;font-weight:600;letter-spacing:-.02em;margin:10px 0 0;line-height:1.05}
dialog p,dialog li{font-size:18px;line-height:1.5}
dialog ol{padding-left:22px;display:grid;gap:10px}
dialog .x{position:absolute;top:14px;right:18px;background:none;border:0;font-size:30px;cursor:pointer;color:var(--ink)}
@media(max-width:1000px){.top nav,.top .si{display:none}.top .btn{margin-left:auto}.intro,.paths,.cols3,.split,.lvs,.view,.nums,.quotes,.price,.emp,.conf{grid-template-columns:1fr}.path{min-height:0}.lvs{height:auto;border-bottom:0;gap:14px}.st{height:auto!important}.nums{grid-template-columns:1fr 1fr}}

/* shared: dialogs + forms */
dialog form{display:grid;gap:12px;margin-top:22px}
dialog input,dialog textarea{font:400 18px "Calibre",sans-serif;padding:14px 16px;border:1.5px solid rgba(26,21,18,.25);background:#fff;color:var(--ink);border-radius:0}
dialog textarea{min-height:110px;resize:vertical}
dialog input:focus,dialog textarea:focus{outline:none;border-color:var(--o)}
dialog form .btn{justify-self:start;margin-top:6px;background:var(--o)}
dialog form .btn:hover{background:var(--ink);color:#fff}
.top nav a.on{border-bottom:2px solid currentColor;padding-bottom:2px}

.btn{white-space:nowrap}

/* mobile menu (same style as the course pages) */
.mtog{display:none;align-items:center;gap:8px;height:40px;padding:0 16px;border:1px solid rgba(26,21,18,.16);border-radius:999px;background:#f6efe6;color:#1a1512;font:inherit;font-size:15px;font-weight:600;cursor:pointer;line-height:1}
.mtog .bars{display:flex;flex-direction:column;gap:4px;width:16px}
.mtog .bars i{display:block;height:2px;width:16px;background:currentColor;border-radius:2px;transition:transform .34s cubic-bezier(.22,.9,.26,1)}
.top nav .m-si{display:none}
@media(max-width:1000px){
.top{flex-wrap:wrap;position:relative}
.mtog{display:inline-flex;order:2;margin-left:auto}
.top .btn{order:3;margin-left:12px}
.top nav{display:flex!important;order:4;flex-basis:100%;flex-direction:column;gap:0;margin:0;background:#f6efe6;color:#1a1512;border-radius:18px;padding:0 20px;max-height:0;opacity:0;overflow:hidden;box-shadow:0 18px 40px -28px rgba(20,18,16,.45);transition:max-height .42s cubic-bezier(.22,.9,.26,1),opacity .26s ease,padding .42s cubic-bezier(.22,.9,.26,1),margin .42s}
.top nav a{color:#1a1512!important;padding:14px 0;border-bottom:1px solid rgba(26,21,18,.12);font-size:18px;font-weight:500;opacity:0;transform:translateY(-8px);transition:opacity .3s ease,transform .3s cubic-bezier(.22,.9,.26,1)}
.top nav a:last-child{border-bottom:0}
.top nav a.on{color:var(--o)!important;border-bottom:1px solid rgba(26,21,18,.12);padding-bottom:14px}
.top nav .m-si{display:block}
.top.open nav{max-height:440px;opacity:1;padding:6px 20px;margin-top:14px}
.top.open nav a{opacity:1;transform:none}
.top.open nav a:nth-child(1){transition-delay:.08s}.top.open nav a:nth-child(2){transition-delay:.13s}.top.open nav a:nth-child(3){transition-delay:.18s}.top.open nav a:nth-child(4){transition-delay:.23s}.top.open nav a:nth-child(5){transition-delay:.28s}
.top.open .mtog .bars i:first-child{transform:translateY(3px) rotate(45deg)}
.top.open .mtog .bars i:last-child{transform:translateY(-3px) rotate(-45deg)}
}
@media(max-width:520px){.top .btn{display:none}}
@media(prefers-reduced-motion:reduce){.top nav,.top nav a,.mtog .bars i{transition:none}}

/* phone numbers */
@media(max-width:700px){
.nums{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px}
.nums>div{min-width:0;padding:20px 16px}
.nums b{font-size:clamp(30px,9vw,42px);white-space:nowrap}
.nums span{font-size:15px;margin-top:8px}
}
