/* Homepage structure: one visual system, fewer competing layers. */
.section-kicker{gap:0;margin-bottom:22px;color:#806b49;letter-spacing:.14em}
.section-kicker>span{display:none}
.section-heading{max-width:1120px;margin:0 auto 30px;gap:48px}
.section-heading h2{max-width:600px}
.section-heading p{max-width:400px;line-height:1.6}
.services,.today,.media,.events,.about,.progress-evidence,.clarity-sessions{padding-top:68px;padding-bottom:68px}
.services{background:#f5f2eb}
.services{padding-bottom:34px}
.today{padding-top:34px}
.services .service-pathways,.evidence-grid,.media-grid,.clarity-session-grid{max-width:1120px;margin-left:auto;margin-right:auto}
.services .service-pathways{gap:16px}
.services .service-path{display:block;min-width:0;background:var(--navy);border-color:#30485f}
.services .path-title{min-height:360px;height:100%;padding:30px;display:flex;flex-direction:column;color:#fff}
.services .path-title h3{font-size:clamp(29px,3vw,40px);line-height:1.08}
.services .path-title p{color:#c5d0da;max-width:34ch}
.services .path-outcome{display:block;margin:14px 0 20px;color:#e3bd72;font-size:13px;line-height:1.45}
.services .path-title .button{width:100%;margin-top:auto}
.services .path-content{display:none}
.services .qr-panel{max-width:1120px;margin:22px auto 0}
.today{background:#f8f6f1}
.media-grid{gap:16px}
.media-grid article{min-height:245px;padding:26px}
.watch-listen-home,.events{padding-top:62px;padding-bottom:62px}
.shop,.learn{padding-top:68px;padding-bottom:68px}
.about-grid{max-width:1120px;margin-left:auto;margin-right:auto;gap:64px}
.final-cta{padding-top:76px;padding-bottom:76px}
.today .section-kicker{margin-bottom:14px}
.today .clarity-heading{margin-bottom:18px}
.today .clarity-heading>div:last-child>p{font-size:14px;line-height:1.45;margin:0 0 8px}
.daily-feature{grid-template-columns:minmax(320px,1.08fr) minmax(280px,.92fr);grid-template-rows:auto 1fr;gap:0;margin-bottom:0}
.daily-poster{grid-row:1 / span 2}
.clarity-clock{display:flex;align-items:center;justify-content:center;gap:20px;padding:28px 26px 8px;background:#102a43}
.clock-face{position:relative;width:164px;height:164px;border:1px solid rgba(227,189,114,.72);border-radius:50%;background:radial-gradient(circle at center,#102a43 0 56%,transparent 57%),repeating-conic-gradient(from -90deg,rgba(255,255,255,.16) 0deg 1deg,transparent 1deg 15deg),conic-gradient(from -90deg,#d7a84a 0deg 120deg,#8faebe 120deg 210deg,#274861 210deg 360deg);box-shadow:inset 0 0 0 9px #102a43,0 8px 22px rgba(0,0,0,.16)}
.clock-face:before{content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.18);border-radius:50%;pointer-events:none}
.clock-hand{position:absolute;left:50%;top:50%;width:2px;height:58px;background:#f6d88c;transform-origin:50% 100%;transform:translate(-50%,-100%) rotate(var(--clock-angle,0deg));border-radius:2px;z-index:3}
.clock-hand:after{content:"";position:absolute;left:50%;bottom:-4px;width:8px;height:8px;border-radius:50%;background:#e3bd72;transform:translateX(-50%)}
.clock-indicator{position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px;border:2px solid #f6d88c;border-radius:50%;background:#102a43;transform:rotate(var(--clock-angle,0deg)) translateY(-74px);transform-origin:center;z-index:4}
.clock-centre{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:#fff}
.clock-centre strong{font-size:22px;line-height:1}.clock-centre small{font-size:9px;letter-spacing:.15em;color:#aebbc6;margin-top:4px}
.clock-label{position:absolute;font-size:10px;font-weight:700;color:#d8e0e6;z-index:2}.clock-morning{top:15px;left:50%;transform:translateX(-50%)}.clock-afternoon{right:8px;top:50%;transform:translateY(-50%)}.clock-evening{bottom:15px;left:50%;transform:translateX(-50%)}
.clock-periods{display:grid;gap:7px;min-width:122px}.clock-periods button{border:1px solid #52667a;background:transparent;color:#fff;text-align:left;padding:8px 10px;font:600 12px "DM Sans";cursor:pointer}.clock-periods button small{display:block;color:#9cabb8;font-size:10px;font-weight:500;margin-top:2px}.clock-periods button.active{background:var(--gold);border-color:var(--gold);color:var(--navy)}.clock-periods button.active small{color:#49360f}
.daily-details{padding:22px 30px 28px;align-self:start}.daily-details h3{font-size:clamp(30px,3.4vw,46px);margin:4px 0 10px}.daily-details>p:not(.eyebrow):not(.nairobi-time){font-size:14px;line-height:1.45;margin:0 0 14px}.daily-actions{display:flex;gap:8px;flex-wrap:wrap}.daily-follow{display:block;margin-top:12px;font-size:12px;color:var(--gold)}.nairobi-time{font-size:11px;margin-top:10px}
@media (max-width:900px){
  .services .path-title{min-height:0;padding:25px 22px}
  .services{padding-bottom:28px}
  .today{padding-top:28px}
  .daily-feature{grid-template-columns:1fr;grid-template-rows:auto}
  .daily-poster{grid-row:auto}
  .clarity-clock{padding:24px 20px 4px}
  .daily-details{padding:22px 24px 28px}
}
@media (min-width:901px){
  .nav-wrap,main#top,footer{max-width:1280px;margin-left:auto;margin-right:auto}
  .nav-wrap{padding-left:42px;padding-right:42px}
  .hero{min-height:620px;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr)}
  .hero-copy{padding:84px 64px 64px}
  .hero h1{font-size:clamp(50px,5.2vw,70px);max-width:680px}
  .hero .lead{max-width:570px;font-size:18px;line-height:1.6}
  .portrait{min-height:620px}
  .portrait figcaption{left:30px;right:30px;bottom:28px;font-size:17px}
  .services,.today,.media,.events,.about,.progress-evidence,.clarity-sessions{padding-left:64px;padding-right:64px}
  .learn,.shop{padding-left:64px;padding-right:64px;gap:64px}
  .section-heading h2,.learn h2,.shop h2,.about h2{font-size:clamp(38px,4vw,54px);line-height:1.08}
  .section-heading{align-items:center}
  .clarity-session-card{padding:30px}
}
