:root{
  --ink:#10253f;--ink2:#173657;--cream:#f7f4ec;--paper:#fffdf8;--blue:#2f76d2;
  --cyan:#7bd9ef;--coral:#ff715b;--gold:#f4b84b;--muted:#68727c;--line:#dfe4e8;
  --shadow:0 24px 80px rgba(16,37,63,.13);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}
body.locked{overflow:hidden}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}
.progress{position:fixed;z-index:500;left:0;top:0;height:4px;width:0;background:linear-gradient(90deg,var(--coral),var(--gold),var(--cyan))}
.nav{height:82px;position:fixed;z-index:200;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:10px 4.5vw;background:rgba(255,253,248,.84);backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,37,63,.06);transition:.25s}
.nav.scrolled{box-shadow:0 10px 35px rgba(16,37,63,.08)}.brand{display:flex;align-items:center}.brand img{width:190px;height:58px;object-fit:contain;object-position:left center}
.nav nav{display:flex;align-items:center;gap:22px;font-size:12px;font-weight:800}.nav nav>a{opacity:.78;transition:.2s}.nav nav>a:hover{opacity:1;color:var(--blue)}
.social-link{color:var(--coral)!important}.nav-cta,.primary{border:0;background:var(--ink);color:white;border-radius:999px;padding:14px 19px;font-weight:800;box-shadow:0 10px 25px rgba(16,37,63,.16)}
.nav-cta{padding:11px 16px}.primary span,.nav-cta span,.ghost span,.text-btn span{margin-left:8px}.menu-btn{display:none;border:0;background:var(--ink);color:white;border-radius:12px;width:43px;height:43px}
.hero{min-height:820px;position:relative;padding:155px 5vw 55px;overflow:hidden;background:linear-gradient(135deg,#eef8ff 0%,#fffaf1 55%,#fff 100%)}
.hero-glow{position:absolute;border-radius:50%;filter:blur(5px);opacity:.65}.glow-a{width:500px;height:500px;background:radial-gradient(circle,#b7edff,transparent 68%);right:-180px;top:70px}.glow-b{width:420px;height:420px;background:radial-gradient(circle,#ffd9c9,transparent 67%);left:-170px;bottom:-180px}
.hero-inner{position:relative;z-index:2;max-width:1320px;margin:auto;display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}
.brand-kicker{font-size:11px;font-weight:900;letter-spacing:.2em;color:var(--coral);margin-bottom:10px}.hero-logo{width:100%;max-width:760px;height:auto;object-fit:contain;object-position:left center;margin:0 0 24px}
.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:900;color:#285b8f}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(52px,6.1vw,91px);line-height:.98;letter-spacing:-.065em;margin:17px 0 22px;max-width:820px}.hero h1 span{color:var(--blue)}
.hero-sub{font-size:18px;line-height:1.72;color:#344d63;max-width:650px;font-weight:500}.hero-actions{display:flex;gap:12px;align-items:center;margin:30px 0}.ghost{border:1px solid rgba(16,37,63,.16);border-radius:999px;padding:13px 18px;font-weight:800;background:rgba(255,255,255,.72)}
.call-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;padding:14px 20px;background:var(--ink);color:#fff;font-weight:900;box-shadow:0 14px 32px rgba(16,37,63,.2);transition:transform .2s ease,box-shadow .2s ease}.call-cta:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(16,37,63,.26)}.call-cta svg{width:19px;height:19px;fill:currentColor;flex:0 0 auto}
.hero-proof{display:flex;gap:40px;margin-top:34px}.hero-proof div{display:flex;gap:10px;align-items:center}.hero-proof strong{font-family:Manrope;font-size:24px}.hero-proof span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#3f607a;line-height:1.45;font-weight:700}
.hero-visual{position:relative;min-height:620px;display:grid;place-items:center}.photo-frame{width:min(520px,100%);height:auto;position:relative;overflow:visible;box-shadow:none;transform:none;background:transparent;border:0;border-radius:0}
.photo-frame>img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain;object-position:center}.photo-gradient{position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(16,37,63,.68))}
.photo-badge{position:absolute;top:20px;left:20px;background:rgba(255,255,255,.92);padding:11px 14px;border-radius:15px;display:flex;align-items:center;gap:9px;box-shadow:0 10px 25px rgba(0,0,0,.1)}
.badge-dot{width:9px;height:9px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px rgba(255,113,91,.13)}.photo-badge small,.photo-badge b{display:block}.photo-badge small{font-size:8px;letter-spacing:.14em;color:#7a8790}.photo-badge b{font-size:12px;margin-top:2px}
.photo-caption{position:absolute;bottom:25px;left:27px;right:27px;color:white}.photo-caption span{font-size:9px;letter-spacing:.15em;opacity:.8}.photo-caption b{display:block;font-family:Manrope;font-size:24px;margin-top:7px}.floating-note{position:absolute;right:-25px;bottom:90px;background:white;border-radius:20px;padding:15px 17px;display:flex;gap:11px;align-items:center;box-shadow:0 18px 45px rgba(16,37,63,.17)}.floating-note>span{width:37px;height:37px;display:grid;place-items:center;border-radius:12px;background:#e9f7ff;color:var(--blue)}.floating-note b,.floating-note small{display:block}.floating-note b{font-size:13px}.floating-note small{font-size:9px;color:#7a8790;margin-top:2px}
.hero-bottom{max-width:1320px;margin:35px auto 0;display:flex;justify-content:space-between;font-size:10px;font-weight:900;letter-spacing:.16em;color:#3c5b74}
.ticker{overflow:hidden;background:var(--ink);color:white;white-space:nowrap}.ticker>div{display:flex;justify-content:center;align-items:center;gap:26px;padding:16px 5vw;font-size:9px;font-weight:900;letter-spacing:.15em}.ticker i{width:5px;height:5px;border-radius:50%;background:var(--gold);display:block}
.section{padding:125px 5vw;background:linear-gradient(180deg,#fffdf8 0%,#f7fbff 100%)}.section-head{max-width:1320px;margin:0 auto 55px;display:flex;align-items:end;justify-content:space-between;gap:30px}.kicker{font-size:11px;letter-spacing:.18em;font-weight:900;color:#ed5a45;margin:0 0 10px}.section h2,.subjects-copy h2{font-family:Manrope;font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.055em;margin:0;font-weight:900}.section h2 em,.subjects-copy h2 em,.split-copy h2 em,.location-copy h2 em,.modal h2 em{font-style:normal;color:var(--blue);font-weight:900}.text-btn{border:0;background:none;font-weight:900;border-bottom:1px solid rgba(16,37,63,.22);padding:0 0 8px}
.program-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.program-card{min-height:410px;border-radius:28px;padding:28px;background:linear-gradient(145deg,#eef8ff,#dff3ff);border:1px solid #bfe2f7;display:flex;flex-direction:column;position:relative;overflow:hidden}.program-card:nth-child(2){background:linear-gradient(145deg,#fff8e9,#fff2cf);border-color:#f1d27f}.program-card.warm{background:linear-gradient(145deg,#fff0ed,#ffe3dc);border-color:#ffc0b2}
.program-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-80px;bottom:-80px;background:rgba(123,217,239,.24)}.program-card:nth-child(2):after{background:rgba(244,184,75,.22)}.program-card.warm:after{background:rgba(255,113,91,.17)}
.program-top{display:flex;justify-content:space-between;font-size:9px;font-weight:900;letter-spacing:.13em;color:#7a8790}.icon-wrap{margin-top:55px;font-family:Manrope;font-size:25px;font-weight:800;color:var(--blue)}.program-card:nth-child(2) .icon-wrap{color:#b47700}.warm .icon-wrap{color:var(--coral)}
.program-card h3{font-family:Manrope;font-size:31px;margin:12px 0 8px}.program-card p{color:#30485d;line-height:1.65;max-width:430px;font-weight:500}.chips{display:flex;gap:6px;flex-wrap:wrap;margin:15px 0}.chips span{font-size:9px;font-weight:900;border:1px solid rgba(16,37,63,.12);background:rgba(255,255,255,.65);padding:7px 9px;border-radius:999px}.program-card>button{margin-top:auto;align-self:flex-start;border:0;background:none;font-weight:900;padding:8px 0}.program-card>button span{margin-left:8px}.mini-stat{font-size:11px;font-weight:900;margin:18px 0;color:#b35c4d}
.subjects-section{max-width:1320px;margin:0 auto 125px;padding:90px 7vw;border-radius:38px;background:var(--ink);color:white;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;position:relative;overflow:hidden}.subjects-section:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;right:-180px;top:-260px;background:radial-gradient(circle,rgba(123,217,239,.35),transparent 68%)}.subjects-copy{position:relative;z-index:1}.subjects-copy h2{color:white}.subjects-copy h2 em{color:var(--cyan)}.subjects-copy>p:not(.kicker){color:#e4edf4;line-height:1.75;max-width:560px;font-weight:500}.primary.small{margin-top:15px;background:white;color:var(--ink);padding:12px 17px}
.subject-cloud{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px;align-content:center}.subject{padding:14px 18px;border:1px solid rgba(255,255,255,.24);border-radius:999px;color:#fff;font-weight:900;background:rgba(255,255,255,.10);box-shadow:0 8px 24px rgba(0,0,0,.10)}.subject.big{font-size:21px;background:rgba(123,217,239,.12);border-color:rgba(123,217,239,.28)}.subject.coral{background:rgba(255,113,91,.13);border-color:rgba(255,113,91,.3)}.subject.gold{background:rgba(244,184,75,.13);border-color:rgba(244,184,75,.3)}
.split-section{max-width:1320px;margin:0 auto;padding:0 5vw 125px;display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.split-image{height:690px;border-radius:35px;overflow:hidden;position:relative;box-shadow:var(--shadow)}.split-image img{width:100%;height:100%;object-fit:cover}.image-label{position:absolute;left:20px;right:20px;bottom:20px;background:rgba(255,255,255,.94);padding:15px 18px;border-radius:16px;display:flex;justify-content:space-between;align-items:center}.image-label span{font-size:10px;color:var(--coral);font-weight:900}.image-label b{font-size:13px}.split-copy h2{font-family:Manrope;font-size:clamp(45px,5vw,70px);line-height:1.02;letter-spacing:-.055em;margin:0 0 20px;font-weight:900}.lead{color:#30485d;line-height:1.75;font-weight:500}.feature-list{margin-top:35px}.feature-list>div{display:grid;grid-template-columns:38px 1fr;gap:15px;padding:17px 0;border-top:1px solid var(--line)}.feature-list>div:last-child{border-bottom:1px solid var(--line)}.feature-list>div>span{font-size:10px;font-weight:900;color:var(--coral);padding-top:3px}.feature-list b{font-size:14px}.feature-list p{margin:5px 0 0;color:#75818a;font-size:12px;line-height:1.55}
.finder-strip{max-width:1320px;margin:0 auto 125px;padding:60px 6vw;border-radius:34px;background:linear-gradient(120deg,#eaf8ff,#fff2df);display:flex;justify-content:space-between;align-items:center;gap:35px}.finder-strip h2{font-family:Manrope;font-size:clamp(38px,4vw,57px);letter-spacing:-.05em;margin:0 0 10px}.finder-strip p:not(.kicker){color:#30485d;max-width:600px;font-weight:500}
.campus{padding-top:0}.gallery-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:1.35fr .8fr .8fr;grid-template-rows:250px 250px;gap:14px}.gallery-item{padding:0;border:0;border-radius:23px;overflow:hidden;position:relative;background:#ddd}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item>span{position:absolute;right:15px;top:15px;width:35px;height:35px;border-radius:50%;background:rgba(255,255,255,.9);display:grid;place-items:center;font-size:21px}.g1{grid-row:1/3}.g2{grid-column:2}.g3{grid-column:3}.g4{grid-column:2}.g5{grid-column:3}
.location-card{max-width:1320px;margin:0 auto 125px;background:linear-gradient(135deg,#e7f6ff,#fff1e8);border-radius:35px;padding:55px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.location-copy h2{font-family:Manrope;font-size:clamp(44px,4.5vw,65px);line-height:1.02;letter-spacing:-.055em;margin:0 0 20px}.location-copy>p:not(.kicker){color:#30485d;line-height:1.7;max-width:560px;font-weight:500}.contact-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.contact-actions a{background:white;border:1px solid #dbe9f3;border-radius:999px;padding:11px 14px;font-size:11px;font-weight:900}.social-row{display:flex;align-items:center;gap:12px;margin-top:28px;flex-wrap:wrap}.social-row>span{font-size:9px;letter-spacing:.14em;font-weight:900;color:#7a8790}.social-row a{font-size:11px;font-weight:900;border-bottom:1px solid #aab8c1;padding-bottom:4px}.map-card{height:360px;border-radius:25px;position:relative;overflow:hidden;background:#d8ebf1}.map-grid{position:absolute;inset:0;background-image:linear-gradient(25deg,transparent 47%,rgba(47,118,210,.13) 48%,rgba(47,118,210,.13) 50%,transparent 51%),linear-gradient(155deg,transparent 46%,rgba(16,37,63,.11) 47%,rgba(16,37,63,.11) 50%,transparent 51%);background-size:100px 80px}.pin{position:absolute;left:50%;top:47%;font-size:58px;transform:translate(-50%,-50%);color:var(--coral)}.map-overlay{position:absolute;left:20px;right:20px;bottom:20px;background:rgba(255,255,255,.94);padding:15px 18px;border-radius:16px}.map-overlay span,.map-overlay b{display:block}.map-overlay span{font-size:9px;letter-spacing:.12em;color:#74818b}.map-overlay b{margin-top:4px}
footer{padding:55px 5vw;display:flex;justify-content:space-between;gap:35px;align-items:center;border-top:1px solid var(--line)}.footer-brand img{width:170px;height:54px;object-fit:contain;object-position:left center}.footer-brand p{font-size:10px;color:#7b858d}.footer-links{display:flex;gap:20px;flex-wrap:wrap;align-items:center;font-size:11px;font-weight:900}.footer-social{display:flex;gap:8px}.footer-social a{width:39px;height:39px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:900}
.mobile-dock{display:none}
.modal-backdrop,.lightbox{position:fixed;inset:0;z-index:300;background:rgba(9,20,32,.68);backdrop-filter:blur(12px);display:grid;place-items:center;padding:20px}.modal{background:#fffdf8;width:min(720px,100%);max-height:90vh;overflow:auto;border-radius:28px;padding:42px;position:relative;box-shadow:0 30px 90px rgba(0,0,0,.25)}.close{position:absolute;right:20px;top:18px;border:0;background:#edf2f5;width:40px;height:40px;border-radius:50%;font-size:25px;color:var(--ink)}.modal-kicker{color:var(--coral);font-size:10px;font-weight:900;letter-spacing:.17em}.modal h2{font-family:Manrope;font-size:48px;line-height:1.02;letter-spacing:-.055em;margin:12px 0 32px}.step{display:flex;gap:14px;align-items:center;margin:22px 0 12px}.step span{font-size:10px;color:#87939c}.choice-row{display:flex;gap:9px;flex-wrap:wrap}.choice-row button{border:1px solid var(--line);background:white;padding:13px 15px;border-radius:13px;font-weight:800}.choice-row button.selected{background:var(--ink);color:white;border-color:var(--ink)}.subject-select{position:relative}.subject-select select{appearance:none;width:100%;border:1px solid var(--line);background:white;padding:15px;border-radius:13px;font-weight:800}.subject-select span{position:absolute;right:16px;top:13px}.result{margin-top:28px;padding:18px;background:#e9f7ff;border-radius:17px;display:flex;justify-content:space-between;align-items:center;gap:15px}.result span{display:block;font-size:9px;letter-spacing:.12em;color:#778079}.result b{display:block;margin-top:5px}.result button{border:0;background:var(--ink);color:white;padding:12px 15px;border-radius:999px;font-weight:800}.inquiry-modal .lead{color:var(--muted);line-height:1.7}.inquiry-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px}.inquiry-grid a{background:white;border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;grid-template-columns:35px 1fr 20px;align-items:center;gap:10px}.inquiry-grid a>span:first-child{font-size:20px}.inquiry-grid small,.inquiry-grid b{display:block}.inquiry-grid small{font-size:9px;letter-spacing:.12em;color:#7b847e}.inquiry-grid b{font-size:12px;margin-top:3px}.modal-social{margin-top:18px}.modal-social a{font-weight:900;font-size:12px;color:var(--coral)}.lightbox img{max-width:min(1100px,88vw);max-height:82vh;border-radius:20px;object-fit:contain}.lightbox .close{position:fixed}.lightbox-count{position:fixed;bottom:25px;color:white;font-size:11px;letter-spacing:.08em}.lb-prev,.lb-next{position:fixed;top:50%;border:0;background:rgba(255,255,255,.92);width:50px;height:50px;border-radius:50%;font-size:35px}.lb-prev{left:25px}.lb-next{right:25px}[hidden]{display:none!important}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}
@media(max-width:1050px){.nav nav{gap:12px}.brand img{width:165px}.hero-inner{gap:40px}.floating-note{right:-5px}.subjects-section{margin-left:5vw;margin-right:5vw}}
@media(max-width:900px){.nav nav{display:none}.nav nav.open{position:absolute;top:76px;left:14px;right:14px;display:grid;grid-template-columns:1fr 1fr;background:white;border-radius:20px;padding:18px;box-shadow:0 20px 50px rgba(0,0,0,.14);gap:13px}.nav nav.open .nav-cta{grid-column:1/3}.menu-btn{display:block}.hero{padding-top:125px}.hero-inner,.split-section,.location-card,.subjects-section{grid-template-columns:1fr}.hero-visual{min-height:520px}.hero-proof{gap:22px}.program-grid{grid-template-columns:1fr}.program-card{min-height:350px}.subjects-section{padding:55px 7vw;gap:40px}.split-section{padding-left:5vw;padding-right:5vw;gap:45px}.split-image{height:560px}.finder-strip{align-items:flex-start;flex-direction:column}.section{padding:90px 5vw}.section-head{align-items:flex-start}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:240px 200px 200px}.g1{grid-row:auto;grid-column:1/3}.g2,.g3,.g4,.g5{grid-column:auto}.location-card{padding:35px}footer{flex-direction:column;align-items:flex-start}.mobile-dock{position:fixed;display:grid;grid-template-columns:1fr 1.4fr 1fr;z-index:150;bottom:12px;left:12px;right:12px;background:rgba(16,37,63,.96);padding:6px;border-radius:18px;box-shadow:0 15px 45px rgba(0,0,0,.2)}.mobile-dock a,.mobile-dock button{border:0;background:none;color:white;padding:12px 5px;font-size:11px;font-weight:800}.mobile-dock button:nth-child(2){background:var(--cyan);color:var(--ink);border-radius:13px}.hero-bottom{display:none}.modal{padding:35px 23px}.modal h2{font-size:38px}.result{align-items:flex-start;flex-direction:column}.inquiry-grid{grid-template-columns:1fr}}
@media(max-width:560px){.nav{height:72px;padding:8px 16px}.brand img{width:145px;height:52px}.hero{padding:112px 20px 45px;min-height:auto}.hero-logo{width:calc(100vw - 40px);max-width:none;height:auto;margin-left:0;margin-right:0}.hero h1{font-size:49px}.hero-sub{font-size:15px}.hero-actions{align-items:stretch;flex-direction:column}.ghost{text-align:center}.hero-proof{justify-content:space-between;gap:8px}.hero-proof strong{font-size:18px}.hero-proof span{font-size:8px}.hero-visual{min-height:0;margin-top:18px}.photo-frame{width:min(430px,100%);height:auto}.photo-frame>img{max-height:none}.ticker>div{justify-content:flex-start;gap:19px}.section{padding:80px 20px}.section-head{margin-bottom:35px}.section h2,.subjects-copy h2{font-size:43px}.program-card{padding:23px;border-radius:23px}.subjects-section{margin:0 20px 80px;padding:42px 25px;border-radius:28px}.subject-cloud{gap:7px}.subject{padding:11px 13px;font-size:12px}.subject.big{font-size:16px}.split-section{padding:0 20px 80px}.split-image{height:430px;border-radius:27px}.split-copy h2{font-size:45px}.finder-strip{margin:0 20px 80px;padding:40px 25px;border-radius:27px}.finder-strip h2{font-size:40px}.gallery-grid{grid-template-columns:1fr;grid-template-rows:260px 180px 180px 180px 180px}.g1{grid-column:auto}.g2,.g3,.g4,.g5{grid-column:auto}.location-card{margin:0 20px 80px;padding:27px;border-radius:27px;gap:30px}.location-copy h2{font-size:42px}.contact-actions{flex-direction:column}.contact-actions a{text-align:center}.map-card{height:280px}.footer-brand img{width:155px}.lb-prev{left:8px}.lb-next{right:8px}}

/* Client revision: the teacher photo must stand alone with no cards, badges or overlays. */
.photo-gradient,.photo-badge,.photo-caption,.floating-note{display:none!important}
.program-card h3,.feature-list b,.subject,.chips span,.program-card>button{font-weight:900}
.program-card p,.feature-list p,.lead,.hero-sub{font-weight:400}
.kicker,.brand-kicker{font-weight:900}

@media(max-width:560px){.hero-actions .call-cta{width:100%;min-height:54px;font-size:15px}.hero-actions .primary{width:100%;min-height:54px}.hero-proof{margin-top:28px}.program-card h3{font-size:32px}.section h2,.subjects-copy h2{font-weight:900}}
/* ================================
   TOPUP — BRIGHTER CONTENT TEXT
   ================================ */

/* Main section description */
section p,
.section-description,
.hero-description,
.intro-text {
  color: #334155 !important;
  font-weight: 500 !important;
  opacity: 1 !important;
}

/* Feature / method descriptions */
.feature p,
.feature-text,
.feature-description,
.method p,
.method-text,
.method-description {
  color: #475569 !important;
  font-weight: 500 !important;
  opacity: 1 !important;
}

/* Make section topic/headings stand out */
section h2,
section h3,
.feature h3,
.method h3 {
  color: #0f2742 !important;
  font-weight: 800 !important;
  opacity: 1 !important;
}

/* Highlight the numbered labels */
.feature-number,
.method-number,
.feature span:first-child,
.method span:first-child {
  color: #ef6f61 !important;
  font-weight: 800 !important;
  opacity: 1 !important;
}

/* General readable body text */
p {
  color: #475569 !important;
  opacity: 1 !important;
}

/* Specifically improve the 01–04 content area */
.features p,
.methods p,
.approach p,
.principles p {
  color: #475569 !important;
  font-weight: 500 !important;
  opacity: 1 !important;
}

/* Keep headings visually stronger than descriptions */
.features h3,
.methods h3,
.approach h3,
.principles h3 {
  color: #102a43 !important;
  font-weight: 800 !important;
}

/* Improve readability on mobile */
@media (max-width: 768px) {
  section p,
  .feature p,
  .method p,
  .feature-text,
  .method-text {
    color: #3f4f5f !important;
    font-size: 1.05rem;
    line-height: 1.65;
    font-weight: 500 !important;
  }

  section h2 {
    color: #0b2540 !important;
    font-weight: 850 !important;
  }

  section h3,
  .feature h3,
  .method h3 {
    color: #0b2540 !important;
    font-weight: 800 !important;
  }
}
/* =========================================================
   TOPUP CLIENT REVISION — GOLD TEXT + GREEN CALL BUTTON
   ========================================================= */

/* ---------- GOLD / ORANGE ACCENT ---------- */

:root {
  --topup-gold: #c88700;
  --topup-gold-bright: #d99a00;
  --topup-gold-dark: #a96f00;
  --topup-green: #16a34a;
  --topup-green-dark: #15803d;
}


/* "From the first question to the aha moment." */
.subjects-copy h2 {
  color: var(--topup-gold) !important;
  font-weight: 900 !important;
}

.subjects-copy h2 em {
  color: var(--topup-gold-bright) !important;
  font-weight: 900 !important;
}


/* ---------- ALL SMALL / SUPPORTING TEXT ---------- */

/* Small section labels */
.kicker,
.brand-kicker,
.eyebrow,
.modal-kicker {
  color: var(--topup-gold-bright) !important;
  font-weight: 900 !important;
  opacity: 1 !important;
}


/* Small labels inside cards */
.program-top,
.hero-proof span,
.social-row > span,
.image-label span,
.map-overlay span,
.footer-brand p,
.inquiry-grid small,
.step span,
.lightbox-count {
  color: var(--topup-gold) !important;
  opacity: 1 !important;
  font-weight: 800 !important;
}


/* Feature numbers 01 / 02 / 03 / 04 */
.feature-list > div > span {
  color: var(--topup-gold-bright) !important;
  font-weight: 900 !important;
}


/* Small chips / tags */
.chips span {
  color: var(--topup-gold-dark) !important;
  font-weight: 900 !important;
}


/* Small supporting text around subjects */
.subjects-copy > p:not(.kicker) {
  color: #f4ead4 !important;
  opacity: 1 !important;
}


/* ---------- HERO SMALL TEXT ---------- */

.hero-proof span {
  color: var(--topup-gold) !important;
  font-weight: 800 !important;
}


/* ---------- CALL THE CENTRE BUTTON ---------- */

.call-cta {
  background: var(--topup-green) !important;
  color: #ffffff !important;
  border: 0 !important;
  font-weight: 900 !important;

  box-shadow:
    0 12px 28px rgba(22, 163, 74, 0.28),
    0 4px 10px rgba(22, 163, 74, 0.18) !important;

  transition:
    transform 0.2s ease,
    background 0.2s ease,
    box-shadow 0.2s ease !important;
}


/* Phone icon */
.call-cta svg {
  width: 20px !important;
  height: 20px !important;
  fill: currentColor !important;
}


/* Hover */
.call-cta:hover {
  background: var(--topup-green-dark) !important;
  color: #ffffff !important;
  transform: translateY(-2px);

  box-shadow:
    0 16px 34px rgba(22, 163, 74, 0.34),
    0 6px 14px rgba(22, 163, 74, 0.2) !important;
}


/* ---------- MOBILE BOTTOM CALL BUTTON ---------- */

.mobile-dock a[href^="tel:"] {
  background: var(--topup-green) !important;
  color: #ffffff !important;
  border-radius: 13px !important;
  font-weight: 900 !important;

  box-shadow:
    0 5px 15px rgba(22, 163, 74, 0.25) !important;
}


/* Mobile Call hover / active */
.mobile-dock a[href^="tel:"]:hover,
.mobile-dock a[href^="tel:"]:active {
  background: var(--topup-green-dark) !important;
}


/* ---------- CONTACT CALL LINKS ---------- */

.inquiry-grid a[href^="tel:"] {
  border-color: rgba(22, 163, 74, 0.3) !important;
}

.inquiry-grid a[href^="tel:"] > span:first-child {
  color: var(--topup-green) !important;
}


/* ---------- KEEP MAIN CONTENT DARK & EASY TO READ ---------- */

.feature-list p {
  color: #3f4f5f !important;
  opacity: 1 !important;
  font-weight: 500 !important;
}

.program-card p {
  color: #30485d !important;
  opacity: 1 !important;
}

.lead {
  color: #30485d !important;
  opacity: 1 !important;
}


/* ---------- MOBILE ---------- */

@media (max-width: 560px) {

  /* Gold headline */
  .subjects-copy h2 {
    color: var(--topup-gold) !important;
    font-weight: 900 !important;
  }

  .subjects-copy h2 em {
    color: var(--topup-gold-bright) !important;
  }

  /* Make small text clearly visible */
  .kicker,
  .brand-kicker,
  .eyebrow {
    color: var(--topup-gold-bright) !important;
    font-weight: 900 !important;
  }

  .feature-list p {
    color: #3a4b5b !important;
    font-weight: 500 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
  }

  /* Strong green call button */
  .hero-actions .call-cta {
    background: var(--topup-green) !important;
    color: #fff !important;
    min-height: 54px;
    font-weight: 900 !important;
  }

  .hero-actions .call-cta:hover {
    background: var(--topup-green-dark) !important;
  }

  /* Bottom dock Call */
  .mobile-dock a[href^="tel:"] {
    background: var(--topup-green) !important;
    color: white !important;
    font-weight: 900 !important;
  }
}
/* Gold text for the 4 method descriptions */
.feature-list p {
  color: #c88700 !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}

/* Keep them bright and readable on mobile */
@media (max-width: 560px) {
  .feature-list p {
    color: #c88700 !important;
    font-weight: 600 !important;
    opacity: 1 !important;
  }
}