/*
Theme Name: Kufunda Mari
Theme URI: https://kufundamari.com
Description: Custom child theme for the Kufunda Mari financial literacy platform.
Author: Kufunda Mari
Template: kadence
Version: 1.0.0
*/
:root{
 --green:#176a42;--dark:#123d2a;--gold:#f0bb36;--yellow:#f8d866;
 --cream:#fffaf0;--mint:#edf8f1;--purple:#7858c7;--coral:#ed765f;
 --ink:#17372a;--muted:#52675f
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font-family:"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif;overflow-x:hidden}
img{width:100%;height:100%;display:block;object-fit:cover}a{text-decoration:none;color:inherit}
.wrap{width:min(1160px,90%);margin:auto}
.site-header{height:94px;border-bottom:1px solid #edf0ed;background:#fff;position:relative;z-index:30}
.nav{height:100%;display:flex;align-items:center;gap:32px}.logo{margin-right:auto}.logo img{width:190px;height:auto;object-fit:contain}
nav{display:flex;gap:30px;font-weight:900;font-size:15px}.login{border:2px solid var(--green);border-radius:99px;padding:10px 20px;font-weight:900;color:var(--green)}
.hero{min-height:760px;display:flex;align-items:center;position:relative;overflow:hidden}
.hero-layout{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:65px;position:relative;z-index:3}
.eyebrow,.section-tag{font-size:13px;letter-spacing:.15em;font-weight:900;color:var(--green)}
.hero h1{font-size:82px;line-height:.91;letter-spacing:-.055em;margin:18px 0 28px;font-weight:900}.hero h1 span{position:relative;color:var(--green)}
.hero h1 span:after{content:"";position:absolute;height:8px;background:var(--gold);border-radius:50%;left:2px;right:-5px;bottom:-3px;transform:rotate(-2deg)}
.hero p{font-size:24px;font-weight:900;color:var(--muted);margin:0 0 34px}
.pill{display:inline-flex;gap:18px;align-items:center;background:var(--green);color:white;border-radius:99px;padding:17px 28px;font-size:18px;font-weight:900}.pill b{font-size:24px}
.hero-art{height:570px;position:relative}.sun{position:absolute;width:455px;height:455px;background:var(--yellow);border-radius:50%;right:-10px;top:54px}
.hero-photo{position:absolute;width:470px;height:530px;right:50px;top:10px;border-radius:48% 52% 39% 61%/42% 38% 62% 58%;overflow:hidden;transform:rotate(1.5deg);box-shadow:14px 16px 0 rgba(18,61,42,.08)}
.doodle{position:absolute;z-index:4;font-weight:900}.star{font-size:75px;color:var(--purple);right:-5px;top:42px}.arrow{font-size:92px;color:var(--coral);left:5px;bottom:20px;transform:rotate(-22deg)}
.money-mark{position:absolute;z-index:5;right:4px;bottom:38px;width:78px;height:78px;background:white;border:6px solid var(--green);border-radius:50%;display:grid;place-items:center;font-size:40px;font-weight:900;color:var(--green);transform:rotate(10deg)}
.shape{position:absolute;pointer-events:none}.yellow-orbit{width:180px;height:180px;border:25px solid #f8d86666;border-radius:50%;left:-85px;top:100px}.purple-dot{width:28px;height:28px;background:var(--purple);border-radius:50%;left:45%;bottom:85px}.coral-loop{width:80px;height:80px;border:7px solid var(--coral);border-left-color:transparent;border-radius:50%;right:4%;bottom:70px}

.statement{padding:150px 0 165px;background:var(--cream);text-align:center}.statement-small{font-size:14px;letter-spacing:.16em;font-weight:900;color:var(--green)}
.statement h2{font-size:94px;line-height:.88;letter-spacing:-.06em;margin:25px 0 15px}.statement h2 span{color:var(--purple)}
.squiggle{width:170px;height:30px;border-top:8px solid var(--gold);border-radius:50%;margin:30px auto 0;transform:rotate(-3deg)}

.kids-section{padding:155px 0;position:relative}.kids-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:105px;align-items:center;position:relative}
.kids-photo{height:560px;overflow:hidden;border-radius:35px 35px 150px 35px;box-shadow:-30px 30px 0 var(--mint)}
.kids-copy h2,.parents-copy h2,.educator-heading h2{font-size:65px;line-height:.94;letter-spacing:-.05em;margin:20px 0 30px}.kids-copy h2 em{font-style:normal;color:var(--purple)}
.text-link{font-size:19px;font-weight:900;color:var(--green)}
.floating-coin{position:absolute;left:46%;bottom:-25px;width:88px;height:88px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-size:43px;font-weight:900;transform:rotate(-8deg)}
.floating-star{position:absolute;color:var(--coral);font-size:58px;right:3%;top:12%;transform:rotate(15deg)}

.yellow-break{padding:110px 0;background:var(--yellow);overflow:hidden}.break-layout{position:relative;text-align:center}
.yellow-break h2{font-size:74px;line-height:.92;letter-spacing:-.05em;margin:0}.yellow-break h2 span{color:var(--green)}
.big-star{position:absolute;font-size:85px;color:white;left:5%;top:-25px;transform:rotate(-12deg)}.drawn-arrow{position:absolute;font-size:100px;color:var(--purple);right:5%;bottom:-35px;transform:rotate(20deg)}

.parents-section{padding:165px 0}.parents-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:95px;align-items:center}.purple{color:var(--purple)}
.parents-copy h2 span{color:var(--purple)}.parents-copy p{font-size:22px;line-height:1.45;font-weight:900;color:var(--muted);margin:0 0 28px}
.parents-art{height:550px;position:relative}.purple-panel{position:absolute;width:82%;height:88%;right:0;top:45px;background:#7958c71f;border-radius:120px 30px 30px 30px}
.parents-photo{position:absolute;width:88%;height:500px;left:0;top:0;overflow:hidden;border-radius:110px 35px 35px 35px}
.heart-line{position:absolute;right:-5px;top:-28px;font-size:95px;color:var(--coral);transform:rotate(12deg)}

.values{padding:135px 0;background:var(--dark);color:white;position:relative;overflow:hidden}.value-content{text-align:center;position:relative}.gold{color:var(--yellow)}
.values h2{font-size:76px;line-height:.93;letter-spacing:-.05em;margin:22px 0 0}.values h2 span{color:var(--yellow)}
.value-ring{position:absolute;width:250px;height:250px;border:28px solid #f8d86622;border-radius:50%;left:-90px;top:-70px}.value-star{position:absolute;font-size:80px;color:var(--purple);right:5%;bottom:-40px}

.educators-section{padding:155px 0}.educator-layout{display:grid;grid-template-columns:.72fr 1.28fr;grid-template-rows:auto auto;gap:50px 80px;align-items:center}
.educator-heading h2 span{color:var(--green)}.classroom-wrap{grid-row:1/3;grid-column:2;position:relative;height:570px}
.classroom-photo{height:100%;overflow:hidden;border-radius:35px 130px 35px 35px;box-shadow:28px 28px 0 var(--yellow)}
.chalk-dollar{position:absolute;left:-40px;bottom:45px;width:82px;height:82px;background:var(--purple);color:white;border-radius:50%;display:grid;place-items:center;font-size:40px;font-weight:900;transform:rotate(-9deg)}
.chalk-star{position:absolute;right:-20px;top:25px;font-size:65px;color:var(--coral)}.educator-btn{justify-self:start}

.final-cta{padding:155px 0;background:var(--mint);text-align:center;position:relative;overflow:hidden}.final-cta h2{font-size:82px;line-height:.9;letter-spacing:-.055em;margin:22px 0 38px}.final-cta h2 span{color:var(--green)}
.final-circle{position:absolute;width:180px;height:180px;background:var(--yellow);border-radius:50%;right:-50px;bottom:-55px}.final-spark{position:absolute;font-size:90px;color:var(--purple);left:8%;top:30%}
footer{padding:45px 0;border-top:1px solid #e7ece9}.footer{display:flex;justify-content:space-between;color:var(--green);font-weight:900}

@media(max-width:820px){
 .site-header{height:76px}.logo img{width:155px}nav{display:none}.login{font-size:13px;padding:8px 14px}
 .hero{min-height:auto;padding:70px 0 95px}.hero-layout,.kids-layout,.parents-layout,.educator-layout{grid-template-columns:1fr;gap:55px}
 .hero h1{font-size:55px}.hero p{font-size:20px}.hero-art{height:430px}.sun{width:340px;height:340px;right:-45px}.hero-photo{width:88%;height:410px;right:4%;top:0}
 .star{font-size:48px;right:-5px}.arrow{font-size:60px}.money-mark{width:58px;height:58px;font-size:28px}
 .statement{padding:100px 0}.statement h2{font-size:61px}
 .kids-section,.parents-section,.educators-section,.final-cta{padding:100px 0}.kids-photo,.parents-art,.classroom-wrap{height:410px}
 .kids-copy h2,.parents-copy h2,.educator-heading h2{font-size:48px}.yellow-break h2,.values h2,.final-cta h2{font-size:52px}
 .yellow-break,.values{padding:90px 0}.floating-coin{left:auto;right:5%;bottom:-25px}.big-star{font-size:50px;left:-2%}.drawn-arrow{font-size:65px;right:-2%}
 .parents-photo{height:380px}.classroom-wrap{grid-row:auto;grid-column:auto}.classroom-photo{box-shadow:16px 16px 0 var(--yellow)}
 .educator-btn{justify-self:start}.footer{flex-direction:column;gap:12px}
}


/* V6 — longer, clearer, but deliberately not denser */
.orientation{
  padding:165px 0;
  background:var(--cream);
  text-align:center;
}
.orientation-inner{position:relative}
.orientation h2{
  font-size:90px;line-height:.89;letter-spacing:-.06em;
  margin:25px 0 35px;font-weight:900;
}
.orientation h2 span{color:var(--purple)}
.orientation p{
  margin:0;font-size:23px;line-height:1.5;font-weight:900;color:var(--muted)
}
.orientation p b{color:var(--gold);padding:0 10px}
.orientation-scribble{
  width:185px;height:28px;border-top:8px solid var(--gold);
  border-radius:50%;margin:34px auto 0;transform:rotate(-3deg)
}

.learn-section{
  padding:165px 0;
  background:white;
  text-align:center;
}
.learn-inner h2{
  font-size:78px;line-height:.92;letter-spacing:-.055em;
  margin:24px 0 65px
}
.learn-inner h2 span{color:var(--green)}
.learn-words{
  display:flex;align-items:center;justify-content:center;flex-wrap:wrap;
  gap:22px 28px;
}
.learn-words span{
  font-size:30px;font-weight:900;color:var(--dark)
}
.learn-words i{
  font-size:22px;font-style:normal;color:var(--purple);transform:rotate(10deg)
}
.learn-words span:nth-of-type(2),.learn-words span:nth-of-type(5){color:var(--green)}
.learn-words span:nth-of-type(3){color:var(--purple)}

.how-section{
  padding:165px 0;
  background:#fffaf0;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.how-inner{position:relative}
.how-inner h2{
  font-size:92px;line-height:.86;letter-spacing:-.06em;
  margin:25px 0 32px
}
.how-inner h2 span{color:var(--purple)}
.how-inner p{font-size:23px;font-weight:900;color:var(--muted);margin:0}
.how-arrow{
  position:absolute;right:12%;bottom:-65px;
  font-size:110px;color:var(--coral);font-weight:900;transform:rotate(15deg)
}

/* Full footer: richer information architecture, still spacious */
.site-footer{
  background:var(--dark);
  color:white;
  padding:85px 0 30px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.5fr .75fr 1fr .75fr;
  gap:65px;
  padding-bottom:70px;
}
.footer-brand img{
  width:205px;height:auto;object-fit:contain;
  background:white;border-radius:16px;padding:10px 14px
}
.footer-brand p{
  font-size:18px;line-height:1.55;font-weight:800;
  color:#d8e8df;margin:24px 0 0
}
.footer-col{
  display:flex;flex-direction:column;gap:15px
}
.footer-col h3{
  color:var(--yellow);font-size:15px;letter-spacing:.08em;
  text-transform:uppercase;margin:3px 0 9px
}
.footer-col a{
  color:white;font-size:15px;font-weight:800;opacity:.88
}
.footer-col a:hover{opacity:1;color:var(--yellow)}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.16);
  padding-top:28px;
  display:flex;justify-content:space-between;align-items:center;
  gap:30px;color:#bdd2c6;font-size:13px;font-weight:700
}
.footer-bottom div{display:flex;gap:25px}
.footer-bottom a{color:#bdd2c6}
.footer-bottom a:hover{color:white}

@media(max-width:820px){
 .orientation,.learn-section,.how-section{padding:105px 0}
 .orientation h2,.how-inner h2{font-size:58px}
 .learn-inner h2{font-size:52px;margin-bottom:45px}
 .orientation p,.how-inner p{font-size:19px}
 .learn-words{gap:16px 18px}.learn-words span{font-size:24px}
 .how-arrow{right:-3%;bottom:-55px;font-size:72px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:45px 35px;padding-bottom:55px}
 .footer-brand{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column}
 .footer-bottom div{flex-wrap:wrap;gap:14px 20px}
}
@media(max-width:520px){
 .footer-grid{grid-template-columns:1fr}
 .footer-brand{grid-column:auto}
}


/* =========================================================
   V7 — dedicated mobile-responsive pass
   Keeps V6 desktop intact; optimises phones independently.
   ========================================================= */

@media (max-width: 600px) {
  .wrap{width:min(100% - 40px,1160px)}

  /* Header */
  .site-header{height:70px}
  .nav{gap:12px}
  .logo img{width:138px}
  .login{font-size:12px;padding:8px 13px;white-space:nowrap}

  /* Hero: one intentional mobile composition */
  .hero{padding:52px 0 72px;min-height:0}
  .hero-layout{gap:38px}
  .hero-copy{text-align:left}
  .eyebrow,.section-tag{font-size:11px;letter-spacing:.13em}
  .hero h1{
    font-size:clamp(45px,13.2vw,58px);
    line-height:.91;letter-spacing:-.058em;
    margin:15px 0 22px;
  }
  .hero p{
    max-width:310px;font-size:18px;line-height:1.38;
    margin-bottom:26px;
  }
  .pill{padding:14px 22px;font-size:16px;gap:13px}
  .pill b{font-size:20px}
  .hero-art{height:360px;width:100%;margin-top:2px}
  .sun{width:285px;height:285px;right:-50px;top:38px}
  .hero-photo{
    width:88%;height:340px;right:6%;top:0;
    border-radius:44% 56% 38% 62%/42% 38% 62% 58%;
    box-shadow:9px 11px 0 rgba(18,61,42,.07)
  }
  .star{font-size:40px;right:-3px;top:17px}
  .arrow{font-size:50px;left:-6px;bottom:4px}
  .money-mark{
    right:-2px;bottom:22px;width:52px;height:52px;
    border-width:4px;font-size:25px
  }
  .yellow-orbit{width:110px;height:110px;border-width:17px;left:-65px;top:105px}
  .purple-dot{width:18px;height:18px;left:83%;bottom:35px}
  .coral-loop{width:52px;height:52px;border-width:5px;right:-18px;bottom:50px}

  /* Explanatory section */
  .orientation{padding:78px 0}
  .orientation h2{
    font-size:clamp(46px,13vw,56px);
    line-height:.91;margin:18px 0 25px;
  }
  .orientation p{
    max-width:330px;margin:auto;font-size:17px;line-height:1.65
  }
  .orientation p b{padding:0 5px}
  .orientation-scribble{width:125px;height:20px;border-top-width:6px;margin-top:24px}

  /* Kids: photo first, then copy, tighter relationship */
  .kids-section{padding:78px 0 88px}
  .kids-layout{gap:38px}
  .kids-photo{
    height:365px;border-radius:26px 26px 92px 26px;
    box-shadow:-15px 15px 0 var(--mint)
  }
  .kids-copy h2{
    font-size:clamp(43px,12vw,50px);
    line-height:.94;margin:15px 0 22px
  }
  .text-link{font-size:17px}
  .floating-coin{
    width:62px;height:62px;font-size:30px;
    right:1%;bottom:-15px
  }
  .floating-star{font-size:40px;right:1%;top:47%}

  /* Yellow statement */
  .yellow-break{padding:72px 0}
  .yellow-break h2{
    font-size:clamp(43px,12vw,50px);
    line-height:.94
  }
  .big-star{font-size:39px;left:-2%;top:-25px}
  .drawn-arrow{font-size:50px;right:-3%;bottom:-32px}

  /* Skills */
  .learn-section{padding:82px 0}
  .learn-inner h2{
    font-size:clamp(43px,12vw,50px);
    line-height:.94;margin:17px 0 37px
  }
  .learn-words{gap:13px 15px;max-width:340px;margin:auto}
  .learn-words span{font-size:21px}
  .learn-words i{font-size:15px}

  /* Parents: copy first is intentional; image follows closely */
  .parents-section{padding:82px 0 92px}
  .parents-layout{gap:42px}
  .parents-copy h2{
    font-size:clamp(45px,12.5vw,52px);
    line-height:.91;margin:16px 0 22px
  }
  .parents-copy p{font-size:18px;line-height:1.42;margin-bottom:22px}
  .parents-art{height:350px}
  .purple-panel{
    width:86%;height:88%;top:28px;
    border-radius:75px 22px 22px 22px
  }
  .parents-photo{
    width:91%;height:325px;
    border-radius:70px 25px 25px 25px
  }
  .heart-line{font-size:62px;right:-4px;top:-22px}

  /* Values */
  .values{padding:78px 0}
  .values h2{
    font-size:clamp(44px,12vw,51px);
    line-height:.94;margin-top:18px
  }
  .value-ring{width:155px;height:155px;border-width:18px;left:-70px;top:-50px}
  .value-star{font-size:52px;right:1%;bottom:-26px}

  /* Educators: heading -> image -> CTA */
  .educators-section{padding:82px 0 94px}
  .educator-layout{gap:38px}
  .educator-heading h2{
    font-size:clamp(43px,12vw,50px);
    line-height:.94;margin:16px 0 0
  }
  .classroom-wrap{height:350px}
  .classroom-photo{
    border-radius:25px 75px 25px 25px;
    box-shadow:12px 12px 0 var(--yellow)
  }
  .chalk-dollar{
    left:-12px;bottom:22px;width:55px;height:55px;
    font-size:27px
  }
  .chalk-star{font-size:43px;right:-5px;top:14px}
  .educator-btn{justify-self:start}

  /* How it works */
  .how-section{padding:80px 0}
  .how-inner h2{
    font-size:clamp(49px,13vw,57px);
    line-height:.88;margin:18px 0 24px
  }
  .how-inner p{font-size:18px}
  .how-arrow{font-size:54px;right:-1%;bottom:-42px}

  /* Final CTA */
  .final-cta{padding:82px 0 90px}
  .final-cta h2{
    font-size:clamp(47px,13vw,56px);
    line-height:.91;margin:18px 0 30px
  }
  .final-circle{width:115px;height:115px;right:-40px;bottom:-40px}
  .final-spark{font-size:52px;left:3%;top:26%}

  /* Footer: compact but fully usable */
  .site-footer{padding:62px 0 26px}
  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:38px 24px;padding-bottom:45px
  }
  .footer-brand{grid-column:1/-1}
  .footer-brand img{width:175px}
  .footer-brand p{font-size:16px;margin-top:18px}
  .footer-col h3{font-size:12px;margin-bottom:5px}
  .footer-col a{font-size:14px}
  .footer-col:last-child{grid-column:1/-1}
  .footer-bottom{
    padding-top:23px;gap:18px;
    flex-direction:column;align-items:flex-start;
    font-size:12px
  }
  .footer-bottom div{gap:12px 18px;flex-wrap:wrap}
}

@media (max-width: 360px) {
  .wrap{width:calc(100% - 32px)}
  .logo img{width:125px}
  .login{padding:7px 10px}
  .hero h1{font-size:43px}
  .hero-art{height:330px}
  .hero-photo{height:315px}
  .orientation h2,.how-inner h2{font-size:44px}
  .kids-copy h2,.parents-copy h2,.educator-heading h2,
  .yellow-break h2,.values h2,.final-cta h2,.learn-inner h2{font-size:42px}
  .footer-grid{grid-template-columns:1fr}
  .footer-brand,.footer-col:last-child{grid-column:auto}
}


/* =========================================================
   V8 FIXED — mobile-only menu + compact mobile footer
   Desktop/tablet-wide layout remains V7.
   ========================================================= */
.mobile-menu-toggle,
.mobile-menu {
  display: none;
}

@media (max-width: 760px) {
  /* Header: preserve logo + visible Login, add hamburger only on mobile */
  .site-header .nav {
    display: flex;
    align-items: center;
  }

  .site-header .nav > nav,
  .site-header .desktop-nav {
    display: none;
  }

  .site-header .login {
    margin-left: auto;
  }

  .mobile-menu-toggle {
    display: flex;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    margin-left: 7px;
    padding: 8px 6px;
    border: 0;
    background: transparent;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    cursor: pointer;
  }

  .mobile-menu-toggle span {
    display: block;
    width: 24px;
    height: 3px;
    border-radius: 20px;
    background: var(--dark);
    transition: transform .2s ease, opacity .2s ease;
  }

  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

  .mobile-menu {
    display: block;
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
    z-index: 999;
    background: #fff;
    border-top: 1px solid rgba(18,61,42,.08);
    box-shadow: 0 16px 28px rgba(18,61,42,.12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-7px);
    pointer-events: none;
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
  }

  .mobile-menu[aria-hidden="false"] {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
  }

  .mobile-menu-inner {
    width: min(100% - 40px, 1160px);
    margin: 0 auto;
    padding: 18px 0 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 24px;
  }

  .mobile-menu-inner a {
    padding: 13px 2px;
    color: var(--dark);
    font-size: 15px;
    font-weight: 900;
    border-bottom: 1px solid rgba(18,61,42,.09);
  }

  /* Footer: compact two-column hierarchy on phones only */
  .site-footer {
    padding-top: 54px;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr !important;
    column-gap: 26px !important;
    row-gap: 30px !important;
    padding-bottom: 36px !important;
  }

  .footer-brand {
    grid-column: 1 / -1 !important;
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 18px;
  }

  .footer-brand img {
    width: 145px !important;
    margin: 0;
  }

  .footer-brand p {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  .footer-col {
    gap: 9px !important;
  }

  .footer-col h3 {
    margin: 0 0 5px !important;
    font-size: 11px !important;
    line-height: 1.25;
  }

  .footer-col a {
    font-size: 13px !important;
    line-height: 1.3;
  }

  .footer-col:last-child {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(3, max-content);
    column-gap: 20px !important;
    row-gap: 9px !important;
  }

  .footer-col:last-child h3 {
    grid-column: 1 / -1;
    margin-bottom: 0 !important;
  }

  .footer-bottom {
    padding-top: 20px !important;
    gap: 13px !important;
  }

  .footer-bottom div {
    gap: 10px 16px !important;
  }
}

@media (max-width: 380px) {
  .footer-brand {
    grid-template-columns: 1fr;
    gap: 13px;
  }
  .footer-brand p {
    max-width: 250px;
  }
  .footer-col:last-child {
    grid-template-columns: repeat(3, auto) !important;
    column-gap: 11px !important;
  }
}

/* =========================================================
   INNER PAGES V1 — extends the approved V9 design system.
   Homepage rules above remain unchanged.
   ========================================================= */
.inner-hero{padding:110px 0 120px;position:relative;overflow:hidden;background:var(--cream)}
.inner-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:75px;align-items:center}
.inner-hero h1{font-size:74px;line-height:.92;letter-spacing:-.055em;margin:18px 0 28px}
.inner-hero h1 span{color:var(--green)}
.inner-hero p{font-size:22px;line-height:1.48;font-weight:800;color:var(--muted);max-width:590px}
.inner-photo{height:500px;overflow:hidden;border-radius:40px 120px 40px 40px;box-shadow:24px 24px 0 var(--yellow)}
.inner-intro{padding:130px 0;text-align:center}.inner-intro h2,.feature-section h2,.trial-section h2{font-size:64px;line-height:.94;letter-spacing:-.05em;margin:20px 0 30px}
.inner-intro p{font-size:21px;line-height:1.65;font-weight:800;color:var(--muted);max-width:820px;margin:0 auto}
.feature-section{padding:130px 0;background:var(--mint)}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.feature-copy p{font-size:20px;line-height:1.65;font-weight:800;color:var(--muted)}
.big-points{display:grid;gap:22px;margin-top:35px}.big-point{background:#fff;border-radius:26px;padding:24px 28px;font-size:19px;font-weight:900;box-shadow:0 8px 25px rgba(18,61,42,.06)}
.big-point b{color:var(--purple);margin-right:8px}
.pathways{padding:130px 0}.pathways h2{text-align:center;font-size:64px;line-height:.94;letter-spacing:-.05em;margin:20px 0 55px}.pathway-row{display:flex;justify-content:center;flex-wrap:wrap;gap:16px}.pathway{padding:18px 24px;border-radius:99px;background:var(--yellow);font-size:19px;font-weight:900;color:var(--dark)}
.trial-section{padding:135px 0;text-align:center;background:var(--dark);color:#fff}.trial-section .section-tag{color:var(--yellow)}.trial-section h2 span{color:var(--yellow)}.trial-section p{max-width:720px;margin:0 auto 34px;font-size:20px;line-height:1.55;font-weight:800;color:#d8e8df}.trial-note{font-size:13px!important;opacity:.8;margin-top:22px!important}
.parent-conversations{padding:130px 0}.conversation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:55px}.conversation-card{border-radius:30px;padding:34px;background:var(--cream)}.conversation-card:nth-child(2){background:var(--mint)}.conversation-card:nth-child(3){background:#7958c715}.conversation-card h3{font-size:25px;margin:0 0 12px}.conversation-card p{font-size:17px;line-height:1.55;color:var(--muted);font-weight:800}
.educator-resources{padding:130px 0;background:var(--mint)}
@media(max-width:820px){.inner-hero-grid,.feature-grid{grid-template-columns:1fr;gap:50px}.inner-hero{padding:75px 0 90px}.inner-hero h1{font-size:54px}.inner-photo{height:410px}.inner-intro,.feature-section,.pathways,.trial-section,.parent-conversations,.educator-resources{padding:90px 0}.inner-intro h2,.feature-section h2,.trial-section h2,.pathways h2{font-size:50px}.conversation-grid{grid-template-columns:1fr}}
@media(max-width:600px){.inner-hero h1{font-size:clamp(45px,13vw,55px)}.inner-hero p{font-size:18px}.inner-photo{height:350px;box-shadow:12px 12px 0 var(--yellow)}.inner-intro h2,.feature-section h2,.trial-section h2,.pathways h2{font-size:clamp(42px,12vw,50px)}.inner-intro p,.feature-copy p,.trial-section p{font-size:18px}.big-point{font-size:17px;padding:20px}.pathway{font-size:16px;padding:14px 18px}}

/* Full journey preview additions */
:root{--km-green:#0f5a43;--km-dark:#153e35;--km-gold:#f2b544;--km-cream:#fff9ed;--km-purple:#7357a6;--km-coral:#ee7865;--km-mint:#dff3e8;--km-ink:#17332c}
.journey-hero{padding:72px 0 42px;background:linear-gradient(180deg,#fff9ed 0%,#fff 100%)}
.journey-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}.journey-grid img{width:100%;border-radius:36px;box-shadow:0 20px 60px rgba(21,62,53,.13)}
.eyebrow{font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--km-purple);font-size:.8rem}.big-title{font-size:clamp(2.7rem,6vw,5.7rem);line-height:.92;margin:.18em 0;color:var(--km-dark);letter-spacing:-.055em}.lead{font-size:1.18rem;line-height:1.7;max-width:680px;color:#405b54}
.btn-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.km-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;background:var(--km-green);color:white!important;text-decoration:none;font-weight:900;border:2px solid var(--km-green);cursor:pointer}.km-btn.alt{background:white;color:var(--km-green)!important}.km-btn.gold{background:var(--km-gold);border-color:var(--km-gold);color:#243b34!important}
.section-pad{padding:76px 0}.section-title{font-size:clamp(2rem,4vw,3.6rem);line-height:1.02;color:var(--km-dark);letter-spacing:-.04em;margin:0 0 12px}.soft{background:var(--km-cream)}
.path-grid,.topic-grid,.role-grid,.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.path-grid{grid-template-columns:repeat(5,1fr)}
.path-card,.topic-card,.role-card,.resource-card,.form-card,.preview-card{background:white;border:1px solid rgba(15,90,67,.12);border-radius:26px;padding:24px;box-shadow:0 10px 32px rgba(21,62,53,.06)}.path-card strong{font-size:1.35rem;color:var(--km-green)}
.path-card:nth-child(2n){transform:translateY(14px)}.topic-card .num{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--km-gold);font-weight:900;margin-bottom:14px}.topic-card h3,.role-card h3{margin:.2rem 0 .45rem;color:var(--km-dark)}
.lesson-flow{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.lesson-flow span{background:white;border:2px solid #e8efe9;padding:12px 16px;border-radius:999px;font-weight:800}.lesson-flow b{color:var(--km-green)}
.demo-banner{background:var(--km-dark);color:white;border-radius:34px;padding:38px;margin:28px 0}.demo-banner h2{color:white;margin-top:0}.demo-banner em{color:var(--km-gold);font-style:normal}
.signup-shell{max-width:930px;margin:50px auto;padding:0 20px}.progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0 28px}.progress span{height:8px;border-radius:99px;background:#e5ebe8}.progress span.on{background:var(--km-gold)}
.form-card{padding:34px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:800;color:var(--km-dark)}.field input,.field select,.field textarea{font:inherit;padding:14px 15px;border:1.5px solid #cad8d2;border-radius:14px;background:white}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.choice{border:2px solid #e1e9e5;border-radius:20px;padding:20px;cursor:pointer;background:white}.choice:hover,.choice.selected{border-color:var(--km-green);background:#f2fbf6}.choice .icon{font-size:2rem}.choice strong{display:block;margin:7px 0;color:var(--km-dark)}
.form-actions{display:flex;justify-content:space-between;gap:12px;margin-top:26px}.note{background:#fff4cf;border-radius:16px;padding:14px 16px;color:#66501b;margin:16px 0}.integration{border:2px dashed var(--km-purple);background:#faf7ff;border-radius:24px;padding:24px}.integration code{background:white;padding:3px 7px;border-radius:7px}.hidden{display:none!important}
.dashboard-preview{display:grid;grid-template-columns:240px 1fr;gap:20px}.dash-side{background:var(--km-dark);color:white;border-radius:26px;padding:24px}.dash-main{background:#f7faf8;border-radius:26px;padding:24px}.course-card{background:white;border-radius:20px;padding:20px;margin:12px 0}.bar{height:10px;background:#e5ece8;border-radius:99px;overflow:hidden}.bar i{display:block;width:28%;height:100%;background:var(--km-gold)}
.site-footer-preview{padding:38px 0;background:#123e34;color:white;text-align:center}.site-footer-preview a{color:white}.mini{font-size:.9rem;color:#6b7f79}.prototype-pill{position:fixed;right:14px;bottom:14px;z-index:99;background:#231f20;color:white;padding:9px 13px;border-radius:999px;font-size:.75rem;font-weight:800;box-shadow:0 8px 24px #0002}
@media(max-width:900px){.journey-grid,.dashboard-preview{grid-template-columns:1fr}.path-grid{grid-template-columns:repeat(2,1fr)}.topic-grid,.role-grid,.resource-grid{grid-template-columns:1fr 1fr}.choice-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.path-card:nth-child(2n){transform:none}}
@media(max-width:600px){.path-grid,.topic-grid,.role-grid,.resource-grid{grid-template-columns:1fr}.form-card{padding:22px}.progress{grid-template-columns:repeat(4,1fr)}.journey-hero{padding-top:40px}}
