:root{
  --purple:#6B2BFF;
  --purple-deep:#3E10A8;
  --blue:#00B4F0;
  --teal:#00C4B4;
  --green:#8BC53F;
  --lime:#CBE600;
  --gold:#FFC107;
  --orange:#FF6B00;
  --pink:#FF1493;
  --navy:#0F2B6B;
  --midnight:#081947;
  --sky:#F4FAFF;
  --ink:#10204A;
  --muted:#5C6880;
  --white:#FFFFFF;
  --shadow:0 16px 42px rgba(15,43,107,.12);
  --radius:22px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55}
a{color:inherit}
img{max-width:100%;display:block}
button,a{font:inherit}
.skip-link{position:absolute;left:-9999px;top:0;background:#fff;color:var(--navy);padding:10px 14px;z-index:1000}
.skip-link:focus{left:12px;top:12px;border-radius:10px}
.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:850;color:var(--teal)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:14px 22px;border-radius:12px;font-weight:850;text-decoration:none;transition:.2s ease;border:2px solid transparent;min-height:50px}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--purple),#8C35FF);color:#fff;box-shadow:0 12px 25px rgba(107,43,255,.25)}
.btn-outline{border-color:rgba(255,255,255,.6);color:#fff;background:rgba(255,255,255,.04)}
.btn-light{background:#fff;color:var(--purple);box-shadow:var(--shadow)}
.btn-outline-purple{border-color:var(--purple);color:var(--purple);background:#fff}

/* HERO */
.hero{position:relative;overflow:hidden;background:
  radial-gradient(circle at 78% 20%,rgba(107,43,255,.5),transparent 32%),
  radial-gradient(circle at 15% 5%,rgba(255,20,147,.18),transparent 22%),
  linear-gradient(135deg,#0B0B5B 0%,#201071 45%,#071A4E 100%);color:#fff}
.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.hero:before{width:650px;height:650px;border:18px solid rgba(0,196,180,.15);right:-320px;bottom:-410px;box-shadow:0 0 0 18px rgba(203,230,0,.08),0 0 0 36px rgba(255,193,7,.07),0 0 0 54px rgba(255,20,147,.06)}
.hero:after{width:390px;height:390px;left:-250px;top:-250px;background:radial-gradient(circle,rgba(255,255,255,.11) 1px,transparent 2px);background-size:18px 18px}
.starfield{position:absolute;inset:0;opacity:.7;background-image:
  radial-gradient(circle at 13% 27%,#00B4F0 0 3px,transparent 4px),
  radial-gradient(circle at 91% 19%,#FF1493 0 3px,transparent 4px),
  radial-gradient(circle at 82% 76%,#FFC107 0 3px,transparent 4px),
  radial-gradient(circle at 35% 18%,#CBE600 0 2px,transparent 3px),
  radial-gradient(circle at 64% 12%,rgba(255,255,255,.7) 0 2px,transparent 3px)}
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:.94fr 1.06fr;gap:44px;align-items:center;min-height:590px;padding:66px 0 60px}
.hero-logo-wrap{display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border-radius:0;box-shadow:none;transform:translateY(-4px)}
.hero-brand-lockup{width:min(500px,100%);display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-brand-lockup--uploaded{transform:translateY(4px)}.hero-logo{width:min(430px,100%);filter:drop-shadow(0 14px 28px rgba(0,0,0,.14))}.hero-logo--uploaded{width:min(550px,100%);filter:drop-shadow(0 16px 30px rgba(0,0,0,.12))}.hero-logo-wordmark{margin-top:-18px;color:#fff;text-align:center;text-shadow:0 2px 10px rgba(0,0,0,.18)}.hero-logo-line1,.hero-logo-line2{display:block;font-weight:420;letter-spacing:.22em;line-height:1.15}.hero-logo-line1{font-size:clamp(1.25rem,2vw,1.8rem)}.hero-logo-line2{font-size:clamp(1.05rem,1.7vw,1.5rem);margin-top:8px;display:flex;align-items:center;justify-content:center;gap:10px}.brand-dots{display:inline-flex;align-items:center;gap:4px}.brand-dots i{display:block;width:7px;height:7px;border-radius:50%}.brand-dots i:nth-child(1){background:#00B4F0}.brand-dots i:nth-child(2){background:#FF1493}.brand-dots i:nth-child(3){background:#FF6B00}.brand-dots i:nth-child(4){background:#8BC53F}
.hero-copy h1{font-size:clamp(3rem,5.4vw,5.8rem);line-height:.9;letter-spacing:.02em;margin:0 0 22px;font-weight:900}
.hero-copy h1 span{display:block}
.hero-rule{display:flex;align-items:center;gap:9px;margin-bottom:18px}
.hero-rule .line{height:3px;width:170px;background:linear-gradient(90deg,var(--pink),var(--gold),var(--teal))}
.hero-rule .dot{width:7px;height:7px;border-radius:50%}
.hero-rule .star{color:var(--gold);font-size:1.25rem}
.tagline{font-size:clamp(1.25rem,2vw,1.85rem);font-weight:760;margin:0 0 15px}
.tagline em{font-style:italic;color:#54E7FF}
.hero-meta{font-size:1.05rem;margin:0 0 30px;color:rgba(255,255,255,.9)}
.hero-meta .pink{color:#ff71c2}.hero-meta .blue{color:#5ad9ff}.hero-meta .green{color:#bce65b}.hero-meta .gold{color:#ffd451}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}

/* SECTION */
.section{padding:74px 0}
.section-title{text-align:center;margin-bottom:34px}
.section-title h2{font-size:clamp(2.1rem,4vw,3.5rem);line-height:1;margin:0;color:var(--purple-deep)}
.section-title p{margin:10px 0 0;font-size:1.15rem;color:var(--navy)}
.title-flair{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:12px}.title-flair .line{height:2px;width:80px;background:linear-gradient(90deg,var(--purple),var(--pink))}.title-flair .star{color:var(--gold)}
.services{background:linear-gradient(180deg,#fff,#FAFCFF)}
.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.service-card{background:#fff;border:1px solid rgba(15,43,107,.08);border-radius:18px;box-shadow:0 10px 24px rgba(15,43,107,.08);padding:25px 16px 22px;text-align:center;min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;transition:.2s ease}
.service-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(15,43,107,.13)}
.icon-badge{width:74px;height:74px;border-radius:22px;display:grid;place-items:center;margin-bottom:16px;color:#fff;box-shadow:0 9px 18px rgba(15,43,107,.13)}
.icon-badge svg{width:39px;height:39px;stroke:currentColor;fill:none;stroke-width:1.8}
.service-card h3{font-size:1rem;line-height:1.25;margin:0 0 15px;color:#172248}
.mini-line{width:34px;height:4px;border-radius:5px;margin-top:auto}
.purple-bg{background:linear-gradient(135deg,#5F20DB,#7F3BFF)} .purple-line{background:var(--purple)}
.teal-bg{background:linear-gradient(135deg,#00AFA5,#12D3C4)} .teal-line{background:var(--teal)}
.pink-bg{background:linear-gradient(135deg,#ED167F,#FF3FA5)} .pink-line{background:var(--pink)}
.gold-bg{background:linear-gradient(135deg,#F5A000,#FFCA24)} .gold-line{background:var(--gold)}
.blue-bg{background:linear-gradient(135deg,#1268DB,#00B4F0)} .blue-line{background:var(--blue)}
.green-bg{background:linear-gradient(135deg,#60AD18,#9BD72C)} .green-line{background:var(--green)}

/* ALL STARS */
.allstars{padding:0;background:linear-gradient(135deg,#4310AF 0%,#6B16DC 45%,#270875 100%);color:#fff;position:relative;overflow:hidden;border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}
.allstars:before{content:"\2605";position:absolute;font-size:190px;right:8%;top:-40px;color:rgba(255,255,255,.045);transform:rotate(12deg)}
.allstars-inner{display:grid;grid-template-columns:1.1fr .9fr 1fr;align-items:center;gap:25px;min-height:270px;padding:35px 0;position:relative;z-index:2}
.allstars-logo{width:100%;max-width:470px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.18))}
.allstars-copy h2{font-size:clamp(1.65rem,2.6vw,2.6rem);line-height:1.12;margin:0 0 14px}.allstars-copy .lime{color:var(--lime)}.allstars-copy .teal{color:#4CE8EC}.allstars-copy p{margin:0;color:rgba(255,255,255,.88)}
.coming-pill{display:inline-flex;align-items:center;background:var(--pink);color:#fff;padding:7px 14px;border-radius:999px;font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
.kids-wrap{display:flex;justify-content:flex-end}.kids-wrap img{max-width:410px;border-radius:0;mix-blend-mode:normal;box-shadow:none}

/* MISSION */
.mission{position:relative;overflow:hidden;background:linear-gradient(135deg,#0A1D58,#182B8C 60%,#110A62);color:#fff;text-align:center;padding:64px 0}
.mission:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.12) 1px,transparent 1.5px);background-size:18px 18px;mask-image:linear-gradient(90deg,#000,transparent 30%,transparent 70%,#000)}
.mission h2{position:relative;z-index:2;font-size:clamp(2.6rem,5vw,5.2rem);line-height:.98;margin:0;font-weight:900}.mission h2 .accent{color:#51E7F0}.mission .rainbow-bar{width:180px;height:6px;border-radius:8px;margin:25px auto 0;background:linear-gradient(90deg,var(--gold),var(--lime),var(--teal),var(--blue),var(--pink))}

/* COMING */
.coming{background:#fff;padding:72px 0}
.coming-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:center}
.coming-card{display:grid;grid-template-columns:145px 1fr;gap:28px;align-items:center}
.rocket{width:145px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,#7C29FF,#28106D 60%,#0F2B6B);box-shadow:var(--shadow);font-size:4rem;position:relative;overflow:hidden}.rocket:after{content:"";position:absolute;width:120px;height:35px;background:#fff;border-radius:50%;bottom:-15px;opacity:.92}.rocket span{position:relative;z-index:2;transform:rotate(7deg)}
.coming h2{font-size:clamp(2rem,3.2vw,3.1rem);line-height:1.05;margin:0 0 14px;color:var(--purple-deep)}
.coming p{color:var(--muted);margin:0}
.contact-stack{border-left:1px solid rgba(15,43,107,.18);padding-left:42px;display:grid;gap:22px}
.contact-item{display:grid;grid-template-columns:56px 1fr;gap:15px;align-items:center}.contact-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#fff}.contact-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8}.contact-item strong{display:block;color:var(--navy)}.contact-item a{color:#4D28D6;text-decoration:none;font-weight:750;overflow-wrap:anywhere}.contact-item a:hover{text-decoration:underline}

/* SERVICE AREA */
.service-area{background:linear-gradient(135deg,#F7F8FF,#EEF9FF);padding:58px 0}
.area-box{background:#fff;border:1px solid rgba(107,43,255,.12);border-radius:24px;box-shadow:var(--shadow);padding:34px 38px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center}.area-icon{width:76px;height:76px;border-radius:22px;background:linear-gradient(135deg,var(--purple),var(--teal));color:#fff;display:grid;place-items:center;font-size:2rem}.area-box h2{margin:0 0 8px;color:var(--navy)}.area-box p{margin:0;color:var(--muted)}

/* FOOTER */
.footer{background:linear-gradient(135deg,#071945,#0F2B6B 60%,#28106D);color:#fff;padding:34px 0 26px;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--purple),var(--blue),var(--teal),var(--lime),var(--gold),var(--orange),var(--pink))}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.footer-brand{display:flex;align-items:center;gap:20px}.footer-brand img{width:120px}.footer-brand h3{margin:0;font-size:1.25rem;letter-spacing:.16em}.footer-brand p{margin:5px 0 0;color:rgba(255,255,255,.8);font-size:.92rem}.socials{display:flex;gap:10px}.social-placeholder{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#fff;font-weight:900;border:1px solid rgba(255,255,255,.13);cursor:default}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:24px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.72);font-size:.88rem}

/* WORK WITH US PAGE */
.subhero{
  background:linear-gradient(135deg,#0B0B5B,#4A12B8 62%,#0F2B6B);
  color:#fff;
  padding:28px 0 90px;
  position:relative;
  overflow:hidden
}

/* SOFT BRAND-COLOR GLOW */
.subhero:before{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:170%;
  height:136px;
  bottom:-70px;
  border-radius:50% 50% 0 0 / 100% 100% 0 0;
  background:linear-gradient(
    90deg,
    #00B4F0 0%,
    #6B2BFF 24%,
    #FF1493 46%,
    #FFC107 67%,
    #CBE600 84%,
    #00C4B4 100%
  );
  filter:blur(12px);
  opacity:.56;
  z-index:0;
  pointer-events:none
}

/* SMOOTH EDGE-TO-EDGE WHITE CURVE */
.subhero:after{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:170%;
  height:126px;
  bottom:-85px;
  border-radius:50% 50% 0 0 / 100% 100% 0 0;
  background:#fff;
  z-index:1;
  pointer-events:none
}

.subhero .container{
  position:relative;
  z-index:2
}

.subnav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:32px
}

.subnav img{
  width:300px;
  border-radius:0;
  box-shadow:none
}

.back-link{
  color:#fff;
  text-decoration:none;
  font-weight:800;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:10px
}

.subhero-copy{max-width:850px}

.subhero-copy h1{
  font-size:clamp(3rem,6vw,6rem);
  line-height:.95;
  margin:0 0 20px
}

.subhero-copy p{
  font-size:1.2rem;
  color:rgba(255,255,255,.87);
  max-width:730px
}

.work-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px
}

.work-card{
  border-radius:20px;
  padding:28px;
  background:#fff;
  border:1px solid rgba(15,43,107,.08);
  box-shadow:var(--shadow)
}

.work-card h3{
  margin:0 0 10px;
  color:var(--navy)
}

.work-card p{
  margin:0;
  color:var(--muted)
}

.work-section{padding:70px 0}
.work-section.alt{background:#F7FAFF}

.bullet-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:15px;
  margin:26px 0 0;
  padding:0;
  list-style:none
}

.bullet-list li{
  background:#fff;
  border:1px solid rgba(107,43,255,.1);
  border-radius:14px;
  padding:15px 17px;
  box-shadow:0 8px 20px rgba(15,43,107,.06)
}

.bullet-list li:before{
  content:"\2605";
  color:var(--gold);
  margin-right:9px
}

.cta-panel{
  background:linear-gradient(135deg,#321095,#6B2BFF);
  border-radius:28px;
  color:#fff;
  padding:45px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:30px;
  align-items:center
}

.cta-panel h2{
  font-size:clamp(2rem,3.5vw,3.6rem);
  line-height:1;
  margin:0 0 10px
}

.cta-panel p{
  margin:0;
  color:rgba(255,255,255,.82)
}

/* PREMIUM SERVICE DELIVERY */
.delivery-section-premium{
  position:relative;
  padding-top:58px;
  padding-bottom:58px;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 18%,rgba(107,43,255,.06),transparent 24%),
    radial-gradient(circle at 92% 25%,rgba(0,180,240,.07),transparent 25%),
    linear-gradient(180deg,#F7FAFF 0%,#F5F8FF 100%)
}

.delivery-section-premium:before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  right:-210px;
  top:70px;
  border:28px solid rgba(0,196,180,.05);
  border-radius:50%;
  pointer-events:none
}

.delivery-section-title{
  position:relative;
  z-index:2;
  max-width:1000px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:32px
}

.delivery-section-title p{
  max-width:720px;
  margin:12px auto 0
}

.delivery-grid-premium{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  align-items:stretch
}

.delivery-card{
  --delivery-accent:#6B2BFF;
  --delivery-soft:#F3EEFF;
  --delivery-border:rgba(107,43,255,.22);
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:410px;
  padding:38px 28px 26px;
  overflow:hidden;
  border:1.5px solid var(--delivery-border);
  border-radius:24px;
  background:#fff;
  box-shadow:0 16px 38px rgba(15,43,107,.09);
  transition:transform .22s ease,box-shadow .22s ease
}

.delivery-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 52px rgba(15,43,107,.14)
}

.delivery-card-featured{
  transform:translateY(-8px);
  box-shadow:0 22px 50px rgba(15,43,107,.13)
}

.delivery-card-featured:hover{transform:translateY(-12px)}
.delivery-card-purple{--delivery-accent:#6B2BFF;--delivery-soft:#F3EEFF;--delivery-border:rgba(107,43,255,.24)}
.delivery-card-teal{--delivery-accent:#00AAA0;--delivery-soft:#E9FBF9;--delivery-border:rgba(0,170,160,.27)}
.delivery-card-blue{--delivery-accent:#00A7E5;--delivery-soft:#EAF8FF;--delivery-border:rgba(0,167,229,.25)}

.delivery-card-topline{
  position:absolute;
  top:0;
  left:24px;
  right:24px;
  height:4px;
  border-radius:0 0 999px 999px;
  background:var(--delivery-accent)
}

.delivery-featured-badge{
  position:absolute;
  top:18px;
  right:18px;
  padding:7px 11px;
  border-radius:999px;
  background:var(--delivery-accent);
  color:#fff;
  font-size:.65rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 7px 16px rgba(15,43,107,.10)
}

.delivery-icon{
  width:78px;
  height:78px;
  display:grid;
  place-items:center;
  margin:4px auto 20px;
  border:8px solid var(--delivery-soft);
  border-radius:50%;
  background:var(--delivery-accent);
  color:#fff;
  box-shadow:0 10px 22px rgba(15,43,107,.10)
}

.delivery-icon svg{
  width:38px;
  height:38px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round
}

.delivery-kicker{
  display:block;
  margin-bottom:6px;
  text-align:center;
  color:var(--delivery-accent);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase
}

.delivery-card h3{
  margin:0 0 12px;
  text-align:center;
  color:var(--delivery-accent);
  font-size:1.65rem;
  line-height:1.05
}

.delivery-card>p{
  margin:0 auto 22px;
  text-align:center;
  color:var(--ink);
  font-size:.94rem;
  line-height:1.55
}

.delivery-mini-list{
  margin:auto 0 0;
  padding:18px 18px 16px;
  list-style:none;
  border-radius:16px;
  background:var(--delivery-soft)
}

.delivery-mini-list li{
  position:relative;
  padding:7px 0 7px 24px;
  color:var(--navy);
  font-size:.84rem;
  font-weight:700;
  line-height:1.35
}

.delivery-mini-list li:before{
  content:"\2713";
  position:absolute;
  left:0;
  top:7px;
  width:16px;
  height:16px;
  display:grid;
  place-items:center;
  border:1.5px solid var(--delivery-accent);
  border-radius:50%;
  color:var(--delivery-accent);
  font-size:.6rem;
  font-weight:900
}

.delivery-support-strip{
  position:relative;
  z-index:2;
  margin-top:30px;
  padding:22px 26px;
  overflow:hidden;
  border:1px solid rgba(107,43,255,.12);
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,43,107,.07)
}

.delivery-support-strip:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  background:linear-gradient(90deg,var(--purple),var(--blue),var(--teal),var(--lime),var(--gold),var(--orange),var(--pink))
}

.delivery-support-heading{
  display:flex;
  align-items:flex-start;
  gap:14px
}

.delivery-support-star{
  flex:0 0 auto;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:linear-gradient(135deg,var(--purple),#8C35FF);
  color:var(--gold);
  box-shadow:0 8px 18px rgba(107,43,255,.18)
}

.delivery-support-heading strong{
  display:block;
  color:var(--navy);
  font-size:1.05rem
}

.delivery-support-heading span:not(.delivery-support-star){
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.9rem
}

.delivery-support-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px
}

.delivery-support-pills span{
  padding:9px 12px;
  border:1px solid rgba(107,43,255,.11);
  border-radius:999px;
  background:#F7F8FF;
  color:var(--navy);
  font-size:.78rem;
  font-weight:800
}

/* TABLET */

/* FINAL CONTRACT CTA */
.contract-cta-section{
  padding:52px 0 66px;
  background:linear-gradient(180deg,#F5F8FF 0%,#FFFFFF 100%)
}

.contract-cta-panel{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  color:#fff;
  background:
    radial-gradient(circle at 92% 18%,rgba(255,20,147,.30),transparent 31%),
    radial-gradient(circle at 8% 88%,rgba(0,196,180,.15),transparent 24%),
    linear-gradient(120deg,#241085 0%,#5415C6 50%,#C012A5 100%);
  box-shadow:0 24px 60px rgba(58,20,149,.20)
}

.contract-cta-panel:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.34;
  background-image:
    radial-gradient(circle at 4% 18%,rgba(255,255,255,.5) 0 1.5px,transparent 2px),
    radial-gradient(circle at 96% 28%,rgba(255,255,255,.45) 0 1.5px,transparent 2px);
  background-size:18px 18px
}

.contract-cta-panel:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  background:linear-gradient(90deg,var(--purple),var(--pink),var(--orange),var(--gold),var(--lime),var(--teal),var(--blue))
}

.contract-cta-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) minmax(420px,.95fr);
  gap:26px;
  align-items:center;
  padding:36px 40px 30px
}

.contract-cta-icon{
  width:92px;
  height:92px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  padding:20px;
  background:
    linear-gradient(#351296,#351296) padding-box,
    linear-gradient(135deg,var(--pink),var(--gold),var(--lime),var(--teal),var(--blue)) border-box;
  border:5px solid transparent;
  box-shadow:0 14px 28px rgba(0,0,0,.16)
}

.contract-cta-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:#fff;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round
}

.contract-cta-copy{
  padding-right:24px;
  border-right:1px solid rgba(255,255,255,.24)
}

.contract-cta-eyebrow{
  display:block;
  margin-bottom:7px;
  color:#80F4EE;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.contract-cta-copy h2{
  margin:0 0 10px;
  color:#fff;
  font-size:clamp(2rem,3.4vw,3.45rem);
  line-height:.98;
  letter-spacing:-.025em
}

.contract-cta-copy p{
  max-width:520px;
  margin:0;
  color:rgba(255,255,255,.84);
  font-size:1rem;
  line-height:1.55
}

.contract-cta-actions{
  display:grid;
  grid-template-columns:1.25fr .85fr;
  gap:14px
}

.contract-cta-btn{
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 18px;
  border-radius:999px;
  text-decoration:none;
  text-align:center;
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  transition:.2s ease
}

.contract-cta-btn:hover{
  transform:translateY(-2px)
}

.contract-cta-btn-primary{
  background:linear-gradient(135deg,#00B9A9,#05CEBC);
  color:#fff;
  border:2px solid rgba(255,255,255,.20);
  box-shadow:0 12px 26px rgba(0,196,180,.24)
}

.contract-cta-btn-primary:hover{
  box-shadow:0 16px 32px rgba(0,196,180,.32)
}

.contract-cta-btn-secondary{
  color:#fff;
  border:2px solid rgba(255,255,255,.78);
  background:rgba(255,255,255,.05)
}

.contract-cta-btn-secondary:hover{
  background:#fff;
  color:var(--purple-deep)
}

.contract-cta-btn-icon{
  font-size:1.15rem;
  line-height:1
}

.contract-cta-trust{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin:0 40px;
  padding:21px 0 24px;
  border-top:1px solid rgba(255,255,255,.22)
}

.contract-trust-item{
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 18px;
  text-align:center;
  color:rgba(255,255,255,.92);
  font-size:.86rem;
  font-weight:750
}

.contract-trust-item + .contract-trust-item{
  border-left:1px solid rgba(255,255,255,.22)
}

.contract-trust-icon{
  width:34px;
  height:34px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.38);
  border-radius:50%;
  color:#fff;
  font-size:1rem;
  font-weight:900
}

@media(max-width:1050px){
  .hero-inner{grid-template-columns:1fr;gap:24px;text-align:center;padding-top:50px}
  .hero-logo-wrap{transform:none}
  .hero-brand-lockup{max-width:500px;margin:auto}
  .hero-logo{max-width:420px}
  .hero-logo--uploaded{max-width:550px}
  .hero-copy{max-width:760px;margin:auto}
  .hero-rule{justify-content:center}
  .hero-actions{justify-content:center}
  .service-grid{grid-template-columns:repeat(3,1fr)}
  .allstars-inner{grid-template-columns:1fr 1fr}
  .kids-wrap{grid-column:1/-1;justify-content:center}
  .coming-grid{grid-template-columns:1fr}
  .contact-stack{border-left:0;padding-left:0;border-top:1px solid rgba(15,43,107,.14);padding-top:28px}
  .footer-grid{grid-template-columns:1fr}
  .socials{justify-content:flex-start}
  .work-grid{grid-template-columns:1fr 1fr}
  .delivery-grid-premium{grid-template-columns:1fr;max-width:680px;margin-left:auto;margin-right:auto;gap:28px}
  .delivery-card,.delivery-card-featured{min-height:auto;transform:none}
  .delivery-card:hover,.delivery-card-featured:hover{transform:translateY(-4px)}

  .contract-cta-main{grid-template-columns:auto 1fr;padding:34px 34px 28px}
  .contract-cta-copy{border-right:0;padding-right:0}
  .contract-cta-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}
  .contract-cta-trust{margin:0 34px;grid-template-columns:1fr 1fr}
  .contract-trust-item:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.18);padding-top:14px;margin-top:8px}
  .contract-trust-item:nth-child(4){border-top:1px solid rgba(255,255,255,.18);padding-top:14px;margin-top:8px}
}

/* MOBILE */
@media(max-width:700px){
  .container{width:min(100% - 28px,var(--max))}
  .section{padding:55px 0}
  .hero-inner{min-height:auto;padding:45px 0}
  .hero-brand-lockup{max-width:420px}
  .hero-logo--uploaded{max-width:460px}
  .hero-logo-wordmark{margin-top:-12px}
  .hero-logo-line1{font-size:1.25rem}
  .hero-logo-line2{font-size:1.05rem;gap:7px}
  .brand-dots i{width:6px;height:6px}
  .hero-copy h1{font-size:3.4rem}
  .hero-rule .line{width:90px}
  .service-grid{grid-template-columns:1fr 1fr}
  .service-card{min-height:210px}
  .allstars-inner{grid-template-columns:1fr;text-align:center}
  .allstars-logo{margin:auto}
  .kids-wrap{grid-column:auto}
  .kids-wrap img{width:100%}
  .coming-card{grid-template-columns:1fr;text-align:center}
  .rocket{margin:auto}
  .contact-item{grid-template-columns:48px 1fr}
  .contact-icon{width:48px;height:48px}
  .area-box{grid-template-columns:1fr;text-align:center}
  .area-icon{margin:auto}
  .footer-brand{align-items:flex-start}
  .footer-bottom{flex-direction:column}

  .subhero{padding-bottom:78px}
  .subhero:before{width:190%;height:96px;bottom:-55px;filter:blur(10px);opacity:.52}
  .subhero:after{width:190%;height:90px;bottom:-63px}
  .subnav{flex-direction:column;gap:20px;align-items:flex-start}
  .subnav img{width:min(100%,320px)}
  .work-grid,.bullet-list{grid-template-columns:1fr}
  .cta-panel{grid-template-columns:1fr}
  .cta-panel .btn{width:100%}

  .delivery-section-title{margin-bottom:30px}
  .delivery-card{padding:38px 22px 24px}
  .delivery-featured-badge{font-size:.59rem}
  .delivery-support-strip{padding:22px 20px}
  .delivery-support-heading{align-items:flex-start}
  .delivery-support-pills{gap:8px}

  .contract-cta-section{padding:40px 0 52px}
  .contract-cta-main{grid-template-columns:1fr;text-align:center;padding:32px 22px 26px}
  .contract-cta-icon{width:82px;height:82px;margin:0 auto}
  .contract-cta-copy{padding:0}
  .contract-cta-copy p{margin-left:auto;margin-right:auto}
  .contract-cta-actions{grid-column:auto;grid-template-columns:1fr}
  .contract-cta-btn{width:100%}
  .contract-cta-trust{margin:0 22px;grid-template-columns:1fr;padding:18px 0 22px}
  .contract-trust-item{justify-content:flex-start;text-align:left;padding:11px 4px}
  .contract-trust-item + .contract-trust-item{border-left:0;border-top:1px solid rgba(255,255,255,.16)}
  .contract-trust-item:nth-child(3),.contract-trust-item:nth-child(4){margin-top:0;padding-top:11px}
}

/* SMALL MOBILE */
@media(max-width:480px){
  .service-grid{grid-template-columns:1fr}
  .hero-actions .btn{width:100%}
  .footer-brand{flex-direction:column}
  .hero-copy h1{font-size:2.85rem}
  .delivery-support-heading{flex-direction:column}
}


/* =========================================================
   MOBILE + PRINT SAFETY PATCH
   Keeps the approved desktop design unchanged.
   ========================================================= */

html,
body{
  color-scheme:light;
}

svg{
  display:block;
}

/* Keep all custom inline SVG artwork constrained to its badge. */
.work-card-icon,
.delivery-icon,
.contract-cta-icon{
  flex:0 0 auto;
  overflow:hidden;
}

.work-card-icon svg{
  width:40px !important;
  height:40px !important;
  max-width:40px !important;
  max-height:40px !important;
  min-width:0 !important;
  min-height:0 !important;
  fill:none !important;
  stroke:currentColor !important;
}

.delivery-icon svg{
  width:38px !important;
  height:38px !important;
  max-width:38px !important;
  max-height:38px !important;
  min-width:0 !important;
  min-height:0 !important;
  fill:none !important;
  stroke:currentColor !important;
}

.contract-cta-icon svg{
  width:42px !important;
  height:42px !important;
  max-width:42px !important;
  max-height:42px !important;
  min-width:0 !important;
  min-height:0 !important;
  fill:none !important;
  stroke:#fff !important;
}

.work-card-icon svg *,
.delivery-icon svg *,
.contract-cta-icon svg *{
  fill:none !important;
  stroke:currentColor !important;
  vector-effect:non-scaling-stroke;
}

.contract-cta-icon svg *{
  stroke:#fff !important;
}

/* MOBILE-SAFE LAYOUT */
@media(max-width:700px){

  html,
  body{
    background:#fff !important;
    color-scheme:light !important;
    overflow-x:hidden;
  }

  main{
    background:#fff;
  }

  /* HOW WE CAN HELP */
  .work-services-premium{
    padding-top:62px !important;
    padding-bottom:54px !important;
    background:
      radial-gradient(circle at 8% 28%,rgba(107,43,255,.055),transparent 18%),
      radial-gradient(circle at 92% 32%,rgba(0,196,180,.055),transparent 18%),
      linear-gradient(180deg,#ffffff 0%,#fbfbff 100%) !important;
    color:var(--ink) !important;
  }

  .work-services-premium .section-title{
    margin-bottom:0 !important;
  }

  .work-services-premium .section-title h2{
    white-space:normal !important;
    font-size:clamp(2rem,9vw,2.75rem) !important;
    line-height:1.03 !important;
  }

  .work-services-premium .section-title p,
  .work-section-subline{
    color:var(--muted) !important;
  }

  .work-grid-premium{
    grid-template-columns:1fr !important;
    width:100% !important;
    max-width:100% !important;
    gap:24px !important;
    margin-top:24px !important;
  }

  .work-card-premium,
  .work-card-featured{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:auto !important;
    transform:none !important;
    overflow:visible;
  }

  .work-card-premium:hover,
  .work-card-featured:hover{
    transform:none !important;
  }

  .work-card-icon{
    width:78px !important;
    height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
  }

  /* SERVICE DELIVERY */
  .delivery-section-premium{
    padding-top:48px !important;
    padding-bottom:48px !important;
  }

  .delivery-section-title{
    margin-bottom:24px !important;
  }

  .delivery-section-title h2{
    font-size:clamp(2rem,8.5vw,2.7rem) !important;
    line-height:1.04 !important;
  }

  .delivery-grid-premium{
    grid-template-columns:1fr !important;
    width:100% !important;
    max-width:100% !important;
    gap:22px !important;
    margin:0 auto !important;
  }

  .delivery-card,
  .delivery-card-featured{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:auto !important;
    padding:34px 20px 22px !important;
    transform:none !important;
    overflow:hidden !important;
  }

  .delivery-card:hover,
  .delivery-card-featured:hover{
    transform:none !important;
  }

  .delivery-icon{
    width:72px !important;
    height:72px !important;
    max-width:72px !important;
    max-height:72px !important;
    margin:4px auto 16px !important;
    border-width:7px !important;
  }

  .delivery-icon svg{
    width:34px !important;
    height:34px !important;
    max-width:34px !important;
    max-height:34px !important;
  }

  .delivery-featured-badge{
    top:14px !important;
    right:14px !important;
  }

  .delivery-mini-list{
    width:100%;
    max-width:100%;
  }

  .delivery-support-strip{
    margin-top:22px !important;
    padding:18px !important;
  }

  .delivery-support-heading{
    gap:12px !important;
  }

  .delivery-support-pills{
    gap:8px !important;
    margin-top:14px !important;
  }

  .delivery-support-pills span{
    white-space:normal;
  }

  /* FINAL CTA */
  .contract-cta-section{
    padding:34px 0 44px !important;
  }

  .contract-cta-panel{
    width:100%;
    max-width:100%;
  }

  .contract-cta-main{
    grid-template-columns:1fr !important;
    gap:18px !important;
    padding:28px 20px 22px !important;
    text-align:center !important;
  }

  .contract-cta-icon{
    width:76px !important;
    height:76px !important;
    max-width:76px !important;
    max-height:76px !important;
    margin:0 auto !important;
    padding:15px !important;
  }

  .contract-cta-icon svg{
    width:38px !important;
    height:38px !important;
    max-width:38px !important;
    max-height:38px !important;
  }

  .contract-cta-copy{
    border-right:0 !important;
    padding-right:0 !important;
  }

  .contract-cta-copy h2{
    font-size:clamp(2rem,10vw,2.7rem) !important;
  }

  .contract-cta-actions{
    grid-column:auto !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    gap:11px !important;
  }

  .contract-cta-btn{
    width:100% !important;
    min-height:54px !important;
    padding:13px 16px !important;
  }

  .contract-cta-trust{
    grid-template-columns:1fr !important;
    margin:0 20px !important;
    padding:14px 0 18px !important;
  }

  .contract-trust-item,
  .contract-trust-item:nth-child(3),
  .contract-trust-item:nth-child(4){
    justify-content:flex-start !important;
    min-height:0 !important;
    margin:0 !important;
    padding:11px 2px !important;
    border-left:0 !important;
    text-align:left !important;
  }

  .contract-trust-item + .contract-trust-item,
  .contract-trust-item:nth-child(3),
  .contract-trust-item:nth-child(4){
    border-top:1px solid rgba(255,255,255,.16) !important;
  }

  /* FOOTER */
  .footer{
    padding:30px 0 24px !important;
  }

  .footer-grid{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }

  .footer-brand{
    align-items:center !important;
  }

  .socials{
    justify-content:flex-start !important;
  }

  .footer-bottom{
    gap:8px !important;
  }
}

/* VERY SMALL PHONES */
@media(max-width:480px){

  .subnav img{
    width:min(100%,280px) !important;
  }

  .subhero-copy h1{
    font-size:2.65rem !important;
  }

  .work-card-premium{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .work-feature-list{
    width:calc(100% + 40px) !important;
    margin-left:-20px !important;
    margin-right:-20px !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .delivery-support-heading{
    flex-direction:row !important;
  }

  .footer-brand{
    flex-direction:column !important;
    align-items:flex-start !important;
  }
}

/* PRINT / PDF SAFETY
   The PDF shared from the mobile browser is a print rendering.
   These rules keep SVG icons from expanding into giant black shapes. */
@media print{

  html,
  body{
    background:#fff !important;
    color-scheme:light !important;
    -webkit-print-color-adjust:exact !important;
    print-color-adjust:exact !important;
  }

  .work-services-premium{
    background:#fff !important;
  }

  .delivery-section-premium{
    background:#F7FAFF !important;
  }

  .work-card-icon,
  .delivery-icon,
  .contract-cta-icon{
    overflow:hidden !important;
    break-inside:avoid;
    page-break-inside:avoid;
  }

  .work-card-icon svg{
    width:40px !important;
    height:40px !important;
    max-width:40px !important;
    max-height:40px !important;
    fill:none !important;
    stroke:currentColor !important;
  }

  .delivery-icon{
    width:78px !important;
    height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
  }

  .delivery-icon svg{
    width:38px !important;
    height:38px !important;
    max-width:38px !important;
    max-height:38px !important;
    fill:none !important;
    stroke:currentColor !important;
  }

  .contract-cta-icon{
    width:92px !important;
    height:92px !important;
    max-width:92px !important;
    max-height:92px !important;
  }

  .contract-cta-icon svg{
    width:42px !important;
    height:42px !important;
    max-width:42px !important;
    max-height:42px !important;
    fill:none !important;
    stroke:#fff !important;
  }

  .work-card-icon svg *,
  .delivery-icon svg *,
  .contract-cta-icon svg *{
    fill:none !important;
    vector-effect:non-scaling-stroke !important;
  }

  .delivery-card,
  .contract-cta-panel,
  .work-card-premium{
    break-inside:avoid;
    page-break-inside:avoid;
  }
}


/* =========================================================
   ABOUT / WHY THE ADAPTIVE UNIVERSITY PAGE
   ========================================================= */

.about-page{
  background:#fff;
}

.about-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 84% 26%,rgba(107,43,255,.24),transparent 28%),
    radial-gradient(circle at 65% 4%,rgba(0,196,180,.12),transparent 22%),
    linear-gradient(135deg,#050A35 0%,#0A0B59 48%,#141071 100%);
}

.about-hero:before{
  content:"";
  position:absolute;
  width:720px;
  height:720px;
  right:-110px;
  top:20px;
  border-radius:50%;
  pointer-events:none;
  opacity:.95;
  background:
    repeating-radial-gradient(
      circle at center,
      transparent 0 26px,
      rgba(107,43,255,.68) 27px 30px,
      transparent 31px 55px
    );
  transform:scaleX(1.25);
  filter:drop-shadow(0 0 14px rgba(0,180,240,.14));
}

.about-hero:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.75;
  background-image:
    radial-gradient(circle at 76% 12%,#FFC107 0 3px,transparent 4px),
    radial-gradient(circle at 69% 22%,#FF1493 0 2px,transparent 3px),
    radial-gradient(circle at 91% 28%,#00B4F0 0 3px,transparent 4px),
    radial-gradient(circle at 82% 38%,#CBE600 0 2px,transparent 3px),
    radial-gradient(circle at 58% 14%,rgba(255,255,255,.8) 0 1.5px,transparent 2.5px);
}

.about-nav{
  position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:34px;
  align-items:center;
  padding:22px 0 8px;
}

.about-nav-logo img{
  width:170px;
}

.about-nav-links{
  display:flex;
  justify-content:center;
  gap:28px;
  align-items:center;
}

.about-nav-links a{
  position:relative;
  color:rgba(255,255,255,.88);
  text-decoration:none;
  font-size:.9rem;
  font-weight:750;
}

.about-nav-links a:hover,
.about-nav-links a[aria-current="page"]{
  color:#fff;
}

.about-nav-links a[aria-current="page"]:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-9px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--teal),var(--blue));
}

.about-nav-cta{
  white-space:nowrap;
}

.about-hero-inner{
  position:relative;
  z-index:3;
  max-width:760px;
  padding:78px 0 56px;
}

.about-hero-eyebrow{
  display:block;
  margin-bottom:12px;
  color:#54E7FF;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.78rem;
  font-weight:900;
}

.about-hero h1{
  margin:0;
  max-width:760px;
  font-size:clamp(3.3rem,6vw,6.2rem);
  line-height:.94;
  letter-spacing:-.035em;
}

.about-hero h1 span{
  color:#21D6C6;
}

.about-hero-copy{
  max-width:660px;
  margin:24px 0 0;
  color:rgba(255,255,255,.87);
  font-size:1.08rem;
  line-height:1.65;
}

.about-hero-pillars{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  max-width:760px;
  margin-top:34px;
}

.about-hero-pillar{
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.92);
  font-size:.82rem;
  font-weight:800;
}

.about-hero-pillar-icon{
  width:38px;
  height:38px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.24);
  border-radius:11px;
  color:#67F0E7;
  background:rgba(255,255,255,.055);
}

.about-hero-pillar-icon svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.about-rainbow-divider{
  height:5px;
  background:linear-gradient(90deg,var(--purple),var(--blue),var(--teal),var(--lime),var(--gold),var(--orange),var(--pink));
}


/* WHY / MODEL COMPARISON */

.about-why{
  position:relative;
  overflow:hidden;
  padding:76px 0 68px;
  background:
    radial-gradient(circle at 8% 25%,rgba(107,43,255,.045),transparent 22%),
    radial-gradient(circle at 94% 24%,rgba(0,180,240,.05),transparent 23%),
    #fff;
}

.about-why-grid{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:42px;
  align-items:center;
}

.about-section-eyebrow{
  display:block;
  margin-bottom:10px;
  color:var(--teal);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.about-why-copy h2,
.about-heading h2{
  margin:0;
  color:var(--navy);
  font-size:clamp(2.4rem,4vw,4rem);
  line-height:1.02;
  letter-spacing:-.025em;
}

.about-why-copy p{
  margin:18px 0 0;
  color:var(--muted);
  font-size:1rem;
  line-height:1.7;
}

.about-context-note{
  margin-top:18px;
  padding:14px 16px;
  border-left:4px solid var(--teal);
  border-radius:0 12px 12px 0;
  background:#F4FBFA;
  color:var(--navy);
  font-size:.88rem;
  line-height:1.55;
}

.about-model-card{
  position:relative;
  padding:28px;
  border:1px solid rgba(107,43,255,.13);
  border-radius:26px;
  background:#fff;
  box-shadow:0 18px 48px rgba(15,43,107,.10);
}

.about-model-title{
  margin:0 0 22px;
  text-align:center;
  color:var(--navy);
  font-size:1.25rem;
  font-weight:900;
}

.about-model-columns{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:18px;
  align-items:stretch;
}

.about-model-side{
  padding:22px;
  border-radius:19px;
}

.about-model-side.educational{
  background:linear-gradient(135deg,#F0FCFB,#F5FBFF);
}

.about-model-side.clinical{
  background:linear-gradient(135deg,#FFF6FA,#FBF6FF);
}

.about-model-side h3{
  margin:0 0 15px;
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.about-model-side.educational h3{
  color:#009C92;
}

.about-model-side.clinical h3{
  color:#D21E70;
}

.about-model-list{
  list-style:none;
  margin:0;
  padding:0;
}

.about-model-list li{
  position:relative;
  padding:8px 0 8px 28px;
  color:var(--navy);
  font-size:.88rem;
  line-height:1.4;
}

.about-model-list li:before{
  content:"\2713";
  position:absolute;
  left:0;
  top:8px;
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-size:.63rem;
  font-weight:900;
}

.educational .about-model-list li:before{
  color:#009C92;
  border:1px solid rgba(0,156,146,.35);
  background:#fff;
}

.clinical .about-model-list li:before{
  color:#D21E70;
  border:1px solid rgba(210,30,112,.25);
  background:#fff;
}

.about-model-vs{
  align-self:center;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border:1px solid rgba(107,43,255,.14);
  border-radius:50%;
  background:#fff;
  color:var(--purple-deep);
  font-size:.9rem;
  font-weight:900;
  box-shadow:0 10px 24px rgba(15,43,107,.08);
}


/* EXPERTISE */

.about-expertise{
  padding:70px 0 74px;
  background:linear-gradient(180deg,#F8FAFF,#F4F7FF);
}

.about-heading{
  max-width:880px;
  margin:0 auto 34px;
  text-align:center;
}

.about-heading p{
  max-width:690px;
  margin:12px auto 0;
  color:var(--muted);
  font-size:1rem;
}

.about-expertise-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.about-expertise-card{
  --accent:#6B2BFF;
  --soft:#F2EDFF;
  position:relative;
  min-height:245px;
  padding:26px 24px 24px;
  border:1px solid color-mix(in srgb,var(--accent) 18%,#ffffff);
  border-radius:20px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,43,107,.07);
}

.about-expertise-card:nth-child(2){
  --accent:#00AAA0;
  --soft:#EAFBFA;
}

.about-expertise-card:nth-child(3){
  --accent:#F5A000;
  --soft:#FFF7E4;
}

.about-expertise-card:nth-child(4){
  --accent:#168AD8;
  --soft:#EAF7FF;
}

.about-expertise-card:nth-child(5){
  --accent:#EC287D;
  --soft:#FFF0F6;
}

.about-expertise-card:nth-child(6){
  --accent:#6B2BFF;
  --soft:#F3EEFF;
}

.about-expertise-icon{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  margin-bottom:17px;
  border-radius:18px;
  background:var(--soft);
  color:var(--accent);
}

.about-expertise-icon svg{
  width:31px;
  height:31px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.about-expertise-card h3{
  margin:0 0 10px;
  color:var(--navy);
  font-size:1.08rem;
  line-height:1.2;
}

.about-expertise-card p{
  margin:0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.55;
}


/* PARTNERS */

.about-partners{
  padding:66px 0;
  background:#fff;
}

.about-partner-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  border:1px solid rgba(107,43,255,.10);
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 34px rgba(15,43,107,.06);
  overflow:hidden;
}

.about-partner-item{
  min-height:150px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:22px 16px;
  text-align:center;
}

.about-partner-item + .about-partner-item{
  border-left:1px solid rgba(15,43,107,.09);
}

.about-partner-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  color:var(--purple);
}

.about-partner-item:nth-child(2) .about-partner-icon{color:var(--teal)}
.about-partner-item:nth-child(3) .about-partner-icon{color:#5EAF22}
.about-partner-item:nth-child(4) .about-partner-icon{color:#F5A000}
.about-partner-item:nth-child(5) .about-partner-icon{color:var(--pink)}

.about-partner-icon svg{
  width:42px;
  height:42px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.about-partner-item strong{
  color:var(--navy);
  font-size:.9rem;
  line-height:1.3;
}


/* DIFFERENCE */

.about-difference{
  padding:68px 0 74px;
  background:linear-gradient(180deg,#F8FAFF,#fff);
}

.about-difference-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.about-difference-card{
  --accent:#6B2BFF;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:15px;
  align-items:start;
  padding:24px 22px;
  border:1px solid rgba(107,43,255,.11);
  border-radius:19px;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,43,107,.06);
}

.about-difference-card:nth-child(2){--accent:#00AAA0}
.about-difference-card:nth-child(3){--accent:#72B61E}
.about-difference-card:nth-child(4){--accent:#EC287D}

.about-difference-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:color-mix(in srgb,var(--accent) 11%,#ffffff);
  color:var(--accent);
}

.about-difference-icon svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.about-difference-card h3{
  margin:1px 0 7px;
  color:var(--navy);
  font-size:1rem;
}

.about-difference-card p{
  margin:0;
  color:var(--muted);
  font-size:.84rem;
  line-height:1.5;
}


/* CTA */

.about-cta{
  padding:0 0 58px;
  background:#fff;
}

.about-cta-panel{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:1fr auto;
  gap:30px;
  align-items:center;
  padding:34px 38px;
  border-radius:26px;
  color:#fff;
  background:
    radial-gradient(circle at 92% 20%,rgba(255,20,147,.26),transparent 30%),
    linear-gradient(120deg,#231081,#4D14C3 56%,#A815AA);
  box-shadow:0 22px 52px rgba(58,20,149,.18);
}

.about-cta-panel:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.22;
  background-image:radial-gradient(circle,rgba(255,255,255,.65) 1px,transparent 1.6px);
  background-size:19px 19px;
  mask-image:linear-gradient(90deg,#000,transparent 28%,transparent 70%,#000);
}

.about-cta-copy,
.about-cta-actions{
  position:relative;
  z-index:2;
}

.about-cta-copy h2{
  margin:0 0 8px;
  color:#fff;
  font-size:clamp(2rem,3.5vw,3.4rem);
  line-height:1;
}

.about-cta-copy p{
  margin:0;
  max-width:600px;
  color:rgba(255,255,255,.84);
}

.about-cta-actions{
  display:flex;
  gap:12px;
  align-items:center;
}

.about-copy-email{
  min-height:50px;
  padding:13px 18px;
  border:1.5px solid rgba(255,255,255,.7);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:#fff;
  font-weight:850;
  cursor:pointer;
}

.about-copy-email:hover{
  background:#fff;
  color:var(--purple-deep);
}


/* ABOUT FOOTER */

.about-footer{
  position:relative;
  overflow:hidden;
  padding:38px 0 24px;
  color:#fff;
  background:linear-gradient(135deg,#061439,#0B245F 60%,#221169);
}

.about-footer:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  background:linear-gradient(90deg,var(--purple),var(--blue),var(--teal),var(--lime),var(--gold),var(--orange),var(--pink));
}

.about-footer-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr 1fr 1.15fr;
  gap:34px;
}

.about-footer-brand img{
  width:150px;
  margin-bottom:14px;
}

.about-footer-brand p,
.about-footer-column p{
  color:rgba(255,255,255,.72);
  font-size:.84rem;
  line-height:1.55;
}

.about-footer-column h3{
  margin:0 0 13px;
  color:#6FF1E7;
  font-size:.72rem;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.about-footer-links{
  display:grid;
  gap:8px;
}

.about-footer-links a{
  color:rgba(255,255,255,.82);
  text-decoration:none;
  font-size:.84rem;
}

.about-footer-links a:hover{
  color:#fff;
  text-decoration:underline;
}

.about-footer-email{
  display:block;
  margin-bottom:10px;
  color:#fff;
  font-size:.84rem;
  overflow-wrap:anywhere;
}

.about-footer-copy-btn{
  min-height:42px;
  padding:9px 14px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:10px;
  background:rgba(255,255,255,.06);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}

.about-footer-copy-btn:hover{
  background:#fff;
  color:var(--purple-deep);
}

.about-footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-top:28px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.13);
  color:rgba(255,255,255,.62);
  font-size:.78rem;
}


/* ABOUT RESPONSIVE */

@media(max-width:1050px){

  .about-nav{
    grid-template-columns:auto 1fr;
  }

  .about-nav-links{
    display:none;
  }

  .about-nav-cta{
    justify-self:end;
  }

  .about-hero:before{
    right:-300px;
    opacity:.7;
  }

  .about-why-grid{
    grid-template-columns:1fr;
  }

  .about-expertise-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .about-partner-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .about-partner-item:nth-child(4){
    border-left:0;
    border-top:1px solid rgba(15,43,107,.09);
  }

  .about-partner-item:nth-child(5){
    border-top:1px solid rgba(15,43,107,.09);
  }

  .about-difference-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .about-footer-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:700px){

  .about-nav{
    gap:14px;
    padding-top:16px;
  }

  .about-nav-logo img{
    width:132px;
  }

  .about-nav-cta{
    padding:10px 13px;
    min-height:44px;
    font-size:.75rem;
  }

  .about-hero:before{
    width:520px;
    height:520px;
    right:-365px;
    top:140px;
    opacity:.48;
  }

  .about-hero-inner{
    padding:54px 0 44px;
  }

  .about-hero h1{
    font-size:clamp(2.8rem,13vw,4.2rem);
  }

  .about-hero-copy{
    font-size:.98rem;
  }

  .about-hero-pillars{
    grid-template-columns:1fr 1fr;
    gap:13px 10px;
  }

  .about-why{
    padding:58px 0 52px;
  }

  .about-why-grid{
    gap:28px;
  }

  .about-model-card{
    padding:20px 16px;
  }

  .about-model-columns{
    grid-template-columns:1fr;
  }

  .about-model-vs{
    margin:auto;
  }

  .about-expertise{
    padding:54px 0 58px;
  }

  .about-expertise-grid{
    grid-template-columns:1fr;
  }

  .about-expertise-card{
    min-height:auto;
  }

  .about-partners{
    padding:52px 0;
  }

  .about-partner-grid{
    grid-template-columns:1fr 1fr;
  }

  .about-partner-item,
  .about-partner-item:nth-child(4),
  .about-partner-item:nth-child(5){
    border-left:0;
    border-top:1px solid rgba(15,43,107,.09);
  }

  .about-partner-item:nth-child(1),
  .about-partner-item:nth-child(2){
    border-top:0;
  }

  .about-partner-item:nth-child(even){
    border-left:1px solid rgba(15,43,107,.09);
  }

  .about-difference{
    padding:54px 0 58px;
  }

  .about-difference-grid{
    grid-template-columns:1fr;
  }

  .about-cta{
    padding-bottom:44px;
  }

  .about-cta-panel{
    grid-template-columns:1fr;
    padding:28px 22px;
    text-align:center;
  }

  .about-cta-actions{
    flex-direction:column;
    width:100%;
  }

  .about-cta-actions .btn,
  .about-copy-email{
    width:100%;
  }

  .about-footer{
    padding-top:32px;
  }

  .about-footer-grid{
    grid-template-columns:1fr;
    gap:26px;
  }

  .about-footer-bottom{
    flex-direction:column;
    gap:7px;
  }
}

@media(max-width:480px){

  .about-nav{
    grid-template-columns:1fr;
  }

  .about-nav-cta{
    justify-self:start;
  }

  .about-hero-pillars{
    grid-template-columns:1fr;
  }

  .about-partner-grid{
    grid-template-columns:1fr;
  }

  .about-partner-item:nth-child(even){
    border-left:0;
  }
}


/* =========================================================
   ABOUT PAGE — MOBILE + PDF POLISH
   Keeps the approved desktop design unchanged.
   ========================================================= */

@media(max-width:700px){

  .about-cta-panel{
    grid-template-columns:1fr !important;
    gap:22px !important;
    padding:28px 22px !important;
    text-align:center !important;
  }

  .about-cta-copy{
    width:100% !important;
    max-width:none !important;
  }

  .about-cta-copy p{
    max-width:560px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .about-cta-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    gap:11px !important;
  }

  .about-cta-actions .btn,
  .about-copy-email{
    width:100% !important;
    min-height:52px !important;
  }
}

/* The PDF preview shared from mobile uses browser print rendering.
   These rules remove print-only shadow/background artifacts and keep
   the final CTA from squeezing its copy into a narrow column. */
@media print{

  html,
  body{
    background:#fff !important;
    -webkit-print-color-adjust:exact !important;
    print-color-adjust:exact !important;
  }

  .about-model-card,
  .about-expertise-card,
  .about-partner-grid,
  .about-difference-card,
  .about-cta-panel{
    box-shadow:none !important;
  }

  .about-expertise-card,
  .about-difference-card,
  .about-partner-item,
  .about-model-card,
  .about-cta-panel{
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }

  .about-cta-panel{
    grid-template-columns:1fr !important;
    gap:22px !important;
    padding:30px !important;
  }

  .about-cta-copy{
    width:100% !important;
    max-width:none !important;
  }

  .about-cta-copy p{
    max-width:640px !important;
  }

  .about-cta-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    max-width:520px !important;
    gap:10px !important;
  }

  .about-cta-actions .btn,
  .about-copy-email{
    width:100% !important;
  }

  /* Prevent translucent browser-print blocks behind cards/buttons. */
  .about-expertise,
  .about-difference,
  .about-partners,
  .about-why{
    background-color:#fff !important;
  }

  .about-expertise{
    background:linear-gradient(180deg,#F8FAFF,#F4F7FF) !important;
  }

  .about-difference{
    background:linear-gradient(180deg,#F8FAFF,#fff) !important;
  }

  .about-model-card,
  .about-expertise-card,
  .about-partner-grid,
  .about-difference-card{
    background-color:#fff !important;
  }
}

/* AU accessibility and responsive image fixes - 2026-09-11 */
.hero-logo--uploaded,
.allstars-logo,
.kids-wrap img {
  height: auto;
}

.coming-pill {
  color: #081947;
}

.service-area .eyebrow,
.service-area .area-box p,
.service-area .area-box p strong {
  color: #3E10A8;
}

