:root{
  --navy:#123765;--navy2:#0b2442;--sky:#dff5ff;--gold:#ffd45a;--orange:#ff8a3d;--green:#41b883;
  --cream:#fff8e8;--pink:#ffe0ec;--ink:#1c2838;--muted:#607086;--white:#fff;
  --shadow:0 24px 70px rgba(18,55,101,.18);--radius:30px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:radial-gradient(circle at 15% 5%,#fff0b7 0 16%,transparent 30%),linear-gradient(180deg,var(--cream),#fff 42%,var(--sky));cursor:url("images/ava-cursor.png") 8 8, auto;}a,button,.character-guide,.character-talk{cursor:url("images/ava-cursor.png") 8 8, pointer}a{text-decoration:none;color:inherit}button{font:inherit}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(18px,4vw,64px);background:rgba(255,248,232,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(18,55,101,.08)}.brand{display:flex;gap:10px;align-items:center;font-weight:900;color:var(--navy)}.brand img{width:42px;height:42px;border-radius:50%;object-fit:contain;background:#fff;border:3px solid var(--gold)}nav{display:flex;gap:22px;align-items:center;font-weight:900;font-size:.95rem}nav a:not(.nav-cta){color:#38516f}.nav-cta{background:var(--navy);color:#fff;padding:10px 17px;border-radius:999px;transition:.2s ease}.nav-cta:hover{background:var(--orange);box-shadow:0 8px 20px rgba(255,138,61,.4);transform:translateY(-2px)}.hero{display:grid;grid-template-columns:1.02fr .98fr;gap:44px;align-items:center;padding:64px clamp(18px,6vw,92px) 36px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--orange);font-weight:900;font-size:.78rem}.hero h1,.problem h2,.audience h2,.characters h2,.psychology h2,.pilot h2,.book-section h2,.cta h2,.bulk-order h2{font-family:"Baloo 2",Inter,sans-serif;color:var(--navy);line-height:.95;margin:10px 0 18px}.hero h1{font-size:clamp(3rem,7.5vw,6.4rem);max-width:880px}.hero-text{font-size:1.23rem;line-height:1.7;color:#3f526b;max-width:680px}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:15px 23px;font-weight:900;margin:8px 10px 8px 0;transition:.2s ease}.button:hover{transform:translateY(-2px)}.primary,.secondary{background:#fff;color:var(--orange);border:2px solid var(--orange);box-shadow:0 10px 24px rgba(255,138,61,.14)}.primary:hover,.secondary:hover{background:var(--orange);color:#fff;box-shadow:0 8px 20px rgba(255,138,61,.4)}.primary:active,.secondary:active{background:#ea6b1f;color:#fff;transform:scale(.97)}.buy-now{background:var(--navy);color:#fff;border:2px solid var(--navy);box-shadow:0 14px 28px rgba(18,55,101,.22)}.buy-now:hover{background:var(--orange);border-color:var(--orange);color:#fff;box-shadow:0 8px 20px rgba(255,138,61,.4)}.buy-now:active{background:#ea6b1f;border-color:#ea6b1f;transform:scale(.97)}
.hero-stage{position:relative;min-height:620px;border-radius:44px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,248,232,.12)),url("images/bright-cents-bank-hero.jpeg") center/cover no-repeat;box-shadow:var(--shadow);overflow:hidden;border:10px solid rgba(255,255,255,.85)}.hero-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,248,232,.1) 58%,rgba(255,248,232,.86));pointer-events:none;z-index:1}.hero-ava{position:absolute;left:0%;bottom:18px;width:min(38%,250px);filter:drop-shadow(0 16px 16px rgba(18,55,101,.18));z-index:4;transform-origin:70% 80%}.hero-michael{height: 61%;position:absolute;right:-1%;bottom:6px;width:min(48%,320px);filter:drop-shadow(0 18px 18px rgba(18,55,101,.22));z-index:4;transform-origin:50% 95%}.speech{position:absolute;z-index:6;background:#fff;border:4px solid var(--navy);border-radius:26px;padding:14px 18px;font-weight:900;color:var(--navy);box-shadow:0 10px 0 rgba(18,55,101,.08);transition:.2s ease}.speech:hover{transform:translateY(-3px);background:#fff8d7}.speech.one{left:5%;top:58%;}.speech.two{right:1%;top:22%;max-width:220px}.logos{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;padding:28px clamp(18px,6vw,92px)}.logos span,.logos strong{background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #fdba74;padding:16px 18px;border-radius:22px;font-weight:900;color:#c2410c;box-shadow:0 10px 24px rgba(255,138,61,.14);min-height:76px;display:flex;align-items:center;justify-content:center;text-align:center;max-width:260px}.logos strong{background:linear-gradient(135deg,#fff,#fff3bf);border:2px solid var(--gold);color:var(--navy)}.problem,.audience,.characters,.psychology,.pilot,.book-section,.cta,.bulk-order{margin:42px clamp(18px,6vw,92px);padding:44px;border-radius:var(--radius);background:rgba(255,255,255,.78);box-shadow:var(--shadow)}.problem{display:grid;grid-template-columns:1fr 1fr;gap:34px}.problem h2,.audience h2,.characters h2,.psychology h2,.pilot h2,.book-section h2,.cta h2,.bulk-order h2{font-size:clamp(2.15rem,4vw,4.1rem)}.problem p,.pilot p,.cta p,.bulk-order p{font-size:1.08rem;line-height:1.75;color:#4b5f78}.section-heading{text-align:center;max-width:850px;margin:0 auto 30px}.audience{background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,248,232,.9))}.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.audience-grid div{background:transparent;border:none;box-shadow:none;padding:14px 10px;text-align:center}.audience-grid span{font-size:2.2rem;display:block;margin-bottom:8px}.audience-grid b{display:block;color:var(--navy);font-size:1.15rem;margin-bottom:6px}.audience-grid p{margin:0 auto;max-width:240px;color:#53657b;line-height:1.55}.character-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.character-card{position:relative;background:#fff;border-radius:28px;padding:18px;text-align:center;border:1px solid rgba(18,55,101,.08);box-shadow:0 14px 34px rgba(18,55,101,.09);transition:.2s ease;overflow:visible}.character-card:hover{transform:translateY(-4px)}.character-card img{height:230px;width:100%;object-fit:contain;object-position:center bottom;transform-origin:bottom center}.character-card h3{font-family:"Baloo 2";font-size:2rem;line-height:1;margin:12px 0 6px;color:var(--navy)}.character-card p{font-size:.94rem;line-height:1.55;color:#56677d;margin:0}.character-card.featured{background:linear-gradient(180deg,#fff,#fff5c8);border:3px solid var(--gold)}.bubble{opacity:0;position:absolute;top:-34px;left:50%;transform:translateX(-50%) scale(.95);min-width:170px;background:#fff;color:var(--navy);font-weight:900;border:3px solid var(--gold);border-radius:20px;padding:10px 12px;box-shadow:0 12px 24px rgba(18,55,101,.14);transition:.2s ease;z-index:10}.character-card:hover .bubble{opacity:1;transform:translateX(-50%) scale(1)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:22px clamp(18px,6vw,92px)}.card{padding:30px;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);border:1px solid rgba(18,55,101,.08)}.icon{font-size:2.4rem}.card h3,.timeline h3,.bulk-card h3{color:var(--navy);font-size:1.45rem;margin-bottom:8px}.card p,.psych-grid p,.timeline p,.checklist,.bulk-card p{color:#53657b;line-height:1.65}.bank-card{border-top:8px solid var(--navy)}.school-card{border-top:8px solid var(--gold)}.family-card{border-top:8px solid var(--pink)}.psych-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.psych-grid div{background:var(--cream);border-radius:22px;padding:24px;border:1px solid rgba(18,55,101,.06)}.psych-grid b{color:var(--navy);font-size:1.08rem}.pilot{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}.pilot-character{max-height:260px;margin:22px auto 0;object-fit:contain;filter:drop-shadow(0 16px 18px rgba(18,55,101,.16));transform-origin:bottom center}.timeline{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.timeline div{background:#fff;border:1px solid rgba(18,55,101,.08);border-radius:22px;padding:24px}.timeline span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--gold);font-weight:900;color:var(--navy)}.book-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:center}.book-visual{position:relative;min-height:430px;display:grid;place-items:center}.book-visual img{position:absolute;left:0;bottom:0;width:240px;filter:drop-shadow(0 16px 20px rgba(18,55,101,.16));z-index:2;transform-origin:bottom center}.book-card{margin-left:120px;width:min(340px,80vw);min-height:390px;border-radius:22px;background:linear-gradient(160deg,var(--navy),#285b93 48%,var(--gold));box-shadow:20px 22px 0 rgba(18,55,101,.13);padding:34px;color:#fff;text-align:center;border:6px solid #fff;display:grid;align-content:center}.book-card p{background:#fff;color:var(--navy);border-radius:999px;padding:9px 10px;font-weight:900}.book-card h3{font-family:"Baloo 2";font-size:3.1rem;line-height:.92;margin:24px 0 14px}.book-card small{font-weight:900}.checklist{list-style:none;padding:0}.checklist li{margin:12px 0;padding-left:34px;position:relative}.checklist li:before{content:"✓";position:absolute;left:0;top:0;background:var(--green);color:#fff;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-weight:900}.bulk-order{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,248,232,.95));border:2px solid rgba(255,212,90,.45)}.bulk-button{background:#fff;color:var(--orange);border:2px solid var(--orange);box-shadow:0 10px 24px rgba(255,138,61,.14)}.bulk-button:hover{background:var(--orange);color:#fff;box-shadow:0 8px 20px rgba(255,138,61,.4)}.bulk-card{background:#fff;border-radius:28px;padding:28px;border:1px solid rgba(18,55,101,.08);box-shadow:0 14px 34px rgba(18,55,101,.09)}.bulk-card span{font-size:3rem;display:block;margin-bottom:10px}.cta{display:grid;grid-template-columns:230px 1fr;gap:26px;align-items:center;background:linear-gradient(140deg,var(--navy2),#245c93);color:#fff;text-align:left}.cta img{height:260px;width:100%;object-fit:contain;filter:drop-shadow(0 16px 18px rgba(0,0,0,.2));transform-origin:bottom center}.cta h2,.cta .eyebrow{color:#fff}.cta p{color:#dce9f6;max-width:760px}.cta small{display:block;color:#dce9f6;margin-top:8px}footer{text-align:center;padding:28px;color:#52657d;font-weight:700}.character-talk:hover,.character-card:hover img,.pilot-character:hover,.book-visual img:hover,.cta img:hover{animation:wave 760ms ease-in-out}.hero-ava:hover{animation:avaWingWave 760ms ease-in-out}.hero-michael:hover{animation:wave 760ms ease-in-out}@keyframes wave{0%,100%{transform:rotate(0deg) translateY(0)}18%{transform:rotate(-5deg) translateY(-4px)}38%{transform:rotate(6deg) translateY(-7px)}58%{transform:rotate(-4deg) translateY(-3px)}78%{transform:rotate(3deg) translateY(-5px)}}@keyframes avaWingWave{0%,100%{transform:rotate(0deg) translateY(0) scale(1)}20%{transform:rotate(-3deg) translateY(-3px) scale(1.02)}40%{transform:rotate(5deg) translateY(-5px) scale(1.025)}60%{transform:rotate(-3deg) translateY(-3px) scale(1.02)}80%{transform:rotate(4deg) translateY(-4px) scale(1.01)}}
@media(max-width:1100px){.character-grid{grid-template-columns:repeat(3,1fr)}.psych-grid{grid-template-columns:repeat(2,1fr)}.audience-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){nav a:not(.nav-cta){display:none}.hero,.problem,.pilot,.book-section,.cta,.bulk-order{grid-template-columns:1fr}.hero{padding-top:38px}.hero-stage{min-height:560px}.hero h1{font-size:3.2rem}.cards,.psych-grid,.character-grid{grid-template-columns:1fr}.timeline{grid-template-columns:1fr}.audience-grid{grid-template-columns:1fr}.problem,.audience,.characters,.psychology,.pilot,.book-section,.cta,.bulk-order{padding:28px;margin:24px 16px}.hero-ava{width:210px;left:8px}.hero-michael{width:250px;right:-18px}.speech.one{top:44%;left:16px}.speech.two{top:34%;right:16px}.book-visual img{position:relative;width:210px}.book-card{margin-left:0}.cta img{height:220px}.cta{text-align:center}}

.hidden{display:none}

.bulk-form{
  background:#fff;
  border-radius:28px;
  padding:28px;
  border:1px solid rgba(18,55,101,.08);
  box-shadow:0 14px 34px rgba(18,55,101,.09);
  display:grid;
  gap:14px;
}

.bulk-form input,
.bulk-form textarea{
  width:100%;
  border:2px solid rgba(18,55,101,.12);
  border-radius:18px;
  padding:14px 16px;
  font:inherit;
  color:var(--ink);
}

.bulk-form textarea{
  min-height:130px;
  resize:vertical;
}

.bulk-form input:focus,
.bulk-form textarea:focus{
  outline:none;
  border-color:var(--orange);
  box-shadow:0 0 0 4px rgba(255,138,61,.14);
}

.bulk-form button{
  width:100%;
  justify-content:center;
}