/* EPM Analytics AI — main.css — Phase 4 Batch 1 */
:root{--mango:#F57C00;--mango-dark:#E65100;--leaf:#2E7D32;--charcoal:#1A1A1A;--offwhite:#FAFAFA;--grey:#6B6B6B;--hairline:#E5E5E5;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4rem;--space-7:6rem;--radius:12px;--max-width:1100px;--font-system:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--font-system);font-size:16px;line-height:1.6;color:var(--charcoal);background:var(--offwhite);-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;display:block}
a{color:var(--mango-dark);text-decoration:none}
a:hover{color:var(--leaf)}
h1,h2,h3,h4{font-weight:800;letter-spacing:-0.02em;line-height:1.15;margin:0 0 var(--space-2)}
p{margin:0 0 var(--space-2)}
ul{margin:0;padding:0;list-style:none}
.skip-link{position:absolute;top:-100px;left:0;background:var(--charcoal);color:#fff;padding:var(--space-1) var(--space-2);z-index:1000}
.skip-link:focus{top:0}
.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-3)}
.site-header{position:sticky;top:0;z-index:100;background:rgba(250,250,250,0.92);backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--hairline)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:64px}
.brand{display:flex;align-items:center;gap:var(--space-1);color:var(--charcoal)}
.brand:hover{color:var(--charcoal)}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:linear-gradient(135deg,var(--mango),var(--mango-dark));color:#fff;font-weight:800;font-size:0.85rem;letter-spacing:-0.02em;border-radius:8px}
.brand-name{font-weight:800;font-size:1.05rem;letter-spacing:-0.01em}
.nav-toggle{display:none}
.nav-toggle-label{display:flex;flex-direction:column;justify-content:space-between;width:28px;height:22px;cursor:pointer;padding:0}
.nav-toggle-label span{display:block;height:3px;background:var(--charcoal);border-radius:2px;transition:transform .25s,opacity .25s}
.site-nav{position:fixed;inset:64px 0 0 0;background:var(--offwhite);transform:translateX(100%);transition:transform .25s ease;padding:var(--space-4);z-index:90}
.site-nav ul{display:flex;flex-direction:column;gap:var(--space-2)}
.site-nav a{display:block;font-size:1.25rem;font-weight:700;color:var(--charcoal);padding:var(--space-2) 0;min-height:44px}
.site-nav a:hover{color:var(--mango-dark)}
.nav-cta{background:var(--mango);color:#fff !important;padding:var(--space-2) var(--space-3) !important;border-radius:var(--radius);text-align:center;margin-top:var(--space-2)}
.nav-cta:hover{background:var(--mango-dark)}
.nav-toggle:checked ~ .site-nav{transform:translateX(0)}
body:has(.nav-toggle:checked){overflow:hidden}
.nav-toggle:checked ~ .nav-toggle-label span:nth-child(1){transform:translateY(9px) rotate(45deg)}
.nav-toggle:checked ~ .nav-toggle-label span:nth-child(2){opacity:0}
.nav-toggle:checked ~ .nav-toggle-label span:nth-child(3){transform:translateY(-10px) rotate(-45deg)}
.hero{position:relative;padding:var(--space-7) var(--space-3) var(--space-6);text-align:center;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(at 20% 20%,rgba(245,124,0,0.18) 0%,transparent 55%),radial-gradient(at 80% 30%,rgba(46,125,50,0.14) 0%,transparent 55%),radial-gradient(at 50% 90%,rgba(245,124,0,0.10) 0%,transparent 55%),var(--offwhite);animation:meshShift 18s ease-in-out infinite alternate}
@keyframes meshShift{0%{background-position:0% 0%,100% 0%,50% 100%}100%{background-position:10% 10%,90% 20%,60% 90%}}
.hero .eyebrow{display:inline-block;font-size:0.8rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--mango-dark);margin-bottom:var(--space-3)}
.hero h1{font-size:clamp(2rem,7vw,4rem);max-width:800px;margin:0 auto var(--space-3)}
.hero h1 .accent{color:var(--mango)}
.hero .lede{font-size:1.125rem;color:var(--grey);max-width:640px;margin:0 auto var(--space-4)}
.hero-cta{display:flex;flex-direction:column;gap:var(--space-2);align-items:center}
.btn{display:inline-block;min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius);font-weight:700;text-align:center;transition:transform .15s,background .2s}
.btn-primary{background:var(--mango);color:#fff}
.btn-primary:hover{background:var(--mango-dark);color:#fff;transform:translateY(-1px)}
.btn-secondary{background:transparent;color:var(--charcoal);border:2px solid var(--charcoal)}
.btn-secondary:hover{background:var(--charcoal);color:#fff}
.section{padding:var(--space-6) 0}
.section-header{text-align:center;margin-bottom:var(--space-5)}
.section-header h2{font-size:clamp(1.75rem,5vw,2.5rem)}
.section-header p{color:var(--grey);max-width:600px;margin:0 auto}
.tracks{display:grid;gap:var(--space-3)}
.track-card{background:#fff;border:1px solid var(--hairline);border-radius:var(--radius);padding:var(--space-4);transition:border-color .2s,transform .2s}
.track-card:hover{border-color:var(--mango);transform:translateY(-2px)}
.track-card h3{font-size:1.35rem;margin-bottom:var(--space-2)}
.track-card .track-list{color:var(--grey);font-size:0.95rem}
.track-card .track-list li{padding:4px 0}
.track-card .track-link{display:inline-block;margin-top:var(--space-2);font-weight:700;color:var(--mango-dark)}
.offerings{display:grid;gap:var(--space-2)}
.offering-card{background:#fff;border:1px solid var(--hairline);border-radius:var(--radius);padding:var(--space-3)}
.offering-card h4{font-size:1.05rem;margin-bottom:var(--space-1)}
.offering-card p{font-size:0.9rem;color:var(--grey);margin:0}
.credibility{background:#fff;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
.credibility .container{display:grid;gap:var(--space-3);align-items:center}
.credibility .stat{font-size:clamp(2rem,6vw,3rem);font-weight:800;color:var(--mango);letter-spacing:-0.03em}
.credibility p{color:var(--grey);margin:0}
.cta-band{background:var(--charcoal);color:#fff;padding:var(--space-6) var(--space-3);text-align:center}
.cta-band h2{font-size:clamp(1.75rem,5vw,2.5rem);color:#fff;margin-bottom:var(--space-3)}
.cta-band .btn-primary{background:var(--mango)}
.site-footer{background:#fff;border-top:1px solid var(--hairline);padding:var(--space-5) 0 var(--space-3)}
.footer-top{display:grid;gap:var(--space-4);margin-bottom:var(--space-4)}
.footer-brand{display:flex;gap:var(--space-2);align-items:center}
.footer-brand strong{display:block;font-size:1.05rem;color:var(--charcoal)}
.footer-brand .tagline{font-size:0.9rem;color:var(--grey);margin:4px 0 0}
.footer-cols{display:grid;gap:var(--space-3)}
.footer-cols h4{font-size:0.85rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--charcoal);margin-bottom:var(--space-1)}
.footer-cols a{color:var(--grey);font-size:0.95rem}
.footer-cols a:hover{color:var(--mango-dark)}
.footer-cols li{padding:4px 0}
.footer-fineprint{border-top:1px solid var(--hairline);padding-top:var(--space-2)}
.footer-fineprint p{font-size:0.8rem;color:var(--grey);text-align:center;margin:0}
@media(min-width:768px){
.nav-toggle-label{display:none}
.site-nav{position:static;transform:none;inset:auto;padding:0;background:transparent}
.site-nav ul{flex-direction:row;gap:var(--space-3);align-items:center}
.site-nav a{font-size:0.95rem;padding:var(--space-1) 0;min-height:auto}
.nav-cta{margin-top:0;padding:var(--space-1) var(--space-3) !important}
.hero-cta{flex-direction:row;justify-content:center}
.tracks{grid-template-columns:1fr 1fr;gap:var(--space-4)}
.offerings{grid-template-columns:repeat(2,1fr)}
.credibility .container{grid-template-columns:auto 1fr;gap:var(--space-5);padding-top:var(--space-5);padding-bottom:var(--space-5)}
.footer-top{grid-template-columns:1fr 2fr}
.footer-cols{grid-template-columns:repeat(3,1fr)}
}
@media(min-width:1100px){
.offerings{grid-template-columns:repeat(4,1fr)}
.hero{padding:var(--space-7) var(--space-3)}
}
