@font-face{font-family:"Jakarta";src:url(fonts/jakarta-latin.woff2) format("woff2");font-weight:500 800;font-display:swap}
:root{
  --navy:#03244f;--navy-2:#0a3368;--ink:#14213a;--muted:#4a5568;--line:#e3e7ee;
  --paper:#faf8f4;--soft:#f1f4f9;--white:#fff;
  --orange:#b45309;--orange-d:#923f06;--amber:#f59e0b;--green:#16a34a;--sky:#0284c7;--violet:#6d28d9;
  --radius:14px;--shadow:0 1px 2px rgba(3,36,79,.06),0 8px 24px rgba(3,36,79,.08);
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:18px;line-height:1.65;color:var(--ink);background:var(--white)}
h1,h2,h3,h4{font-family:"Jakarta",system-ui,sans-serif;color:var(--navy);line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2.3rem,5vw,3.8rem);font-weight:800}
h2{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
h3{font-size:1.2rem;font-weight:700}
p{margin:0 0 1em}
a{color:var(--navy-2)}
a:hover{color:var(--orange)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:10px 16px;z-index:100}
.skip:focus{left:12px;top:12px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:4px}
.spectrum{height:5px;background:linear-gradient(90deg,var(--amber),var(--green),var(--sky),var(--violet))}
.eyebrow{font-family:"Jakarta",sans-serif;font-weight:800;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:.6em;display:block}
.lede{font-size:1.2rem;color:var(--muted);max-width:44em}
.center{text-align:center}.center .lede{margin-left:auto;margin-right:auto}

/* Utility bar + header */
.util{background:var(--navy);color:#dbe6f5;font-size:.9rem}
.util .wrap{display:flex;justify-content:space-between;gap:12px;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}
.util a{color:#fff;font-weight:600}
.site-head{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px}
.brand img{height:52px;width:auto}
.nav{display:flex;align-items:center;gap:6px}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px}
.nav a{display:block;padding:10px 14px;border-radius:8px;text-decoration:none;color:var(--ink);font-weight:600;font-size:1rem}
.nav a:hover,.nav a[aria-current=page]{background:var(--soft);color:var(--navy)}
.menu-btn{display:none;background:none;border:2px solid var(--navy);color:var(--navy);border-radius:8px;padding:8px 12px;font:700 1rem "Jakarta",sans-serif;cursor:pointer}
@media (max-width:900px){
  .menu-btn{display:block}
  .nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:12px 20px 20px;display:none}
  .nav.open{display:flex}
  .nav ul{flex-direction:column}
  .nav .btn{margin-top:8px;text-align:center}
}

/* Buttons */
.btn{display:inline-block;font:700 1rem "Jakarta",sans-serif;padding:14px 24px;border-radius:10px;text-decoration:none;border:2px solid transparent;cursor:pointer;line-height:1.2}
.btn-orange{background:var(--orange);color:#fff}.btn-orange:hover{background:var(--orange-d);color:#fff}
.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover{background:var(--navy-2);color:#fff}
.btn-ghost{border-color:#fff;color:#fff}.btn-ghost:hover{background:#fff;color:var(--navy)}
.btn-line{border-color:var(--navy);color:var(--navy)}.btn-line:hover{background:var(--navy);color:#fff}
.btn-sm{padding:10px 16px;font-size:.92rem}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:1.4em}

/* Hero */
.hero{position:relative;color:#fff;overflow:hidden;background:var(--navy)}
.hero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(3,36,79,.94) 0%,rgba(3,36,79,.82) 45%,rgba(3,36,79,.35) 100%)}
.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center;padding-top:96px;padding-bottom:96px}
.hero h1{color:#fff}
.hero .eyebrow{color:#fcd34d}
.hero .tagline{font-style:italic;font-size:1.3rem;color:#e7eefb;max-width:32em}
.badge-card{background:#fff;border-radius:20px;padding:22px;box-shadow:0 20px 50px rgba(0,0,0,.3);justify-self:end;max-width:340px}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr;padding-top:64px;padding-bottom:64px}.badge-card{display:none}}
.page-hero{position:relative;color:#fff;background:var(--navy);overflow:hidden}
.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,36,79,.95),rgba(3,36,79,.6))}
.page-hero .wrap{position:relative;z-index:1;padding-top:80px;padding-bottom:80px}
.page-hero h1{color:#fff;max-width:16em}.page-hero .eyebrow{color:#fcd34d}.page-hero p{color:#e7eefb;font-size:1.2rem;max-width:40em}

/* Sections */
.section{padding:88px 0}
.section.soft{background:var(--soft)}
.section.paper{background:var(--paper)}
.section-head{margin-bottom:40px}
.grid{display:grid;gap:24px}
.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
@media (max-width:980px){.g4{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.g4,.g3,.g2{grid-template-columns:1fr}}

/* Icon cards (AECT "benefits") */
.icard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}
.icard:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(3,36,79,.06),0 16px 36px rgba(3,36,79,.12)}
.icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin-bottom:18px;color:#fff}
.icon svg{width:30px;height:30px}
.i1{background:var(--navy)}.i2{background:var(--sky)}.i3{background:var(--green)}.i4{background:var(--orange)}.i5{background:var(--violet)}.i6{background:var(--navy-2)}
.icard p{color:var(--muted);margin:0;font-size:1rem}

/* Photo cards (AECT "highlights") */
.pcard{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;border:1px solid var(--line)}
.pcard .ph{aspect-ratio:4/3;overflow:hidden}
.pcard .ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.pcard:hover .ph img{transform:scale(1.04)}
.pcard .body{padding:22px;display:flex;flex-direction:column;flex:1}
.chip{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:#fff;margin-top:-42px;margin-bottom:12px;box-shadow:0 6px 14px rgba(0,0,0,.18);position:relative}
.chip svg{width:22px;height:22px}
.pcard p{color:var(--muted);font-size:1rem;flex:1}
.pcard .kicker{font-size:.8rem;font-weight:700;color:var(--orange);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}

/* Feature band */
.band{background:var(--navy);padding:72px 0;position:relative}
.band::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--amber),var(--green),var(--sky),var(--violet))}
.band .grid{grid-template-columns:1.6fr 1fr;align-items:stretch}
@media (max-width:900px){.band .grid{grid-template-columns:1fr}}
.feature{position:relative;border-radius:var(--radius);overflow:hidden;min-height:340px;display:flex;align-items:flex-end}
.feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feature::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,36,79,.95) 10%,rgba(3,36,79,.2) 75%)}
.feature .txt{position:relative;z-index:1;padding:32px;color:#fff}
.feature h2{color:#fff;font-size:clamp(1.6rem,3vw,2.2rem)}
.feature p{color:#e3ebf8}
.dates{background:#fff;border-radius:var(--radius);padding:24px}
.dates h3{font-size:1.05rem;border-bottom:1px solid var(--line);padding-bottom:12px}
.dates ol{list-style:none;margin:0;padding:0}
.dates li{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.dates li:last-child{border-bottom:0}
.cal{flex:0 0 56px;height:60px;border-radius:8px;background:var(--navy);color:#fff;text-align:center;font-family:"Jakarta",sans-serif;line-height:1.05;padding-top:8px}
.cal b{display:block;font-size:.72rem;letter-spacing:.08em}.cal span{font-size:1.4rem;font-weight:800}
.cal.hot{background:var(--orange)}
.dates strong{display:block;color:var(--navy);line-height:1.3}
.dates small{color:var(--muted);font-size:.9rem}
.dates .more{display:inline-block;margin-top:10px;font-weight:700}

/* Split media */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split.rev .media{order:2}
.split .media img{border-radius:20px;box-shadow:var(--shadow);width:100%;object-fit:cover}
@media (max-width:860px){.split{grid-template-columns:1fr;gap:32px}.split.rev .media{order:0}}
.ticks{list-style:none;padding:0;margin:1em 0}
.ticks li{position:relative;padding-left:32px;margin:.5em 0}
.ticks li::before{content:"";position:absolute;left:0;top:.35em;width:20px;height:20px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/13px no-repeat}

/* Audience chips */
.aud{display:flex;flex-wrap:wrap;gap:10px;margin-top:1em}
.aud span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-weight:600;font-size:.95rem;color:var(--navy)}

/* Quote band */
.quote{position:relative;color:#fff;overflow:hidden;background:var(--navy)}
.quote img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.quote::after{content:"";position:absolute;inset:0;background:rgba(3,36,79,.82)}
.quote .wrap{position:relative;z-index:1;padding-top:100px;padding-bottom:100px;text-align:center}
.quote blockquote{margin:0 auto;max-width:28em;font-family:"Jakarta",sans-serif;font-size:clamp(1.6rem,3.4vw,2.5rem);font-weight:700;line-height:1.25}
.quote cite{display:block;margin-top:18px;font-style:normal;color:#fcd34d;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.85rem}

/* Standards row (AECT logo row) */
.stds{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
@media (max-width:980px){.stds{grid-template-columns:repeat(3,1fr)}}
@media (max-width:520px){.stds{grid-template-columns:repeat(2,1fr)}}
.std{border:1px solid var(--line);border-radius:12px;padding:18px 12px;text-align:center;background:#fff}
.std b{display:block;font-family:"Jakarta",sans-serif;font-size:1.25rem;color:var(--navy)}
.std small{color:var(--muted);font-size:.85rem}

/* Tiers */
.tier{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow);position:relative}
.tier.pop{border:2px solid var(--orange)}
.tier .tag{position:absolute;top:-13px;left:24px;background:var(--orange);color:#fff;font-size:.75rem;font-weight:800;letter-spacing:.1em;padding:4px 10px;border-radius:999px}

/* Signup + forms */
.signup{background:linear-gradient(120deg,var(--navy),var(--navy-2));color:#fff;border-radius:20px;padding:44px;display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center}
.signup h2{color:#fff}.signup p{color:#dbe6f5}
@media (max-width:860px){.signup{grid-template-columns:1fr;padding:30px}}
.signup form{display:flex;gap:10px;flex-wrap:wrap}
.signup input[type=email]{flex:1 1 240px}
label{display:block;font-weight:700;margin:0 0 6px;color:var(--navy)}
.signup label{color:#fff}
input,textarea,select{width:100%;font:inherit;font-size:1rem;padding:13px 14px;border:2px solid #b8c2d3;border-radius:10px;background:#fff;color:var(--ink)}
input:focus,textarea:focus{border-color:var(--navy);outline:3px solid var(--amber);outline-offset:1px}
.field{margin-bottom:18px}
.hp{position:absolute;left:-5000px}
.formcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Prose pages */
.prose{max-width:760px}
.prose h2{margin-top:1.6em;font-size:1.6rem}
.prose ul{padding-left:1.2em}

/* Footer */
.site-foot{background:#0b1830;color:#c9d4e6;font-size:.98rem}
.site-foot .top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-top:64px;padding-bottom:48px}
@media (max-width:900px){.site-foot .top{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.site-foot .top{grid-template-columns:1fr}}
.site-foot h2{color:#fff;font-size:1.05rem;margin-bottom:14px}
.site-foot ul{list-style:none;margin:0;padding:0}
.site-foot li{margin:6px 0}
.site-foot a{color:#e5ecf7;text-decoration:none}.site-foot a:hover{color:#fcd34d;text-decoration:underline}
.foot-logo{background:#fff;border-radius:12px;padding:10px 14px;display:inline-block;margin-bottom:14px}
.foot-logo img{height:44px;width:auto}
.site-foot .bottom{border-top:1px solid #22324f;padding-top:20px;padding-bottom:28px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.88rem;color:#9fb0cc}

/* ===== Floating-card look (Nov 2 2026) ===== */
body{background:linear-gradient(115deg,#fdf1e7 0%,#f6f2fb 45%,#eef3fc 100%) fixed}
.util{background:transparent;color:var(--ink)}
.util a{color:var(--navy)}
.site-head{background:transparent;border:0;backdrop-filter:none;padding:4px 0 0}
.site-head .wrap{background:#fff;border-radius:16px;box-shadow:0 2px 6px rgba(3,36,79,.05),0 14px 34px rgba(3,36,79,.09);padding-left:28px;padding-right:20px;max-width:calc(var(--max) - 0px)}
@media (max-width:900px){.site-head .wrap{margin:0 12px;position:relative}.nav{border-radius:0 0 16px 16px;box-shadow:0 14px 30px rgba(3,36,79,.12)}}
.hero,.page-hero{max-width:calc(var(--max) + 40px);margin:24px auto 0;border-radius:24px}
@media (max-width:1240px){.hero,.page-hero{margin:20px 12px 0}}
.hero+.spectrum,.page-hero+.spectrum{max-width:calc(var(--max) - 40px);margin:0 auto;border-radius:0 0 6px 6px}
.section.soft,.section.paper{background:rgba(255,255,255,.55)}
.quote{max-width:calc(var(--max) + 40px);margin:0 auto;border-radius:24px}
@media (max-width:1240px){.quote{margin:0 12px}}
.band{max-width:calc(var(--max) + 40px);margin:0 auto;border-radius:24px}
@media (max-width:1240px){.band{margin:0 12px}}
.band::before{border-radius:24px 24px 0 0}
.site-foot{margin-top:40px}

/* "You're all set" download page */
.allset{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;align-items:start;padding:40px 0 80px}
@media (max-width:900px){.allset{grid-template-columns:1fr}}
.card{background:#fff;border-radius:16px;box-shadow:0 2px 6px rgba(3,36,79,.05),0 14px 34px rgba(3,36,79,.09);padding:32px}
.cover{background:var(--soft);border-radius:10px;display:grid;place-items:center;padding:28px;margin-bottom:24px}
.cover img{width:220px;box-shadow:0 10px 30px rgba(3,36,79,.2);border-radius:4px}
.card .done{font-family:"Jakarta",sans-serif;font-weight:500;font-size:1.8rem;color:var(--ink);margin:0 0 .3em}
.nav a.btn-orange,.nav a.btn-orange:hover{color:#fff}
/* ax4e.com additions */
.hero-scan{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px;max-width:560px}
.hero-scan input{flex:1 1 260px;min-height:52px;padding:12px 16px;border:2px solid #fff;border-radius:10px;font:inherit;font-size:1.05rem;color:var(--ink);background:#fff}
.hero-scan input:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.hero-scan .btn{min-height:52px}
.field select{width:100%;min-height:46px;padding:10px 12px;border:1.5px solid #aab4c3;border-radius:8px;font:inherit;background:#fff;color:var(--ink)}
.form-err{color:#b91c1c;font-weight:600;margin-top:10px}
.form-ok{padding:8px 0}
.form-ok:focus{outline:none}
.icard h3 a{color:inherit}
