/*
Theme Name: Kidding Education Custom v3.1
Theme URI: https://kiddingeducation.org/
Author: OpenAI
Description: Custom theme for Kidding Education homepage with editable homepage sections in the WordPress Customizer.
Version: 3.1.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: kidding-education
*/

:root{
  --pink:#FF3EAC;
  --pink-light:#FF79C6;
  --pink-pale:#FFE0F5;
  --gold:#FFD000;
  --gold-dark:#F5A800;
  --purple:#7B2FBE;
  --purple-light:#A855F7;
  --purple-pale:#F3E8FF;
  --purple-mid:#C084FC;
  --white:#FFFFFF;
  --bg:#FDF4FF;
  --dark:#1A0A2E;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;overflow-x:hidden}
body{
  font-family:'Nunito',sans-serif;
  background:var(--bg);
  color:var(--dark);
}
img{max-width:100%;height:auto}
a{text-decoration:none}
.screen-reader-text{position:absolute!important;left:-9999px!important}

.site-header,.site-footer-default{display:none}

.page-template-default .entry-title,
.page-template-default .page-title,
.home .entry-title,
.home .page-title{display:none!important}

.entry-content,.content-container,#primary,.site-container,.site-main{
  max-width:100%!important;
}
.page .site-main,.home .site-main{margin:0;padding:0}

.ke-homepage section{padding:5rem}
.sec-label{
  display:inline-block;
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--pink);
  margin-bottom:.6rem;
}
.sec-title{
  font-family:'Fredoka One',cursive;
  font-size:2.4rem;
  color:var(--dark);
  margin-bottom:.5rem;
  line-height:1.1;
}
.sec-title span{color:var(--purple)}
.sec-header{text-align:center;margin-bottom:3.5rem}

.hero{
  min-height:92vh;
  background:linear-gradient(145deg,#12002A 0%,#1E0040 40%,#2A005C 70%,#1A0038 100%);
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  padding:3rem 5rem;
  position:relative;
  overflow:hidden;
}
.hero-stars{
  position:absolute;inset:0;pointer-events:none;overflow:hidden;
}
.hstar{
  position:absolute;color:var(--gold);font-size:.8rem;opacity:.4;
  animation:driftStar linear infinite;
}
@keyframes driftStar{
  0%{transform:translateY(0) rotate(0deg);opacity:.2}
  50%{opacity:.6}
  100%{transform:translateY(-40px) rotate(30deg);opacity:.1}
}
.orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}
.orb1{width:400px;height:400px;background:rgba(168,85,247,.3);top:-100px;right:-50px;animation:orbPulse 7s ease-in-out infinite}
.orb2{width:300px;height:300px;background:rgba(255,62,172,.25);bottom:-80px;left:15%;animation:orbPulse 9s ease-in-out infinite reverse}
.orb3{width:200px;height:200px;background:rgba(255,208,0,.15);top:30%;left:40%;animation:orbPulse 6s ease-in-out infinite 2s}
@keyframes orbPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}}
.hero-left{position:relative;z-index:2}
.hero-badge{
  display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,208,0,.12);
  border:1.5px solid var(--gold);border-radius:50px;padding:.35rem 1rem;
  font-weight:800;font-size:.78rem;color:var(--gold);letter-spacing:.05em;
  margin-bottom:1.8rem;animation:popIn .5s .1s both;
}
@keyframes popIn{from{opacity:0;transform:scale(.85) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}
.hero-title{margin-bottom:1.5rem;animation:slideUp .6s .2s both}
@keyframes slideUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero-title-line1,.hero-title-line2{
  font-family:'Fredoka One',cursive;
  font-size:clamp(3rem,5.5vw,5rem);
  line-height:1;
  display:block;
}
.hero-title-line1{
  color:var(--pink);
  -webkit-text-stroke:1px #8B0054;
  text-shadow:0 0 20px rgba(255,62,172,.6),3px 3px 0 #8B0054,0 0 60px rgba(255,62,172,.3);
}
.hero-title-line2{
  line-height:1.05;color:var(--gold);-webkit-text-stroke:1px #8B6000;
  text-shadow:0 0 20px rgba(255,208,0,.7),3px 3px 0 #8B6000,0 0 60px rgba(255,208,0,.3);
}
.hero-sub{
  font-size:1.1rem;font-weight:700;color:rgba(255,255,255,.7);
  margin-bottom:2.2rem;max-width:430px;line-height:1.6;animation:slideUp .6s .35s both
}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;animation:slideUp .6s .45s both}
.btn{
  font-family:'Nunito',sans-serif;font-weight:900;font-size:1rem;padding:.8rem 2rem;border-radius:50px;
  cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s;border:none;letter-spacing:.02em
}
.btn-pink{
  background:linear-gradient(135deg,var(--pink),#C0006B);color:var(--white);
  box-shadow:0 4px 20px rgba(255,62,172,.5),inset 0 1px 0 rgba(255,255,255,.3)
}
.btn-pink:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 8px 30px rgba(255,62,172,.7)}
.btn-outline{
  background:transparent;color:var(--white);border:2px solid rgba(255,255,255,.3);backdrop-filter:blur(6px)
}
.btn-outline:hover{border-color:var(--purple-mid);color:var(--purple-mid);transform:translateY(-2px)}

.hero-right{
  position:relative;z-index:2;display:flex;justify-content:center;align-items:flex-end;padding-bottom:1rem;animation:slideUp .7s .1s both
}
.characters-stage{position:relative;width:100%;max-width:580px;height:380px;margin:0 auto}
.char-card{
  position:absolute;bottom:0;border-radius:20px;overflow:hidden;border:2px solid rgba(255,255,255,.2);transition:all .3s;cursor:pointer
}
.char-card:hover{transform:translateY(-10px) scale(1.04);border-color:var(--gold);box-shadow:0 16px 30px rgba(0,0,0,.4);z-index:10}
.char-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.char-c1{left:0;width:120px;height:260px;z-index:4}
.char-c2{left:100px;width:140px;height:300px;z-index:6}
.char-c3{left:220px;width:120px;height:260px;z-index:4}
.char-c4{left:320px;width:140px;height:300px;z-index:6}
.char-c5{left:440px;width:120px;height:260px;z-index:4}
.char-glow{position:absolute;bottom:-5px;border-radius:50%;filter:blur(12px);pointer-events:none;z-index:1}
.glow-pink{width:120px;height:20px;background:var(--pink);left:25px;opacity:.5}
.glow-purple{width:120px;height:20px;background:var(--purple-light);right:25px;opacity:.5}
.speech{
  position:absolute;top:10px;left:50%;transform:translateX(-50%);
  background:rgba(255,255,255,.12);backdrop-filter:blur(10px);
  border:1.5px solid rgba(255,255,255,.25);border-radius:16px;padding:.5rem 1.1rem;color:white;
  font-weight:800;font-size:.85rem;white-space:nowrap;animation:bubble 3s ease-in-out infinite;z-index:20
}
.speech::after{
  content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);
  border:5px solid transparent;border-top-color:rgba(255,255,255,.25)
}
@keyframes bubble{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-6px)}}

.ticker{
  background:linear-gradient(90deg,var(--pink),var(--purple),var(--pink));background-size:200% auto;
  animation:gradientShift 4s linear infinite;padding:.9rem 0;overflow:hidden;border-top:2px solid rgba(255,255,255,.2);border-bottom:2px solid rgba(255,255,255,.2)
}
@keyframes gradientShift{0%{background-position:0%}100%{background-position:200%}}
.ticker-inner{display:flex;width:max-content;animation:tickerScroll 22s linear infinite}
@keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker-item{
  color:var(--white);font-weight:800;font-size:.9rem;padding:0 2.5rem;white-space:nowrap;display:flex;align-items:center;gap:.5rem
}
.ticker-item .tstar{color:var(--gold);font-size:1rem}

.activities-section{background:var(--bg)}
.cards-row{display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem}
.act-card{
  border-radius:22px;padding:1.8rem 1.2rem 1.4rem;text-align:center;cursor:pointer;color:var(--dark);
  display:block;position:relative;overflow:hidden;transition:all .22s;border:2.5px solid transparent
}
.act-card::before{
  content:'';position:absolute;inset:0;border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.8),rgba(255,255,255,.4));z-index:0
}
.act-card>*{position:relative;z-index:1}
.ac-math{background:linear-gradient(145deg,#FFE0EC,#FFC8E5);border-color:#FFB0D6}
.ac-reading{background:linear-gradient(145deg,#E8D5FF,#D4B0FF);border-color:#C090FF}
.ac-science{background:linear-gradient(145deg,#D5F0FF,#B0E0FF);border-color:#90CCFF}
.ac-sel{background:linear-gradient(145deg,#FFF5CC,#FFE87A);border-color:#FFD700}
.ac-life{background:linear-gradient(145deg,#E0FFE8,#B0FFD0);border-color:#80E8B0}
.act-card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 16px 40px rgba(123,47,190,.2);border-color:var(--pink)!important}
.act-card:hover .act-icon{transform:scale(1.25) rotate(-8deg)}
.act-icon{font-size:2.8rem;display:block;margin-bottom:.8rem;transition:transform .2s}
.act-card h3{font-family:'Fredoka One',cursive;font-size:1.1rem;margin-bottom:.3rem;color:var(--dark)}
.act-card p{font-size:.73rem;font-weight:700;color:#666;line-height:1.4}
.act-pill{
  display:inline-block;margin-top:.8rem;font-size:.68rem;font-weight:900;padding:.2rem .65rem;background:rgba(123,47,190,.12);
  border-radius:50px;color:var(--purple);border:1.5px solid rgba(123,47,190,.2)
}

.featured-section{background:linear-gradient(145deg,#12002A,#1E0040,#180035);position:relative;overflow:hidden}
.featured-section::before{
  content:'';position:absolute;width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(168,85,247,.15),transparent);top:-200px;right:-100px;pointer-events:none
}
.featured-section .sec-label{color:var(--gold)}
.featured-section .sec-title{color:var(--white)}
.featured-section .sec-title span{color:var(--gold)}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.feat-card{
  border-radius:22px;overflow:hidden;cursor:pointer;transition:all .25s;border:2px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);backdrop-filter:blur(8px);color:inherit;display:block
}
.feat-card:hover{
  transform:translateY(-8px);border-color:var(--gold);box-shadow:0 20px 50px rgba(0,0,0,.4),0 0 30px rgba(255,208,0,.2)
}
.feat-thumb{height:150px;display:flex;align-items:center;justify-content:center;font-size:4rem;position:relative}
.feat-thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 60%,rgba(0,0,0,.3))}
.ft1{background:linear-gradient(135deg,#FF3EAC 0%,#FF79C6 100%)}
.ft2{background:linear-gradient(135deg,#7B2FBE 0%,#A855F7 100%)}
.ft3{background:linear-gradient(135deg,#F5A800 0%,#FFD000 100%)}
.feat-body{padding:1.2rem}
.feat-body h3{font-family:'Fredoka One',cursive;font-size:1.1rem;color:var(--white);margin-bottom:.25rem}
.feat-body p{font-size:.78rem;font-weight:700;color:rgba(255,255,255,.55)}
.feat-tag{
  display:inline-block;margin-top:.6rem;font-size:.67rem;font-weight:900;padding:.2rem .6rem;background:rgba(255,208,0,.12);
  border:1px solid rgba(255,208,0,.3);border-radius:50px;color:var(--gold)
}

.chars-section{
  background:linear-gradient(145deg,var(--purple-pale),#FFE0F5,var(--purple-pale));position:relative;overflow:hidden;padding:5rem
}
.chars-section::before,.chars-section::after{
  content:'★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★';position:absolute;left:0;right:0;font-size:.7rem;letter-spacing:1rem;color:var(--gold);opacity:.35;text-align:center
}
.chars-section::before{top:15px}
.chars-section::after{bottom:15px}
.chars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.char-showcase{
  background:var(--white);border-radius:22px;overflow:hidden;border:2.5px solid rgba(123,47,190,.15);transition:all .25s;cursor:pointer;position:relative;max-width:320px;width:100%;margin:0 auto
}
.char-showcase:hover{transform:translateY(-8px);border-color:var(--pink);box-shadow:0 16px 40px rgba(255,62,172,.2)}
.char-img-wrap{
  height:190px;background:linear-gradient(180deg,#fff8fd,#f7e9ff);overflow:hidden;position:relative;display:flex;align-items:flex-start;justify-content:center
}
.char-img-wrap img{
  width:auto;height:145px;max-width:90%;object-fit:contain;object-position:top center;margin-top:14px;transition:transform .3s;position:static
}
.char-showcase:hover .char-img-wrap img{transform:scale(1.05)}
.char-info{padding:1rem 1.2rem}
.char-name{font-family:'Fredoka One',cursive;font-size:1.05rem;color:var(--dark);margin-bottom:.2rem}
.char-role{font-size:.78rem;font-weight:700;color:var(--purple);line-height:1.4}
.char-badge{
  position:absolute;top:10px;right:10px;width:32px;height:32px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;border:2px solid var(--white);box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:2
}

.bottom-section{
  background:var(--bg);display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;padding:5rem
}
.new-label{color:var(--pink)!important}
.new-list{list-style:none;margin-top:1.5rem;display:flex;flex-direction:column;gap:.9rem;padding-left:0}
.new-item{
  display:flex;align-items:center;gap:1rem;background:var(--white);border-radius:16px;padding:1rem 1.2rem;cursor:pointer;
  color:var(--dark);border:2px solid rgba(123,47,190,.1);transition:all .18s;box-shadow:0 2px 8px rgba(123,47,190,.06)
}
.new-item:hover{transform:translateX(6px);border-color:var(--pink);box-shadow:0 4px 20px rgba(255,62,172,.15)}
.new-icon{
  width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0
}
.ni1{background:linear-gradient(135deg,#FFE0EC,#FFC8E5)}
.ni2{background:linear-gradient(135deg,#D5F0FF,#B0E0FF)}
.ni3{background:linear-gradient(135deg,#FFF5CC,#FFE87A)}
.new-meta{flex:1}
.new-title{font-weight:800;font-size:.88rem;margin-bottom:.15rem}
.new-date{font-size:.73rem;font-weight:600;color:#888}
.new-badge{
  font-size:.63rem;font-weight:900;background:var(--pink);color:var(--white);border-radius:50px;padding:.15rem .55rem;letter-spacing:.04em
}

.newsletter-card{
  border-radius:28px;background:linear-gradient(145deg,#1E0040,#2A005C);padding:2.5rem;position:relative;overflow:hidden;
  border:2px solid rgba(168,85,247,.3);box-shadow:0 20px 60px rgba(30,0,64,.4)
}
.newsletter-card::before{
  content:'';position:absolute;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(255,62,172,.15),transparent);bottom:-100px;right:-80px;pointer-events:none
}
.nl-stars{position:absolute;top:1rem;right:1.5rem;font-size:1.2rem;color:var(--gold);opacity:.7;animation:twinkle 2.5s infinite}
@keyframes twinkle{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}
.nl-chars{display:flex;justify-content:center;margin-bottom:1.5rem}
.nl-char{
  width:58px;height:58px;border-radius:50%;border:3px solid var(--purple-light);overflow:hidden;margin-left:-10px;background:rgba(255,255,255,.1);
  display:flex;align-items:center;justify-content:center;font-size:1.6rem
}
.nl-char:first-child{margin-left:0}
.newsletter-card h3{
  font-family:'Fredoka One',cursive;font-size:1.7rem;color:var(--white);text-align:center;margin-bottom:.5rem;text-shadow:0 0 20px rgba(255,62,172,.4)
}
.newsletter-card h3 span{color:var(--gold)}
.newsletter-card p{text-align:center;font-weight:700;color:rgba(255,255,255,.55);font-size:.88rem;margin-bottom:1.5rem;line-height:1.5}
.email-field{
  width:100%;padding:.8rem 1.2rem;background:rgba(255,255,255,.08);border:1.5px solid rgba(168,85,247,.4);border-radius:50px;color:var(--white);
  font-family:'Nunito',sans-serif;font-weight:700;font-size:.9rem;outline:none;margin-bottom:.75rem;transition:border-color .2s
}
.email-field::placeholder{color:rgba(255,255,255,.35)}
.email-field:focus{border-color:var(--pink)}
.sub-btn{
  width:100%;padding:.85rem;background:linear-gradient(135deg,var(--pink),var(--purple));color:var(--white);border:none;border-radius:50px;
  font-family:'Nunito',sans-serif;font-weight:900;font-size:1rem;cursor:pointer;box-shadow:0 4px 20px rgba(255,62,172,.4),inset 0 1px 0 rgba(255,255,255,.2);
  transition:all .2s;letter-spacing:.02em
}
.sub-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(255,62,172,.6)}

footer{background:#180028;padding:2.8rem 1.5rem 1rem;border-top:1px solid rgba(168,85,247,.25)}
.footer-inner{
  max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:start
}
.footer-brand{padding-top:.2rem}
.footer-logo{
  font-family:'Georgia','Times New Roman',serif;font-size:2rem;font-weight:700;line-height:1;margin-bottom:.45rem
}
.footer-logo .fk{color:#ff4db8}
.footer-logo .fe{color:#ffd000}
.footer-tag{color:rgba(255,255,255,.6);font-size:.92rem;font-weight:600;line-height:1.5}
.footer-tag .tag-star{color:#d4a017;margin-left:.2rem}
.footer-links-wrap{min-width:580px}
.footer-links-box{
  background:rgba(255,255,255,.02);border-radius:18px;box-shadow:0 0 28px rgba(123,47,190,.18);padding:.8rem 1.3rem .65rem
}
.footer-links-row{
  display:flex;justify-content:space-between;align-items:center;gap:1.2rem;flex-wrap:wrap;border-bottom:3px solid #b84cff;padding-bottom:.25rem
}
.footer-links-row a{
  color:rgba(255,255,255,.72);font-size:.98rem;font-weight:700;transition:color .2s ease,transform .2s ease;white-space:nowrap
}
.footer-links-row a:hover{color:#fff;transform:translateY(-1px)}
.footer-links-row .support-link{color:#f1dfb0}
.footer-star-row{display:flex;justify-content:center;gap:.5rem;margin:2.3rem 0 1rem;flex-wrap:wrap}
.footer-star-row span{color:#b8860b;font-size:.7rem;opacity:.9;animation:footerTwinkle 2.2s infinite ease-in-out}
.footer-star-row span:nth-child(2n){animation-delay:.25s}
.footer-star-row span:nth-child(3n){animation-delay:.5s}
.footer-star-row span:nth-child(4n){animation-delay:.75s}
@keyframes footerTwinkle{0%,100%{opacity:.35;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-2px) scale(1.08)}}
.footer-copy{
  max-width:1280px;margin:0 auto;border-top:1px solid rgba(255,255,255,.08);padding-top:1.35rem;text-align:center;color:rgba(255,255,255,.32);font-size:.95rem;font-weight:600
}
.footer-copy .heart{color:#8b2d4f}

@media (max-width:1100px){
  .cards-row{grid-template-columns:repeat(3,1fr)}
  .chars-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:960px){
  .hero{grid-template-columns:1fr;padding:3rem 1.5rem;text-align:center}
  .hero-left{display:flex;flex-direction:column;align-items:center}
  .hero-sub{max-width:100%}
  .hero-right{margin-top:2.5rem}
  .ke-homepage section,.chars-section,.bottom-section{padding:3rem 1.5rem}
  .cards-row{grid-template-columns:repeat(2,1fr)}
  .feat-grid{grid-template-columns:1fr}
  .chars-grid{grid-template-columns:repeat(2,1fr)}
  .bottom-section{grid-template-columns:1fr;gap:2.5rem}
  .characters-stage{max-width:430px;height:300px}
  .char-c1{left:0;width:80px;height:190px}
  .char-c2{left:70px;width:100px;height:230px}
  .char-c3{left:145px;width:80px;height:190px}
  .char-c4{left:215px;width:100px;height:230px}
  .char-c5{left:290px;width:80px;height:190px}
  .footer-inner{grid-template-columns:1fr;gap:1.8rem;text-align:center}
  .footer-links-wrap{min-width:0;width:100%}
  .footer-links-box{padding:1rem}
  .footer-links-row{justify-content:center;gap:.9rem 1.3rem}
  .footer-logo{font-size:1.7rem}
  .footer-tag{font-size:.9rem;max-width:none;margin:0 auto}
}
@media (max-width:640px){
  .hero-title-line1,.hero-title-line2{font-size:2.4rem}
  .hero-badge{font-size:.72rem}
  .hero-sub{font-size:.98rem}
  .hero-btns{width:100%;justify-content:center}
  .btn{width:100%;justify-content:center;padding:.85rem 1rem}
  .cards-row,.chars-grid{grid-template-columns:1fr}
  .characters-stage{transform:scale(.78);transform-origin:center bottom;height:240px}
  .char-showcase{max-width:280px}
  .char-img-wrap{height:170px}
  .char-img-wrap img{height:128px;margin-top:12px}
  .sec-title{font-size:1.9rem}
  .newsletter-card{padding:2rem 1.2rem}
  footer{padding:2.3rem 1rem 1rem}
  .footer-links-row{flex-direction:column;align-items:center;border-bottom:2px solid #b84cff;gap:.7rem}
  .footer-links-row a{font-size:.95rem}
  .footer-logo{font-size:1.5rem}
  .footer-copy{font-size:.82rem;line-height:1.5}
}


/* ====== SITE HEADER ====== */
.ke-site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(18,0,42,0.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(168,85,247,0.25);
}
.ke-header-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0.9rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.ke-brand-link {
  text-decoration: none;
  font-family: 'Fredoka One', cursive;
  font-size: 1.65rem;
  line-height: 1;
}
.ke-brand-left { color: var(--pink); text-shadow: 0 0 10px rgba(255,62,172,.4); }
.ke-brand-right { color: var(--gold); text-shadow: 0 0 10px rgba(255,208,0,.35); }
.ke-main-nav { display: block; }
.ke-menu {
  list-style: none;
  display: flex;
  align-items: center;
  gap: .45rem;
  margin: 0;
  padding: 0;
}
.ke-menu li { margin: 0; }
.ke-menu a {
  color: rgba(255,255,255,.82);
  text-decoration: none;
  font-weight: 800;
  font-size: .9rem;
  padding: .55rem .95rem;
  border-radius: 999px;
  display: inline-block;
  transition: .2s ease;
}
.ke-menu a:hover,
.ke-menu .current-menu-item > a,
.ke-menu .current_page_item > a {
  color: #fff;
  background: rgba(255,255,255,.08);
  box-shadow: inset 0 0 0 1px rgba(168,85,247,.35);
}
.ke-menu-toggle {
  display: none;
  border: 0;
  background: linear-gradient(135deg, var(--pink), var(--purple));
  color: #fff;
  border-radius: 12px;
  padding: .55rem .75rem;
  font-size: 1.1rem;
  font-weight: 900;
  cursor: pointer;
}
.ke-site-main { min-height: 60vh; }
.ke-default-page {
  max-width: 980px;
  margin: 0 auto;
  padding: 3rem 1.25rem;
}
.ke-page-title {
  font-family: 'Fredoka One', cursive;
  font-size: clamp(2rem, 4vw, 3rem);
  margin-bottom: 1rem;
}
.ke-page-body { line-height: 1.7; }

@media (max-width: 960px) {
  .ke-menu-toggle { display: inline-block; }
  .ke-main-nav { display: none; width: 100%; }
  .ke-main-nav.is-open { display: block; }
  .ke-header-inner { flex-wrap: wrap; }
  .ke-menu {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    padding-top: .5rem;
  }
  .ke-menu a { width: 100%; text-align: center; }
}


.ke-page-hero{background:linear-gradient(145deg,#12002A 0%,#1E0040 45%,#2A005C 100%);padding:2.4rem 1.25rem;border-bottom:1px solid rgba(168,85,247,.22)}
.ke-page-hero-inner{max-width:980px;margin:0 auto}
.ke-page-kicker{display:inline-block;background:rgba(255,208,0,.12);border:1px solid rgba(255,208,0,.4);color:var(--gold);padding:.35rem .8rem;border-radius:999px;font-size:.75rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem}
.ke-page-hero .ke-page-title{color:#fff;margin:0 0 .45rem}
.ke-page-subtitle{color:rgba(255,255,255,.7);font-weight:700;max-width:700px;line-height:1.6}
.ke-default-page{max-width:980px;margin:0 auto;padding:2.25rem 1.25rem 3rem}
.ke-page-card{background:#fff;border:1px solid rgba(123,47,190,.12);border-radius:24px;padding:1.5rem;box-shadow:0 12px 40px rgba(123,47,190,.08)}
.ke-page-body > *:first-child{margin-top:0}
.ke-page-body .wp-block-image img,.ke-page-body img{border-radius:18px}
.ke-page-body a:not(.wp-block-button__link){color:var(--purple);font-weight:800}
.ke-page-body .wp-block-button__link{border-radius:999px;font-weight:900}
.ke-page-body h2,.ke-page-body h3{font-family:'Fredoka One',cursive;color:var(--dark)}
@media (max-width:640px){.ke-page-hero{padding:1.8rem 1rem}.ke-page-card{padding:1rem}}

/* ── WIDE CONTENT FIX ── */
.ke-site-main,
.ke-site-main .ke-default-page,
.ke-site-main .ke-page-card {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* ── WIDE CONTENT FIX ── */
.ke-site-main,
.ke-site-main .ke-default-page,
.ke-site-main .ke-page-card {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
