:root{--navy:#0B2240;--navy-2:#122f55;--gold:#F5A800;--blue:#0A4F8A;--cyan:#33C3F0;--violet:#7C5CFF;--silver:#C7CED8;--cloud:#F7F9FC;--ink:#14213a;--muted:#4a5872;--r:18px;--max:1120px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;font-family:Nunito,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:1.0625rem;line-height:1.65;color:var(--ink);background:#fff}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,.brand{font-family:Montserrat,system-ui,sans-serif;line-height:1.15;letter-spacing:-.01em;margin:0 0 .6em}
h1{font-size:clamp(2rem,6vw,3.6rem);font-weight:800}
h2{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:800;color:var(--navy)}
h3{font-size:1.2rem;font-weight:700;color:var(--navy)}
p{margin:0 0 1em}
a{color:var(--blue)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--navy);padding:10px 16px;font-weight:700;z-index:10}
.skip:focus{left:10px;top:10px}
/* header */
.site-header{background:#fff;border-bottom:1px solid #e6eaf1;position:sticky;top:0;z-index:5}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-weight:800;font-size:1rem;margin:0;letter-spacing:.02em}
.brand img{width:40px;height:auto}
.nav ul{list-style:none;display:flex;gap:4px;margin:0;padding:0;flex-wrap:wrap}
.nav a{display:block;padding:8px 12px;border-radius:999px;text-decoration:none;color:var(--navy);font-weight:700;font-size:.95rem}
.nav a:hover{background:var(--cloud)}
.nav a[aria-current=page]{background:var(--navy);color:#fff}
/* hero */
.hero{background:radial-gradient(1200px 500px at 85% -10%,#1d4a85 0,transparent 60%),var(--navy);color:#fff;padding:56px 0 64px;overflow:hidden}
.hero .wrap{display:grid;gap:32px;align-items:center}
.hero h1{color:#fff}
.hero h1 .gold{color:var(--gold)}
.eyebrow{display:inline-block;font-family:Montserrat,sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.lead{font-size:1.2rem;color:#dfe7f3;max-width:38em}
.hero-mark{justify-self:center;width:min(300px,56vw);background:#fff;border-radius:50%;padding:36px;box-shadow:0 0 0 10px rgba(245,168,0,.15),0 20px 60px rgba(0,0,0,.35)}
@media(min-width:860px){.hero .wrap{grid-template-columns:1.4fr 1fr}.hero{padding:88px 0 96px}}
.page-hero{background:var(--navy);color:#fff;padding:48px 0}
.page-hero h1{color:#fff;font-size:clamp(1.9rem,5vw,3rem)}
/* buttons */
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.btn{display:inline-block;font-family:Montserrat,sans-serif;font-weight:700;text-decoration:none;padding:13px 22px;border-radius:999px;border:2px solid transparent;font-size:1rem;cursor:pointer;line-height:1.2}
.btn-gold{background:var(--gold);color:var(--navy)}
.btn-gold:hover{background:#ffbb22}
.btn-ghost{border-color:#fff;color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--blue)}
.btn-outline{border-color:var(--navy);color:var(--navy);background:#fff}
/* sections */
section{padding:56px 0}
@media(min-width:860px){section{padding:80px 0}}
.alt{background:var(--cloud)}
.section-intro{max-width:44em;color:var(--muted);font-size:1.1rem}
.grid{display:grid;gap:20px}
@media(min-width:700px){.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}}
@media(min-width:960px){.g5{grid-template-columns:repeat(5,1fr)}}
@media(min-width:600px) and (max-width:959px){.g5{grid-template-columns:repeat(3,1fr)}}
.card{background:#fff;border:1px solid #e3e8f0;border-radius:var(--r);padding:24px}
.alt .card{border-color:#e3e8f0}
.pillar{text-align:center;padding:20px 14px}
.pillar .dot{width:44px;height:44px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-size:1.3rem}
.pillar h3{margin:0;font-size:1.05rem}
.book{display:grid;gap:28px;align-items:start}
@media(min-width:860px){.book{grid-template-columns:320px 1fr;gap:48px}}
.book-cover{display:block;max-width:320px;width:100%;margin:0 auto}
.book-cover picture{display:block;width:100%}
.book-cover img{display:block;width:100%;height:auto;border-radius:14px;box-shadow:0 18px 40px rgba(11,34,64,.25);transition:transform .3s ease,box-shadow .3s ease}
.book-cover:hover img{transform:translateY(-4px);box-shadow:0 24px 50px rgba(11,34,64,.32)}
.cover{aspect-ratio:3/4;border-radius:12px;background:linear-gradient(160deg,var(--navy) 0,#1b3f73 100%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:26px;box-shadow:0 18px 40px rgba(11,34,64,.25);max-width:320px;width:100%;margin:0 auto}
.cover .t{font-family:Montserrat,sans-serif;font-weight:800;font-size:1.35rem;line-height:1.2}
.cover .s{color:var(--gold);font-weight:700;font-size:.9rem}
.cover .ph{font-size:.8rem;color:#b9c6da;border-top:1px solid rgba(255,255,255,.2);padding-top:10px}
dl.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:18px 0}
dl.facts dt{font-weight:700;color:var(--navy)}
dl.facts dd{margin:0}
.pill{display:inline-block;font-family:Montserrat,sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:#fff3d6;color:#6b4800}
.char{text-align:center;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease}
.char:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(11,34,64,.08)}
.char .art{height:220px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;border:1px solid rgba(11,34,64,.08);background:#fff;padding:16px;box-sizing:border-box}
.char.max .art{background:#fff8e6}
.char.robo .art{background:#f1f4f8}
.char.quinny .art{background:#f2efff}
.char .art picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0;min-width:0}
.char .art img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 6px 14px rgba(11,34,64,.12));transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
.char:hover .art img{transform:scale(1.05)}
.author-card{display:flex;gap:20px;align-items:flex-start}
.author-card picture{flex:0 0 110px;width:110px;display:block}
.author-avatar{width:110px;height:145px;border-radius:12px;object-fit:cover;display:block;box-shadow:0 6px 16px rgba(11,34,64,.12);border:2px solid #fff}
@media(max-width:580px){.author-card{flex-direction:column;align-items:center;text-align:center}.author-card picture{margin-bottom:12px}}
.author-quote{font-style:italic;color:var(--navy);font-size:.95rem;margin:6px 0 10px;line-height:1.4}
.author-bio{font-size:.9rem;color:var(--muted);line-height:1.55}
.inside-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:24px 0}
.inside-item{border-radius:12px;overflow:hidden;border:1px solid #e3e8f0;background:#fff;box-shadow:0 4px 12px rgba(11,34,64,.05);transition:transform .2s ease;display:flex;flex-direction:column}
.inside-item:hover{transform:translateY(-3px)}
.inside-item picture{display:block;width:100%}
.inside-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.inside-item .cap{padding:10px 14px;font-size:.85rem;font-weight:700;color:var(--navy);background:#fff;margin-top:auto}
.journey{counter-reset:s;list-style:none;padding:0;margin:24px 0;display:grid;gap:14px}
@media(min-width:860px){.journey{grid-template-columns:repeat(5,1fr)}}
.journey li{counter-increment:s;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:18px}
.journey li::before{content:counter(s);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--gold);color:var(--navy);font-weight:800;font-family:Montserrat,sans-serif;margin-bottom:8px}
.dark{background:var(--navy);color:#e6edf7}
.dark h2,.dark h3{color:#fff}
.note{font-size:.9rem;color:var(--muted)}
.dark .note{color:#b9c6da}
/* form */
form .field{margin-bottom:18px}
label,.legend{display:block;font-weight:700;color:var(--navy);margin-bottom:6px}
input[type=text],input[type=email],select,textarea{width:100%;font:inherit;padding:12px 14px;border:2px solid #cfd7e3;border-radius:12px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{border-color:var(--blue)}
textarea{min-height:110px;resize:vertical}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;color:var(--ink)}
.check input{width:20px;height:20px;margin-top:3px;flex:none;accent-color:var(--navy)}
.hint{font-size:.9rem;color:var(--muted);margin-top:4px}
.hidden{position:absolute!important;left:-9999px}
fieldset{border:0;padding:0;margin:0 0 18px}
.privacy{border-left:4px solid var(--gold)}
/* footer */
.site-footer{background:#081a31;color:#c6d1e2;padding:40px 0 28px;font-size:.95rem}
.site-footer a{color:#fff}
.site-footer .cols{display:grid;gap:24px}
@media(min-width:760px){.site-footer .cols{grid-template-columns:2fr 1fr 1fr}}
.site-footer h2{font-size:1rem;color:#fff;margin-bottom:.6em}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin:4px 0}
.tag{color:var(--gold);font-weight:700}
.legal{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:16px;font-size:.85rem;color:#9fb0c8}
.center{text-align:center}
@media(max-width:599px){.g5{grid-template-columns:repeat(2,1fr)}.g5>:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:559px){dl.facts{grid-template-columns:1fr;gap:0}dl.facts dd{margin-bottom:10px}}
.dark .card h3{color:var(--navy)}
@media(min-width:600px) and (max-width:959px){.g5>:last-child:nth-child(3n+1){grid-column:auto}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.float-anim{animation:float 3.5s ease-in-out infinite}

