[hidden]{display:none!important}
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/Baloo2-500-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/Baloo2-500-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/Baloo2-600-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/Baloo2-600-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/Baloo2-700-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/Baloo2-700-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/Baloo2-800-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Baloo 2';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/Baloo2-800-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Nunito';font-style:italic;font-weight:400;font-display:swap;src:url('assets/fonts/Nunito-400-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Nunito';font-style:italic;font-weight:400;font-display:swap;src:url('assets/fonts/Nunito-400-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/Nunito-400-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/Nunito-400-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/Nunito-500-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/Nunito-500-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/Nunito-600-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/Nunito-600-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/Nunito-700-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/Nunito-700-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/Nunito-800-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Nunito';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/Nunito-800-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}


  :root{
    color-scheme: light;
    --bg:#FAF6EC; --bg-tint:#F2EAD7; --surface:#FFFFFF;
    --ink:#1B2A63; --ink-soft:#5B6488; --line:#ECE3CF;
    --navy:#1B2A63; --navy-deep:#141F45;
    --petrol:#0FA0AE; --purple:#6C3FA3; --sunny:#FFC01E; --orange:#F26B2A; --coral:#FF8C6E;
    --petrol-ink:#0B7C89; --purple-ink:#6C3FA3; --orange-ink:#CF4D17;
    --on-navy:#FBF7EE; --on-navy-soft:#BFC6E6;
    --shadow:0 18px 40px -24px rgba(20,31,69,.45);
    --shadow-sm:0 8px 20px -14px rgba(20,31,69,.4);
    --ring: color-mix(in srgb, var(--petrol) 55%, transparent);
    --maxw:1140px;
    --logo-img:url("assets/liku-logo.png?v=20261006");
    --robot-img:url("assets/liku-robot.png?v=20261006");
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      color-scheme: dark;
      --bg:#101A3C; --bg-tint:#182452; --surface:#1B2650;
      --ink:#F5F1E3; --ink-soft:#AEB6D8; --line:#2A3768;
      --petrol:#2CB8C6; --purple:#AE81E8; --sunny:#FFCB3D; --orange:#FF7E43; --coral:#FF9E82;
      --petrol-ink:#4ACEDB; --purple-ink:#C09AEE; --orange-ink:#FF8B4E;
      --shadow:0 20px 44px -22px rgba(0,0,0,.65);
      --shadow-sm:0 10px 22px -14px rgba(0,0,0,.6);
    }
  }
  :root[data-theme="dark"]{
    color-scheme: dark;
    --bg:#101A3C; --bg-tint:#182452; --surface:#1B2650;
    --ink:#F5F1E3; --ink-soft:#AEB6D8; --line:#2A3768;
    --petrol:#2CB8C6; --purple:#AE81E8; --sunny:#FFCB3D; --orange:#FF7E43; --coral:#FF9E82;
    --petrol-ink:#4ACEDB; --purple-ink:#C09AEE; --orange-ink:#FF8B4E;
    --shadow:0 20px 44px -22px rgba(0,0,0,.65);
    --shadow-sm:0 10px 22px -14px rgba(0,0,0,.6);
  }

  *{box-sizing:border-box}
  html{-webkit-text-size-adjust:100%; scroll-behavior:smooth}
  body{margin:0; background:var(--bg); color:var(--ink);
    font-family:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;
    font-size:clamp(1rem,.96rem + .2vw,1.075rem); line-height:1.65; -webkit-font-smoothing:antialiased}
  @media (prefers-reduced-motion: reduce){*{animation:none !important; transition:none !important; scroll-behavior:auto}}
  h1,h2,h3{font-family:"Baloo 2", system-ui, sans-serif; line-height:1.1; text-wrap:balance; margin:0}
  p{margin:0}
  a{color:inherit}
  img,svg{max-width:100%}
  :focus-visible{outline:3px solid var(--ring); outline-offset:3px; border-radius:8px}

  .wrap{max-width:var(--maxw); margin-inline:auto; padding-inline:clamp(1.1rem,4vw,2.4rem)}
  .section{padding-block:clamp(3.2rem,7vw,5.6rem)}
  .subpage{padding-block:clamp(2.4rem,6vw,4.2rem)}
  .eyebrow{font-weight:800; font-size:.8rem; letter-spacing:.14em; text-transform:uppercase;
    color:var(--petrol-ink); display:inline-flex; align-items:center; gap:.5rem; margin:0 0 .9rem}
  .eyebrow::before{content:""; width:1.6rem; height:3px; border-radius:3px; background:currentColor}
  .h2{font-size:clamp(1.7rem,1.2rem + 2.4vw,2.55rem); font-weight:800; letter-spacing:-.01em}
  .lead{color:var(--ink-soft); font-size:clamp(1.05rem,1rem + .4vw,1.2rem); max-width:56ch}
  .ic{width:1.5rem; height:1.5rem; display:block; flex:none}

  .brand{display:flex; align-items:center; gap:.6rem; text-decoration:none}
  .brand-logo{height:42px; aspect-ratio:640/229; background:var(--logo-img) center/contain no-repeat; display:block}
  .hero-logo{width:clamp(220px,30vw,340px); aspect-ratio:640/229; background:var(--logo-img) left center/contain no-repeat; display:block}
  .foot-logo{height:58px; aspect-ratio:640/229; background:var(--logo-img) left center/contain no-repeat; display:block}
  .mascot{width:min(100%,340px); aspect-ratio:520/906; background:var(--robot-img) center/contain no-repeat; display:block;
    position:relative; z-index:2; filter:drop-shadow(0 22px 24px rgba(20,31,69,.28)); animation:float 6s ease-in-out infinite}
  @keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

  .btn{--bp:1.6rem; display:inline-flex; align-items:center; gap:.55rem; cursor:pointer;
    font-family:"Baloo 2",sans-serif; font-weight:700; font-size:1.02rem; text-decoration:none;
    padding:.82rem var(--bp); border-radius:999px; border:2px solid transparent; white-space:nowrap;
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease}
  .btn .ic{width:1.2rem;height:1.2rem}
  .btn:hover{transform:translateY(-2px)}
  .btn--primary{background:var(--navy); color:var(--on-navy); box-shadow:var(--shadow-sm)}
  .btn--primary:hover{box-shadow:var(--shadow); background:color-mix(in srgb,var(--navy) 86%, var(--petrol))}
  .btn--ghost{background:transparent; color:var(--ink); border-color:color-mix(in srgb,var(--ink) 26%,transparent)}
  .btn--ghost:hover{border-color:var(--petrol); color:var(--petrol-ink)}
  .btn--sun{background:var(--sunny); color:#3a2a00; box-shadow:0 10px 24px -14px rgba(0,0,0,.5)}
  .btn--sun:hover{background:color-mix(in srgb,var(--sunny) 88%, #fff)}
  .btn--onnavy-ghost{background:transparent;color:var(--on-navy);border-color:color-mix(in srgb,var(--on-navy) 45%,transparent)}
  .btn--onnavy-ghost:hover{border-color:var(--on-navy);background:color-mix(in srgb,var(--on-navy) 12%,transparent)}

  .site-header{position:sticky; top:0; z-index:50; background:color-mix(in srgb,var(--bg) 82%, transparent);
    backdrop-filter:blur(10px); border-bottom:1px solid var(--line)}
  .nav{display:flex; align-items:center; gap:1.2rem; padding-block:.6rem; position:relative}
  .nav-links{display:flex; gap:.25rem; margin-inline:auto}
  .nav-links a{text-decoration:none; color:var(--ink); font-weight:700; font-size:.98rem;
    padding:.5rem .85rem; border-radius:999px; transition:background .15s,color .15s}
  .nav-links a:hover{background:color-mix(in srgb,var(--petrol) 14%,transparent); color:var(--petrol-ink)}
  .nav-links a.active{background:color-mix(in srgb,var(--petrol) 16%,transparent); color:var(--petrol-ink)}
  .header-cta{display:flex; align-items:center; gap:.5rem}
  .icon-btn{display:inline-grid; place-items:center; width:2.6rem; height:2.6rem; border-radius:999px;
    background:var(--surface); color:var(--ink); border:1px solid var(--line); cursor:pointer; transition:transform .15s, border-color .15s}
  .icon-btn:hover{transform:translateY(-1px); border-color:var(--petrol)}
  .nav-toggle{display:none}
  .theme-toggle .ic-sun{display:none}
  :root[data-theme="dark"] .theme-toggle .ic-sun{display:block}
  :root[data-theme="dark"] .theme-toggle .ic-moon{display:none}
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]) .theme-toggle .ic-sun{display:block}
    :root:not([data-theme="light"]) .theme-toggle .ic-moon{display:none}
  }

  .hero{position:relative; overflow:hidden}
  .hero-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(1.5rem,4vw,3rem); align-items:center}
  .hero-copy{position:relative; z-index:2}
  .hero-logo-wrap{margin:0 0 1.1rem}
  .claim{font-family:"Baloo 2",sans-serif; font-weight:800; font-size:clamp(1.5rem,1.1rem + 2.4vw,2.4rem); letter-spacing:-.01em; margin:.2rem 0 1rem}
  .claim .c1{color:var(--petrol-ink)} .claim .c2{color:var(--purple-ink)} .claim .c3{color:var(--orange-ink)}
  .hero-sub{color:var(--ink-soft); font-size:clamp(1.05rem,1rem + .5vw,1.22rem); max-width:42ch; margin-bottom:1.6rem}
  .hero-actions{display:flex; flex-wrap:wrap; gap:.8rem; margin-bottom:1.5rem}
  .trustline{display:flex; flex-wrap:wrap; gap:.5rem .9rem; color:var(--ink-soft); font-weight:600; font-size:.94rem}
  .trustline span{display:inline-flex; align-items:center; gap:.4rem}
  .trustline .dot{width:.42rem;height:.42rem;border-radius:50%;background:var(--petrol)}
  .hero-art{position:relative; display:grid; place-items:center; min-height:340px}
  .halo{position:absolute; width:78%; aspect-ratio:1; border-radius:50%; z-index:1;
    background:radial-gradient(circle, color-mix(in srgb,var(--petrol) 24%, transparent), transparent 68%)}
  .deco{position:absolute; inset:0; pointer-events:none; z-index:0}
  .deco .s{position:absolute; color:var(--sunny); opacity:.9}
  .deco .s2{color:var(--petrol)} .deco .s3{color:var(--purple)} .deco .s4{color:var(--orange)}

  .intro-head{max-width:62ch}
  .pillars{display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:2.2rem}
  .pillar{background:var(--surface); border:1px solid var(--line); border-radius:20px; padding:1.4rem 1.25rem; box-shadow:var(--shadow-sm); transition:transform .18s, box-shadow .18s}
  .pillar:hover{transform:translateY(-4px); box-shadow:var(--shadow)}
  .pchip{width:3rem; height:3rem; border-radius:14px; display:grid; place-items:center; margin-bottom:.9rem}
  .pillar h3{font-size:1.28rem; margin-bottom:.35rem}
  .pillar p{color:var(--ink-soft); font-size:.96rem}
  .p-learn .pchip{background:color-mix(in srgb,var(--sunny) 22%,var(--surface)); color:#9a6b00}
  .p-learn h3{color:#9a6b00}
  :root[data-theme="dark"] .p-learn .pchip{color:var(--sunny)} :root[data-theme="dark"] .p-learn h3{color:var(--sunny)}
  @media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .p-learn .pchip{color:var(--sunny)} :root:not([data-theme="light"]) .p-learn h3{color:var(--sunny)}}
  .p-research .pchip{background:color-mix(in srgb,var(--purple) 18%,var(--surface)); color:var(--purple-ink)}
  .p-research h3{color:var(--purple-ink)}
  .p-wonder .pchip{background:color-mix(in srgb,var(--orange) 18%,var(--surface)); color:var(--orange-ink)}
  .p-wonder h3{color:var(--orange-ink)}
  .p-create .pchip{background:color-mix(in srgb,var(--petrol) 18%,var(--surface)); color:var(--petrol-ink)}
  .p-create h3{color:var(--petrol-ink)}

  .topics-band{background:var(--bg-tint)}
  .topics{display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem 1.4rem; margin-top:2.2rem}
  .topic{display:flex; gap:.95rem; align-items:flex-start}
  .topic .tc{width:2.9rem;height:2.9rem;border-radius:50%; display:grid;place-items:center; flex:none; background:var(--surface); border:1px solid var(--line); color:var(--petrol-ink); box-shadow:var(--shadow-sm)}
  .topic h3{font-size:1.1rem; margin-bottom:.2rem}
  .topic p{color:var(--ink-soft); font-size:.94rem}
  .topic:nth-child(2) .tc{color:var(--purple-ink)} .topic:nth-child(3) .tc{color:var(--orange-ink)}
  .topic:nth-child(5) .tc{color:var(--purple-ink)} .topic:nth-child(6) .tc{color:var(--orange-ink)}

  .facts{background:color-mix(in srgb,var(--petrol) 10%, var(--surface)); border-block:1px solid var(--line)}
  .facts-inner{display:flex; flex-wrap:wrap; justify-content:center; gap:.8rem}
  .fact{display:flex; align-items:center; gap:.6rem; background:var(--surface); border:1px solid var(--line); border-radius:999px; padding:.6rem 1.1rem; font-weight:700; box-shadow:var(--shadow-sm)}
  .fact .ic{width:1.25rem;height:1.25rem;color:var(--petrol-ink)}
  .fact b{font-family:"Baloo 2",sans-serif}

  .parents-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(1.5rem,4vw,3rem); align-items:center}
  .checks{list-style:none; padding:0; margin:1.4rem 0 0; display:grid; gap:.85rem}
  .checks li{display:flex; gap:.7rem; align-items:flex-start; font-weight:600}
  .checks .ic{color:var(--petrol); margin-top:.15rem}
  .coach-card{background:var(--surface); border:1px solid var(--line); border-radius:24px; padding:1.6rem; box-shadow:var(--shadow); position:relative; overflow:hidden}
  .coach-card::before{content:""; position:absolute; right:-40px; top:-40px; width:150px; height:150px; border-radius:50%; background:color-mix(in srgb,var(--sunny) 30%,transparent)}
  .coach-top{display:flex; align-items:center; gap:1rem; position:relative}
  .coach-avatar{width:4.6rem;height:4.6rem;border-radius:50%; flex:none; display:grid; place-items:center; background:color-mix(in srgb,var(--petrol) 16%,var(--surface)); color:var(--petrol-ink); border:2px dashed color-mix(in srgb,var(--petrol) 45%,transparent); font-family:"Baloo 2",sans-serif; font-weight:800; font-size:1.5rem}
  .coach-card h3{font-size:1.35rem}
  .coach-role{color:var(--petrol-ink); font-weight:800; font-size:.9rem}
  .badge-ihk{display:inline-flex;align-items:center;gap:.5rem; margin-top:1.1rem; position:relative; background:color-mix(in srgb,var(--sunny) 20%,var(--surface)); color:#8a5f00; border-radius:12px; padding:.5rem .8rem; font-weight:800; font-size:.86rem}
  :root[data-theme="dark"] .badge-ihk{color:var(--sunny)}
  @media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .badge-ihk{color:var(--sunny)}}
  .coach-card p{color:var(--ink-soft); margin-top:1rem; position:relative}

  .formats{display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem; margin-top:2.2rem}
  .format{background:var(--surface); border:1px solid var(--line); border-radius:20px; padding:1.5rem; box-shadow:var(--shadow-sm); transition:transform .18s, box-shadow .18s}
  .format:hover{transform:translateY(-4px); box-shadow:var(--shadow)}
  .format .fc{width:3rem;height:3rem;border-radius:14px; display:grid;place-items:center; margin-bottom:1rem; background:color-mix(in srgb,var(--petrol) 16%,var(--surface)); color:var(--petrol-ink)}
  .format:nth-child(2) .fc{background:color-mix(in srgb,var(--orange) 16%,var(--surface)); color:var(--orange-ink)}
  .format:nth-child(3) .fc{background:color-mix(in srgb,var(--purple) 16%,var(--surface)); color:var(--purple-ink)}
  .offers{display:grid; grid-template-columns:1fr 1fr; gap:clamp(1rem,3vw,1.6rem); margin-top:2.2rem}
  .offer-card{background:var(--surface); border:1px solid var(--line); border-radius:22px; padding:clamp(1.4rem,3vw,2rem); box-shadow:var(--shadow-sm); display:flex; flex-direction:column; align-items:flex-start}
  .offer-card .fc{width:3.2rem;height:3.2rem;border-radius:16px; display:grid;place-items:center; margin-bottom:1rem; background:color-mix(in srgb,var(--purple) 16%,var(--surface)); color:var(--purple-ink)}
  .offer-card.gift .fc{background:color-mix(in srgb,var(--sunny) 24%,var(--surface)); color:#9a6b00}
  :root[data-theme="dark"] .offer-card.gift .fc{color:var(--sunny)}
  @media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .offer-card.gift .fc{color:var(--sunny)}}
  .offer-card h3{font-family:"Baloo 2",sans-serif; font-size:1.35rem; margin:.2rem 0 .5rem}
  .offer-card p{color:var(--ink-soft); margin-bottom:1.4rem}
  .offer-card .btn{margin-top:auto}
  @media(max-width:720px){.offers{grid-template-columns:1fr}}
  .offer-note{margin-top:1.5rem; color:var(--ink-soft)}
  .offer-note a{color:var(--petrol-ink); font-weight:700}
  .format h3{font-size:1.2rem; margin-bottom:.3rem}
  .format p{color:var(--ink-soft); font-size:.95rem}

  .cta-band{position:relative; overflow:hidden; background:linear-gradient(140deg,#1B2A63,#2A2A6E 55%,#123b57); color:var(--on-navy); border-radius:28px; margin-block:1rem}
  .cta-inner{position:relative; z-index:2; text-align:center; display:grid; gap:1.1rem; place-items:center; padding:clamp(2.4rem,5vw,3.6rem) 1.4rem}
  .cta-band h2{color:#fff; font-size:clamp(1.7rem,1.2rem + 2.6vw,2.6rem)}
  .cta-band p{color:var(--on-navy-soft); max-width:52ch}
  .cta-actions{display:flex; flex-wrap:wrap; gap:.8rem; justify-content:center; margin-top:.4rem}
  .cta-stars{position:absolute; inset:0; z-index:1; pointer-events:none; opacity:.85}
  .cta-stars .s{position:absolute; color:var(--sunny)}
  .cta-stars .s.p{color:#8f7ff0} .cta-stars .s.t{color:#39c6d4}

  .about-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(1.6rem,4vw,3rem); align-items:center; margin-top:2rem}
  .about-grid.reverse .about-art{order:-1}
  .about-art{position:relative; display:grid; place-items:center; min-height:280px}
  .about-art .mascot{width:min(74%,300px)}
  .values{display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem; margin-top:2.4rem}
  .value{background:var(--surface); border:1px solid var(--line); border-radius:18px; padding:1.3rem; box-shadow:var(--shadow-sm)}
  .value .fc{width:2.8rem;height:2.8rem;border-radius:12px; display:grid;place-items:center; margin-bottom:.8rem; background:color-mix(in srgb,var(--petrol) 15%,var(--surface)); color:var(--petrol-ink)}
  .value:nth-child(2) .fc{background:color-mix(in srgb,var(--sunny) 22%,var(--surface)); color:#9a6b00}
  .value:nth-child(3) .fc{background:color-mix(in srgb,var(--purple) 16%,var(--surface)); color:var(--purple-ink)}
  .value h3{font-size:1.12rem; margin-bottom:.3rem}
  .value p{color:var(--ink-soft); font-size:.94rem}

  /* termine + calendly */
  .termine-facts{display:flex; flex-wrap:wrap; gap:.6rem; margin:1.8rem 0 2rem}
  .calendly-mount{margin-top:.5rem}
  .calendly-placeholder{min-height:520px; display:grid; place-items:center; align-content:center; text-align:center; padding:2.6rem 1.5rem;
    background:var(--surface); border:2px dashed color-mix(in srgb,var(--petrol) 40%,var(--line)); border-radius:22px}
  .calendly-placeholder .cal-ic{width:3.4rem;height:3.4rem;color:var(--petrol-ink); margin-bottom:.8rem}
  .calendly-placeholder h3{font-family:"Baloo 2",sans-serif; font-size:1.35rem}
  .calendly-placeholder p{color:var(--ink-soft); max-width:48ch; margin:.5rem auto 0}
  .calendly-placeholder .pill{margin-top:1.1rem; display:inline-block; background:color-mix(in srgb,var(--sunny) 22%,var(--surface)); color:#8a5f00; border-radius:999px; padding:.4rem .9rem; font-weight:800; font-size:.82rem}
  :root[data-theme="dark"] .calendly-placeholder .pill{color:var(--sunny)}
  @media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .calendly-placeholder .pill{color:var(--sunny)}}
  .form-note{font-size:.9rem; color:var(--ink-soft)}

  .faq{max-width:60rem; margin-top:2rem; display:grid; gap:.8rem}
  .faq-item{background:var(--surface); border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow-sm); overflow:hidden}
  .faq-item summary{cursor:pointer; list-style:none; padding:1.05rem 1.3rem; font-family:"Baloo 2",sans-serif; font-weight:700; font-size:1.06rem; display:flex; align-items:center; justify-content:space-between; gap:1rem}
  .faq-item summary::-webkit-details-marker{display:none}
  .faq-item summary .chev{transition:transform .2s; color:var(--petrol-ink); flex:none}
  .faq-item[open] summary .chev{transform:rotate(180deg)}
  .faq-item .answer{padding:0 1.3rem 1.15rem; color:var(--ink-soft)}

  .legal{max-width:72ch}
  .legal h2{margin-bottom:1rem}
  .legal h3{font-size:1.15rem; margin:1.8rem 0 .5rem; color:var(--ink)}
  .legal p{margin:.55rem 0; color:var(--ink-soft)}
  .legal ul{margin:.4rem 0 .9rem; padding-left:1.25rem; color:var(--ink-soft)}
  .legal li{margin:.3rem 0}
  .legal a{color:var(--petrol-ink); font-weight:600}
  .legal strong{color:var(--ink)}
  .legal a{color:var(--petrol-ink); font-weight:700}
  .legal .ph{background:color-mix(in srgb,var(--sunny) 24%,var(--surface)); color:#8a5f00; padding:.05rem .4rem; border-radius:6px; font-weight:700}
  :root[data-theme="dark"] .legal .ph{color:var(--sunny)}
  @media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .legal .ph{color:var(--sunny)}}
  .legal .note{background:var(--bg-tint); border:1px solid var(--line); border-radius:14px; padding:1rem 1.2rem; margin:1.4rem 0; color:var(--ink)}

  .site-footer{background:var(--navy-deep); color:var(--on-navy); padding-block:3rem 2rem}
  .foot-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:2rem}
  .foot-tag{color:var(--on-navy-soft); margin-top:1rem; max-width:34ch}
  .foot-col h4{font-family:"Baloo 2",sans-serif; font-size:1rem; margin:0 0 .8rem; color:#fff}
  .foot-col a{display:block; color:var(--on-navy-soft); text-decoration:none; padding:.28rem 0; font-weight:600}
  .foot-col a:hover{color:#fff}
  .foot-bottom{border-top:1px solid rgba(255,255,255,.14); margin-top:2.2rem; padding-top:1.3rem; display:flex; flex-wrap:wrap; gap:.6rem 1.2rem; justify-content:space-between; color:var(--on-navy-soft); font-size:.88rem}
  .foot-bottom a{color:var(--on-navy-soft); font-weight:600}
  .foot-bottom a:hover{color:#fff}

  @media (max-width: 960px){
    .hero-grid{grid-template-columns:1fr; text-align:center}
    .hero-copy{order:2}
    .hero-art{order:1; min-height:auto}
    .mascot{width:min(66%,280px)}
    .hero-logo{margin-inline:auto}
    .hero-actions,.trustline{justify-content:center}
    .parents-grid{grid-template-columns:1fr}
    .about-grid{grid-template-columns:1fr}
    .about-grid.reverse .about-art{order:0}
    .pillars{grid-template-columns:repeat(2,1fr)}
    .topics{grid-template-columns:repeat(2,1fr)}
    .formats,.values{grid-template-columns:1fr}
    .foot-grid{grid-template-columns:1fr 1fr}
  }
  @media (max-width: 720px){
    .nav-links{display:none}
    .nav-toggle{display:inline-grid}
    .nav-links.mobile-open{display:flex; position:absolute; left:0; right:0; top:100%; flex-direction:column;
      background:var(--surface); border-bottom:1px solid var(--line); margin:0; padding:.6rem 1.1rem 1.1rem; gap:.1rem; box-shadow:var(--shadow)}
  }
  @media (max-width: 460px){
    .pillars,.topics{grid-template-columns:1fr}
    .foot-grid{grid-template-columns:1fr}
    .btn{width:100%; justify-content:center}
    .header-cta .btn{width:auto}
  }
  /* buttons + cookie consent */
  .btn--soft{background:var(--bg-tint); color:var(--ink)}
  .btn--soft:hover{background:color-mix(in srgb,var(--bg-tint) 82%, var(--ink) 10%)}
  .linklike{background:none; border:0; padding:0; font:inherit; cursor:pointer; color:var(--on-navy-soft); font-weight:600}
  .linklike:hover{color:#fff; text-decoration:underline}
  .cc-banner{position:fixed; left:0; right:0; bottom:0; z-index:200; padding:1rem; display:flex; justify-content:center; pointer-events:none}
  .cc-card{pointer-events:auto; max-width:660px; width:100%; background:var(--surface); border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); padding:1.15rem 1.3rem}
  .cc-card h3{font-family:"Baloo 2",sans-serif; font-size:1.12rem; margin-bottom:.3rem; color:var(--ink)}
  .cc-card p{color:var(--ink-soft); font-size:.9rem; margin-bottom:.95rem}
  .cc-card p a{color:var(--petrol-ink); font-weight:700}
  .cc-actions{display:flex; flex-wrap:wrap; gap:.6rem}
  .cc-actions .btn{flex:1 1 200px; justify-content:center}
  @media(max-width:460px){.cc-actions .btn{flex:1 1 100%}}
