/* =====================================================
   CELEBRATION CHILD CARE — GLOBAL STYLESHEET
   Load ONCE site-wide; all page HTML blocks depend on it.
   ===================================================== */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,500;0,600;0,700;1,600&display=swap');
/* ========== HOME PAGE ========== */

.cc{font-family:'Poppins',sans-serif;color:#333}
.cc h1,.cc h2,.cc h3{margin:0}
.cc-btn{display:inline-block;padding:14px 34px;border-radius:50px;font-size:14px;font-weight:600;text-decoration:none;letter-spacing:.5px}
.cc-btn--teal{background:#3E9C9C;color:#fff}
.cc-btn--orange{background:#F0863A;color:#fff}
.cc-btn--navy{background:#17264D;color:#fff}
.cc-wrap{max-width:1140px;margin:0 auto}
/* HERO */
.cc-hero{background:#FCF8F1;padding:70px 40px;display:flex;gap:40px;align-items:center;flex-wrap:wrap}
.cc-hero__l{flex:1 1 440px}
.cc-hero__l .cc-kicker{color:#F0863A;font-weight:600;letter-spacing:2px;font-size:14px;margin:0 0 10px}
.cc-hero__l h1{color:#3E9C9C;font-size:52px;font-weight:700;line-height:1.1;margin-bottom:18px}
.cc-hero__l p{color:#4A4A4A;font-size:16px;line-height:1.7;margin:0 0 28px;max-width:520px}
.cc-hero__r{flex:1 1 380px}
.cc-hero__r img{width:100%;border-radius:20px;display:block}
/* VIDEO */
.cc-video{background:#fff;padding:70px 40px;text-align:center}
.cc-video h2{color:#17264D;font-size:34px;font-weight:700;margin-bottom:12px}
.cc-video p{color:#4A4A4A;max-width:640px;margin:0 auto 30px}
.cc-video__frame{max-width:900px;margin:0 auto;aspect-ratio:16/9;background:#D6EAEB;border-radius:20px;display:flex;align-items:center;justify-content:center;color:#3E9C9C;font-weight:600}
/* SNIPPET */
.cc-snippet{background:#3E9C9C;padding:80px 40px;text-align:center}
.cc-snippet p{color:#fff;font-size:30px;font-weight:700;line-height:1.4;max-width:900px;margin:0 auto 30px}
/* PROGRAMS */
.cc-progs{background:#D6EAEB;padding:70px 40px;text-align:center}
.cc-progs h2{color:#17264D;font-size:34px;font-weight:700;margin-bottom:35px}
.cc-progs__grid{display:flex;gap:25px;flex-wrap:wrap;max-width:1140px;margin:0 auto 35px}
.cc-pcard{flex:1 1 300px;background:#fff;border-radius:25px;overflow:hidden;text-align:left}
.cc-pcard img{width:100%;height:200px;object-fit:cover;display:block}
.cc-pcard__body{padding:25px}
.cc-pcard h3{color:#17264D;font-size:22px;font-weight:600}
.cc-pcard .cc-age{color:#F0863A;font-size:13px;font-weight:600;letter-spacing:1px;margin:4px 0 12px}
.cc-pcard p{color:#4A4A4A;font-size:14px;line-height:1.6;margin:0}
/* WHY */
.cc-why{background:#fff;padding:70px 40px}
.cc-why h2{color:#17264D;font-size:34px;font-weight:700;text-align:center;margin-bottom:35px}
.cc-why__grid{display:flex;gap:25px;flex-wrap:wrap;max-width:1140px;margin:0 auto}
.cc-why__item{flex:1 1 240px;background:#FCF8F1;border-radius:20px;padding:28px}
.cc-why__item h3{color:#3E9C9C;font-size:18px;font-weight:600;margin-bottom:10px}
.cc-why__item p{color:#4A4A4A;font-size:14px;line-height:1.6;margin:0}
/* TESTIMONIALS (reference: "A word from our fans" slider) */
.cc-testi{background:#FCF8F1;padding:70px 0;text-align:center}
.cc-testi h2{color:#F0863A;font-size:38px;font-weight:700;margin-bottom:40px}
.cc-testi__track{display:flex;gap:40px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 60px}
.cc-testi__track::-webkit-scrollbar{display:none}
.cc-tcard{flex:0 0 300px;scroll-snap-align:center;text-align:left}
.cc-tcard .cc-stars{color:#F0863A;font-size:20px;letter-spacing:3px;margin-bottom:12px}
.cc-tcard blockquote{margin:0 0 14px;color:#17264D;font-size:15px;font-weight:600;line-height:1.55}
.cc-tcard cite{color:#4A4A4A;font-size:13px;font-style:italic}
.cc-testi__nav{margin-top:35px}
.cc-testi__nav button{background:none;border:none;color:#F0863A;font-size:30px;cursor:pointer;padding:0 15px}
/* QUICK LINKS (reference: full-width rows) */
.cc-ql{background:#D6EAEB;padding:70px 40px}
.cc-ql .cc-ql__label{text-align:center;color:#17264D;font-size:14px;font-weight:600;letter-spacing:3px;margin-bottom:30px}
.cc-ql__row{background:#fff;border-radius:20px;display:flex;align-items:center;gap:35px;padding:25px 35px;margin:0 auto 25px;max-width:1140px;flex-wrap:wrap}
.cc-ql__row img{width:160px;height:160px;object-fit:cover;border-radius:12px}
.cc-ql__row h3{flex:1;color:#17264D;font-size:36px;font-weight:600;min-width:200px}
/* CTA */
.cc-cta{background:#F0863A;padding:70px 40px;text-align:center}
.cc-cta h2{color:#fff;font-size:34px;font-weight:700;margin-bottom:12px}
.cc-cta p{color:#fff;margin:0 0 28px}
@media(max-width:767px){.cc-hero__l h1{font-size:38px}.cc-snippet p{font-size:22px}.cc-ql__row h3{font-size:24px}}

/* ========== ABOUT PAGE ========== */

.cca{font-family:'Poppins',sans-serif;color:#333}
.cca h1,.cca h2,.cca h3{margin:0}
.cca-btn{display:inline-block;padding:14px 34px;border-radius:50px;font-size:14px;font-weight:600;text-decoration:none;background:#17264D;color:#fff}
/* BOLD STATEMENT */
.cca-hero{background:#FCF8F1;padding:90px 40px;text-align:center}
.cca-hero .cca-label{color:#F0863A;font-size:14px;font-weight:600;letter-spacing:3px;margin:0 0 20px}
.cca-hero h1{color:#3E9C9C;font-size:36px;font-weight:700;line-height:1.4;max-width:950px;margin:0 auto}
/* ROOTS */
.cca-roots{background:#fff;padding:70px 40px}
.cca-roots__inner{max-width:1140px;margin:0 auto;display:flex;gap:50px;align-items:center;flex-wrap:wrap}
.cca-roots__img{flex:1 1 360px}
.cca-roots__img img{width:100%;border-radius:20px;display:block}
.cca-roots__txt{flex:1 1 440px}
.cca-roots__txt h2{color:#17264D;font-size:32px;font-weight:700;margin-bottom:18px}
.cca-roots__txt p{color:#4A4A4A;font-size:15px;line-height:1.8;margin:0 0 15px}
.cca-roots__txt a.cca-link{color:#F0863A;font-weight:600;text-decoration:none}
/* MISSION */
.cca-mission{background:#3E9C9C;padding:70px 40px}
.cca-mission__inner{max-width:1140px;margin:0 auto;display:flex;gap:50px;align-items:center;flex-wrap:wrap-reverse}
.cca-mission__txt{flex:1 1 440px}
.cca-mission__txt h2{color:#fff;font-size:32px;font-weight:700;margin-bottom:18px}
.cca-mission__txt p{color:#fff;font-size:15px;line-height:1.8;margin:0 0 25px}
.cca-mission__img{flex:1 1 360px}
.cca-mission__img img{width:100%;border-radius:20px;display:block}
/* TEAM */
.cca-team{background:#D6EAEB;padding:70px 40px;text-align:center}
.cca-team h2{color:#17264D;font-size:34px;font-weight:700;margin-bottom:10px}
.cca-team>p{color:#4A4A4A;max-width:640px;margin:0 auto 40px}
.cca-team__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:25px;max-width:1140px;margin:0 auto}
.cca-tm{background:#fff;border-radius:20px;overflow:hidden}
.cca-tm img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.cca-tm p{color:#17264D;font-weight:600;font-size:16px;margin:14px 0}
@media(max-width:767px){.cca-hero h1{font-size:26px}}

/* ========== PROGRAMS PAGE ========== */

.ccp{font-family:'Poppins',sans-serif;color:#333}
.ccp h1,.ccp h2,.ccp h3{margin:0}
.ccp-btn{display:inline-block;padding:14px 34px;border-radius:50px;font-size:14px;font-weight:600;text-decoration:none;margin:5px}
.ccp-btn--teal{background:#3E9C9C;color:#fff}
.ccp-btn--orange{background:#F0863A;color:#fff}
.ccp-btn--navy{background:#17264D;color:#fff}
/* INTRO */
.ccp-intro{background:#FCF8F1;padding:80px 40px;text-align:center}
.ccp-intro h1{color:#17264D;font-size:44px;font-weight:700;margin-bottom:15px}
.ccp-intro p{color:#4A4A4A;font-size:16px;line-height:1.7;max-width:760px;margin:0 auto}
/* PROGRAM BLOCKS */
.ccp-block{padding:70px 40px}
.ccp-block__inner{max-width:1140px;margin:0 auto;display:flex;gap:50px;align-items:center;flex-wrap:wrap}
.ccp-block__img{flex:1 1 380px}
.ccp-block__img img{width:100%;border-radius:25px;display:block}
.ccp-block__txt{flex:1 1 460px}
.ccp-block__txt .ccp-age{display:inline-block;background:#17264D;color:#fff;font-size:13px;font-weight:600;letter-spacing:1px;padding:8px 22px;border-radius:50px;margin-bottom:15px}
.ccp-block__txt h2{font-size:34px;font-weight:700;margin-bottom:15px}
.ccp-block__txt p{font-size:15px;line-height:1.8;margin:0 0 14px}
.ccp-block--infant{background:#fff}
.ccp-block--infant h2{color:#3E9C9C}.ccp-block--infant p{color:#4A4A4A}
.ccp-block--toddler{background:#D6EAEB}
.ccp-block--toddler h2{color:#17264D}.ccp-block--toddler p{color:#4A4A4A}
.ccp-block--preschool{background:#fff}
.ccp-block--preschool h2{color:#F0863A}.ccp-block--preschool p{color:#4A4A4A}
/* GINA VIDEO */
.ccp-video{background:#3E9C9C;padding:70px 40px;text-align:center}
.ccp-video h2{color:#fff;font-size:34px;font-weight:700;margin-bottom:30px}
.ccp-video__frame{max-width:900px;margin:0 auto;aspect-ratio:16/9;background:#FCF8F1;border-radius:20px;display:flex;align-items:center;justify-content:center;color:#3E9C9C;font-weight:600}
/* CTA */
.ccp-cta{background:#FCF8F1;padding:70px 40px;text-align:center}
.ccp-cta h2{color:#17264D;font-size:32px;font-weight:700;margin-bottom:25px}
@media(max-width:767px){.ccp-intro h1{font-size:32px}.ccp-block__txt h2{font-size:26px}}

/* ========== TUITION PAGE ========== */

.cct{font-family:'Poppins',sans-serif;color:#333}
.cct h1,.cct h2{margin:0}
.cct-btn{display:inline-block;padding:14px 34px;border-radius:50px;font-size:14px;font-weight:600;text-decoration:none;margin:5px}
.cct-btn--teal{background:#3E9C9C;color:#fff}
.cct-btn--orange{background:#F0863A;color:#fff}
/* INTRO */
.cct-intro{background:#FCF8F1;padding:80px 40px;text-align:center}
.cct-intro h1{color:#17264D;font-size:44px;font-weight:700;margin-bottom:15px}
.cct-intro h2{color:#3E9C9C;font-size:22px;font-weight:600;margin-bottom:18px}
.cct-intro p{color:#4A4A4A;font-size:15px;line-height:1.8;max-width:760px;margin:0 auto 8px}
/* ACCORDIONS */
.cct-acc{background:#fff;padding:60px 40px}
.cct-acc__wrap{max-width:900px;margin:0 auto}
.cct-acc details{border-radius:20px;margin-bottom:20px;overflow:hidden}
.cct-acc summary{list-style:none;cursor:pointer;padding:22px 30px;font-size:20px;font-weight:600;color:#fff;display:flex;justify-content:space-between;align-items:center}
.cct-acc summary::-webkit-details-marker{display:none}
.cct-acc summary::after{content:"+";font-size:26px;font-weight:400}
.cct-acc details[open] summary::after{content:"–"}
.cct-acc details.cct--teal summary{background:#3E9C9C}
.cct-acc details.cct--orange summary{background:#F0863A}
.cct-acc details.cct--navy summary{background:#17264D}
.cct-acc .cct-body{border:2px solid #D6EAEB;border-top:none;border-radius:0 0 20px 20px;padding:25px 30px}
.cct-acc .cct-body p{color:#4A4A4A;font-size:14px;line-height:1.7;margin:0 0 18px}
.cct-table{width:100%;border-collapse:collapse;font-size:14px}
.cct-table th{background:#D6EAEB;color:#17264D;padding:12px;text-align:left}
.cct-table td{padding:12px;border-bottom:1px solid #EAEAEA;color:#4A4A4A}
.cct-table tr td:first-child{font-weight:600;color:#17264D}
/* CTA */
.cct-cta{background:#D6EAEB;padding:60px 40px;text-align:center}
.cct-cta h2{color:#17264D;font-size:28px;font-weight:700;margin-bottom:25px}
@media(max-width:600px){.cct-intro h1{font-size:32px}.cct-table{font-size:12px}.cct-table th,.cct-table td{padding:8px 6px}}

/* ========== FORMS PAGE ========== */

.ccf{font-family:'Poppins',sans-serif;color:#333}
.ccf h1,.ccf h2,.ccf h3{margin:0}
.ccf-intro{background:#FCF8F1;padding:80px 40px;text-align:center}
.ccf-intro h1{color:#17264D;font-size:44px;font-weight:700;margin-bottom:15px}
.ccf-intro p{color:#4A4A4A;font-size:16px;max-width:700px;margin:0 auto}
.ccf-groups{background:#fff;padding:60px 40px}
.ccf-groups__wrap{max-width:1140px;margin:0 auto;display:flex;gap:30px;flex-wrap:wrap;align-items:flex-start}
.ccf-group{flex:1 1 320px;border-radius:25px;padding:35px}
.ccf-group--teal{background:#3E9C9C}
.ccf-group--orange{background:#F0863A}
.ccf-group--navy{background:#17264D}
.ccf-group h2{color:#fff;font-size:22px;font-weight:700;margin-bottom:20px}
.ccf-group a{display:flex;align-items:center;gap:12px;background:#fff;border-radius:50px;padding:13px 22px;margin-bottom:12px;color:#17264D;font-size:14px;font-weight:600;text-decoration:none}
.ccf-group a:hover{background:#FCF8F1}
.ccf-group a .ccf-ico{flex:none;width:26px;height:26px;border-radius:50%;background:#F0863A;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px}
.ccf-group--orange a .ccf-ico{background:#3E9C9C}
.ccf-group .ccf-pending{opacity:.75;font-style:italic}
@media(max-width:767px){.ccf-intro h1{font-size:32px}}

/* ========== CONTACT PAGE ========== */
.ccc{font-family:'Poppins',sans-serif;color:#333}
.ccc h1,.ccc h2,.ccc h3{margin:0}
.ccc-intro{background:#FCF8F1;padding:80px 40px 50px;text-align:center}
.ccc-intro .ccc-label{color:#F0863A;font-size:14px;font-weight:600;letter-spacing:3px;margin:0 0 15px}
.ccc-intro h1{color:#17264D;font-size:44px;font-weight:700;margin-bottom:15px}
.ccc-intro .ccc-sub{color:#4A4A4A;font-size:16px;line-height:1.7;max-width:680px;margin:0 auto}
.ccc-info{background:#FCF8F1;padding:0 40px 60px}
.ccc-info__grid{max-width:1140px;margin:0 auto;display:flex;gap:25px;flex-wrap:wrap}
.ccc-card{flex:1 1 220px;border-radius:20px;padding:28px;text-align:center}
.ccc-card h3{font-size:18px;font-weight:600;margin-bottom:10px}
.ccc-card p{font-size:15px;line-height:1.6;margin:0}
.ccc-card a{text-decoration:none;font-weight:600}
.ccc-card--teal{background:#3E9C9C}.ccc-card--teal h3,.ccc-card--teal p,.ccc-card--teal a{color:#fff}
.ccc-card--orange{background:#F0863A}.ccc-card--orange h3,.ccc-card--orange p,.ccc-card--orange a{color:#fff}
.ccc-card--navy{background:#17264D}.ccc-card--navy h3,.ccc-card--navy p{color:#fff}
.ccc-card--light{background:#D6EAEB}.ccc-card--light h3{color:#17264D}.ccc-card--light p{color:#4A4A4A}
.ccc-main{background:#fff;padding:70px 40px}
.ccc-main__inner{max-width:1140px;margin:0 auto;display:flex;gap:50px;flex-wrap:wrap;align-items:flex-start}
.ccc-form{flex:1 1 520px;background:#3E9C9C;border-radius:25px;padding:40px}
.ccc-form h2{color:#fff;font-size:28px;font-weight:700;margin-bottom:10px}
.ccc-form>p{color:#fff;font-size:14px;line-height:1.6;margin:0 0 25px}
.ccc-row{display:flex;gap:15px;flex-wrap:wrap}
.ccc-field{flex:1 1 45%;margin-bottom:15px}
.ccc-field--full{flex:1 1 100%}
.ccc-field label{display:block;color:#fff;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}
.ccc-field input,.ccc-field select,.ccc-field textarea{width:100%;border:none;border-radius:25px;padding:12px 18px;font-family:'Poppins',sans-serif;font-size:14px;color:#17264D;box-sizing:border-box;background:#fff}
.ccc-field textarea{border-radius:20px;min-height:120px;resize:vertical}
.ccc-form button{display:block;margin-left:auto;background:#F0863A;color:#fff;border:none;border-radius:50px;padding:14px 40px;font-family:'Poppins',sans-serif;font-size:14px;font-weight:600;cursor:pointer}
.ccc-form button:hover{background:#d9732c}
.ccc-side{flex:1 1 380px;display:flex;flex-direction:column;gap:25px}
.ccc-map{border-radius:25px;overflow:hidden;aspect-ratio:4/3;background:#D6EAEB}
.ccc-map iframe{width:100%;height:100%;border:0;display:block}
.ccc-note{background:#FCF8F1;border-radius:25px;padding:30px}
.ccc-note h3{color:#17264D;font-size:20px;font-weight:600;margin-bottom:10px}
.ccc-note p{color:#4A4A4A;font-size:14px;line-height:1.7;margin:0 0 12px}
.ccc-note a{color:#F0863A;font-weight:600;text-decoration:none}
.ccc-note__ministry{font-style:italic}
@media(max-width:767px){.ccc-intro h1{font-size:30px}.ccc-field{flex:1 1 100%}}

/* ========== FULL-BLEED SECTIONS (backgrounds span the entire viewport width
   even when Elementor's container is boxed) ========== */
.cc > section,
.cca > section,
.ccp > section,
.cct > section,
.ccf > section,
.ccc > section{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
/* prevent the 100vw scrollbar-width overflow */
body{overflow-x:hidden}

/* ========== BUTTON TEXT FIX (theme link color was overriding button text) ========== */
.cc a.cc-btn, .cc a.cc-btn:visited, .cc a.cc-btn:hover, .cc a.cc-btn:focus,
.cca a.cca-btn, .cca a.cca-btn:visited, .cca a.cca-btn:hover, .cca a.cca-btn:focus,
.ccp a.ccp-btn, .ccp a.ccp-btn:visited, .ccp a.ccp-btn:hover, .ccp a.ccp-btn:focus,
.cct a.cct-btn, .cct a.cct-btn:visited, .cct a.cct-btn:hover, .cct a.cct-btn:focus{
  color:#fff !important;
  text-decoration:none !important;
}
/* slight hover feedback instead of color change */
.cc a.cc-btn:hover, .cca a.cca-btn:hover, .ccp a.ccp-btn:hover, .cct a.cct-btn:hover{
  filter:brightness(.92);
}

/* ========== PAGE HEADER BANNER (shared across inner pages) ========== */
.cc-pagehead{position:relative;background-size:cover;background-position:center;padding:130px 40px 160px;text-align:center;overflow:hidden}
@media(min-width:1025px){.cc-pagehead{background-attachment:fixed}}
.cc-pagehead::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(23,38,77,.6),rgba(62,156,156,.65))}
.cc-pagehead::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:80px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23FCF8F1' d='M0,40 C240,90 480,0 720,30 C960,60 1200,10 1440,50 L1440,80 L0,80 Z'/%3E%3C/svg%3E") no-repeat center/100% 100%}
.cc-pagehead__content{position:relative;z-index:2;max-width:820px;margin:0 auto}
.cc-pagehead__label{color:#FFD9B8;font-size:14px;font-weight:600;letter-spacing:3px;margin:0 0 15px;font-family:'Poppins',sans-serif}
.cc-pagehead h1{color:#fff;font-size:48px;font-weight:700;margin:0 0 15px;font-family:'Poppins',sans-serif}
.cc-pagehead__sub{color:#fff;font-size:17px;line-height:1.7;margin:0;font-family:'Poppins',sans-serif;opacity:.95}
@media(max-width:767px){.cc-pagehead{padding:90px 20px 120px}.cc-pagehead h1{font-size:32px}}

/* ========== PARALLAX PHOTO BAND ========== */
.cc-band{min-height:340px;background-size:cover;background-position:center}
@media(min-width:1025px){.cc-parallax{background-attachment:fixed}}
@media(max-width:767px){.cc-band{min-height:220px}}

/* ========== DECORATIVE SHAPES ========== */
.cc>section,.cca>section,.ccp>section,.cct>section,.ccf>section,.ccc>section{position:relative;overflow:hidden}
.cc-shape{position:absolute;z-index:1;opacity:.35;pointer-events:none;will-change:transform}
.cc-shape svg{width:100%;height:100%;display:block}
/* keep real content above the shapes */
.cc-pagehead__content,.cc-wrap,.cc-progs__grid,.cc-why__grid,.cc-testi__track,.cc-ql__row,
.cca-roots__inner,.cca-mission__inner,.cca-team__grid,.ccp-block__inner,
.cct-acc__wrap,.ccf-groups__wrap,.ccc-info__grid,.ccc-main__inner{position:relative;z-index:2}

/* ========== SCROLL REVEALS ========== */
.cc-reveal{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease}
.cc-reveal.cc-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.cc-reveal{opacity:1;transform:none;transition:none}}

/* ========== HOVER MICRO-INTERACTIONS ========== */
.cc-pcard,.cc-ql__row,.cca-tm,.ccc-card{transition:transform .3s ease,box-shadow .3s ease}
.cc-pcard:hover,.cca-tm:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(23,38,77,.12)}
.cc-ql__row:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(23,38,77,.10)}
.cc-tcard{transition:transform .3s ease}
.cc-tcard:hover{transform:rotate(-1.2deg) translateY(-4px)}

/* ========== THEME/KIT OVERRIDE HARDENING ==========
   Elementor kit globals (heading & link colors) load after this sheet,
   so every light-on-color text gets locked in. */
/* Page header banner */
.cc-pagehead h1{color:#fff !important}
.cc-pagehead__sub{color:#fff !important}
.cc-pagehead__label{color:#FFD9B8 !important}
/* Contact info cards */
.ccc-card--teal h3,.ccc-card--teal p,.ccc-card--teal a,
.ccc-card--orange h3,.ccc-card--orange p,.ccc-card--orange a,
.ccc-card--navy h3,.ccc-card--navy p{color:#fff !important}
.ccc-card--light h3{color:#17264D !important}
.ccc-card--light p{color:#4A4A4A !important}
/* Contact form + side note */
.ccc-form h2,.ccc-form>p,.ccc-field label{color:#fff !important}
.ccc-note h3{color:#17264D !important}
.ccc-note a{color:#F0863A !important}
/* Home colored sections */
.cc-snippet p,.cc-cta h2,.cc-cta p{color:#fff !important}
.cc-testi h2{color:#F0863A !important}
/* About */
.cca-hero h1{color:#3E9C9C !important}
.cca-mission__txt h2,.cca-mission__txt p{color:#fff !important}
.cca-link{color:#F0863A !important}
/* Programs */
.ccp-age{color:#fff !important}
.ccp-video h2{color:#fff !important}
.ccp-block--infant h2{color:#3E9C9C !important}
.ccp-block--toddler h2{color:#17264D !important}
.ccp-block--preschool h2{color:#F0863A !important}
/* Tuition accordions */
.cct-acc summary{color:#fff !important}
/* Forms page cards */
.ccf-group h2{color:#fff !important}
.ccf-group a{color:#17264D !important}
/* Card/section headings that must stay navy */
.cc-progs h2,.cc-why h2,.cc-pcard h3,.cct-intro h1,.cct-intro h2,.cct-cta h2,.ccp-cta h2,.cca-roots__txt h2,.cca-team h2{color:#17264D !important}
.cc-why__item h3{color:#3E9C9C !important}
.cc-pcard .cc-age{color:#F0863A !important}

/* ========== TEAM MEMBER ROLES ========== */
.cca-tm p{margin:14px 0 4px !important}
.cca-tm__role{display:block;color:#F0863A !important;font-size:13px;font-weight:500;margin:0 0 16px;font-family:'Poppins',sans-serif}

/* ========== GLOBAL ROUNDED CORNERS ON IMAGES ========== */
.cc img, .cca img, .ccp img, .cct img, .ccf img, .ccc img{
  border-radius:25px !important;
}
.cca-team__grid .cca-tm img{border-radius:20px 20px 0 0 !important} /* team cards: round top only (card wraps bottom) */
.ccc-map, .ccc-map iframe{border-radius:25px !important}
.cc-video__frame, .ccp-video__frame{border-radius:25px !important; overflow:hidden}

/* ========== ROUNDED CORNERS FOR NATIVE ELEMENTOR IMAGE WIDGETS (content only, not header/footer logo) ========== */
div[data-elementor-type="wp-page"] .elementor-widget-image img{border-radius:25px !important}

/* ========== TYPOGRAPHY HARDENING ==========
   Kit global heading styles (post-74.css) load after this sheet and
   override sizes/fonts. Lock every heading in our sections. */
.cc h1,.cc h2,.cc h3,.cc p,.cc a,
.cca h1,.cca h2,.cca h3,.cca p,.cca a,
.ccp h1,.ccp h2,.ccp h3,.ccp p,.ccp a,.ccp span,
.cct h1,.cct h2,.cct h3,.cct p,.cct summary,.cct td,.cct th,
.ccf h1,.ccf h2,.ccf p,.ccf a,
.ccc h1,.ccc h2,.ccc h3,.ccc p,.ccc a,.ccc label,.ccc input,.ccc select,.ccc textarea,.ccc button{
  font-family:'Poppins',sans-serif !important;
}
/* Hero + page headers */
.cc-hero__l h1{font-size:52px !important;line-height:1.15 !important;font-weight:700 !important}
.cc-pagehead h1{font-size:48px !important;line-height:1.2 !important;font-weight:700 !important}
.cc-pagehead__label{font-size:14px !important}
.cc-pagehead__sub{font-size:17px !important}
/* Section headings */
.cc-video h2,.cc-progs h2,.cc-why h2,.cc-cta h2,.cca-team h2,.ccp-block__txt h2,.ccp-video h2{font-size:34px !important;line-height:1.3 !important;font-weight:700 !important}
.cc-testi h2{font-size:38px !important;font-weight:700 !important}
.cc-snippet p{font-size:30px !important;line-height:1.4 !important;font-weight:700 !important}
.cca-hero h1{font-size:36px !important;line-height:1.4 !important;font-weight:700 !important}
.cca-roots__txt h2,.cca-mission__txt h2,.ccp-cta h2{font-size:32px !important;line-height:1.3 !important;font-weight:700 !important}
.cc-ql__row h3{font-size:36px !important;font-weight:600 !important}
.cc-pcard h3{font-size:22px !important;font-weight:600 !important}
.cc-why__item h3{font-size:18px !important;font-weight:600 !important}
.cct-intro h2{font-size:22px !important;font-weight:600 !important}
.cct-acc summary{font-size:20px !important;font-weight:600 !important}
.cct-cta h2,.ccc-form h2{font-size:28px !important;font-weight:700 !important}
.ccf-group h2{font-size:22px !important;font-weight:700 !important}
.ccc-card h3{font-size:18px !important;font-weight:600 !important}
.ccc-note h3{font-size:20px !important;font-weight:600 !important}
.cca-tm p{font-size:16px !important;font-weight:600 !important}
/* Body text */
.cc-hero__l p,.cca-roots__txt p,.cca-mission__txt p,.ccp-block__txt p,.cct-intro p,.ccc-note p{font-size:15px !important;line-height:1.7 !important;font-weight:400 !important}
.cc-pcard p,.cc-why__item p,.cc-tcard blockquote,.ccf-group a,.cct-body p{font-size:14px !important;line-height:1.6 !important}
.cc-kicker{font-size:14px !important;font-weight:600 !important}
/* Mobile */
@media(max-width:767px){
  .cc-hero__l h1{font-size:38px !important}
  .cc-pagehead h1{font-size:32px !important}
  .cc-snippet p{font-size:22px !important}
  .cca-hero h1{font-size:26px !important}
  .cc-ql__row h3{font-size:24px !important}
}