/*
Theme Name: KIDO Uganda
Theme URI: https://kidouganda.org/
Author: KIDO Uganda
Description: KIDO Uganda community-focused NGO website theme.
Version: 1.17.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: kido-uganda
*/

:root{--green:#0a6b3b;--green-deep:#063f2a;--green-soft:#eef8f2;--gold:#b8892e;--gold-soft:#f7efd9;--ink:#10271e;--muted:#63756c;--line:#dbe8e0;--white:#fff;--surface:#f7faf8;--shadow:0 22px 60px rgba(5,54,34,.10);--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,"Segoe UI",Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff}body.no-scroll{overflow:hidden}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}.container{width:min(var(--max),92%);margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.76rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--green)}.eyebrow:before{content:"";width:30px;height:2px;background:var(--gold)}.section{padding:96px 0}.section.alt{background:var(--surface)}.section-head{max-width:760px;margin-bottom:44px}.section-head h2{font-size:clamp(2rem,4vw,3.15rem);line-height:1.08;letter-spacing:-.035em;margin:10px 0 16px}.section-head p{color:var(--muted);font-size:1.03rem}.topbar{background:var(--green-deep);color:#dceee5;font-size:.82rem}.topbar-inner{min-height:38px;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar a{color:#fff;font-weight:700}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,232,224,.85)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;object-fit:contain}.brand-text strong{display:block;color:var(--green);font-size:1.04rem;letter-spacing:.04em}.brand-text small{display:block;color:#7a8b83;font-size:.68rem;letter-spacing:.06em}.navlinks{display:flex;align-items:center;gap:22px;font-size:.9rem;font-weight:750;color:#315347}.navlinks a{padding:28px 0;position:relative}.navlinks a:after{content:"";position:absolute;left:0;right:0;bottom:20px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:.2s}.navlinks a:hover:after,.navlinks a.active:after{transform:scaleX(1)}.nav-cta{padding:11px 16px!important;background:var(--green);color:#fff!important;border-radius:11px}.nav-cta:after{display:none}.menu{display:none;border:0;background:transparent;color:var(--green);font-size:1.65rem}.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#f3faf6 0%,#fff 55%,#edf7f1 100%);padding:78px 0 70px}.hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(10,107,59,.08);border-radius:50%;right:-190px;top:-190px}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:70px;align-items:center}.hero h1{font-size:clamp(3.1rem,6vw,5.5rem);line-height:.98;letter-spacing:-.055em;margin:16px 0 24px;max-width:760px}.hero h1 span{color:var(--green)}.hero-lead{font-size:1.18rem;color:var(--muted);max-width:690px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 19px;border-radius:12px;font-weight:850;border:1.5px solid var(--green);transition:.2s;cursor:pointer}.btn.primary{background:var(--green);color:#fff}.btn.primary:hover{background:var(--green-deep);transform:translateY(-1px)}.btn.ghost{color:var(--green);background:#fff}.btn.ghost:hover{background:var(--green-soft)}.hero-media{position:relative}.hero-photo{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);min-height:530px;background:#dcebe2}.hero-photo img{width:100%;height:530px;object-fit:cover}.hero-badge{position:absolute;left:-24px;bottom:28px;background:#fff;border:1px solid var(--line);padding:17px 20px;border-radius:17px;box-shadow:var(--shadow);max-width:260px}.hero-badge strong{display:block;color:var(--green);font-size:1.05rem}.hero-badge span{color:var(--muted);font-size:.82rem}.trust-strip{background:#fff;border-bottom:1px solid var(--line)}.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:1px}.trust-item{padding:22px 16px;text-align:center;border-right:1px solid var(--line)}.trust-item:last-child{border-right:0}.trust-item strong{display:block;color:var(--green);font-size:1.02rem}.trust-item span{font-size:.78rem;color:var(--muted)}.intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.intro-copy h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.08;margin:10px 0}.intro-copy p{color:var(--muted);font-size:1.05rem}.values{display:grid;grid-template-columns:1fr 1fr;gap:15px}.value{padding:21px;border:1px solid var(--line);border-radius:17px;background:#fff}.value strong{display:block;margin-bottom:5px}.value span{font-size:.9rem;color:var(--muted)}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.program-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:28px;min-height:255px;transition:.25s;position:relative;overflow:hidden}.program-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#c7ddd0}.program-no{font-size:.74rem;font-weight:900;color:var(--gold);letter-spacing:.13em}.program-card h3{font-size:1.32rem;line-height:1.2;margin:15px 0 10px}.program-card p{color:var(--muted);font-size:.92rem}.arrow{position:absolute;right:24px;bottom:22px;color:var(--green);font-weight:900}.featured{background:var(--green-deep);color:#fff;border-radius:30px;overflow:hidden;display:grid;grid-template-columns:1.03fr .97fr;min-height:480px}.featured-copy{padding:52px}.featured-copy .eyebrow{color:#d9eee3}.featured-copy h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.08;margin:15px 0}.featured-copy p{color:#cce1d7}.tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.tag{padding:6px 10px;border:1px solid rgba(255,255,255,.2);border-radius:999px;font-size:.76rem;color:#e1f0e9;background:rgba(255,255,255,.06)}.featured-photo{min-height:100%;background:#d8e9df}.featured-photo img{width:100%;height:100%;object-fit:cover}.story-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}.story-main{position:relative;border-radius:22px;overflow:hidden;min-height:460px}.story-main img{width:100%;height:460px;object-fit:cover}.story-overlay{position:absolute;inset:auto 0 0;padding:28px;background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff}.story-overlay h3{margin:6px 0;font-size:1.55rem}.story-overlay p{margin:0;color:#e4ece8;font-size:.9rem}.story-side{display:grid;grid-template-columns:1fr 1fr;gap:18px}.story-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}.story-card img{height:190px;width:100%;object-fit:cover}.story-card div{padding:16px}.story-card strong{font-size:.94rem}.story-card p{color:var(--muted);font-size:.8rem;margin:6px 0 0}.leader{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center}.leader-photo{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:20px}.leader-photo img{width:100%;border-radius:19px}.leader-copy h2{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.04;margin:12px 0 6px}.leader-role{font-weight:900;color:var(--green);margin-bottom:18px}.leader-copy p{color:var(--muted)}.quote{border-left:3px solid var(--gold);padding:15px 0 15px 20px;margin-top:24px;color:#38564a;font-weight:650}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.approach-card{background:#fff;border:1px solid var(--line);padding:25px;border-radius:18px}.approach-card .num{font-size:2rem;font-weight:900;color:#c99e4a}.approach-card h3{margin:7px 0}.approach-card p{color:var(--muted);font-size:.86rem}.gallery-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.filter{border:1px solid var(--line);background:#fff;color:#456157;border-radius:999px;padding:8px 13px;font-weight:750;cursor:pointer}.filter.active,.filter:hover{background:var(--green);color:#fff;border-color:var(--green)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery figure{margin:0;border:1px solid var(--line);border-radius:19px;overflow:hidden;background:#fff;cursor:pointer}.gallery img{width:100%;height:245px;object-fit:cover;transition:.3s}.gallery figure:hover img{transform:scale(1.035)}.gallery figcaption{padding:14px 15px}.gallery figcaption strong{display:block;font-size:.9rem}.gallery figcaption span{font-size:.77rem;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat{padding:22px;border-radius:17px;background:var(--green-soft);border:1px solid #d9ecdf}.stat strong{display:block;font-size:1.45rem;color:var(--green)}.stat span{font-size:.8rem;color:var(--muted)}.cta{background:linear-gradient(120deg,var(--green-deep),var(--green));color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{font-size:clamp(2rem,4vw,3rem);line-height:1.08;margin:8px 0}.cta p{color:#d5e9df;max-width:720px}.cta .btn{border-color:#fff;background:#fff;color:var(--green)}.footer{background:#08291c;color:#cbded5;padding:58px 0 22px}.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr .9fr;gap:35px}.footer h3{color:#fff;font-size:.92rem}.footer p,.footer a{color:#a9c0b6;font-size:.84rem}.footer a{display:block;margin:8px 0}.footer-brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:900}.footer-brand img{width:48px;height:48px;background:#fff;border-radius:50%}.copyright{border-top:1px solid #244438;margin-top:36px;padding-top:18px;color:#8fa89e;font-size:.76rem;display:flex;justify-content:space-between;gap:20px}.page-hero{background:linear-gradient(135deg,#f0f8f3,#fff);padding:75px 0 70px}.page-hero h1{font-size:clamp(2.7rem,5vw,4.4rem);line-height:1.02;margin:12px 0}.page-hero p{color:var(--muted);font-size:1.1rem;max-width:760px}.content-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:55px}.content h2{font-size:2rem;line-height:1.15;margin-top:0}.content h3{margin-top:32px}.content p,.content li{color:var(--muted)}.side-card{border:1px solid var(--line);border-radius:20px;padding:25px;background:var(--surface);position:sticky;top:105px}.side-card h3{margin-top:0}.side-card a{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-weight:750;color:#315447}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}.contact-panel{border:1px solid var(--line);border-radius:22px;padding:28px}.contact-panel.dark{background:var(--green-deep);color:#fff}.contact-panel.dark p{color:#c8dfd4}.contact-list{display:grid;gap:14px;margin-top:25px}.contact-item strong{display:block;color:var(--gold)}.form{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field label{display:block;font-size:.8rem;font-weight:850;margin-bottom:6px}.field input,.field textarea{width:100%;border:1px solid #cfded6;border-radius:11px;padding:12px 13px;outline:none}.field input:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(10,107,59,.08)}.field textarea{min-height:150px;resize:vertical}.note{font-size:.78rem;color:var(--muted)}.empty{padding:45px;border:1px dashed #c8d9d0;border-radius:20px;background:var(--surface);text-align:center}.empty h3{margin-top:0}.empty p{color:var(--muted);max-width:600px;margin:0 auto}.modal{position:fixed;inset:0;background:rgba(3,20,13,.88);display:none;align-items:center;justify-content:center;padding:30px;z-index:200}.modal.open{display:flex}.modal-inner{max-width:1100px;width:100%;position:relative}.modal img{max-height:82vh;width:auto;max-width:100%;margin:auto;border-radius:14px}.modal-caption{color:#fff;text-align:center;margin-top:12px}.modal-close{position:absolute;right:-5px;top:-45px;border:0;background:transparent;color:#fff;font-size:2rem;cursor:pointer}.reveal{opacity:0;transform:translateY(20px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}

/* Mission, Vision, Core Values & Theme */
.purpose-section{padding-top:10px;background:#f7fbfa}
.purpose-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:1100px;margin:0 auto;box-shadow:0 18px 45px rgba(10,50,40,.12);border-radius:18px;overflow:hidden}
.purpose-card{position:relative;min-height:220px;padding:28px 24px;color:#fff;display:flex;flex-direction:column;justify-content:flex-start}
.purpose-card h3{margin:0 0 12px;font-size:1.15rem;letter-spacing:.01em}
.purpose-card p{margin:0;line-height:1.6;font-size:.91rem}
.purpose-card span{display:block;margin-top:14px;font-size:.8rem;line-height:1.45;opacity:.9}
.purpose-icon{font-size:1.8rem;line-height:1;margin-bottom:22px;color:#fff;opacity:.95}
.purpose-vision{background:linear-gradient(145deg,#116b55,#17866b)}
.purpose-mission{background:linear-gradient(145deg,#166fa0,#2588bb)}
.purpose-values{background:linear-gradient(145deg,#69528e,#8469aa)}
.purpose-theme{background:linear-gradient(145deg,#b06b3d,#cf8550)}
@media(max-width:980px){.purpose-grid{grid-template-columns:repeat(2,1fr);border-radius:16px}.purpose-card{min-height:200px}}
@media(max-width:720px){.purpose-grid{grid-template-columns:1fr}.purpose-card{min-height:auto;padding:25px 22px}.purpose-icon{margin-bottom:16px}}

@media(max-width:980px){.navlinks{gap:13px}.navlinks a{font-size:.82rem}.hero-grid,.intro,.featured,.leader,.story-grid,.content-grid,.contact-grid{grid-template-columns:1fr}.hero-media{order:-1}.hero-photo,.hero-photo img{min-height:390px;height:390px}.hero-badge{left:20px}.program-grid{grid-template-columns:1fr 1fr}.approach-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.featured-photo{min-height:350px}.featured-copy{padding:38px}.side-card{position:static}.footer-grid{grid-template-columns:1fr 1fr}.cta-inner{display:block}.trust{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}}
@media(max-width:720px){.topbar{display:none}.nav{height:72px}.brand img{width:52px;height:52px}.menu{display:block}.navlinks{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:10px 4%;box-shadow:0 20px 30px rgba(0,0,0,.06)}.navlinks.open{display:grid}.navlinks a{padding:12px 4px}.navlinks a:after{display:none}.hero{padding:55px 0}.hero h1{font-size:3rem}.section{padding:70px 0}.program-grid,.gallery,.values,.story-side,.form-row{grid-template-columns:1fr}.approach-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.trust{grid-template-columns:1fr 1fr}.trust-item{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-item:nth-child(2),.trust-item:nth-child(4){border-right:0}.story-main,.story-main img{min-height:360px;height:360px}.footer-grid{grid-template-columns:1fr}.copyright{display:block}.copyright span{display:block;margin-top:6px}.page-hero{padding:55px 0}.page-hero h1{font-size:2.8rem}}

/* KIDO homepage refinements */
.hero h1 .hero-word{display:block;margin:0 0 14px;letter-spacing:-.025em}.hero h1 .hero-word:last-child{margin-bottom:0;color:var(--green)}
.trust{gap:18px;padding-top:22px;padding-bottom:22px}.trust-item{position:relative;overflow:hidden;border:1px solid #d8e7df!important;border-radius:18px;background:linear-gradient(145deg,#ffffff,#f1f8f4);padding:25px 18px;transition:transform .3s ease,box-shadow .3s ease,background .3s ease,border-color .3s ease}.trust-item:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(10,107,59,.08),rgba(199,158,74,.10));opacity:0;transition:opacity .3s ease}.trust-item:hover{transform:translateY(-6px);box-shadow:0 18px 35px rgba(9,64,40,.12);background:linear-gradient(145deg,#eaf6ef,#fff);border-color:#a9cdb9!important}.trust-item:hover:before{opacity:1}.trust-item strong,.trust-item span{position:relative;z-index:1}.trust-item strong{font-size:1.08rem;margin-bottom:7px}.trust-item span{line-height:1.5}
@media(max-width:980px){.trust{gap:14px}}
@media(max-width:720px){.hero h1 .hero-word{margin-bottom:10px}.trust{gap:12px;padding-left:4%;padding-right:4%}.trust-item{border-right:1px solid #d8e7df!important}}

/* Homepage hero and slider redesign */
.hero{padding:72px 0 78px}
.hero-centered{text-align:center;max-width:1180px}
.hero-heading{max-width:980px;margin:0 auto 38px}
.hero-heading .eyebrow{justify-content:center}
.hero-heading .eyebrow:before{display:none}
.hero h1{font-size:clamp(3.2rem,7vw,6.2rem);line-height:.98;letter-spacing:-.05em;margin:18px auto 24px;max-width:1000px}
.hero h1 span{display:block;margin:0 0 9px}
.hero h1 span:last-child{margin:0;color:var(--green)}
.hero-lead{margin:0 auto;max-width:820px}
.hero-heading .actions{justify-content:center}
.hero-slider{position:relative;max-width:1100px;margin:0 auto;border-radius:30px;overflow:hidden;background:#dcebe2;box-shadow:0 24px 60px rgba(9,64,40,.15);aspect-ratio:16/7}
.slider-track,.slide{position:absolute;inset:0}
.slide{opacity:0;transition:opacity .7s ease}
.slide.active{opacity:1}
.slide img{width:100%;height:100%;object-fit:cover}
.hero-slider:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.2));pointer-events:none}
.slider-btn{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.86);color:var(--green);font-size:2rem;line-height:1;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.slider-btn:hover{background:#fff;transform:translateY(-50%) scale(1.05)}
.slider-btn.prev{left:18px}.slider-btn.next{right:18px}
.slider-dots{position:absolute;z-index:3;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:8px}
.slider-dot{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.55);padding:0;cursor:pointer}.slider-dot.active{background:#fff;transform:scale(1.25)}
.leader-stack{display:grid;gap:28px;max-width:1000px;margin:0 auto}
.leader-profile{display:grid;grid-template-columns:320px 1fr;gap:40px;align-items:center;padding:28px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,#fff,#f4faf6);box-shadow:0 12px 30px rgba(9,64,40,.07)}
.leader-profile .leader-photo{padding:12px;border-radius:22px}.leader-profile .leader-photo img{width:100%;height:360px;object-fit:cover;border-radius:16px}
.leader-profile .leader-copy h2{font-size:clamp(1.8rem,3vw,2.7rem)}
@media(max-width:720px){.hero{padding:54px 0 60px}.hero h1{font-size:3rem}.hero-slider{aspect-ratio:4/3;border-radius:22px}.slider-btn{width:38px;height:38px}.leader-profile{grid-template-columns:1fr;gap:22px;padding:20px}.leader-profile .leader-photo img{height:auto;max-height:420px;object-fit:cover}.hero-heading .actions{justify-content:center}}

/* Refined compact homepage heading */
.hero-title-inline{display:flex;align-items:center;justify-content:center;gap:22px;white-space:nowrap;font-size:clamp(1.55rem,3vw,2.35rem)!important;line-height:1.15!important;letter-spacing:-.025em!important;font-weight:750!important;margin:14px auto 22px!important;max-width:none!important}
.hero-title-inline span{display:inline!important;margin:0!important;color:#244b3b!important}
.hero-title-inline span:last-child{color:var(--green)!important}
.hero-title-inline i{display:block;width:1px;height:1.35em;background:#c9d8d0;flex:0 0 1px}
@media(max-width:720px){.hero-title-inline{font-size:1.15rem!important;gap:11px;letter-spacing:-.02em!important}.hero-title-inline i{height:1.15em}}

/* Refined homepage hero palette */
.hero{
  position:relative;
  overflow:hidden;
  padding:70px 0 82px;
  background:
    radial-gradient(circle at 15% 15%, rgba(201,164,92,.16), transparent 32%),
    radial-gradient(circle at 88% 80%, rgba(38,111,104,.16), transparent 36%),
    linear-gradient(135deg,#f8f4ea 0%,#eef5f2 52%,#e8f0ee 100%);
}
.hero:before{
  content:"";
  position:absolute;
  width:420px;height:420px;
  right:-180px;top:-210px;
  border:1px solid rgba(23,59,58,.08);
  border-radius:50%;
  pointer-events:none;
}
.hero:after{
  content:"";
  position:absolute;
  width:300px;height:300px;
  left:-170px;bottom:-180px;
  border-radius:50%;
  background:rgba(201,164,92,.08);
  pointer-events:none;
}
.hero-centered{position:relative;z-index:1}
.hero-heading .eyebrow{color:#526c65}
.hero-title-inline span:first-child{color:#173b3a!important}
.hero-title-inline span:last-child{color:#216d67!important}
.hero-title-inline i{background:#c9a45c}
.hero-lead{color:#536761}
.hero-slider{
  border:8px solid rgba(255,255,255,.72);
  box-shadow:0 28px 70px rgba(23,59,58,.18),0 8px 22px rgba(23,59,58,.08);
}
.slider-btn{color:#173b3a}
@media(max-width:720px){.hero{padding:52px 0 60px}}

/* Final visual treatment: premium blue header and hero */
.topbar{background:linear-gradient(135deg,#071a3d,#0b2f6f);color:#dce8ff;border-bottom:1px solid rgba(255,255,255,.10)}
.topbar a{color:#fff}
.site-header{background:linear-gradient(135deg,#081b43 0%,#0d3b82 58%,#125a78 100%);border-bottom:1px solid rgba(242,193,78,.42);box-shadow:0 10px 28px rgba(3,18,52,.22);backdrop-filter:blur(14px)}
.nav{min-height:82px}
.brand{padding:7px 13px 7px 8px;border-radius:16px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);box-shadow:0 8px 24px rgba(0,0,0,.14)}
.brand img{background:#fff;border-radius:12px;padding:3px;box-shadow:0 4px 14px rgba(0,0,0,.16)}
.brand-text strong{color:#fff}.brand-text small{color:#d8e6ff}
.navlinks{color:#fff}.navlinks a{color:#f5f8ff}.navlinks a:after{background:#f2c14e}.nav-cta{background:linear-gradient(135deg,#f2c14e,#d9a52e)!important;color:#102448!important;box-shadow:0 7px 18px rgba(0,0,0,.16)}
.nav-cta:hover{transform:translateY(-1px)}
.menu{color:#fff}
.hero{background:linear-gradient(135deg,#071a43 0%,#0d3c86 52%,#145f7b 100%);color:#fff;padding:58px 0 66px}
.hero:before{border-color:rgba(255,255,255,.12)}
.hero:after{background:radial-gradient(circle at 15% 20%,rgba(242,193,78,.12),transparent 30%),radial-gradient(circle at 85% 75%,rgba(255,255,255,.08),transparent 32%)}
.hero-centered{position:relative;z-index:1}
.hero-heading .eyebrow{color:#dbe7ff}.hero-heading .eyebrow:before{background:#f2c14e}
.hero-title-inline span:first-child,.hero-title-inline span:last-child{color:#fff!important}
.hero-title-inline i{background:#f2c14e}
.hero-lead{color:#dce7f8}
.hero-slider{box-shadow:0 26px 65px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.18)}
.program-card{background:linear-gradient(145deg,#fff,#f5f9ff);transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease}
.program-card:hover{background:linear-gradient(145deg,#0b3d86,#0f6b82);color:#fff;border-color:#0b3d86;box-shadow:0 20px 42px rgba(8,46,105,.25);transform:translateY(-7px)}
.program-card:hover p,.program-card:hover .arrow,.program-card:hover ul,.program-card:hover ul li{color:#f4f8ff!important}.program-card:hover h3{color:#fff!important}.program-card:hover .program-no{color:#f2c14e}
@media(max-width:720px){.site-header{background:linear-gradient(135deg,#081b43,#0d3b78)}.brand{padding:5px 8px}.navlinks{background:#0a2555;border-bottom:1px solid rgba(242,193,78,.35);box-shadow:0 20px 35px rgba(0,0,0,.22)}.navlinks a{color:#fff}.hero{padding:46px 0 54px}.hero-title-inline{color:#fff!important}}

/* Slightly larger homepage slider */
.hero-slider{max-width:1200px;aspect-ratio:16/7.4}
@media(max-width:720px){.hero-slider{aspect-ratio:4/3}}

/* Full width hero slideshow with heading layered above the images */
.hero{position:relative;overflow:hidden;padding:0;min-height:520px;background:#082f63;display:flex;align-items:stretch}
.hero-centered{position:relative;z-index:2;width:100%;max-width:none;min-height:520px;display:flex;align-items:center;justify-content:center;padding:88px 5% 105px}
.hero-slider{position:absolute;z-index:0;inset:0;max-width:none;width:100%;height:100%;aspect-ratio:auto;border-radius:0;margin:0;background:#123b70;box-shadow:none;border:0;overflow:hidden}
.hero-slider:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,27,58,.82) 0%,rgba(7,45,91,.68) 45%,rgba(7,45,91,.42) 100%),linear-gradient(180deg,rgba(4,27,58,.34),rgba(4,27,58,.48));pointer-events:none;z-index:1}
.slider-track,.slide{position:absolute;inset:0}
.slide img{width:100%;height:100%;object-fit:cover}
.hero-heading{position:relative;z-index:3;max-width:1050px;margin:0 auto;text-shadow:0 2px 14px rgba(0,0,0,.28)}
.hero-heading .eyebrow{color:#f4d47a}
.hero-title-inline{font-size:clamp(1.55rem,3.2vw,2.45rem)!important;color:#fff!important;margin:14px auto 18px!important}
.hero-title-inline span:first-child,.hero-title-inline span:last-child{color:#fff!important}
.hero-title-inline i{background:#f2c14e}
.hero-lead{color:rgba(255,255,255,.9);max-width:780px;margin-left:auto;margin-right:auto}
.hero-heading .actions{justify-content:center}
.hero-heading .btn.ghost{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.72);backdrop-filter:blur(4px)}
.hero-heading .btn.ghost:hover{background:rgba(255,255,255,.2)}
.hero-heading .btn.primary{background:#f2c14e;color:#173b3a;border-color:#f2c14e}
.hero-heading .btn.primary:hover{background:#ffd66b}
.slider-btn{z-index:4}
.slider-dots{z-index:4}
@media(max-width:760px){.hero,.hero-centered{min-height:500px}.hero-centered{padding:78px 6% 92px}.hero-title-inline{font-size:1.18rem!important;gap:10px!important}.hero-lead{font-size:1rem}.slider-btn{width:36px;height:36px}.slider-btn.prev{left:12px}.slider-btn.next{right:12px}}

/* Refined hero image framing and lighter blue treatment */
.hero{background:linear-gradient(135deg,#164f91 0%,#2169ad 52%,#287d99 100%)}
.hero-slider{background:#2169ad}
.hero-slider:after{background:linear-gradient(90deg,rgba(7,43,84,.58) 0%,rgba(10,67,119,.48) 45%,rgba(16,83,125,.30) 100%),linear-gradient(180deg,rgba(7,43,84,.20),rgba(7,43,84,.34))}
.slide img{object-position:center 35%}
@media(max-width:760px){.slide img{object-position:center 32%}}


/* Warm, welcoming cards for homepage values and programmes */
.values .value{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.35);
  box-shadow:0 12px 28px rgba(52,38,24,.10);
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease;
}
.values .value:nth-child(1){background:linear-gradient(145deg,#f7ead2,#ead3aa)}
.values .value:nth-child(2){background:linear-gradient(145deg,#e5efe1,#cbdcc8)}
.values .value:nth-child(3){background:linear-gradient(145deg,#f3dfdf,#e5c2c2)}
.values .value:nth-child(4){background:linear-gradient(145deg,#eee5f3,#d8c7e2)}
.values .value:after,.program-card:after{
  content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-55px;bottom:-65px;
  background:rgba(255,255,255,.20);pointer-events:none;transition:transform .3s ease,opacity .3s ease;
}
.values .value:hover{
  transform:translateY(-6px);
  box-shadow:0 20px 38px rgba(52,38,24,.17);
  border-color:rgba(255,255,255,.75);
}
.values .value:nth-child(1):hover{background:linear-gradient(145deg,#e6c27d,#d3a65d)}
.values .value:nth-child(2):hover{background:linear-gradient(145deg,#b8cfb1,#91b48a)}
.values .value:nth-child(3):hover{background:linear-gradient(145deg,#d9a5a5,#c98282)}
.values .value:nth-child(4):hover{background:linear-gradient(145deg,#c7add5,#a989bd)}
.values .value:hover:after,.program-card:hover:after{transform:scale(1.35);opacity:.7}
.values .value strong,.values .value span{position:relative;z-index:1}
.values .value strong{color:#263d35}
.values .value span{color:#4d5b55}
.values .value:hover strong{color:#18271f!important}.values .value:hover span{color:#263f35!important}

.program-grid .program-card{
  border:1px solid rgba(255,255,255,.5);
  box-shadow:0 12px 28px rgba(42,37,29,.09);
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease;
}
.program-grid .program-card:nth-child(1){background:linear-gradient(145deg,#f6e6c8,#ead0a0)}
.program-grid .program-card:nth-child(2){background:linear-gradient(145deg,#e2ead9,#c9d9b8)}
.program-grid .program-card:nth-child(3){background:linear-gradient(145deg,#f2dfd3,#e5c1ae)}
.program-grid .program-card:nth-child(4){background:linear-gradient(145deg,#e8e0f0,#d1c0df)}
.program-grid .program-card:nth-child(5){background:linear-gradient(145deg,#f1e6c9,#dfcf9d)}
.program-grid .program-card:nth-child(6){background:linear-gradient(145deg,#dceae7,#b9d5cf)}
.program-grid .program-card:hover{color:#fff;border-color:rgba(255,255,255,.72);box-shadow:0 22px 42px rgba(42,37,29,.18);transform:translateY(-7px)}
.program-grid .program-card:nth-child(1):hover{background:linear-gradient(145deg,#c99a4b,#a9762e)}
.program-grid .program-card:nth-child(2):hover{background:linear-gradient(145deg,#72965f,#527845)}
.program-grid .program-card:nth-child(3):hover{background:linear-gradient(145deg,#c57d59,#a85d3d)}
.program-grid .program-card:nth-child(4):hover{background:linear-gradient(145deg,#8d6aa5,#6d4b88)}
.program-grid .program-card:nth-child(5):hover{background:linear-gradient(145deg,#b08b3f,#8d6b25)}
.program-grid .program-card:nth-child(6):hover{background:linear-gradient(145deg,#4d8d83,#347268)}
.program-grid .program-card h3,.program-grid .program-card p,.program-grid .program-card .arrow,.program-grid .program-card .program-no{position:relative;z-index:1}
.program-grid .program-card h3{color:#263d35}
.program-grid .program-card p{color:#4d5b55}
.program-grid .program-card .arrow{color:#526b5f}
.program-grid .program-card:hover h3{color:#18271f!important}.program-grid .program-card:hover p{color:#263f35!important}.program-grid .program-card:hover .arrow{color:#5b4630!important}
.program-grid .program-card:hover .program-no{color:#ffe08a!important}

/* Stronger typography for homepage warm cards */
.values .value strong{
  font-size:1.18rem;
  line-height:1.25;
  font-weight:900;
  color:#172c25;
  letter-spacing:-.01em;
}
.values .value span{
  display:block;
  margin-top:8px;
  font-size:1rem;
  line-height:1.55;
  font-weight:600;
  color:#263f35;
}
.values .value:hover strong{color:#18271f!important}.values .value:hover span{color:#263f35!important}
.program-grid .program-card h3{
  font-size:1.45rem;
  line-height:1.18;
  font-weight:900;
  letter-spacing:-.015em;
  color:#172c25;
}
.program-grid .program-card p{
  font-size:1rem;
  line-height:1.58;
  font-weight:600;
  color:#263f35;
}
.program-grid .program-card .program-no{
  font-size:.82rem;
  font-weight:950;
  color:#70521e;
}
.program-grid .program-card .arrow{
  font-size:.9rem;
  font-weight:900;
}
.program-grid .program-card:hover h3{color:#18271f!important}.program-grid .program-card:hover p{color:#263f35!important}.program-grid .program-card:hover .arrow{color:#5b4630!important}
.program-grid .program-card:hover .program-no{color:#fff0b0!important}
@media(max-width:720px){
  .values .value strong{font-size:1.12rem}
  .values .value span,.program-grid .program-card p{font-size:.96rem}
  .program-grid .program-card h3{font-size:1.32rem}
}

/* Final crisp hover polish for homepage cards */
.values .value:nth-child(1):hover{background:linear-gradient(145deg,#f2d9a5,#e6bf78)}
.values .value:nth-child(2):hover{background:linear-gradient(145deg,#d7e7cf,#b9d1ad)}
.values .value:nth-child(3):hover{background:linear-gradient(145deg,#efd0d0,#dfaaaa)}
.values .value:nth-child(4):hover{background:linear-gradient(145deg,#e4d5eb,#cdb6da)}
.values .value:hover strong{color:#172c25!important;text-shadow:none}
.values .value:hover span{color:#263f35!important;text-shadow:none}
.program-grid .program-card:nth-child(1):hover{background:linear-gradient(145deg,#f0d39c,#dfb96e)}
.program-grid .program-card:nth-child(2):hover{background:linear-gradient(145deg,#d2e2c9,#b3cda7)}
.program-grid .program-card:nth-child(3):hover{background:linear-gradient(145deg,#eccfc0,#ddb19a)}
.program-grid .program-card:nth-child(4):hover{background:linear-gradient(145deg,#dfd2e8,#c5afd5)}
.program-grid .program-card:nth-child(5):hover{background:linear-gradient(145deg,#ebd9a8,#d9c181)}
.program-grid .program-card:nth-child(6):hover{background:linear-gradient(145deg,#c9dfda,#a9cbc3)}
.program-grid .program-card:hover h3{color:#172c25!important;text-shadow:none}
.program-grid .program-card:hover p{color:#263f35!important;text-shadow:none}
.program-grid .program-card:hover .arrow{color:#5b4630!important}
.program-grid .program-card:hover .program-no{color:#70521e!important}


/* v1.5 WordPress navigation reset: wp_nav_menu uses items_wrap=%%3$s, so top-level LI elements are direct children of .navlinks. */
.site-header .navlinks,
.site-header .navlinks ul,
.site-header .navlinks li {
  list-style: none !important;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.site-header .navlinks > li,
.site-header .navlinks > .menu-item {
  display: block !important;
  list-style: none !important;
  list-style-type: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.site-header .navlinks > li::marker,
.site-header .navlinks > .menu-item::marker,
.site-header .navlinks > li::before,
.site-header .navlinks > li::after,
.site-header .navlinks > .menu-item::before,
.site-header .navlinks > .menu-item::after {
  content: none !important;
  display: none !important;
}
.site-header .navlinks ul {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
}
@media(max-width:720px){
  .site-header .navlinks > li,
  .site-header .navlinks > .menu-item { display:block !important; }
  .site-header .navlinks ul { display:grid !important; }
}

/* v1.11: true inset hero slider — equal visible margins on both sides */
.kido-home .hero-slider {
  position: absolute !important;
  z-index: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 32px !important;
  right: 32px !important;
  width: auto !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  border-radius: 26px !important;
  overflow: hidden !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.20) !important;
}
.kido-home .hero-slider .slider-track,
.kido-home .hero-slider .slide,
.kido-home .hero-slider .slide img {
  width: 100% !important;
  height: 100% !important;
}
@media (max-width: 760px) {
  .kido-home .hero-slider {
    left: 14px !important;
    right: 14px !important;
    border-radius: 20px !important;
  }
}

.form-success{color:#0a6b3b;font-weight:700}.form-error{color:#a33b2f;font-weight:700}

.form-status{padding:13px 15px;border-radius:10px;margin-top:4px;font-weight:750}.form-success{background:#e7f5ec;color:#12603a;border:1px solid #b9ddc8}.form-error{background:#fff0f0;color:#9b2525;border:1px solid #efc0c0}

/* v1.16: cleaner mobile-first homepage hero */
.mobile-label{display:none}
.hero-lead-mobile{display:none}

@media (max-width:760px){
  .hero,
  .hero-centered{
    min-height:0 !important;
  }
  .hero{
    padding:0 0 30px !important;
    display:block !important;
    background:linear-gradient(180deg,#164f91 0%,#2169ad 100%) !important;
  }
  .hero-centered{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    width:100% !important;
    padding:0 14px 0 !important;
  }
  .hero-slider{
    position:relative !important;
    inset:auto !important;
    order:1 !important;
    width:100% !important;
    height:360px !important;
    min-height:360px !important;
    aspect-ratio:auto !important;
    margin:0 !important;
    border-radius:0 0 22px 22px !important;
    box-shadow:0 12px 28px rgba(0,0,0,.18) !important;
  }
  .hero-slider:after{
    background:linear-gradient(180deg,rgba(4,27,58,.10) 0%,rgba(4,27,58,.18) 45%,rgba(4,27,58,.58) 100%) !important;
  }
  .hero-heading{
    order:2 !important;
    max-width:none !important;
    margin:0 !important;
    padding:22px 8px 0 !important;
    text-shadow:none !important;
  }
  .hero-heading .eyebrow{
    display:none !important;
  }
  .hero-title-inline{
    font-size:1.34rem !important;
    line-height:1.2 !important;
    gap:9px !important;
    margin:0 auto 14px !important;
    white-space:nowrap !important;
  }
  .hero-title-inline i{height:1.15em !important}
  .hero-lead{
    display:none !important;
  }
  .hero-lead-desktop,
  .hero-lead-mobile{
    display:none !important;
  }
  .hero-heading .actions{
    display:flex !important;
    justify-content:center !important;
    gap:10px !important;
    margin-top:0 !important;
    flex-wrap:nowrap !important;
  }
  .hero-heading .actions .btn{
    flex:1 1 0 !important;
    min-width:0 !important;
    padding:12px 8px !important;
    font-size:.88rem !important;
    border-radius:12px !important;
    white-space:nowrap !important;
  }
  .desktop-label{display:none !important}
  .mobile-label{display:inline !important}
  .slider-btn{display:none !important}
  .slider-dots{bottom:14px !important}
}

/* v1.17: balanced mobile hero layout */
@media (max-width:760px){
  .kido-home .hero{
    min-height:470px !important;
    padding:0 !important;
    background:#164f91 !important;
  }
  .kido-home .hero-centered{
    position:relative !important;
    display:block !important;
    width:100% !important;
    min-height:470px !important;
    padding:0 !important;
  }
  .kido-home .hero-slider{
    position:absolute !important;
    z-index:1 !important;
    top:0 !important;
    bottom:0 !important;
    left:14px !important;
    right:14px !important;
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    border-radius:0 0 22px 22px !important;
    box-shadow:0 12px 28px rgba(0,0,0,.18) !important;
  }
  .kido-home .hero-slider:after{
    background:linear-gradient(180deg,rgba(4,27,58,.28) 0%,rgba(4,27,58,.34) 42%,rgba(4,27,58,.62) 100%) !important;
  }
  .kido-home .hero-heading{
    position:absolute !important;
    z-index:4 !important;
    top:0 !important;
    left:14px !important;
    right:14px !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:128px 18px 0 !important;
    text-align:center !important;
    text-shadow:0 2px 10px rgba(0,0,0,.38) !important;
  }
  .kido-home .hero-heading .eyebrow{display:none !important}
  .kido-home .hero-title-inline{
    display:block !important;
    max-width:100% !important;
    margin:0 auto 28px !important;
    padding:0 !important;
    font-size:1.48rem !important;
    line-height:1.18 !important;
    letter-spacing:-.025em !important;
    white-space:normal !important;
    color:#fff !important;
  }
  .kido-home .hero-title-inline span{color:#fff !important}
  .kido-home .hero-title-inline i{
    display:inline-block !important;
    width:2px !important;
    height:1em !important;
    margin:0 7px !important;
    vertical-align:-.12em !important;
    background:#f2c14e !important;
  }
  .kido-home .hero-lead{display:none !important}
  .kido-home .hero-heading .actions{
    display:flex !important;
    width:100% !important;
    justify-content:center !important;
    gap:10px !important;
    margin:0 !important;
    flex-wrap:nowrap !important;
  }
  .kido-home .hero-heading .actions .btn{
    flex:1 1 0 !important;
    min-width:0 !important;
    padding:13px 7px !important;
    font-size:.86rem !important;
    line-height:1.1 !important;
    border-radius:12px !important;
    white-space:nowrap !important;
  }
  .kido-home .slider-btn{display:none !important}
  .kido-home .slider-dots{bottom:15px !important;z-index:5 !important}
  .kido-home .purpose-section{padding-top:64px !important}
}
