/* ============================================================
   LAYER 4 â€” Shared "country page" CSS, prefix: cp-
   Reused as-is by every /online-school-{country}/ page
   (Canada, Australia, ...). Do not fork per country â€” add new
   cp- classes here only if a genuinely new layout is needed.
   ============================================================ */
.cp-topbar{background:var(--navy);color:var(--w);font-size:var(--fs-13);text-align:center}
.cp-topbar a{color:var(--w);text-decoration:none;font-weight:700;padding:10px var(--gutter);display:inline-block}
.cp-nav{background:var(--w);border-bottom:1px solid var(--g200);position:sticky;top:0;z-index:var(--z-sticky)}
.cp-nav .container{display:flex;align-items:center;justify-content:space-between;padding:14px var(--gutter)}
.cp-nav__logo{font-family:var(--font-head);font-weight:800;font-size:var(--fs-18);color:var(--navy);text-decoration:none}

/* ---- Hero ---- */
.cp-hero{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--navy) 0%,var(--navy2) 100%);padding:var(--sp-8) 0}
.cp-hero__badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-head);font-size:var(--fs-13);font-weight:700;color:var(--gold);background:rgba(245,166,35,.14);border:1px solid rgba(245,166,35,.3);border-radius:var(--r-pill);padding:6px 16px;margin-bottom:var(--sp-4)}
.cp-hero h1{color:var(--w);font-size:var(--fs-h1);margin-bottom:var(--sp-4)}
.cp-hero h1 em{font-style:normal;color:var(--gold)}
.cp-hero__sub{color:rgba(255,255,255,.75);font-size:var(--fs-16);max-width:70ch;margin:0 auto var(--sp-5);line-height:1.7;text-align:center}
.cp-hero__badges{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:var(--sp-6)}
.cp-hero__chip{font-size:var(--fs-13);font-weight:600;color:var(--w);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-pill);padding:6px 16px}
.cp-hero__center{text-align:center;max-width:900px;margin:0 auto}
.cp-hero__ctas{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.btn-demo-outline{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:700;font-size:var(--fs-15);color:var(--w);background:transparent;border:1.5px solid rgba(255,255,255,.3);border-radius:10px;height:52px;padding:0 28px}

/* ---- Google rating strip ---- */
.cp-gstrip{background:var(--off);padding:var(--sp-5) 0;text-align:center}
.cp-gstrip strong{color:var(--navy)}

/* ---- Reusable image placeholder ---- */
.cp-imgph{position:relative;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(135deg,var(--blue-lt) 0%,var(--g100) 60%,var(--gold-bg) 100%);display:flex;align-items:center;justify-content:center}
.cp-imgph::before{content:'';position:absolute;inset:0;opacity:.5;background-image:radial-gradient(rgba(37,99,235,.08) 1.5px,transparent 1.5px);background-size:16px 16px}
.cp-imgph__icon{position:relative;z-index:1;width:34px;height:34px;color:var(--g400)}
.cp-imgph__label{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:10px 14px;font-size:var(--fs-12);font-weight:700;color:var(--g500);background:linear-gradient(transparent,rgba(255,255,255,.9) 55%)}

/* ---- Accreditation marquee ---- */
.cp-accred-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.cp-accred-marquee .sws-marquee__item img{height:64px;padding:8px 0}

/* ---- Enrolment panel ---- */
.enroll-panel{background:var(--w);border:1px solid var(--g200);border-radius:var(--r-lg);box-shadow:var(--sh-lg);padding:var(--sp-6);max-width:460px;margin:0 auto}
.enroll-panel__head h3{font-size:var(--fs-h3);margin:10px 0 4px}
.enroll-panel__head p{font-size:var(--fs-13);color:var(--g500);margin-bottom:var(--sp-4)}
.enroll-panel__steps{display:flex;gap:16px;margin-bottom:var(--sp-4);padding-bottom:var(--sp-3);border-bottom:1px solid var(--g200)}
.enroll-panel__steps .step{font-size:var(--fs-12);font-weight:700;color:var(--g400)}
.enroll-panel__steps .step.active{color:var(--blue)}
.enroll-panel__form .enrollform__submit{height:50px}
.cp-demo-grid{display:grid;grid-template-columns:1fr .95fr;gap:var(--sp-7);align-items:start}
@media(max-width:1024px){.cp-demo-grid{grid-template-columns:1fr}}

/* ---- Accordion (why-choose style) ---- */
.cp-why-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--sp-6);align-items:start}
.cp-why-acc .sws-acc__item{border-radius:var(--r-pill);margin-bottom:var(--sp-4)}
.cp-why-acc .sws-acc__btn{font-weight:700;font-size:var(--fs-16);padding:20px 26px}
.cp-why-acc .sws-acc__body-inner{padding:0 26px 22px;font-size:var(--fs-14);line-height:1.7}
.cp-why-acc .sws-acc__item.open{border-radius:var(--r-lg)}
.cp-why-image{position:sticky;top:100px;height:380px}
.cp-why-image img{width:100%;height:100%;object-fit:cover;border-radius:var(--r-lg);display:block}
@media(max-width:1024px){.cp-why-grid{grid-template-columns:1fr}.cp-why-image{position:static;height:auto;aspect-ratio:16/9}}

/* ---- 5-step grid ---- */
.cp-steps5-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5)}
@media(max-width:1024px){.cp-steps5-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.cp-steps5-grid{grid-template-columns:1fr}}

/* ---- Curriculum grid ---- */
.cp-curric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5)}
.cp-curric-grid .sws-card{display:flex;flex-direction:column}
.cp-curric-grid .sws-card__text{flex:1;margin-bottom:var(--sp-4)}
.cp-curric-cta{align-self:flex-start;font-family:var(--font-head);font-weight:700;font-size:var(--fs-14);color:var(--blue);text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.cp-curric-cta::after{content:'\2192'}
.cp-curric-cta:hover{text-decoration:underline}
@media(max-width:1024px){.cp-curric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.cp-curric-grid{grid-template-columns:1fr}}

/* ---- Age table ---- */
.cp-age-table-wrap{max-width:900px;margin:0 auto;border:1px solid var(--g200);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm)}
.cp-age-table{width:100%;border-collapse:collapse;background:var(--w)}
.cp-age-table th{background:var(--navy);color:var(--w);font-family:var(--font-head);font-size:var(--fs-13);padding:14px var(--sp-4);text-align:left}
.cp-age-table td{padding:14px var(--sp-4);border-top:1px solid var(--g200);font-size:var(--fs-14);color:var(--g700)}
.cp-age-table td:first-child{font-weight:700;color:var(--navy)}
.cp-age-table-scroll{overflow-x:auto}
.cp-age-table-scroll table{min-width:640px}

/* ---- Franchise ---- */
.cp-franchise{background:var(--navy);border-radius:var(--r-lg);padding:var(--sp-7);text-align:center}
.cp-franchise h2{color:var(--w);margin-bottom:8px}
.cp-franchise p{color:rgba(255,255,255,.7);margin-bottom:var(--sp-5)}

/* ---- Testimonial carousel ---- */
.cp-tr-carousel .sws-carousel__track{padding-bottom:var(--sp-3)}
.tr-card h3{font-family:var(--font-head);font-weight:700;font-size:var(--fs-16);color:var(--navy);margin-bottom:2px}

/* ---- As Seen In media carousel ---- */
.cp-media-carousel .sws-carousel__track{padding-bottom:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5);overflow:visible}
.cp-media-card{width:auto;background:var(--w);border:1px solid var(--g200);border-radius:var(--r-lg);padding:var(--sp-5);display:flex;flex-direction:column;gap:12px;text-decoration:none;transition:transform var(--t-med) var(--ease),box-shadow var(--t-med) var(--ease)}
.cp-media-card:hover{transform:translateY(-4px);box-shadow:var(--sh-md)}
.cp-media-card__tag{align-self:flex-start;font-size:var(--fs-12);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#92400e;background:var(--gold-bg);padding:4px 10px;border-radius:6px}
.cp-media-card__thumb{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#000}
.cp-media-card__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.cp-media-card__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:10px;background:#ff0000;display:flex;align-items:center;justify-content:center}
.cp-media-card h4{font-size:var(--fs-15);color:var(--navy);line-height:1.4}
.cp-media-card__link{font-size:var(--fs-13);font-weight:700;color:var(--green-dark)}
@media(max-width:1024px){.cp-media-carousel .sws-carousel__track{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.cp-media-carousel .sws-carousel__track{grid-template-columns:1fr}.cp-media-card{width:auto}}

/* ---- Mega FAQ accordion (Everything Parents Ask) ---- */
.uae-mega-acc .sws-acc__item{border:2px solid var(--g200);border-radius:var(--r-pill);margin-bottom:var(--sp-4);transition:border-color var(--t-med)}
.uae-mega-acc .sws-acc__item.open{border-radius:var(--r-lg)}
.uae-mega-acc--blue.open{border-color:var(--blue)}
.uae-mega-acc--gold.open{border-color:var(--gold)}
.uae-mega-acc__btn{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-5) var(--sp-5)}
.uae-mega-acc__icon{flex:none;width:18px;height:18px;color:var(--g400);margin-top:3px}
.uae-mega-acc__headtext{display:flex;flex-direction:column;gap:4px;text-align:left;flex:1}
.uae-mega-acc__title{font-family:var(--font-head);font-weight:700;color:var(--navy);font-size:var(--fs-16)}
.uae-mega-acc__sub{font-size:var(--fs-14);color:var(--g500);font-weight:500}
.uae-mega-acc__chevron{transform:none !important}
.sws-acc__item.open .uae-mega-acc__chevron{transform:rotate(180deg) !important}
.uae-mega-acc .sws-acc__body-inner{display:flex;flex-direction:column;gap:10px;padding-left:calc(18px + var(--sp-3) + var(--sp-5));padding-right:var(--sp-5)}
.uae-mega-acc .sws-acc__body-inner p{margin:0;font-size:var(--fs-15);color:var(--g600);line-height:1.7}
@media(max-width:640px){.uae-mega-acc .sws-acc__body-inner{padding-left:var(--sp-5)}}

/* ---- Awards / partner marquee ---- */
.cp-award-marquee .sws-marquee__item img{height:180px;width:auto}

/* ---- Footer ---- */
.cp-footer{background:var(--navy2);color:rgba(255,255,255,.6);padding:var(--sp-7) 0 var(--sp-6)}
.cp-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--sp-6);margin-bottom:var(--sp-5)}
.cp-footer h4{color:var(--w);font-size:var(--fs-15);margin-bottom:var(--sp-3)}
.cp-footer p{font-size:var(--fs-14);line-height:1.6}
.cp-footer a{color:rgba(255,255,255,.7)}
.cp-footer ul{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-4)}
.cp-footer ul li a{font-size:var(--fs-14)}
.cp-footer__social{display:flex;gap:12px;margin-top:var(--sp-4)}
.cp-footer__social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center}
.cp-footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:var(--sp-4);text-align:center;font-size:var(--fs-13)}
@media(max-width:1024px){.cp-footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.cp-footer__grid{grid-template-columns:1fr}}