/* =====================================================
   icons-clean.css — 31 Oct revision
   Decorative "icon tile" styling removed site-wide.
   Feature cards now use real nursery photos; functional
   icons (phone, email, location, WhatsApp, social) use
   Font Awesome Free glyphs (CC BY 4.0, fontawesome.com).
   ===================================================== */

/* Filled glyphs: kill the outline-stroke defaults */
.icon { stroke: none !important; }
.btn .icon, .svc-card__link .icon { width: .95em; height: .95em; }

/* ---------- Home: hero fact chips (text only) ---------- */
.hero-slider__facts li { gap: 0; }

/* ---------- Home: "at a glance" stats ---------- */
.trust-card { padding-top: 1.8rem; padding-bottom: 1.8rem; }

/* ---------- Home: services — photo header ---------- */
.svc-card__media {
  margin: -1.8rem -1.8rem .4rem;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: rgba(0,0,0,.06);
}
.svc-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
.svc-card:hover .svc-card__media img { transform: scale(1.04); }
.svc-card__top { justify-content: flex-start; }

/* ---------- Home: "Where Little Mind Blossoms" — photo cards ---------- */
.why-card { padding-top: 0; }
.why-card__media {
  margin: 0 -1.75rem 1.2rem;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: rgba(0,0,0,.06);
}
.why-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
.why-card:hover .why-card__media img { transform: scale(1.04); }

/* ---------- Home: Mission / Vision header without icon ---------- */
.mv-card__head { padding-left: 2rem; }

/* ---------- Home: safety promise — accent bar instead of icon ---------- */
.safety-item { border-left: 4px solid var(--mint) !important; padding-left: 1.2rem; }
.safety-item:nth-child(even) { border-left-color: #fff !important; }

/* ---------- Admissions ---------- */
.loc-perk { border-left: 4px solid var(--purple); }
.loc-perk:nth-child(even) { border-left-color: var(--mint); }
.class-card__head { gap: 0; }
.schedule-card { border-top: 4px solid var(--purple); }
.schedule-card--mint { border-top-color: var(--mint); }

/* ---------- Curriculum: EYFS + special programme cards ---------- */
.eyfs-card__btn { gap: .35rem; }
.special-prog-card { border-top: 4px solid var(--purple); }

/* ---------- About: staff placeholders ---------- */
.staff-slot__photo span { font-size: .9rem; opacity: .7; }

/* ---------- Contact: solid, standard icon badges ---------- */
.info-icon { background: var(--purple) !important; color: #fff !important; border-radius: 50% !important; }
.info-icon .icon { width: 18px !important; height: 18px !important; }
.contact-card__icon { border-radius: 50% !important; color: #fff !important; }
.contact-card--call .contact-card__icon  { background: var(--purple) !important; }
.contact-card--wa .contact-card__icon,
.contact-card--whatsapp .contact-card__icon { background: #25D366 !important; }
.contact-card--email .contact-card__icon { background: #2a6b52 !important; }
.loc-address-card__icon { background: var(--purple) !important; color: #fff !important; border-radius: 50% !important; }

/* ---------- WhatsApp / call buttons in brand colours ---------- */
.float-actions__btn--wa, .float-btn--wa, .icon-btn--whatsapp { background: #25D366 !important; color: #fff !important; }
.float-actions__btn--call, .float-btn--call, .icon-btn--call { background: var(--purple) !important; color: #fff !important; }
.float-actions__btn .icon, .float-btn .icon { width: 26px; height: 26px; }
.icon-btn .icon { width: 20px; height: 20px; }

/* Inline phone / WhatsApp glyphs keep their original size */
.promise-parallax__phone-icon { width: 22px !important; height: 22px !important; flex: none; color: #fff; }
.enroll-contact-btn__icon svg { width: 20px; height: 20px; }

/* =====================================================
   Professional icons (Font Awesome Free, solid) in place of the
   removed AI-style icons: solid brand-colour circle, white glyph
   ===================================================== */
.pro-icon {
  flex: none; display: inline-grid; place-items: center;
  width: 48px; height: 48px; border-radius: 50%;
  background: var(--purple); color: #fff;
  box-shadow: 0 6px 16px rgba(136,38,133,.22);
}
.pro-icon svg { width: 45%; height: 45%; display: block; }

/* Home: stat cards */
.trust-card .pro-icon { width: 60px; height: 60px; margin: 0 auto .9rem; display: grid; background: #fff; color: var(--purple); box-shadow: 0 6px 18px rgba(0,0,0,.12); }
.trust-card--mint .pro-icon { color: #2a7a5f; }

/* Home: Mission / Vision headers */
.mv-card__head .pro-icon { width: 60px; height: 60px; background: #fff; color: var(--purple); position: relative; z-index: 1; }
.mv-card--vision .mv-card__head .pro-icon { color: #3f8a70; }

/* Home: safety promise (purple section) */
.bg-purple .safety-item { border-left: 1px solid rgba(255,255,255,.2) !important; padding-left: 1.3rem; }
.bg-purple .safety-item .pro-icon { background: #fff; color: var(--purple); box-shadow: none; }
.bg-purple .safety-item:nth-child(even) .pro-icon { background: var(--mint); color: var(--navy); }

/* About: Mission / Vision / Aims cards */
.mv3-grid > div > .pro-icon { width: 56px; height: 56px; margin-bottom: 18px; background: #fff; color: var(--purple); box-shadow: 0 6px 16px rgba(0,0,0,.12); }
.mv3-grid > div:nth-child(2) > .pro-icon { color: #3f8a70; }
.mv3-grid > .aims-card > .pro-icon { background: var(--purple); color: #fff; }

/* Curriculum: 7 EYFS areas */
.eyfs-card__btn .pro-icon { grid-column: 1; grid-row: 1 / 3; align-self: center; width: 52px; height: 52px; background: #fff; color: var(--purple); box-shadow: 0 4px 12px rgba(0,0,0,.1); }

/* Curriculum: photo header on special programme cards */
.special-prog-card__media { margin: -2.25rem -2rem 1.3rem; aspect-ratio: 16 / 8; overflow: hidden; background: rgba(0,0,0,.06); }
.special-prog-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.special-prog-card { border-top: 0; }

/* Admissions: location points + schedule cards */
.loc-perk, .schedule-card { border-left: 0 !important; border-top: 0 !important; }
.loc-perk .pro-icon { width: 44px; height: 44px; }
.loc-perk:nth-child(even) .pro-icon, .schedule-card:nth-child(even) .pro-icon { background: #2a9d7f; box-shadow: 0 6px 16px rgba(42,157,127,.22); }

/* Fix: admissions ".loc-perk span" rule was greying the icon circles */
.loc-perk .pro-icon, .schedule-card .pro-icon { color: #fff !important; font-size: inherit; }
.loc-perk .pro-icon svg, .schedule-card .pro-icon svg { fill: #fff; }

/* Gallery: centre the tab panel headings (Events / Class Activities / Parent Involvement) */
.panel-header { justify-content: center !important; text-align: center; }
.panel-header > div { width: 100%; }
.panel-header p { margin-left: auto; margin-right: auto; max-width: 640px; }

/* 1 Nov: icon circles white with brand-purple glyph (site-wide) */
.pro-icon,
.loc-perk .pro-icon, .schedule-card .pro-icon,
.loc-perk:nth-child(even) .pro-icon, .schedule-card:nth-child(even) .pro-icon,
.mv3-grid > .aims-card > .pro-icon {
  background: #fff !important; color: var(--purple) !important;
  border: 1.5px solid rgba(136,38,133,.18);
  box-shadow: 0 6px 16px rgba(136,38,133,.14) !important;
}
.loc-perk .pro-icon svg, .schedule-card .pro-icon svg { fill: currentColor !important; }

/* Gallery: centre the tab buttons (Events / Class Activities / Parent Involvement) in the bar.
   Auto margins keep it centred without clipping when the bar scrolls on small screens. */
.tab-nav { justify-content: flex-start; }
.tab-nav .tab-btn:first-child { margin-left: auto; }
.tab-nav .tab-btn:last-child  { margin-right: auto; }
