:root{--tm-green:#01411c;--tm-deep:#002f16;--tm-gold:#f2b632;--tm-ink:#062d1e;--tm-muted:#52675e;--tm-paper:#f8f7f0;--tm-mist:#edf3ed}
.interior-page{background:var(--tm-paper);color:var(--tm-ink)}
.interior-page .primary-nav a[aria-current=page]{color:#ffd475}
.page-hero{position:relative;isolation:isolate;min-height:520px;overflow:hidden;background:var(--tm-deep);color:#fff}
.page-hero>img{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero:after{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(0,32,18,.97),rgba(0,44,25,.82) 52%,rgba(0,25,14,.28))}
.page-hero-content{padding-top:72px;padding-bottom:76px}.page-hero .breadcrumbs{display:flex;gap:9px;margin-bottom:58px;color:#d4dfd8;font-size:13px}.page-hero .breadcrumbs a{color:#fff}
.page-hero .eyebrow{color:#ffd475}.page-hero h1{max-width:850px;margin:10px 0 20px;font-size:clamp(48px,6vw,84px);line-height:.98;letter-spacing:-.045em}.page-hero-copy{max-width:650px;margin:0 0 28px;color:#e4ece7;font-size:19px;line-height:1.55}
.section-pad{padding-block:90px}.split-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end}.split-intro h2,.section-heading-wide h2,.cta-band h2{margin:8px 0 0;font-size:clamp(38px,4.2vw,60px);line-height:1.04}.split-intro>p{margin:0;color:var(--tm-muted);font-size:18px;line-height:1.7}
.section-heading-wide{max-width:860px;margin-bottom:34px}.section-heading-wide>p:last-child{color:var(--tm-muted);font-size:17px;line-height:1.6}
.soft-section{background:var(--tm-mist)}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.content-card{display:flex;min-height:330px;flex-direction:column;padding:28px;border:1px solid rgba(1,65,28,.12);border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(1,45,25,.06)}.content-card .card-kicker{margin:0 0 12px;color:#906712;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.content-card h3{margin:0 0 12px;font-size:30px;line-height:1.05}.content-card>p{margin:0;color:var(--tm-muted);line-height:1.55}.content-card ul{display:grid;gap:8px;padding:0;margin:22px 0;list-style:none;color:#385248}.content-card li:before{content:"✓";margin-right:8px;color:#a8780c;font-weight:800}.content-card a{display:flex;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid rgba(1,65,28,.12);color:var(--tm-green);font-weight:800}
.steps-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:0;margin:0;overflow:hidden;border:1px solid rgba(1,65,28,.12);border-radius:22px;background:rgba(1,65,28,.12);list-style:none}.steps-list li{padding:30px;background:#fff}.steps-list span{color:#a8780c;font-weight:800}.steps-list h3{margin:25px 0 8px;font-size:24px}.steps-list p{margin:0;color:var(--tm-muted);line-height:1.55}
.cta-band{padding-block:78px;background:var(--tm-green);color:#fff}.cta-band>.page-width{display:flex;align-items:center;justify-content:space-between;gap:55px}.cta-band .eyebrow{color:#ffd475}.cta-band h2{max-width:760px}.cta-band p{max-width:720px;color:#d2e0d7}.cta-band .button{flex:none}
.directory-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}.directory-toolbar button{padding:10px 16px;border:1px solid rgba(1,65,28,.18);border-radius:999px;background:#fff;color:#244238;font-weight:750;cursor:pointer}.directory-toolbar button.active,.directory-toolbar button:focus-visible{background:var(--tm-green);color:#fff}.directory-card[hidden]{display:none}.no-results{padding:30px;border-radius:16px;background:#fff;text-align:center}
.detail-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:34px}.detail-main,.detail-aside{padding:34px;border:1px solid rgba(1,65,28,.12);border-radius:22px;background:#fff}.detail-main h2{font-size:38px}.detail-main h3{margin-top:34px;font-size:26px}.detail-main p,.detail-main li,.detail-aside p{color:var(--tm-muted);line-height:1.65}.detail-aside{align-self:start;background:var(--tm-green);color:#fff}.detail-aside h2{margin-top:0;font-size:28px}.detail-aside p{color:#d5e2da}.fact-list{display:grid;gap:1px;padding:0;margin:22px 0;background:rgba(255,255,255,.2);list-style:none}.fact-list li{display:flex;justify-content:space-between;gap:20px;padding:13px 0;color:#fff}.fact-list strong{color:#ffd475}.notice{padding:18px 20px;border-left:4px solid var(--tm-gold);border-radius:0 12px 12px 0;background:#f6f0df;color:#493b1a}
.province-directory{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.province-card{padding:30px;border-radius:20px;background:#fff;border:1px solid rgba(1,65,28,.12)}.province-card h3{margin:0 0 8px;font-size:30px}.province-card p{color:var(--tm-muted)}.province-card a{color:var(--tm-green);font-weight:800}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-field{display:grid;gap:8px}.form-field.full{grid-column:1/-1}.form-field label{font-weight:800}.form-field input,.form-field textarea,.form-field select{width:100%;padding:14px 15px;border:1px solid rgba(1,65,28,.22);border-radius:12px;background:#fff;color:var(--tm-ink);font:inherit}.form-field textarea{min-height:150px;resize:vertical}.form-note{color:var(--tm-muted);font-size:13px}.legal{max-width:900px}.legal h2{margin-top:42px;font-size:30px}.legal p,.legal li{color:var(--tm-muted);line-height:1.7}.legal .updated{color:#89630f;font-weight:800}
@media(max-width:1020px){.content-grid{grid-template-columns:repeat(2,1fr)}.steps-list{grid-template-columns:repeat(2,1fr)}.detail-layout{grid-template-columns:1fr}.split-intro{gap:38px}.cta-band>.page-width{align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.page-hero{min-height:560px}.page-hero-content{padding-top:48px}.page-hero .breadcrumbs{margin-bottom:42px}.page-hero h1{font-size:46px}.split-intro,.content-grid,.province-directory,.form-grid{grid-template-columns:1fr}.section-pad{padding-block:66px}.steps-list{grid-template-columns:1fr}.form-field.full{grid-column:auto}.detail-main,.detail-aside{padding:24px}.cta-band{padding-block:64px}}

/* Exam-preparation visual system */
.page-hero{min-height:600px}
.page-hero>img{object-position:center}
.page-hero:after{background:linear-gradient(90deg,rgba(0,32,18,.98) 0%,rgba(0,42,24,.91) 46%,rgba(0,25,14,.26) 78%)}
.page-hero h1{max-width:900px}
.cta-band .button-light,.admission-cta .button-light{border:2px solid #ffd475;background:#fff;color:#01411c;box-shadow:0 10px 28px rgba(0,20,10,.28)}
.cta-band .button-light:hover,.cta-band .button-light:focus-visible,.admission-cta .button-light:hover,.admission-cta .button-light:focus-visible{background:#ffd475;color:#002f16;outline:3px solid rgba(255,255,255,.38)}

.content-card.visual-card{position:relative;isolation:isolate;overflow:hidden;min-height:390px;justify-content:flex-end;color:#fff;border:0;background:#04341f center/cover no-repeat;box-shadow:0 20px 45px rgba(1,45,25,.18)}
.content-card.visual-card:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(0,25,15,.06),rgba(0,36,21,.96) 64%)}
.content-card.visual-card .card-kicker{color:#ffd475}.content-card.visual-card h3{color:#fff}.content-card.visual-card>p{color:#e2ece6}
.content-card.visual-card a{color:#ffd475;border-top-color:rgba(255,255,255,.24)}
.principles-grid .visual-card:nth-child(1){background-image:url("assets/about-exam-prep-hero.webp");background-position:70% center}
.principles-grid .visual-card:nth-child(2){background-image:url("assets/admission-model-carousel.webp");background-position:67% center;background-size:400% 100%}
.principles-grid .visual-card:nth-child(3){background-image:url("assets/job-sequence-carousel.webp");background-position:67% center;background-size:400% 100%}

/* One-at-a-time preparation carousels */
.sequence-carousel{position:relative;overflow:hidden;border-radius:26px;background:#052f20;box-shadow:0 24px 60px rgba(1,45,25,.18)}
.sequence-carousel .steps-list,.sequence-carousel .model-steps{display:flex!important;width:100%;gap:0;overflow:visible!important;border:0;border-radius:0;background:transparent;transition:transform .55s cubic-bezier(.2,.75,.2,1)}
.sequence-carousel .steps-list li,.sequence-carousel .model-steps li{position:relative;isolation:isolate;display:flex;min-width:100%;min-height:430px;flex-direction:column;justify-content:flex-end;padding:48px;border:0;background-color:#052f20;background-repeat:no-repeat;background-size:400% 100%;color:#fff}
.sequence-carousel .steps-list li:before,.sequence-carousel .model-steps li:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(0,31,18,.98),rgba(0,39,23,.84) 48%,rgba(0,20,12,.2))}
.job-sequence .steps-list li{background-image:url("assets/job-sequence-carousel.webp")}.admission-sequence .model-steps li{background-image:url("assets/admission-model-carousel.webp")}
.sequence-carousel li:nth-child(1){background-position:0 center}.sequence-carousel li:nth-child(2){background-position:33.33% center}.sequence-carousel li:nth-child(3){background-position:66.66% center}.sequence-carousel li:nth-child(4){background-position:100% center}.admission-sequence li:nth-child(5){background-position:100% center}
.sequence-carousel li>span{display:grid;width:52px;height:52px;place-items:center;margin-bottom:18px;border-radius:14px;background:#f2b632;color:#002f16;font-size:14px;font-weight:800}
.sequence-carousel li>div{display:block}.sequence-carousel h3{max-width:560px;margin:0 0 10px!important;color:#fff;font-size:clamp(34px,4vw,52px)!important}.sequence-carousel li p{max-width:620px;margin:0;color:#e1ebe5;font-size:17px;line-height:1.6}
.sequence-controls{position:absolute;right:24px;bottom:24px;display:flex;align-items:center;gap:9px;padding:7px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(0,28,16,.76);backdrop-filter:blur(8px)}
.sequence-controls button{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.sequence-controls button:hover,.sequence-controls button:focus-visible{background:#f2b632;color:#002f16}
.sequence-controls .seq-pause{width:auto;min-width:58px;padding:0 12px;border-radius:999px;font-size:12px;font-weight:800}
.sequence-dots{display:flex;gap:6px}.sequence-dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.38)}.sequence-dots i.active{width:24px;border-radius:9px;background:#f2b632}

@media(max-width:720px){.sequence-carousel .steps-list li,.sequence-carousel .model-steps li{min-height:500px;padding:34px 26px 92px;background-size:auto 100%}.sequence-controls{right:18px;bottom:18px}.page-hero{min-height:590px}}

/* Regional pages: one meaningful route at a time. */
.region-story-section>.section-heading-wide{margin-bottom:30px}.region-story-carousel{position:relative;overflow:hidden;border-radius:28px;background:#052f20;box-shadow:0 24px 58px rgba(1,45,25,.16)}
.region-story-track{display:flex;transition:transform .6s cubic-bezier(.2,.75,.2,1);will-change:transform}.region-story-slide{position:relative;isolation:isolate;display:flex;min-width:100%;min-height:440px;align-items:flex-end;overflow:hidden;padding:54px;background-position:center;background-size:cover;color:#fff}
.region-story-slide:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(0,31,18,.98) 0%,rgba(0,42,24,.86) 48%,rgba(0,23,13,.28) 82%)}
.region-story-recruitment{background-image:url("assets/job-approved.webp")}.region-story-admission{background-image:url("assets/resources-exam-prep-hero.webp")}.region-story-foundation{background-image:url("assets/about-exam-prep-hero.webp")}
.region-story-slide>div{max-width:690px}.region-story-slide span{color:#ffd475;font-size:12px;font-weight:800;letter-spacing:.12em}.region-story-slide .eyebrow{margin:18px 0 8px;color:#ffd475}.region-story-slide h3{margin:0 0 14px;color:#fff;font-size:clamp(38px,5vw,66px);line-height:1}.region-story-slide p:not(.eyebrow){max-width:650px;margin:0;color:#e1ebe5;font-size:17px;line-height:1.6}.region-story-slide a{display:inline-flex;gap:14px;margin-top:24px;padding:12px 16px;border:1px solid rgba(255,255,255,.28);border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font-weight:800}.region-story-slide a:hover,.region-story-slide a:focus-visible{background:#f2b632;color:#002f16}
.region-story-controls{position:absolute;right:24px;bottom:24px;display:flex;align-items:center;gap:9px;padding:7px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(0,28,16,.78);backdrop-filter:blur(8px)}.region-story-controls button{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.region-story-controls button:hover,.region-story-controls button:focus-visible{background:#f2b632;color:#002f16}.region-story-dots{display:flex;gap:6px}.region-story-dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4)}.region-story-dots i.active{width:24px;border-radius:8px;background:#f2b632}
.region-story-controls [data-region-pause]{width:auto;min-width:58px;padding:0 12px;border-radius:999px;font-size:12px;font-weight:800}
@media(max-width:720px){.region-story-slide{min-height:540px;padding:38px 26px 100px}.region-story-slide:before{background:linear-gradient(180deg,rgba(0,31,18,.72),rgba(0,35,20,.98) 70%)}.region-story-controls{right:18px;bottom:18px}.region-story-slide p:not(.eyebrow){font-size:15px}}

/* Distinct pre-footer feature card: separated visually from the solid footer. */
.cta-band,.admission-cta{padding:72px 0;background:linear-gradient(180deg,#f8f7f0 0%,#eaf1eb 100%);color:var(--tm-ink)}
.cta-band>.page-width,.admission-cta>.page-width{position:relative;isolation:isolate;display:flex;min-height:330px;align-items:center;justify-content:space-between;gap:55px;overflow:hidden;padding:58px 62px;border:1px solid rgba(1,65,28,.16);border-radius:32px;background:linear-gradient(90deg,rgba(255,253,246,.99) 0%,rgba(255,251,237,.96) 49%,rgba(238,241,220,.72) 68%,rgba(1,65,28,.12) 100%),url("assets/resources-exam-prep-hero.webp") right center/62% auto no-repeat;box-shadow:0 24px 58px rgba(1,45,25,.13)}
.cta-band>.page-width:before,.admission-cta>.page-width:before{content:"";position:absolute;z-index:-1;top:-105px;right:-65px;width:300px;height:300px;border:1px solid rgba(178,126,15,.35);border-radius:50%;box-shadow:0 0 0 34px rgba(242,182,50,.06),0 0 0 70px rgba(1,65,28,.04)}
.cta-band>.page-width>div,.admission-cta>.page-width>div{position:relative;z-index:1;max-width:760px}
.cta-band .eyebrow,.admission-cta .eyebrow{color:#8b6412}.cta-band h2,.admission-cta h2{color:var(--tm-ink)}
.cta-band p,.admission-cta p:last-child{color:var(--tm-muted)}
.cta-band .button-light,.admission-cta .button-light{position:relative;z-index:1;border:2px solid var(--tm-green);background:var(--tm-green);color:#fff;box-shadow:0 12px 28px rgba(1,45,25,.2)}
.cta-band .button-light:hover,.cta-band .button-light:focus-visible,.admission-cta .button-light:hover,.admission-cta .button-light:focus-visible{border-color:var(--tm-gold);background:var(--tm-gold);color:var(--tm-deep);outline:3px solid rgba(1,65,28,.12)}
@media(max-width:1020px){.cta-band>.page-width,.admission-cta>.page-width{align-items:flex-start;flex-direction:column;background-position:130% center;background-size:80% auto}}
@media(max-width:720px){.cta-band,.admission-cta{padding-block:54px}.cta-band>.page-width,.admission-cta>.page-width{min-height:0;padding:38px 27px;background:linear-gradient(135deg,rgba(255,253,246,.99),rgba(243,239,218,.94)),url("assets/resources-exam-prep-hero.webp") center/cover no-repeat}.cta-band .button,.admission-cta .button{width:100%}}

.unavailable-link{display:flex;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid rgba(1,65,28,.12);color:#68786f!important;font-weight:800;cursor:not-allowed}.visual-card .unavailable-link{border-top-color:rgba(255,255,255,.24);color:#d8e0db!important}.unavailable-link:after{content:"Not available yet";align-self:center;margin-left:12px;padding:4px 8px;border-radius:999px;background:rgba(1,65,28,.1);font-size:9px;letter-spacing:.05em;text-transform:uppercase}.visual-card .unavailable-link:after{background:rgba(255,255,255,.14)}
.not-found{display:grid;min-height:calc(100vh - 150px);place-items:center;padding:90px 20px;background:radial-gradient(circle at 75% 20%,rgba(242,182,50,.16),transparent 28%),linear-gradient(145deg,#002f16,#01411c);color:#fff}.not-found>div{max-width:760px;text-align:center}.not-found .error-code{margin:0;color:#ffd475;font:700 clamp(70px,14vw,150px)/.8 var(--serif)}.not-found h1{margin:25px 0 16px;color:#fff;font-size:clamp(42px,6vw,72px)}.not-found p{max-width:620px;margin:0 auto 28px;color:#d6e3db;font-size:18px;line-height:1.6}.not-found .button{display:inline-flex}
.form-note[role="status"]{padding:12px 14px;border-left:3px solid #f2b632;border-radius:0 8px 8px 0;background:#f6f0df;color:#493b1a}
