

:root {
  --ces-purple:#477cf3; --ces-deep:#243a60; --ces-aqua:#78d7df; --ces-gold:#f4c94f;
  --green:#477cf3; --green-dark:#243a60; --mint:#e2f6f5; --cream:#f5f7fc;
  --ink:#202b43; --muted:#788297; --line:#e8edf5; --lime:#f9dc87;
  --purple:#477cf3; --purple-deep:#243a60; --gold:#f9dc87; --gold-deep:#96701e;
  --teal:#50bbc4; --teal-deep:#257d85; --paper:#f5f7fc; --paper-deep:#edf2fb;
  --white:#fff; --ink-soft:#788297; --border:#e8edf5;
  --shadow:0 12px 32px #1933660b; --shadow-lg:0 24px 60px #19336620;
}
body {background:#f5f7fc;background-image:radial-gradient(ellipse at 85% 230px,#e2f5f580,transparent 33%),radial-gradient(ellipse at 2% 500px,#e4ecfc60,transparent 38%);background-repeat:no-repeat;color:var(--ink)}
h1,h2,h3,h4 {color:var(--ink)}
h1 em,h2 em {color:var(--ces-purple)}
a,button {touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {outline:3px solid #3e69be;outline-offset:4px}
.container {max-width:1280px}
.top-strip {background:#8fd8e9;color:#243a60;font-size:10px;letter-spacing:.04em;border-bottom:1px solid #78cdd3}
.top-strip .container {height:34px}
.site-header {background:#fffdfbeb;backdrop-filter:blur(20px);border-bottom:1px solid #e1e6f1aa}
.nav-wrap {height:94px}
.brand img {mix-blend-mode:normal;filter:drop-shadow(0 3px 3px #1c3d7e12)}
.brand>span {color:#1b2f57;font-size:15px}
.brand-sub {color:#6e7fa1;font-size:8px;letter-spacing:.18em}
.site-header nav {font-size:12px;gap:25px}
.site-header nav>a:not(.button) {color:#5c6d8e;transition:color .2s}
.site-header nav>a:not(.button):hover,.site-header nav>a.active {color:var(--ces-purple)}
.site-header nav>a.active {box-shadow:0 2px 0 var(--ces-purple)}
.button {background:linear-gradient(140deg,#3058a9,#477cf3 70%);border:1px solid #2b52a0;border-bottom:3px solid #183368;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff30,0 7px 15px #477cf318;color:#fff;letter-spacing:.01em;padding:16px 25px}
.button:hover {background:linear-gradient(140deg,#3b64b5,#21458c);box-shadow:inset 0 1px 0 #ffffff40,0 12px 24px #477cf328;color:#fff}
.button.small {padding:12px 19px;border-radius:10px}
.hero {padding-top:68px;padding-bottom:75px;min-height:680px;grid-template-columns:1.05fr 1fr;gap:48px}
.hero-copy {position:relative;z-index:3}
.status-pill {background:#fff;border:1px solid #dbe2f0;box-shadow:0 3px 9px #15316805;color:#455f94;padding:8px 13px;font-size:10px;margin-bottom:28px}
.status-dot {background:#55adb3;box-shadow:0 0 0 4px #55adb312}
.hero h1 {font-size:clamp(44px,4.5vw,63px);font-weight:700;line-height:1.13;letter-spacing:-.06em;color:#192d55}
.hero h1 em {display:inline-block;font-size:.65em;font-weight:400;color:#9a752e;margin-top:12px;letter-spacing:-.03em}
.hero-intro {color:#364d7c;font-size:18px;margin-top:22px}
.hero-description {font-size:13px;line-height:1.9;color:#657596;max-width:435px}
.hero .button-row {gap:22px;margin-top:28px}
.text-link {color:#3c527e}
.play-mark {border-color:#ced8eb;background:#fff;box-shadow:0 3px 7px #18336808}
.hero-footnote {margin-top:32px;color:#6b7da1;font-size:10px}
.little-sun {color:#ddb345;text-shadow:0 2px 0 #fff0b2,0 4px 8px #cf9e2820}
.hero-art {height:480px;isolation:isolate}
.art-orbit {width:410px;height:410px;left:8%;top:18px;background:radial-gradient(circle at 40% 35%,#faffff,#e7f6f5 55%,#d5edf0);border:1px solid #cfebed;box-shadow:0 0 0 24px #eff8f780,0 0 0 25px #dcefee90,0 0 0 48px #f6faf850;transform:rotateX(12deg) rotateZ(-12deg)}
.hero-art::after {content:'';position:absolute;width:65%;height:30px;border-radius:50%;left:20%;bottom:33px;background:#39507f16;filter:blur(15px);z-index:-1;transform:rotate(-8deg)}
.hero-photo {width:75%;left:14%;top:37px;padding:15px 15px 0;background:linear-gradient(130deg,#ffffff,#fafbfe);border:1px solid white;border-radius:50% 50% 24px 24px;transform:rotate(-6deg) rotateY(-10deg);box-shadow:7px 9px 0 #d2dbed,9px 11px 0 #c2cee5,15px 28px 42px #2b3d6122;overflow:hidden}
.hero-photo img {height:auto;aspect-ratio:1;object-fit:contain;border-radius:50%;filter:drop-shadow(0 5px 4px #2e4e8d16);background:transparent}
.hero-photo figcaption {color:#62759c;height:36px;font-size:9px}
.photo-dot {background:#9bcfd1}
.orb-peach {width:66px;height:66px;left:0;top:23px;background:radial-gradient(circle at 28% 22%,#fffbea,#ffe28e 28%,#eabd45 66%,#c89521);box-shadow:inset -6px -7px 10px #b6812b30,8px 17px 22px #b4872225}
.floating-star {color:#466cb7;text-shadow:1px 1px #b7c9ed,2px 3px #7b98d2,4px 5px #395b9f,6px 8px #274889,10px 18px 16px #2a4c9028;right:-1%;top:0;font-size:94px}
.joy-card {top:317px;left:-8px;background:linear-gradient(140deg,#fffffffa,#eef2fbf0);border:1px solid white;box-shadow:0 13px 30px #1f3b7320,0 3px 0 #dae1ef;transform:rotate(-5deg);border-radius:16px;padding:17px 20px 17px 14px;color:#284071}
.joy-icon {background:linear-gradient(135deg,#d9f5f2,#aee1e1);color:#387f85;box-shadow:inset 0 2px 2px #ffffff,0 3px 0 #97c8cb}
.round-note {top:286px;right:-4px;background:linear-gradient(135deg,#fff7d8,#f4d373);color:#85601d;border-color:#fff8e6;outline-color:#f1dfac;box-shadow:4px 7px 0 #e3c57155,8px 15px 25px #89652315;width:100px;height:100px}
.art-caption {color:#6d81a8;left:44px;bottom:0}
.book-cover {background:linear-gradient(115deg,#244483,#6083c9 8%,#35589d 13%,#5577ba 85%,#8fa6d4);border-color:#7993c8;color:#fff3cb}
.book-pages {border-bottom-color:#244483}
.values-bar {background:#fff;border-top:1px solid #e6eaf3;border-bottom:1px solid #e6eaf3}
.values-bar .container {min-height:84px;gap:22px}
.values-bar span {color:#566b95;font-size:10px;font-weight:500}
.values-bar .icon {color:#4368b1;background:#ebf0fa;padding:8px;box-sizing:content-box;border-radius:12px;width:19px;height:19px;box-shadow:inset 0 1px 0 white,0 2px 0 #d9e1f2}
.section {padding-block:85px}
.eyebrow {color:#617db5;letter-spacing:.17em;font-size:9px}
.eyebrow>span {background:#d9b55e}
.section-heading {margin-bottom:35px}
h2 {font-weight:650;font-size:clamp(33px,3.4vw,46px)}
.feature-grid {gap:22px}
.feature-card {border-radius:24px;border:1px solid #ffffff;padding:150px 29px 28px;box-shadow:inset 0 1px 0 #fff,0 4px 0 #27458008,0 14px 32px #2b3d6108;transition:transform .25s,box-shadow .25s;overflow:hidden}
.feature-card:hover {transform:translateY(-6px);box-shadow:inset 0 1px 0 white,0 6px 0 #27458009,0 20px 35px #2b3d6112}
.feature-green {background:linear-gradient(145deg,#eaf9f7,#dcf0ef)}
.feature-peach {background:linear-gradient(145deg,#fff9e8,#f9eecf)}
.feature-lilac {background:linear-gradient(145deg,#ecf1fa,#dde5f6)}
.feature-card h3 {font-size:27px;color:#293857}
.feature-card p {color:#627292;line-height:1.85;font-size:12px}
.feature-card a {color:#374f7f;border-color:#566fa222}
.card-number {color:#7283a5;font-size:8px}
.heart-sculpture {color:#73bfc5;text-shadow:1px 1px #dbffff,3px 4px #5ba4ad,6px 7px #478f98,10px 13px 12px #549da536}
.spark-sculpture {color:#e9c254;text-shadow:1px 1px #fff6cc,3px 4px #d3a62e,6px 7px #bb8b29,10px 13px 12px #ac81232a}
.music-sculpture {color:#6e8cc8;text-shadow:1px 1px #e0e9fc,3px 4px #5273b4,6px 7px #3f5d9a,10px 13px 12px #3b599630}
.care-note {background:#fff;border:1px solid #e5eaf4;border-radius:14px;box-shadow:0 8px 20px #1e386d05;color:#54678c}
.care-icon,.contact-icon {background:#e3eaf7;color:#4467ad;border-radius:12px;box-shadow:inset 0 1px 0 #fff,0 2px 0 #cfdaef}
.care-note p,.care-note p strong {color:#54678c}
.learning-section {background:linear-gradient(135deg,#f1f4fb,#faf8fd 60%,#edf8f7);border-block:1px solid #e5eaf4}
.journey-grid {gap:24px}
.journey-grid article {background:#ffffffc9;border:1px solid #e5ebf6;border-radius:18px;padding:26px;box-shadow:0 6px 20px #2b467c05}
.stage-badge {background:#e3eaf8;color:#4868a7;box-shadow:0 2px 0 #c8d4ec;border:1px solid #fff}
.stage-tags span {background:#f0f4fb;border-color:#dae1f0;color:#576fa0}
.age-label {color:#6d80a6}
.learning-bottom {border-color:#d6deef;color:#61749b}
.gallery-card,.photo-card {border:5px solid #fff;border-radius:20px;box-shadow:0 6px 0 #e6ebf4,0 16px 28px #29427310;overflow:hidden}
.gallery-card::after {background:linear-gradient(transparent 25%,#0f2041bb)}
.gallery-label strong,.gallery-label small {color:white}
.memory-strip {color:#617bae}
.memory-strip>span {color:#809ad0}
.admission-panel,.wellness-banner,.join-faculty-panel {background:radial-gradient(ellipse at 90% 15%,#4262a275,transparent 60%),linear-gradient(115deg,#152b58,#214283);border:1px solid #4664a0;border-radius:25px;box-shadow:inset 0 1px 0 #ffffff26,0 7px 0 #11254e17,0 20px 35px #1d315817}
.admission-panel h2,.admission-steps h3,.wellness-banner h2,.join-faculty-panel h2 {color:white}
.admission-panel h2 em,.wellness-banner h2 em {color:#f4d57d}
.admission-panel p,.admission-steps p,.wellness-banner p,.wellness-item p,.join-faculty-panel p {color:#c5d2ed}
.admission-panel .eyebrow {color:#aabfe8}
.button.cream {background:linear-gradient(145deg,#fff3c5,#f6d575);color:#2b4270;border-color:#ffe9a3;border-bottom-color:#d9b653;box-shadow:inset 0 1px 0 white,0 5px 12px #0c193325}
.light-link {color:#dfe7f6}
.admission-steps li>span {background:#ffffff14;color:#f5da8d;border:1px solid #ffffff24;box-shadow:inset 0 1px 0 #ffffff15}
.panel-orb {background:radial-gradient(circle at 30% 25%,#c2f4ec,#85c5cc 35%,#56929f 65%,#426082);box-shadow:inset -12px -15px 20px #3d4a6b40,8px 22px 30px #06153330}
.faq-list details {background:white;border:1px solid #e3e8f3;border-radius:13px;margin-bottom:10px;padding:0 21px;box-shadow:0 4px 12px #223e7703}
.faq-list details:first-child {border-top:1px solid #e3e8f3}
.faq-list summary {color:#36486d;padding-block:20px}
.faq-list summary span {background:#ebf0fa;color:#5474b4;border-radius:50%;width:24px;height:24px;text-align:center}
.faq-list details p {padding-bottom:18px}
.contact-section {background:linear-gradient(110deg,#f1f8f6,#edf5f5);border-block:1px solid #dfedeb}
.contact-card {background:#ffffffed;border:1px solid white;border-radius:22px;box-shadow:0 5px 0 #dfebeb80,0 18px 35px #3868690a}
.contact-row+.contact-row {border-color:#e5eaf4}
.contact-row a {color:#3e547f}
.contact-note,.contact-note .icon {color:#7f7490}
.site-footer {padding-top:38px}
.footer-top,.footer-bottom {border-color:#e5eaf4}
.footer-top p {color:#4c618c}
.footer-bottom {color:#7b8bac}

.academics-hero,.faculty-hero,.gallery-hero {position:relative;isolation:isolate;max-width:950px;padding:65px 30px 42px}
.academics-hero::before,.faculty-hero::before,.gallery-hero::before {content:'';position:absolute;z-index:-1;inset:15px 0 -10px;background:radial-gradient(ellipse at center,#e6edfaa0,transparent 70%);pointer-events:none}
.academics-hero h1,.faculty-hero h1,.gallery-hero h1 {font-weight:700;color:#1c315a;font-size:clamp(36px,4.5vw,58px)}
.jump-pill,.pillar-pill {background:white;color:#49649b;border-color:#d9e0ee;box-shadow:0 3px 0 #e2e8f350;padding:9px 18px}
.jump-pill .icon,.pillar-pill .icon {color:#5d7cba}
.jump-pill:hover {background:#ebf0fa}
.routine-card,.fee-card,.term-card,.faculty-card,.standard-box {background:white;border:1px solid #dfe5f2;border-radius:20px;box-shadow:0 4px 0 #e5eaf560,0 12px 28px #1e366506}
.routine-card::before {background:linear-gradient(90deg,#294e97,#819dd5)}
.routine-card.kg::before {background:linear-gradient(90deg,#58b5bd,#a1e1e0)}
.routine-badge,.leadership-badge {background:#e5ecf9;color:#4d6cab}
.routine-card.kg .routine-badge {background:#e2f6f4;color:#35858b}
.time-slot,.time-slot svg {color:#526fa8}
.routine-footer {background:#f5f8fd;border-color:#e1e7f4;color:#687ca3}
.fee-icon-box,.standard-icon-wrap {background:linear-gradient(135deg,#e9effc,#d4def3);color:#4e6fb0;box-shadow:inset 0 1px 0 #fff,0 3px 0 #bdccea}
.fee-list li svg {color:#5eaaa9}
.fee-header,.term-heading,.event-row {border-color:#e3e8f3}
.fee-policy-note {background:#f3f6fd;border:1px solid #dce3f2}
.fee-policy-note p {color:#5a709d}
.event-month-pill {background:#ecf1fa;color:#5674b1}
.wellness-badge {background:#ffffff12;border-color:#ffffff20;color:#f7da89}
.wellness-item {border-color:#ffffff20;background:#ffffff0c}
#creative.wellness-banner {background:var(--ces-deep)}
.leadership-card {background:linear-gradient(135deg,#fff,#eef2fb);border:1px solid #e2e9f7;box-shadow:0 8px 0 #e3eaf740,0 18px 36px #2a47820a;border-radius:25px}
.leadership-avatar {background:radial-gradient(circle at 30% 25%,#7391cd,#1d4188);box-shadow:0 8px 0 #ccd6eb80,0 15px 25px #1c397415}
.leadership-role,.leadership-script {color:#617fbb}
.leadership-message {color:#5a6d94}
.faculty-nav-bar,.filter-bar {gap:8px}
.faculty-tab-btn,.filter-btn {background:#fff;border:1px solid #dbe2f1;color:#697ea7;border-radius:12px;box-shadow:0 3px 0 #e5eaf560}
.faculty-tab-btn:hover,.filter-btn:hover {background:#ebf0fb;border-color:#b9c8e7;color:#3b5b9c}
.faculty-tab-btn.active,.filter-btn.active,.page-btn.active {background:linear-gradient(140deg,#4467ac,#477cf3);border-color:#2c5099;color:white;box-shadow:0 3px 0 #14326d,0 6px 12px #1d418814}
.teacher-role,.teacher-qualification {color:#536ea5}
.teacher-tag {background:#eff3fa;border-color:#dce4f3;color:#5b75aa}
.teacher-quote {color:#62769d}
.standards-section {background:#f0f3fa;border-block:1px solid #dfe6f5}
.join-contact-box {background:#ffffff0f;border-color:#ffffff20}
.join-contact-box a {color:#f4d889}
.photo-overlay {background:linear-gradient(to top,#101f3ee8, #22355a38 65%,transparent)}
.photo-pin-corner {background:#1d4188e8}
.photo-tag,.photo-date {color:#e1e9fa}
.empty-gallery {background:#f6f9fe;border-color:#d4ddf0}
.page-btn {border-color:#dce3f1;color:#4b669d}
.page-btn:hover:not(:disabled) {background:#ebf0fa;border-color:#becdea}
.jump-to-page-wrap {background:#f0f4fb;border-color:#d6dff0}
.jump-to-page-wrap label {color:#6178a5}

body:has(.form-shell) {background:radial-gradient(ellipse at 0 0,#e1e9f9,transparent 50%),radial-gradient(ellipse at 100% 75%,#dff3f2,transparent 50%),#f7f9fd}
.form-card,.closed-card,.success-note {background:#fff;border:1px solid white;border-radius:25px;box-shadow:0 7px 0 #d9e1f080,0 25px 65px #1e3a7312}
.wizard-header {background:linear-gradient(#ecf1fa,transparent)}
.brand-text h1,.step-title,.closed-card h2 {color:#28447c}
.year-pill {background:#ecf2fd;color:#5a79b7;border-color:#d3def3}
.stepper::before {background:#d8e1f2}
.step-dot {background:#eef2f9;border-color:#dae2f2;color:#7b8fb6}
.step-item.active .step-dot {background:#35579b;border-color:#35579b;color:white;box-shadow:0 0 0 4px #e1e9f8}
.step-item.completed .step-dot {background:#d5eeea;border-color:#9acfc8;color:#357b76}
.class-card {background:#f6f9fe;color:#5572ac;border-color:#d9e1f2;box-shadow:0 3px 0 #e2e9f7}
.class-card:hover {background:#e8eefb}
.class-card.selected {background:linear-gradient(145deg,#5477be,#477cf3);border-color:#3b5ea4;color:white;box-shadow:0 3px 0 #18346c,inset 0 1px 0 #ffffff40}
.input-group label {color:#526b9d}
.input-group input,.input-group select,.login-input {background:#fcfaff;border:1px solid #d6dff0;color:#2a406c;border-radius:10px}
.input-group input:focus,.input-group select:focus {background:white;border-color:#7693cd;box-shadow:0 0 0 3px #e3eaf9}
.btn-continue,.btn-submit,.btn-home {background:linear-gradient(140deg,#4a70bb,#477cf3);border:1px solid #395fac;border-bottom:3px solid #16336c;color:white;box-shadow:inset 0 1px 0 #ffffff35,0 7px 15px #477cf315;border-radius:11px}
.btn-back {background:#f6f9fe;border-color:#d6dff0;color:#617db6}
.photo-frame {border-color:#a4b7de;box-shadow:0 8px 20px #477cf312}
.photo-badge {background:#4264a7}
.review-card,.draft-banner,.form-help {background:#f0f4fc;border-color:#d9e2f3;color:#556ea0}
.form-help a {color:#395a9c}
.id-chip {background:#eff9f7;border-color:#cfe8e4;color:#56938e}
.waitlist-box {background:#f1f5fc;border-color:#d9e2f3}
@media(min-width:1450px){.hero{padding-top:90px;padding-bottom:90px;min-height:720px}.hero-art{height:490px}}
@media(max-width:1100px){.site-header nav{gap:17px}.brand>span{font-size:13px}.hero{gap:25px}.hero h1{font-size:49px}.hero-art{height:430px}.art-orbit{width:340px;height:340px;left:4%}.hero-photo{left:10%;width:80%}.joy-card{top:290px;font-size:10px;padding:13px}.round-note{width:80px;height:80px;right:-2px;top:245px}.floating-star{font-size:80px}.values-bar .container{gap:17px}.values-bar span{font-size:9px}.values-bar .icon{padding:6px;width:16px;height:16px}.journey-grid article{padding:20px}.hero .button-row{gap:15px}}
@media(max-width:800px){.nav-wrap{height:76px}.site-header nav{background:#fcfdff;border-bottom:1px solid #dae2f2;box-shadow:0 12px 25px #15326c12}.menu-toggle{border-color:#d6dff0;background:#fff;color:#4868a8}.hero{gap:20px;padding-block:45px;grid-template-columns:1.05fr 1fr}.hero h1{font-size:39px}.hero-intro{font-size:15px}.hero-art{height:385px}.hero-photo{top:45px;width:83%;left:10%}.art-orbit{width:260px;height:260px;top:52px;left:4%}.floating-star{font-size:70px;top:20px}.orb-peach{width:43px;height:43px}.joy-card{top:252px;left:-10px;font-size:9px;padding:10px}.joy-card small{font-size:8px}.round-note{width:70px;height:70px;top:230px}.art-caption{left:14px;font-size:9px}.section{padding-block:65px}.feature-grid{gap:14px}.feature-card{padding:125px 20px 25px}.feature-card h3{font-size:23px}.journey-grid{gap:14px}.journey-grid article{padding:17px}.values-bar .container{gap:17px 25px}.academics-hero,.faculty-hero,.gallery-hero{padding-top:45px}}
@media(max-width:600px){.container{padding-inline:22px}.hero{grid-template-columns:1fr;padding-top:34px;padding-bottom:40px;gap:28px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(39px,10vw,56px);line-height:1.12}.hero h1 em{font-size:.65em;margin-top:10px}.hero-intro{font-size:16px;margin-top:20px}.hero-description{font-size:12px}.status-pill{font-size:9px;margin-bottom:22px}.hero .button-row{gap:17px}.hero .button{font-size:11px;padding:14px 16px}.hero-art{max-width:385px;width:100%;height:385px;margin:auto}.hero-photo{left:13%;top:24px;width:75%;padding:12px 12px 0}.hero-photo figcaption{font-size:8px;height:31px}.art-orbit{width:76%;height:auto;aspect-ratio:1;left:10%;top:20px}.orb-peach{left:2%;top:20px;width:43px;height:43px}.floating-star{right:0;top:0;font-size:75px}.joy-card{top:258px;left:0;font-size:10px;max-width:75%}.round-note{right:0;top:220px;width:79px;height:79px}.art-caption{left:24px;bottom:4px;font-size:10px}.values-bar .container{gap:15px 20px;padding-block:23px}.values-bar span{font-size:9px}.values-bar .icon{width:15px;height:15px;padding:5px;border-radius:8px}.section{padding-block:54px}.section-heading{margin-bottom:28px}.feature-card{padding:30px 25px;min-height:265px;border-radius:20px}.feature-card h3{font-size:26px}.feature-card .sculpture{top:27px;right:20px}.journey-grid{gap:18px}.journey-grid article{padding:25px}.admission-panel{padding:32px 25px;border-radius:20px}.admission-panel h2{font-size:31px}.faq-list details{padding-inline:17px}.faq-list summary{font-size:12px}.contact-card{border-radius:18px}.academics-hero,.faculty-hero,.gallery-hero{padding:38px 0 30px}.academics-hero::before,.faculty-hero::before,.gallery-hero::before{inset:0}.academics-hero h1,.faculty-hero h1,.gallery-hero h1{font-size:37px}.academics-hero p,.faculty-hero p,.gallery-hero p{font-size:13px}.jump-pill,.pillar-pill{font-size:11px;padding:8px 13px}.gallery-masonry{grid-template-columns:minmax(0,1fr)}.faculty-tab-btn,.filter-btn{min-height:40px}.form-card,.closed-card{border-radius:20px}.brand-text h1{font-size:1.1rem}}
@media(max-width:360px){.hero-art{height:345px}.joy-card{top:228px;padding:9px;font-size:9px}.round-note{top:190px;width:68px;height:68px}.hero .button-row{gap:12px}.brand>span{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{body{background:white}.site-header{position:static}.hero-photo,.feature-card,.contact-card,.form-card{box-shadow:none}}

.notice-item{background:linear-gradient(135deg,#fff,#eff3fc);border:1px solid #dce4f3;border-left:3px solid #879fd0;box-shadow:0 4px 12px #477cf305;border-radius:12px}
@media(min-width:801px){.art-caption{bottom:-29px;left:55px}.hero .book-object{right:-5px;bottom:-33px}}
@media(max-width:600px){.hero .book-object{right:0;bottom:-15px}.hero-photo figcaption{font-size:7px}}
.teacher-stage{background:#edf6f5;color:#4e8787}.teacher-quote{background:#f6f9fe;border-left-color:#9eb4e0}.avatar-green{background:linear-gradient(135deg,#5b7bbb,#304f8d)}

:root{--ces-purple:#477cf3;--ces-deep:#243a60;--green:#477cf3;--green-dark:#243a60;--ink:#202b43;--muted:#788297;--cream:#f5f7fc;--line:#e8edf5;--purple:#477cf3;--purple-deep:#2859c7;--ink-soft:#788297;--paper:#f5f7fc;--border:#e8edf5}
body{background:#f5f7fc;background-image:none}
h1,h2,h3,h4{color:#243a60}
h1 em,h2 em{font-family:var(--heading,'Manrope'),sans-serif;font-style:normal;font-weight:inherit;letter-spacing:inherit;color:#477cf3}
.top-strip{background:#8fd8e9;color:#243a60}
.site-header{background:#ffffffef;border-color:#e8edf5}
.brand>span{color:#243a60}.brand-sub{color:#788297}
.site-header nav>a:not(.button){color:#6e7c92}
.site-header nav>a:not(.button):hover,.site-header nav>a.active{color:#477cf3}
.button,.btn-continue,.btn-submit,.btn-home{background:#477cf3;border:1px solid #477cf3;border-radius:9px;box-shadow:0 5px 12px #477cf324;color:white}
.button:hover,.btn-continue:hover,.btn-submit:hover,.btn-home:hover{background:#3065de;box-shadow:0 8px 18px #477cf328}
.button.small{border-radius:9px}
.hero{position:relative;isolation:isolate}
.hero::before{content:'';position:absolute;z-index:-1;inset:25px 14px;border-radius:26px;background:linear-gradient(115deg,#edf3ff,#eaf1ff 55%,#e4effc);border:1px solid #e1eafa}
.hero-copy{padding-left:15px}.hero-art{margin-right:15px}
.hero h1{color:#243a60}.hero h1 em{color:#477cf3;font-size:.6em;font-weight:500}
.hero-intro{color:#46638d}.hero-description{color:#6b7f9f}
.status-pill{background:#ffffffc9;color:#5779ab;border-color:#dce7f8}
.hero-footnote{color:#7185a3}.hero-footnote strong{color:#48628b}
.art-orbit{background:radial-gradient(circle at 40% 35%,#fff,#edf4ff 55%,#dce9ff);border-color:#cdddf7;box-shadow:0 0 0 24px #ffffff30,0 0 0 25px #d4e2f980,0 0 0 48px #ffffff20}
.hero-photo{background:linear-gradient(130deg,#fff,#f5f8ff);box-shadow:7px 9px 0 #dce6f5,9px 11px 0 #cdd9eb,15px 28px 42px #39587f22}
.hero-photo figcaption{color:#788cab}.art-caption{color:#7890b2}
.joy-card{background:linear-gradient(140deg,#fff,#f1f6ff);color:#46658e;box-shadow:0 13px 30px #365b9220,0 3px 0 #dce6f5}
.floating-star{color:#729ef4;text-shadow:1px 1px #d5e4ff,2px 3px #a1c1fb,4px 5px #527fd6,6px 8px #3968c3,10px 18px 16px #477cf328}
.book-cover{background:linear-gradient(115deg,#396ac7,#9dbffa 8%,#4b7fdd 13%,#75a0ee 85%,#a8c7ff);border-color:#a5c1ee}
.book-pages{border-bottom-color:#396ac7}
.values-bar{background:white;border-color:#e8edf5}.values-bar span{color:#70829e}.values-bar .icon{background:#edf3ff;color:#5b86d4;box-shadow:inset 0 1px 0 white,0 2px 0 #dce7f8}
.feature-card{border:1px solid #e3eafa;border-radius:18px;box-shadow:0 5px 20px #233b6505}
.feature-green{background:#eaf9f6;border-color:#dcf1ec}.feature-peach{background:#fff7e9;border-color:#f7ecd5}.feature-lilac{background:#edf3ff;border-color:#e2eafa}
.feature-card h3{color:#283752}.feature-card p{color:#718098}.feature-card a{color:#5276ac}
.music-sculpture{color:#7fa3e5;text-shadow:1px 1px #e1edff,3px 4px #5f88ce,6px 7px #456eb4,10px 13px 12px #477cf328}
.learning-section,.standards-section{background:#edf2fb;border-color:#e3eafa}
.journey-grid article,.routine-card,.fee-card,.term-card,.faculty-card,.standard-box,.contact-card,.leadership-card{background:white;border-color:#e8edf5;box-shadow:0 5px 20px #233b6505;border-radius:16px}
.stage-tags span,.teacher-tag{background:#f3f7fe;border-color:#e1e9f7;color:#6984ac}
.admission-panel,.wellness-banner,.join-faculty-panel{background:radial-gradient(ellipse at 95% 0,#4b7ad475,transparent 60%),linear-gradient(115deg,#243a60,#315889);border-color:#426794;box-shadow:0 15px 35px #233b6514;border-radius:20px}
.admission-panel p,.admission-steps p,.wellness-banner p,.wellness-item p,.join-faculty-panel p{color:#d3e0f4}
.admission-panel .eyebrow{color:#c3d6f2}.admission-panel h2 em,.wellness-banner h2 em{color:#9ac4ff}
.contact-section{background:#eaf1fb;border-color:#e0e9f7}
.faculty-tab-btn.active,.filter-btn.active,.page-btn.active,.class-card.selected{background:#477cf3;border-color:#477cf3;box-shadow:0 4px 10px #477cf324}
body:has(.form-shell){background:radial-gradient(ellipse at top,#e5eeff,transparent 70%),#f5f7fc}
.form-card,.closed-card,.success-note{box-shadow:0 20px 55px #233b6510}.wizard-header{background:linear-gradient(#edf3ff,transparent)}
.form-help,.review-card,.draft-banner{background:#f1f6ff;border-color:#dfe8f7}

.notices.container{max-width:1240px;width:calc(100% - 64px);margin-inline:auto;padding:24px 28px 24px;margin-top:0;margin-bottom:34px;background:linear-gradient(180deg,#fff 0%,#f9fcff 100%);border:1px solid #d4e3ef;border-radius:18px;box-shadow:0 8px 30px rgba(18,89,118,0.07)}
.notice-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid #e5eff7}
.notice-heading .eyebrow{color:#032d43;font-size:10px;font-weight:750;letter-spacing:.13em}
.notice-heading h2{font-size:20px;letter-spacing:-.03em;color:#032d43}
#noticeStack{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;align-items:stretch}
.notice-item{position:relative;min-height:auto;padding:18px 22px;background:linear-gradient(135deg,#fffdf2 0%,#fff8db 60%,#fff1b8 100%);border:1.5px solid #fde078;border-left:6px solid #d97706;border-radius:14px;box-shadow:0 4px 18px rgba(217,119,6,0.09);color:#451a03;font-size:14px;font-weight:550;line-height:1.6;overflow-wrap:anywhere}
.notice-item::before,.notice-item::after{display:none!important}
.notice-item p{color:inherit;font-size:inherit;line-height:inherit;margin:0}
.notice-item time{display:inline-flex;align-items:center;gap:6px;color:inherit;opacity:.85;font-size:11px;letter-spacing:.01em;margin-top:14px;padding-top:11px;border-top:1px solid rgba(0,0,0,0.08);white-space:normal;font-weight:600}
.notice-item:nth-child(3n+2){background:linear-gradient(135deg,#f2fbf6 0%,#e3f8ec 60%,#d1f4e1 100%);border-color:#a7f3d0;border-left-color:#059669;color:#064e3b}
.notice-item:nth-child(3n+3){background:linear-gradient(135deg,#f4f8ff 0%,#e6f0fe 60%,#d7e8fe 100%);border-color:#bfdbfe;border-left-color:#2563eb;color:#1e3a8a}
@media(max-width:800px){.hero{gap:20px}.hero-copy{padding-left:0}.hero-art{margin-right:0}.hero::before{inset:12px 10px}.notices.container{width:calc(100% - 44px);padding:18px 20px 20px;margin-bottom:28px}}
@media(max-width:600px){.hero::before{inset:12px 10px;border-radius:20px}.hero-copy{padding:10px 9px 0}.hero-art{width:calc(100% - 12px);margin:auto}.hero h1{font-size:clamp(36px,9.7vw,53px)}.hero .button-row{gap:14px}.notices.container{width:calc(100% - 32px);padding:16px 16px 18px;margin-top:0;margin-bottom:24px;border-radius:14px}.notice-heading{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px}.notice-heading .eyebrow{font-size:9px}.notice-heading h2{font-size:16px;margin-top:0}#noticeStack{grid-template-columns:1fr;gap:12px}.notice-item{font-size:13px;padding:15px 16px;min-height:auto}.hero .book-object{right:0}}
@media(prefers-reduced-motion:reduce){.notice-item{transform:none}}
@media print{.notice-item{box-shadow:none;transform:none;break-inside:avoid}.notice-item::before{display:none}}
:root {
  --heading: 'Manrope', 'DM Sans', Arial, sans-serif;
  --ces-purple: #125976; --ces-deep: #032d43; --ces-aqua: #96ccd7; --ces-gold: #edbf5e;
  --green: #125976; --green-dark: #032d43; --ink: #101f40; --muted: #4e6680;
  --cream: #fbfcfc; --paper: #fbfcfc; --line: #dce6ec; --border: #dce6ec;
  --purple: #125976; --purple-deep: #032d43; --ink-soft: #4e6680;
}
body { background: #fbfcfc; color: var(--ink); }
h1,h2,h3,h4 { font-family: var(--heading); color: var(--ink); letter-spacing: -.035em; }
h1 em,h2 em { font-family: inherit; font-style: normal; color: inherit; }
.container { max-width: 1280px; }
.top-strip { background: #032638; color: #dbe9ef; border-color: #31566a; }
.site-header { background: #032d43f5; border-color: #426b7c; }
.nav-wrap { height: 96px; }
.brand>span { font-family: var(--heading); color: #fff; font-size: 25px; font-weight: 700; letter-spacing: -.03em; }
.brand-sub { font-family: var(--font); color: #e1edf4; font-size: 9px; letter-spacing: .23em; }
.brand img { width: 68px; height: 68px; object-fit: contain; }
.site-header nav { gap: 25px; }
.site-header nav>a:not(.button) { color: #f2f7fa; }
.site-header nav>a:not(.button):hover,.site-header nav>a.active { color: #f4cb75; box-shadow: none; }
.button,.button.cream { background: linear-gradient(150deg,#ffe39a,#e4b34e); color: #152334; border: 1px solid #efc970; border-radius: 9px; box-shadow: inset 0 1px 0 #fff6,0 4px 10px #16394b18; font-family: var(--heading); font-size: 16px; font-weight: 600; letter-spacing: 0; }
.button:hover,.button.cream:hover { background: linear-gradient(150deg,#ffeab5,#edbd5b); color: #101f40; box-shadow: 0 5px 16px #102e4326; }
.button.small { padding: 12px 26px; }
.eyebrow { color: #95621c; font-size: 10px; letter-spacing: .24em; }
.eyebrow>span { background: #d6a344; }
h2 { font-size: clamp(34px,3.8vw,51px); line-height: 1.08; font-weight: 600; }
.section { padding-block: 72px; }
.site-footer.container { max-width: none; padding: 45px max(28px,calc((100% - 1168px)/2)); background: radial-gradient(ellipse at top,#164e67,transparent 75%),#03283e; color: #dfebf1; }
.site-footer .brand>span { font-size: 25px; color: #fff; }
.site-footer .brand-sub { color: #dbe7ef; font-size: 9px; }
.site-footer .brand img { width: 70px; height: 70px; }
.footer-top p,.site-footer .text-link,.footer-bottom { color: #dbe7ef; }
.footer-bottom { border-color: #ffffff26; font-size: 11px; }
.academics-hero h1,.faculty-hero h1,.gallery-hero h1 { color: #082d47; font-weight: 600; }
.academics-hero::before,.faculty-hero::before,.gallery-hero::before { background: radial-gradient(ellipse,#d8edf280,transparent 70%); }
.wellness-banner,.join-faculty-panel { background: radial-gradient(ellipse at 90% 0,#276f86,transparent 65%),#032d43; border-color: #366579; }
.wellness-banner h2,.join-faculty-panel h2 { color: white; }
.wellness-banner h2 em { color: #f4d084; }
.faculty-tab-btn.active,.filter-btn.active,.page-btn.active { background: #125976; border-color: #125976; }
.ces-home .top-strip { display: none; }
.ces-home .hero .notice-ticker {
  grid-column: 1 / -1;
  width: 100%;
  max-width: 1190px;
  margin: 0 auto 14px auto;
  z-index: 4;
  background: #ffffff;
  border: 1px solid rgba(220, 230, 237, 0.95);
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(3, 38, 59, 0.22);
}
.ces-home .hero .notice-ticker[hidden] {
  display: none !important;
}
@media (max-width: 600px) {
  .ces-home .hero .notice-ticker {
    width: 100%;
    margin: 0 0 16px 0;
  }
}
.ces-home .hero { max-width: none; min-height: 570px; padding: 40px max(40px,calc((100% - 1168px)/2)) 85px; gap: 36px; grid-template-columns: 1.15fr 1fr; background: radial-gradient(ellipse at 73% 20%,#277e95 0,transparent 48%),linear-gradient(120deg,#03263b,#063b54); }
.ces-home .hero::before { inset: 0; border: 0; border-radius: 0; background: repeating-radial-gradient(ellipse at 100% -20%,transparent 0 76px,#74c0d212 77px 78px,transparent 79px 94px); }
.ces-home .hero-copy { padding: 0; }
.hero-kicker { color: #d0e5ee; font-size: 9px; letter-spacing: .29em; margin-bottom: 23px; }
.ces-home .hero h1 { color: #fff; font-size: clamp(40px,4.5vw,62px); line-height: 1.15; letter-spacing: -.035em; font-weight: 800; }
.hero-light-script {
  display: inline-block;
  white-space: nowrap;
  font-family: 'Dancing Script', 'Alex Brush', cursive;
  font-weight: 700;
  font-size: clamp(38px, 4.4vw, 64px);
  line-height: 1.2;
  background: linear-gradient(135deg, #fffdf0 0%, #ffe28a 25%, #f7b23b 65%, #e68c16 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 25px rgba(247, 178, 59, 0.55)) drop-shadow(0 2px 4px rgba(0, 0, 0, 0.6));
  letter-spacing: 0.01em;
  padding-right: 14px;
  transform: rotate(-1.5deg);
}
.ces-home .hero h1 em {
  display: block;
  font-family: 'Playfair Display', Georgia, serif;
  font-style: normal;
  font-size: 22px;
  font-weight: 500;
  color: #fcedc7;
  letter-spacing: 0.04em;
  margin-top: 15px;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.45);
}
.ces-home .hero-intro { font-family: var(--heading); color: white; font-size: 24px; font-weight: 600; line-height: 1.25; margin-top: 25px; }
.ces-home .hero-description { font-family: var(--heading); font-size: 16px; color: #d5e5ef; line-height: 1.45; max-width: 460px; }
.ces-home .status-pill { color: #e0eef3; border-color: #92bccf66; background: #ffffff0a; padding: 6px 10px; font-size: 10px; margin-bottom: 18px; }
.ces-home .status-dot { background: #efd17d; box-shadow: none; }
.ces-home .hero .button-row { margin-top: 27px; gap: 16px; }
.ces-home .hero-secondary { padding: 13px 24px; border: 1px solid #dcebf1; border-radius: 8px; color: white; font-family: var(--heading); font-size: 16px; font-weight: 400; }
.ces-home .hero-footnote { color: #c5dce6; margin-top: 20px; font-size: 10px; }
.ces-home .hero-footnote strong { color: #e3eef4; }
.ces-home .hero-art { height: auto; margin: 0; display: grid; place-items: center; min-width: 0; }
.ces-home .hero-art::after { display: none; }
.crest-display { margin: 0; width: 100%; text-align: center; }
.crest-display img { width: min(100%,440px); height: auto; aspect-ratio: 1; object-fit: contain; margin: auto; filter: drop-shadow(0 0 24px #91e6ec85) drop-shadow(0 12px 25px #001d35); }
.crest-display figcaption { font: 20px var(--heading); color: white; border-top: 1px solid #afd3df77; margin: 20px auto 0; padding: 18px 10px; max-width: 430px; }
.ces-home .values-bar { position: relative; z-index: 4; margin: -42px auto 0; max-width: 1190px; width: calc(100% - 64px); border: 1px solid #fff; border-radius: 20px; background: linear-gradient(120deg,#c8e4edeF,#edf7fa); box-shadow: 0 4px 15px #07324a25; }
.ces-home .values-bar .container { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; min-height: 116px; padding: 20px 24px; }
.value-promise { display: flex; align-items: center; gap: 18px; padding-inline: 20px; }
.value-promise+.value-promise { border-left: 1px solid #fff; }
.value-promise strong { display: block; font: 600 20px var(--heading); color: #112d4b; }
.value-promise small { display: block; font: 14px var(--heading); color: #345573; margin-top: 7px; }
.ces-home .values-bar .icon { flex: none; width: 30px; height: 30px; padding: 15px; border-radius: 50%; background: #edf8ff; color: #063a7b; border: 1px solid white; box-shadow: 0 3px 8px #a8863030; }
.ces-home #why { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; padding-top: 42px; padding-bottom: 38px; }
.heart-intro { margin-top: 20px; max-width: 530px; font: 18px/1.5 var(--heading); color: #3c5576; }
.heart-values { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-top: 30px; }
.heart-values article+article { border-left: 1px solid #dce6ee; padding-left: 20px; }
.heart-values .icon { width: 35px; height: 35px; box-sizing: content-box; padding: 12px; border-radius: 50%; background: #ffe7eb; color: #d97589; margin-bottom: 13px; }
.heart-values article:nth-child(2) .icon { background: #dff2ff; color: #499dc6; }
.heart-values article:nth-child(3) .icon { background: #dff1e3; color: #5c9986; }
.heart-values h3 { font-size: 22px; }
.heart-values p { font: 16px/1.4 var(--heading); color: #3c5576; margin-top: 7px; }
.heart-art img { display: block; width: 100%; height: auto; mix-blend-mode: multiply; }
.ces-home .care-note { grid-column: 1/-1; margin-top: 0; background: #f4f7f9; }
.ces-home .care-note p,.ces-home .care-note .text-link { font-size: 12px; }
.ces-home .learning-section { background: radial-gradient(ellipse at 50% 0,#216880,transparent 70%),#032d43; border: 0; margin-top: 0; }
.ces-home .learning-section .section { padding-block: 50px; }
.ces-home .learning-section h2 { color: white; font-size: clamp(32px,3.7vw,48px); }
.ces-home .learning-section .section-heading { align-items: end; gap: 30px; }
.ces-home .learning-section .section-heading>p { font: 16px/1.5 var(--heading); color: #d3e5ee; }
.ces-home .learning-section .eyebrow { color: #d1e8ef; }
.ces-home .journey-grid { gap: 16px; }
.ces-home .journey-grid article { background: #ffffff12; padding: 25px; border: 1px solid #fff; border-radius: 16px; }
.ces-home .journey-grid article:nth-child(2) { background: #ffffff12; }
.ces-home .journey-grid article:nth-child(3) { background: #ffffff12; }
.ces-home .journey-grid h3 { font-size: 25px; }
.ces-home .journey-grid p { font: 16px/1.45 var(--heading); color: #365578; }
.ces-home .grade { color: #294d6c; font-size: 11px; }
.ces-home .stage-badge { background: #fff9; color: #2a5573; box-shadow: none; }
.ces-home .age-label { color: #4a647b; }
.ces-home .stage-tags { display: none; }
.ces-home .learning-bottom { color: #cce0ea; border-color: #ffffff30; }
.ces-home .learning-bottom .text-link { color: #f7d180; }
.ces-home .admission-section { padding-top: 55px; }
.ces-home .admission-panel { padding: 15px 0 35px; background: transparent; border: 0; box-shadow: none; border-radius: 0; gap: 50px; grid-template-columns: 1.4fr 1fr; }
.ces-home .admission-panel h2 { color: #101f40; font-size: clamp(32px,3.6vw,47px); }
.ces-home .admission-panel h2 em { color: inherit; }
.ces-home .admission-panel p { color: #3b5876; max-width: 590px; font: 17px/1.5 var(--heading); }
.ces-home .admission-panel .eyebrow { color: #95621c; }
.ces-home .admission-panel .light-link { color: #224c6b; font-size: 13px; }
.ces-home .admission-steps { padding-left: 30px; border-left: 1px solid #cadce5; }
.ces-home .admission-steps h3 { color: #183c57; font-size: 20px; }
.ces-home .admission-steps p { font-size: 15px; }
.ces-home .admission-steps li>span { color: #865f27; border-color: #d9be89; }
.ces-home .panel-orb { display: none; }
.ces-home .faq-section { padding-top: 15px; padding-bottom: 50px; gap: 50px; }
.ces-home .faq-section h2 { font-size: 32px; }
.ces-home .faq-list summary { font-size: 14px; color: #1d405c; }
.ces-home .faq-list details p { font-size: 14px; }
.ces-home .contact-section { background: #edf5f7; padding-block: 45px; }
.ces-home .contact-grid h2 { font-size: 35px; }
@media(max-width:1100px) {
  .brand>span { font-size: 20px; }.site-header nav { gap: 16px; }.brand img { width: 55px; height: 55px; }
  .ces-home .hero { padding-inline: 35px; gap: 25px; }.value-promise { gap: 12px; padding-inline: 12px; }.value-promise strong { font-size: 17px; }.value-promise small { font-size: 13px; }
  .ces-home .values-bar .icon { width: 25px; height: 25px; padding: 11px; }
}
@media(max-width:800px) {
  .nav-wrap { height: 76px; }.site-header nav { background: #032d43; border-color: #426b7c; }.menu-toggle { background: #ffffff0a; color: white; border-color: #7495a5; }
  .ces-home .hero { grid-template-columns: 1fr 1fr; padding: 45px 28px 75px; }.ces-home .hero h1 { font-size: 45px; }.ces-home .hero-intro { font-size: 22px; }.ces-home .hero-description { font-size: 16px; }.hero-kicker { font-size: 8px; letter-spacing: .18em; }
  .ces-home .hero .button { font-size: 14px; }.ces-home .hero-secondary { font-size: 14px; padding: 12px 15px; }.crest-display figcaption { font-size: 17px; }
  .ces-home .values-bar { width: calc(100% - 40px); }.ces-home .values-bar .container { padding: 18px 8px; }.value-promise { flex-direction: column; text-align: center; }
  .ces-home #why { grid-template-columns: 1fr; }.heart-art { max-width: 550px; margin: auto; }.heart-values p { max-width: 180px; }
  .ces-home .journey-grid article { padding: 18px; }.ces-home .journey-grid h3 { font-size: 22px; }
  .ces-home .admission-panel { grid-template-columns: 1fr; gap: 30px; }.ces-home .admission-steps { border-left: 0; padding: 20px 0 0; border-top: 1px solid #cadce5; }
  .site-footer .brand>span { font-size: 20px; }
}
@media(max-width:600px) {
  .brand>span { font-size: 19px; }.brand-sub { font-size: 8px; letter-spacing: .16em; }.brand img { width: 49px; height: 49px; }.nav-wrap { gap: 10px; }
  .ces-home .hero { grid-template-columns: minmax(0,1fr); padding: 38px 24px 70px; gap: 25px; }.ces-home .hero h1 { font-size: clamp(34px,9vw,48px); }.hero-light-script { font-size: clamp(28px,7.5vw,42px); white-space: nowrap; }.ces-home .hero h1 em { font-size: 19px; }.ces-home .hero-art { width: 100%; max-width: 360px; height: auto; }.crest-display img { max-width: 310px; }.crest-display figcaption { margin-top: 12px; padding-block: 14px; }.ces-home .hero-footnote { font-size: 10px; }
  .ces-home .values-bar { width: calc(100% - 32px); border-radius: 15px; }.ces-home .values-bar .container { grid-template-columns: 1fr; padding: 10px 20px; }.value-promise { flex-direction: row; text-align: left; padding: 14px 0; gap: 17px; }.value-promise+.value-promise { border-left: 0; border-top: 1px solid white; }.value-promise strong { font-size: 20px; }.value-promise small { font-size: 14px; }
  .ces-home #why { padding-top: 44px; gap: 22px; }.heart-intro { font-size: 17px; }.heart-values { gap: 12px; }.heart-values article+article { padding-left: 12px; }.heart-values h3 { font-size: 19px; }.heart-values p { font-size: 15px; }.heart-values .icon { width: 26px; height: 26px; padding: 10px; }.heart-art { width: 100%; }
  .ces-home .care-note p,.ces-home .care-note .text-link { font-size: 11px; }.ces-home .care-note>.text-link { margin-left: 45px; }
  .ces-home .journey-grid { grid-template-columns: 1fr; }.ces-home .journey-grid article { padding: 24px; }.ces-home .journey-grid p { max-width: none; }.ces-home .learning-section .section { padding-block: 40px; }.ces-home .admission-section { padding-top: 35px; }.ces-home .admission-panel { padding-bottom: 20px; }.ces-home .faq-section { gap: 25px; }.ces-home .faq-list summary { font-size: 14px; }.ces-home .contact-grid h2 { font-size: 33px; }
  .site-footer .brand { min-width: 0; max-width: 100%; }
  .site-footer .brand>span { font-size: 18px; word-break: break-word; }
  .site-footer .brand-sub { font-size: 7px; }
  .site-footer .brand img { width: 44px; height: 44px; flex-shrink: 0; }
  .footer-bottom>div { flex-wrap: wrap; }
}
.ces-home { background: radial-gradient(ellipse at 10% 65%,#e6f4ff,transparent 60%),#f6fbff; }
.ces-home .hero { background: radial-gradient(ellipse at 76% 36%,#14739b 0,transparent 49%),linear-gradient(120deg,#021c39,#003c60); }
.ces-home .hero-kicker { line-height: 1.8; font-size: 11px; letter-spacing: .23em; color: #b8d5ee; }
.ces-home .crest-display img { box-sizing: border-box; max-width: 470px; width: 100%; padding: 28px; border: 2px solid #b0deef88; border-radius: 50%; background: radial-gradient(circle,#a8dbe266,#c5e9ec99); box-shadow: inset 0 0 35px #dcf4f3aa,0 0 50px #a6e5f044; }
.ces-home .crest-display figcaption { font: 500 16px var(--font); border-top: 0; }
.ces-home .hero-footnote { display: none; }
.ces-home .values-bar { background: linear-gradient(120deg,#def0fcf5,#ebf7fff5); border-color: #f6fcff; border-radius: 13px; }
.ces-home .values-bar .container { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; align-items: center; }
.ces-home .value-promise { padding: 10px 8px; }
.ces-home .value-promise strong { font: 700 15px var(--heading); }
.ces-home .value-promise small { font: 12px/1.35 var(--font); }
.ces-home .value-promise+.value-promise { border-color: #b6d9ed; }
.ces-home .values-bar .icon { box-shadow: 0 3px 12px #1977aa0d; border-color: #c1e3fa; }
@media (max-width: 1024px) {
  .ces-home .values-bar .container { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
}
.ces-home #why h2 { font-size: clamp(30px,3.25vw,44px); font-weight: 800; }
.ces-home .eyebrow { color: #305b83; letter-spacing: .2em; }
.school-photo { margin: 0; align-self: stretch; display: grid; align-items: center; min-width: 0; }
.school-photo img { width: 100%; height: auto; display: block; border-radius: 12px; box-shadow: 0 8px 28px #14457412; }
.ces-home .heart-values { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 25px; margin-top: 28px; }
.ces-home .heart-values article+article { border-color: #bddbea; padding-left: 25px; }
.ces-home .heart-values .icon,.ces-home .heart-values article:nth-child(2) .icon { padding: 10px; width: 26px; height: 26px; color: #064995; background: #e6f5ff; border: 1px solid #c6e5fa; margin-bottom: 10px; }
.ces-home .heart-values h3 { font: 700 17px/1.35 var(--heading); letter-spacing: -.04em; }
.ces-home .heart-values p { font: 15px/1.5 var(--font); }
.ces-home .notices.container {
  position: relative;
  overflow: hidden;
  max-width: 1240px;
  width: calc(100% - 64px);
  margin-inline: auto;
  margin-top: 0;
  margin-bottom: 34px;
  padding: 24px 28px 24px;
  background: linear-gradient(180deg, #ffffff 0%, #f9fcff 100%);
  border: 1px solid #d4e3ef;
  border-radius: 18px;
  box-shadow: 0 8px 30px rgba(18, 89, 118, 0.07), 0 2px 6px rgba(18, 89, 118, 0.03);
}
.ces-home .notices.container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 5px;
  background: linear-gradient(90deg, #f59e0b 0%, #e05338 35%, #059669 70%, #2563eb 100%);
  border-radius: 18px 18px 0 0;
}
.ces-home .notice-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
  padding-bottom: 14px;
  border-bottom: 1px solid #e5eff7;
}
.notice-title-wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ces-home .notice-heading .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: #032d43;
  margin: 0;
}
.pulse-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #10b981;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.28);
  display: inline-block;
  animation: noticePulse 2s ease-in-out infinite;
}
@keyframes noticePulse {
  0%, 100% { transform: scale(1); box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.3); }
  50% { transform: scale(1.22); box-shadow: 0 0 0 7px rgba(16, 185, 129, 0.08); }
}
.ces-home .notice-heading h2 {
  font-family: var(--heading, 'Manrope', sans-serif);
  font-size: 20px;
  font-weight: 800;
  color: #032d43;
  letter-spacing: -0.03em;
  margin: 0;
  line-height: 1.3;
}
.notice-status-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  color: #0369a1;
  background: linear-gradient(135deg, #e0f2fe, #dbeafe);
  padding: 5px 13px;
  border-radius: 20px;
  border: 1px solid #bae6fd;
  letter-spacing: 0.01em;
  white-space: nowrap;
  box-shadow: 0 2px 6px rgba(3, 105, 161, 0.08);
}
.ces-home #noticeStack {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: 16px;
  align-items: stretch;
  padding: 0;
}
.ces-home .notice-item {
  box-sizing: border-box;
  position: relative;
  min-height: auto;
  padding: 18px 22px;
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: linear-gradient(135deg, #fffdf2 0%, #fff8db 60%, #fff1b8 100%);
  border: 1.5px solid #fde078;
  border-left: 6px solid #d97706;
  box-shadow: 0 4px 18px rgba(217, 119, 6, 0.09);
  color: #451a03;
  font-size: 14px;
  line-height: 1.6;
  transform: none;
  overflow-wrap: anywhere;
  white-space: normal;
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.22s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.2s ease;
}
.ces-home .notice-item::before,
.ces-home .notice-item::after {
  display: none !important;
}
.ces-home .notice-item:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 28px rgba(217, 119, 6, 0.20);
  border-color: #f59e0b;
}
.ces-home .notice-item:nth-child(3n+2):not(.notice-urgent) {
  background: linear-gradient(135deg, #f2fbf6 0%, #e3f8ec 60%, #d1f4e1 100%);
  border: 1.5px solid #a7f3d0;
  border-left: 6px solid #059669;
  box-shadow: 0 4px 18px rgba(5, 150, 105, 0.09);
  color: #064e3b;
}
.ces-home .notice-item:nth-child(3n+2):not(.notice-urgent):hover {
  box-shadow: 0 10px 28px rgba(5, 150, 105, 0.20);
  border-color: #34d399;
}
.ces-home .notice-item:nth-child(3n+3):not(.notice-urgent) {
  background: linear-gradient(135deg, #f4f8ff 0%, #e6f0fe 60%, #d7e8fe 100%);
  border: 1.5px solid #bfdbfe;
  border-left: 6px solid #2563eb;
  box-shadow: 0 4px 18px rgba(37, 99, 235, 0.09);
  color: #1e3a8a;
}
.ces-home .notice-item:nth-child(3n+3):not(.notice-urgent):hover {
  box-shadow: 0 10px 28px rgba(37, 99, 235, 0.20);
  border-color: #60a5fa;
}
.ces-home .notice-item p {
  margin: 0;
  flex: 1;
  font-family: var(--font, 'DM Sans', sans-serif);
  font-size: 14px;
  font-weight: 550;
  line-height: 1.6;
  color: inherit;
}
.ces-home .notice-item time {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  padding-top: 11px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  font-size: 11px;
  font-weight: 600;
  color: inherit;
  opacity: 0.85;
}
.ces-home .notice-item time::before {
  content: '📅';
  font-size: 11px;
  opacity: 0.9;
}

/* Urgent Notices - Vibrant Coral Flame */
.ces-home .notice-item.notice-urgent {
  background: linear-gradient(135deg, #fff7f5 0%, #ffede8 60%, #ffe3db 100%);
  border: 1.5px solid #fec0b2;
  border-left: 6px solid #e04424;
  box-shadow: 0 5px 20px rgba(224, 68, 36, 0.13);
  color: #431407;
}
.ces-home .notice-item.notice-urgent:hover {
  transform: translateY(-3px);
  border-color: #fda48f;
  border-left-color: #c93315;
  box-shadow: 0 12px 30px rgba(224, 68, 36, 0.24);
}
.ces-home .notice-item.notice-urgent p {
  color: #431407;
  font-weight: 600;
}
.ces-home .notice-item.notice-urgent time {
  color: #9a3412;
  border-top-color: rgba(224, 68, 36, 0.18);
}
.notice-priority {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: fit-content;
  margin: 0 0 11px;
  padding: 4px 11px;
  border-radius: 20px;
  background: linear-gradient(135deg, #ef4444, #dc2626);
  color: #ffffff;
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  white-space: normal;
  box-shadow: 0 2px 8px rgba(239, 68, 68, 0.35);
}
.notice-priority::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ffffff;
  margin-right: 5px;
  animation: alertDot 1.4s ease-in-out infinite;
}
@keyframes alertDot {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.35; transform: scale(0.8); }
}
@media (max-width: 800px) {
  .ces-home .notices.container {
    width: calc(100% - 44px);
    padding: 18px 20px 20px;
    margin-bottom: 28px;
  }
}
@media (max-width: 600px) {
  .ces-home .notices.container {
    width: calc(100% - 32px);
    padding: 16px 16px 18px;
    margin-top: 0;
    margin-bottom: 24px;
    border-radius: 14px;
  }
  .ces-home .notice-heading {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
    padding-bottom: 12px;
  }
  .notice-title-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
  }
  .ces-home .notice-heading h2 {
    font-size: 16px;
    margin: 0;
  }
  .notice-status-tag {
    font-size: 10px;
    padding: 3px 9px;
  }
  .ces-home #noticeStack {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .ces-home .notice-item {
    padding: 15px 16px;
    font-size: 13px;
  }
  .ces-home .notice-item p {
    font-size: 13px;
  }
}
@media print {
  .ces-home .notices.container { box-shadow: none; border-color: #ccc; break-inside: avoid; }
  .ces-home .notices.container::before { display: none; }
  .ces-home .notice-item { box-shadow: none; transform: none; break-inside: avoid; }
  .ces-home .notice-item::before, .ces-home .notice-item::after { display: none; }
}
.ces-home .learning-section { background: radial-gradient(ellipse at 40% 0,#086583,transparent 70%),#032744; }
.ces-home .learning-section .section { padding-block: 38px; }
.ces-home .learning-section .section-heading { display: block; text-align: center; margin-bottom: 26px; }
.ces-home .learning-section h2 { font-size: clamp(28px,3vw,38px); font-weight: 800; }
.ces-home .journey-grid article { position: relative; padding: 28px 22px 28px 95px; border-color: #80b1cc55; background: linear-gradient(145deg,#ffffff20,#ffffff08); border-radius: 13px; }
.ces-home .journey-grid article:nth-child(n) { background: linear-gradient(145deg,#ffffff20,#ffffff08); }
.ces-home .journey-top { position: absolute; left: 23px; top: 25px; width: 52px; height: 52px; border-radius: 50%; background: #c0eaff22; display: grid; place-items: center; }
.ces-home .journey-top .icon { width: 27px; height: 27px; color: white; }
.ces-home .journey-grid h3 { font: 700 18px/1.4 var(--heading); color: white; letter-spacing: -.025em; }
.ces-home .journey-grid .grade { color: #e2f1fa; font-size: 11px; }
.ces-home .journey-grid p { font: 14px/1.5 var(--font); color: #dfedf6; margin-top: 14px; }
.ces-home .admission-section { padding-top: 40px; }
.ces-home .admission-panel { display: grid; grid-template-columns: 1fr auto; align-items: center; padding-bottom: 28px; }
.ces-home .admission-panel h2 { font-size: clamp(29px,3vw,38px); font-weight: 800; }
.ces-home .admission-panel p { font: 15px/1.5 var(--font); margin-top: 12px; }
.admission-actions { display: grid; justify-items: center; gap: 15px; padding-inline: 30px; }
.admission-actions .button { min-width: 195px; justify-content: center; }
.admission-actions .text-link { font-size: 14px; color: #003d80; text-decoration: underline; text-underline-offset: 4px; }
.ces-home .faq-section { display: block; padding-top: 5px; padding-bottom: 30px; }
.parent-questions { border: 1px solid #c8e4f6; background: #f5fbff; border-radius: 12px; }
.parent-questions>summary { display: flex; align-items: center; gap: 24px; padding: 20px 25px; cursor: pointer; list-style: none; color: #113c70; }
.parent-questions>summary::-webkit-details-marker { display: none; }
.parent-questions>summary strong { font-size: 15px; white-space: nowrap; }
.parent-questions>summary>span { border-left: 1px solid #c4dfee; padding-left: 25px; font-size: 13px; color: #466985; flex: 1; }
.parent-questions>summary>.icon { transform: rotate(90deg); flex: none; }
.parent-questions[open]>summary>.icon { transform: rotate(-90deg); }
.parent-questions .faq-list { padding: 10px 25px 20px; }
.ces-home .contact-section { padding-block: 30px; background: #eaf5fb; }
.ces-home .contact-grid h2 { font-size: 29px; }
.ces-home .contact-grid { gap: 40px; }
.ces-home .contact-card { padding: 20px 25px; }
.ces-home .contact-row { padding-block: 5px 15px; }
.ces-home .contact-row+.contact-row { padding-top: 15px; }
.ces-home .site-footer .brand>span { font-size: 22px; }
.ces-home .site-footer .brand img { width: 60px; height: 60px; }
@media(max-width:1000px) {
  .ces-home .journey-grid article { padding: 22px; }.ces-home .journey-top { position: static; margin-bottom: 16px; }
  .ces-home .heart-values { gap: 16px; }.ces-home .heart-values article+article { padding-left: 16px; }
}
@media(max-width:800px) {
  .ces-home #why { grid-template-columns: 1fr 1fr; gap: 25px; }.ces-home #why h2 { font-size: 30px; }.ces-home .heart-values { grid-template-columns: 1fr; gap: 18px; }.ces-home .heart-values article+article { border: 0; padding-left: 0; }.ces-home .heart-values .icon { float: left; margin-right: 12px; }.ces-home .heart-values p { max-width: none; font-size: 14px; }
  .ces-home .admission-panel { gap: 20px; }.admission-actions { padding-inline: 0; }.parent-questions>summary { gap: 16px; }
}
@media(max-width:600px) {
  .ces-home .crest-display img { padding: 20px; }.ces-home .hero-kicker { font-size: 9px; }.ces-home .hero-intro { font-size: 21px; }
  .ces-home #why { grid-template-columns: 1fr; gap: 26px; }.ces-home .heart-values { grid-template-columns: 1fr 1fr; gap: 20px; }.ces-home .heart-values article+article { border-left: 1px solid #bddbea; padding-left: 20px; }.ces-home .heart-values .icon { float: none; }.ces-home .heart-values h3 { font-size: 16px; }
  .ces-home .notices.container { width: calc(100% - 36px); padding: 18px; }
  .ces-home .journey-grid article { padding: 24px 22px 24px 91px; }.ces-home .journey-top { position: absolute; left: 20px; top: 23px; }
  .ces-home .admission-panel { grid-template-columns: 1fr; gap: 24px; }.admission-actions { justify-items: start; }.parent-questions>summary { flex-wrap: wrap; padding: 18px; }.parent-questions>summary strong { flex: 1; }.parent-questions>summary>span { order: 3; width: 100%; flex: auto; padding-left: 0; border: 0; }.parent-questions .faq-list { padding-inline: 14px; }
  .ces-home .site-footer .brand>span { font-size: 18px; }.ces-home .site-footer .brand img { width: 48px; height: 48px; }
}
.site-header .brand>span { white-space: nowrap; }
.brand-sub { display: block; text-transform: none; }
@media(min-width:801px) and (max-width:1100px) {
  .site-header .brand>span { font-size: 17px; }
  .site-header .brand img { width: 48px; height: 48px; }
  .site-header nav { gap: 12px; font-size: 11px; }
  .site-header .button.small { padding-inline: 15px; }
}
@media(max-width:600px) {
  .site-header .brand { gap: 9px; }
  .site-header .brand>span { font-size: clamp(11px,3.2vw,19px); }
  .site-header .brand img { width: 40px; height: 40px; }
  .site-header .brand-sub { font-size: 8px; letter-spacing: .12em; }
  .site-header .menu-toggle { flex-shrink: 0; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .brand img,
  .ces-home .crest-display img {
    transform: perspective(900px) rotateX(0deg) rotateY(0deg) translateY(0);
    transition: transform 450ms cubic-bezier(.2,.75,.25,1), filter 450ms ease;
    backface-visibility: hidden;
  }
  .brand:hover img,
  .brand:focus-visible img {
    transform: perspective(600px) rotateX(7deg) rotateY(-12deg) translateY(-3px) scale(1.04);
    filter: drop-shadow(3px 7px 5px #00182d66) drop-shadow(0 0 8px #96dff555);
  }
  .ces-home .crest-display img:hover {
    transform: perspective(900px) rotateX(5deg) rotateY(-8deg) translateY(-6px) scale(1.025);
    filter: drop-shadow(8px 18px 20px #001b4666) drop-shadow(0 0 32px #91e6eca0);
  }
}
