/* ═══════════════════════════════════════════════════════════════
   UNICOMPASS — FINAL AUTHORITATIVE STYLES
   Loaded last. Wins all battles. Manrope everywhere.
   If you see faint text, it ends here.
═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&family=DM+Serif+Display:ital@0;1&display=swap');

/* ── GLOBAL RESET ── */
*{box-sizing:border-box}
html,body{
  font-family:'Manrope',system-ui,-apple-system,sans-serif!important;
  font-size:15px!important;font-weight:400!important;
  color:#1E293B!important;line-height:1.6!important;
  -webkit-font-smoothing:antialiased!important;
}

/* ── HEADINGS ── */
/* h1 base — NO !important on color so dark sections can override */
h1:not(.hero-title){
  font-family:'Manrope',sans-serif!important;
  font-weight:800!important;
  letter-spacing:-0.03em!important;
}
/* Light background h1 — gets navy */
.section-white h1,.section-ivory h1,.ip-card h1,
.page-content h1,.card h1,.il-card h1{
  color:#0F2A5C;
}
h2{font-family:'Manrope',sans-serif!important;font-weight:700!important;color:#0F2A5C!important;letter-spacing:-0.025em!important}
h3{font-family:'Manrope',sans-serif!important;font-weight:700!important;color:#0F2A5C!important;letter-spacing:-0.02em!important}
h4{font-family:'Manrope',sans-serif!important;font-weight:600!important;color:#1E293B!important}
p{font-family:'Manrope',sans-serif!important;font-weight:400!important;color:#374151!important}
a{font-family:inherit}
strong,b{font-weight:700!important}
input,select,textarea,button{font-family:'Manrope',sans-serif!important}
label{font-family:'Manrope',sans-serif!important;font-weight:600!important;color:#374151!important}

/* ── HERO TITLES (keep DM Serif) ── */
.hero-title,h1.hero-title{
  font-family:'DM Serif Display',Georgia,serif!important;
  font-weight:400!important;
}

/* ── NAVBAR — crisp and clear ── */
.navbar{
  background:#FFFFFF!important;
  border-bottom:1px solid #E2E8F0!important;
  box-shadow:0 1px 0 #E2E8F0, 0 2px 8px rgba(0,0,0,0.04)!important;
}
.nav-links a,.nav-link-btn{
  font-family:'Manrope',sans-serif!important;
  font-weight:600!important;font-size:0.85rem!important;
  color:#1E293B!important;
}
.nav-links a:hover,.nav-link-btn:hover{color:#0F2A5C!important;background:#F1F5F9!important}
.nav-brand{font-family:'Manrope',sans-serif!important;font-weight:800!important;color:#0F2A5C!important;letter-spacing:-0.02em!important}

/* ── SECTION TITLES ── */
.sec-title,.section-title{
  font-family:'Manrope',sans-serif!important;
  font-weight:700!important;color:#0F2A5C!important;
  letter-spacing:-0.025em!important;
}
.sec-sub,.section-sub{
  font-family:'Manrope',sans-serif!important;
  font-weight:400!important;color:#4B5563!important;
  font-size:0.9rem!important;
}
.sec-kicker{
  font-family:'Manrope',sans-serif!important;
  font-weight:700!important;font-size:0.65rem!important;
  color:#D97706!important;letter-spacing:0.12em!important;
}

/* ── HOME HERO ── */
.hero-sub{
  font-family:'Manrope',sans-serif!important;
  font-weight:400!important;font-size:0.92rem!important;
  color:rgba(255,255,255,0.9)!important;line-height:1.75!important;
}
.hero-sub strong{color:#F0C040!important;font-weight:700!important}
.hero-tag{
  font-family:'Manrope',sans-serif!important;
  font-weight:700!important;color:#F0C040!important;font-size:0.65rem!important;
}
.stat-num{
  font-family:'Manrope',sans-serif!important;
  font-weight:800!important;font-size:1.2rem!important;color:#FFFFFF!important;
}
.stat-lbl{
  font-family:'Manrope',sans-serif!important;
  font-weight:500!important;color:rgba(255,255,255,0.65)!important;font-size:0.58rem!important;
}

/* ── UNIVERSITY CARDS ── */
.uni-card-top,.uni-card-header,
.universities-grid .uni-card-header{
  background:linear-gradient(135deg,#EEF2FF,#E8F0FE)!important;
  border-bottom:1px solid #D4DCEF!important;
}
.uni-card-top-info h3,.uni-card-header-info h3{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  color:#0F2A5C!important;font-size:0.87rem!important;
}
.uni-loc,.uni-location{
  font-family:'Manrope',sans-serif!important;font-weight:400!important;
  color:#6B7280!important;font-size:0.71rem!important;
}
.rank-val,.ranking-item .val{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;color:#0F2A5C!important;
}
.rank-lbl{
  font-family:'Manrope',sans-serif!important;font-weight:600!important;
  color:#94A3B8!important;font-size:0.58rem!important;
}
.foot-accom strong,.uni-fee strong{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;color:#0F2A5C!important;
}

/* ── FEAT CARDS ── */
.feat-card h3{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  color:#0F2A5C!important;font-size:0.87rem!important;
}
.feat-card p{
  font-family:'Manrope',sans-serif!important;font-weight:400!important;color:#4B5563!important;
}

/* ── DESTINATION CARDS ── */
.dest-name{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  color:#0F2A5C!important;font-size:0.83rem!important;
}
.dest-count{font-family:'Manrope',sans-serif!important;font-weight:400!important;color:#6B7280!important}

/* ── CAREER CARDS ── */
.career-card h4{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  color:#0F2A5C!important;font-size:0.85rem!important;
}
.career-salary{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  color:#D97706!important;font-size:0.88rem!important;
}

/* ── SCHOLARSHIP CARDS (old style) ── */
.schol-card h3,.scholarship-card h3{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  color:#0F2A5C!important;
}
.schol-value,.scholarship-value{
  font-family:'Manrope',sans-serif!important;font-weight:800!important;color:#D97706!important;
}

/* ── TESTIMONIALS ── */
.testi-name{font-family:'Manrope',sans-serif!important;font-weight:700!important;color:#0F2A5C!important}
.testi-text{font-family:'Manrope',sans-serif!important;font-weight:400!important;color:#374151!important;font-style:italic!important}
.testi-journey{font-family:'Manrope',sans-serif!important;font-weight:600!important;color:#D97706!important}

/* ── STEP CARDS ── */
.step-title{font-family:'Manrope',sans-serif!important;font-weight:700!important;color:#0F2A5C!important}
.step-desc{font-family:'Manrope',sans-serif!important;font-weight:400!important;color:#4B5563!important}

/* ── BUTTONS ── */
.btn{font-family:'Manrope',sans-serif!important;font-weight:700!important;letter-spacing:0.01em!important}
.btn-gold{
  background:linear-gradient(135deg,#D97706,#F59E0B)!important;
  color:#FFFFFF!important;
  box-shadow:0 2px 10px rgba(217,119,6,0.3)!important;
}
.btn-gold:hover{
  background:linear-gradient(135deg,#B45309,#D97706)!important;
  box-shadow:0 4px 18px rgba(217,119,6,0.4)!important;
  transform:translateY(-1px)!important;
}
.btn-navy{background:#0F2A5C!important;color:#FFFFFF!important}
.btn-navy:hover{background:#162B4A!important;transform:translateY(-1px)!important}

/* ── FORMS ── */
input,select,textarea{
  font-family:'Manrope',sans-serif!important;font-weight:400!important;color:#1E293B!important;
}
input::placeholder,textarea::placeholder{
  font-weight:300!important;color:#94A3B8!important;
}
.field-dark input,.field-dark select{color:#FFFFFF!important}
.field-dark input::placeholder{color:rgba(255,255,255,0.45)!important}

/* ── TABLE HEADERS ── */
table th{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  color:#374151!important;background:#F1F5F9!important;
  font-size:0.67rem!important;text-transform:uppercase!important;letter-spacing:0.08em!important;
}
table td{font-family:'Manrope',sans-serif!important;font-weight:400!important;color:#1E293B!important}

/* ── BADGES ── */
.badge,.tag,.uni-type-tag{font-family:'Manrope',sans-serif!important;font-weight:600!important}

/* ── FILTER SIDEBAR ── */
.filter-group h4{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  font-size:0.65rem!important;color:#374151!important;
  text-transform:uppercase!important;letter-spacing:0.1em!important;
}
.filter-check{
  font-family:'Manrope',sans-serif!important;font-weight:400!important;
  font-size:0.82rem!important;color:#374151!important;
}

/* ── FOOTER ── */
.foot-col h4{font-family:'Manrope',sans-serif!important;font-weight:700!important}
.foot-col a{font-family:'Manrope',sans-serif!important;font-weight:400!important}
.foot-col p,.foot-bottom{font-family:'Manrope',sans-serif!important;font-weight:400!important}

/* ── SEARCH HERO ── */
.search-hero{background:linear-gradient(160deg,#0B1E3D,#152B5E,#0B1E3D)!important}
.search-hero h1{
  font-family:'DM Serif Display',serif!important;
  font-weight:400!important;color:#FFFFFF!important;
}
.search-bar-full .form-group label{
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
  color:rgba(255,255,255,0.85)!important;font-size:0.65rem!important;
  text-transform:uppercase!important;letter-spacing:0.1em!important;
}
.search-bar-full .form-group input,
.search-bar-full .form-group select{
  font-family:'Manrope',sans-serif!important;font-weight:400!important;
  color:#FFFFFF!important;border-color:rgba(255,255,255,0.28)!important;
}
.search-bar-full .form-group input::placeholder{
  color:rgba(255,255,255,0.45)!important;font-weight:300!important;
}

/* ── PAGE HERO SMALL ── */
.page-hero-sm{background:linear-gradient(160deg,#0B1E3D,#152B5E)!important}
.page-hero-sm h1{
  font-family:'DM Serif Display',serif!important;
  font-weight:400!important;color:#FFFFFF!important;
}
.page-hero-sm p{
  font-family:'Manrope',sans-serif!important;
  font-weight:400!important;color:rgba(255,255,255,0.78)!important;
}

/* ── SECTION BACKGROUNDS ── */
.section-ivory{background:#F8FAFC!important}
.section-ink{background:linear-gradient(160deg,#0B1E3D,#152B5E)!important}

/* ── LOGO CONTAINERS ── */
.uni-logo-wrap,.uni-logo{
  background:#FFFFFF!important;
  border:1px solid #D1D9E6!important;border-radius:10px!important;
}
.uni-logo-wrap .fallback-icon,.fallback-icon,.uni-logo .logo-placeholder{
  color:#D97706!important;font-size:1.3rem!important;
}

/* ── RESULTS COUNT ── */
.results-count{
  font-family:'Manrope',sans-serif!important;font-weight:400!important;color:#374151!important;
}
.results-count strong{font-weight:800!important;color:#0F2A5C!important}

/* ── COMPARE TABLE ── */
.compare-table .hd-row th{
  background:#EEF2FF!important;color:#0F2A5C!important;
  font-family:'Manrope',sans-serif!important;font-weight:700!important;
}

/* ── HERO ACCENT LINE ── */
.hero::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:3px;z-index:2;
  background:linear-gradient(90deg,transparent,#D4A017,#F0C040,#D4A017,transparent);
  opacity:0.65;
}

/* ── CARD HOVER LIFT ── */
.uni-card,.feat-card,.dest-card,.career-card,.testi-card,.step-card,.schol-card,.scholarship-card{
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
}

/* ── SELECTION ── */
::selection{background:rgba(217,119,6,0.18);color:#0F2A5C}

/* ═══════════════════════════════════════════════════════════════
   CONTRAST FIXES — v15.1
   All dark hero/section text guaranteed white. No exceptions.
═══════════════════════════════════════════════════════════════ */

/* ── ALL DARK HERO SECTIONS ── */
.page-hero-sm, .calc-hero, .search-hero,
.psych-hero, .schol-hero, .page-hero {
  color: #FFFFFF !important;
}
.page-hero-sm h1, .calc-hero h1, .search-hero h1,
.psych-hero h1, .schol-hero h1, .page-hero h1 {
  color: #FFFFFF !important;
  font-family: 'Manrope', sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
}
.page-hero-sm h2, .calc-hero h2, .search-hero h2 {
  color: #FFFFFF !important;
}
.page-hero-sm p, .calc-hero p,
.psych-hero p, .schol-hero p {
  color: rgba(255,255,255,0.82) !important;
  font-weight: 400 !important;
}
.page-hero-sm .sec-kicker,
.calc-hero .sec-kicker,
[class*="hero"] .sec-kicker {
  color: #F0C040 !important;
}
.page-hero-sm a.btn-ghost-white,
.page-hero-sm a.btn-ghost-navy {
  border-color: rgba(255,255,255,0.5) !important;
  color: #FFFFFF !important;
}

/* ── CALC HERO — ensure background is dark ── */
.calc-hero {
  background: linear-gradient(160deg,#0B1E3D,#152B5E,#0B1E3D) !important;
  padding: 2.75rem clamp(1rem,5vw,3rem) !important;
}

/* ── COMPARE TABLE HEADERS ── */
.compare-table .hd-row th,
.compare-table thead th {
  background: linear-gradient(135deg,#EEF2FF,#E8F0FE) !important;
  color: #0F2A5C !important;
  font-family: 'Manrope', sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.67rem !important;
  border-bottom: 2px solid #D4DCEF !important;
}

/* ── COMPARE TABLE ROWS ── */
.compare-table td {
  font-family: 'Manrope', sans-serif !important;
  font-weight: 400 !important;
  color: #1E293B !important;
  font-size: 0.84rem !important;
}
.compare-table .score-bar-wrap {
  background: #E8EDF5 !important;
}

/* ── SECTION INK (dark sections) — all text white ── */
.section-ink, .section-ink * {
  color: #FFFFFF !important;
}
.section-ink h2, .section-ink h3 {
  color: #FFFFFF !important;
  font-weight: 700 !important;
}
.section-ink p, .section-ink span {
  color: rgba(255,255,255,0.82) !important;
}
.section-ink .sec-kicker {
  color: #F0C040 !important;
}
/* But don't override buttons inside dark sections */
.section-ink .btn-gold { color: #FFFFFF !important; }
.section-ink .btn-navy { background: rgba(255,255,255,0.15) !important; color: #FFFFFF !important; border: 1px solid rgba(255,255,255,0.3) !important; }

/* ── HOMEPAGE FEAT CARDS — 'Know your full cost' area ── */
.feat-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
}
.feat-card h3 {
  color: #0F2A5C !important;
  font-family: 'Manrope', sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.88rem !important;
}
.feat-card p {
  color: #4B5563 !important;
  font-family: 'Manrope', sans-serif !important;
  font-weight: 400 !important;
  font-size: 0.8rem !important;
  line-height: 1.65 !important;
}
.feat-icon { color: #D97706 !important; }

/* ── LOGO CONTAINER IN COMPARE TABLE ── */
.compare-logo-wrap, .comp-logo {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 8px !important;
}

/* ── INSTITUTION PAGE HEADINGS ── */
.inst-section h2 {
  color: #0F2A5C !important;
  font-family: 'Manrope', sans-serif !important;
  font-weight: 700 !important;
  border-bottom-color: #D97706 !important;
}

/* ── GRADING / IELTS HERO ── */
.grade-hero h1, .ielts-hero h1 {
  color: #FFFFFF !important;
}
.grade-hero p, .ielts-hero p {
  color: rgba(255,255,255,0.82) !important;
}

/* ── SMART MATCH SECTION (homepage) ── */
.sm-section, .smart-match {
  background: linear-gradient(160deg,#0B1E3D,#152B5E) !important;
}
.sm-section *, .smart-match * { color: #FFFFFF !important; }
.sm-section p, .smart-match p { color: rgba(255,255,255,0.78) !important; }

/* ── DEADLINE SECTION (dark) ── */
.deadline-section { background: linear-gradient(160deg,#0B1E3D,#152B5E) !important; }
.deadline-section h2 { color: #FFFFFF !important; font-weight: 700 !important; }
.deadline-section p { color: rgba(255,255,255,0.78) !important; }
.deadline-section .sec-sub { color: rgba(255,255,255,0.7) !important; }
.dl-days { color: #F0C040 !important; font-weight: 800 !important; }
.dl-name { color: rgba(255,255,255,0.9) !important; font-weight: 600 !important; }
.dl-card { background: rgba(255,255,255,0.08) !important; border-color: rgba(255,255,255,0.15) !important; }

/* ── NEWSLETTER SECTION ── */
.nl-section, [class*="newsletter"] {
  background: linear-gradient(160deg,#0B1E3D,#152B5E) !important;
}
.nl-title { color: #FFFFFF !important; font-weight: 800 !important; }
.nl-sub { color: rgba(255,255,255,0.75) !important; }

/* ── STEP SECTION (light bg) ── */
.steps-section .step-title { color: #0F2A5C !important; font-weight: 700 !important; }
.steps-section .step-desc { color: #4B5563 !important; }
.step-num { background: #0F2A5C !important; color: #FFFFFF !important; }

/* ── CAREERS PAGE HERO ── */
.careers-hero h1, .career-hero h1 { color: #FFFFFF !important; font-weight: 800 !important; }
.careers-hero p { color: rgba(255,255,255,0.82) !important; }

/* ── IELTS & GRADING SECTION HEADINGS ── */
.ielts-section h2, .grade-section h2 {
  color: #0F2A5C !important; font-weight: 700 !important;
  border-bottom-color: #D97706 !important;
}

/* ── RESULT ROW (budget planner) ── */
.result-row .lbl, .res-row .lbl, .result-row .label {
  color: #374151 !important; font-weight: 500 !important;
}
.result-row .val, .res-row .val, .result-row .value {
  color: #0F2A5C !important; font-weight: 700 !important;
  font-family: 'Manrope', sans-serif !important;
}
.result-row.total { background: #0F2A5C !important; }
.result-row.total .lbl, .result-row.total .label { color: rgba(255,255,255,0.8) !important; }
.result-row.total .val, .result-row.total .value { color: #F0C040 !important; font-weight: 800 !important; }

/* ── GLOBAL: Any dark-bg inline styles ── */
/* Catch all color:var(--white) that are actually on light backgrounds */
[style*="background:#F7F9FC"] h1,
[style*="background:#F8FAFC"] h1,
[style*="background:#FFFFFF"] h1 {
  color: #0F2A5C !important;
}

/* ══════════════════════════════════════════════════════════════
   HOMEPAGE ENRICHMENT v17
═══════════════════════════════════════════════════════════════ */

/* Hero — taller, more immersive */
.hero { min-height: 95vh !important; }
.hero-inner { min-height: 90vh !important; padding: 2.5rem clamp(1rem,5vw,3rem) !important; align-items: center !important; }
.hero-content { padding-top: 0 !important; }
.hero-title { font-size: clamp(2.4rem,6vw,4.2rem) !important; line-height: 1.05 !important; margin-bottom: 1.25rem !important; }

/* Sub text larger */
.hero-sub { font-size: 1rem !important; max-width: 520px !important; line-height: 1.8 !important; margin-bottom: 1.35rem !important; }

/* CTAs — bigger */
.hero-ctas .btn-lg { font-size: 0.95rem !important; padding: 0.85rem 1.75rem !important; border-radius: 12px !important; }
.btn-gold.btn-lg { box-shadow: 0 4px 20px rgba(217,119,6,0.4) !important; }

/* Stats — bolder */
.stat-num { font-size: 1.5rem !important; font-weight: 800 !important; }
.stat-lbl { font-size: 0.62rem !important; }
.hero-stats { gap: 1.5rem !important; padding-top: 1.1rem !important; }

/* Sections — more padding */
.section { padding: 5rem 0 !important; }
.section.section-white:first-of-type { padding-top: 4rem !important; }

/* Section titles — bigger */
.sec-title { font-size: clamp(1.5rem,3vw,2.2rem) !important; margin-bottom: 0.65rem !important; }
.sec-sub { font-size: 0.95rem !important; max-width: 580px !important; }

/* Feature cards — taller, more breathing room */
.feat-card { padding: 2rem !important; border-radius: 18px !important; }
.feat-icon { font-size: 1.4rem !important; margin-bottom: 1.1rem !important; width: 52px !important; height: 52px !important; border-radius: 14px !important; }
.feat-card h3 { font-size: 1rem !important; margin-bottom: 0.5rem !important; }
.feat-card p { font-size: 0.85rem !important; }

/* Destination cards — bigger flags */
.dest-flag { font-size: 2.4rem !important; margin-bottom: 0.6rem !important; }
.dest-name { font-size: 0.9rem !important; }
.dest-count { font-size: 0.72rem !important; }

/* Career cards — richer */
.career-card { border-radius: 14px !important; padding: 1.35rem !important; }
.career-card h4 { font-size: 0.9rem !important; }
.career-salary { font-size: 0.95rem !important; }

/* Testimonial cards */
.testi-card { border-radius: 18px !important; padding: 1.75rem !important; }
.testi-text { font-size: 0.9rem !important; line-height: 1.75 !important; }

/* Step cards */
.step-card { padding: 1.75rem 1.5rem !important; border-radius: 18px !important; }
.step-num { width: 44px !important; height: 44px !important; font-size: 1rem !important; }
.step-title { font-size: 0.95rem !important; }
.step-desc { font-size: 0.84rem !important; }

/* Newsletter — bigger */
.newsletter-section { padding: 5rem 0 !important; }
.nl-title { font-size: clamp(1.5rem,3vw,2.2rem) !important; }

/* ══════════════════════════════════════════════════════════════
   CURRENCY SELECT — definitive white text, every page, every browser
═══════════════════════════════════════════════════════════════ */
.currency-select {
  background: #0F2A5C !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255,255,255,0.25) !important;
  border-radius: 8px !important;
  padding: 0.35rem 0.65rem !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 0.73rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
.currency-select:hover {
  background: #162B4A !important;
  border-color: #F0C040 !important;
}
.currency-select option,
.currency-select option:checked,
.currency-select option:focus,
.currency-select option:hover {
  background: #0F2A5C !important;
  color: #FFFFFF !important;
  font-family: 'Manrope', sans-serif !important;
  font-weight: 500 !important;
}
/* Financial page currency select — same treatment */
#calcCurrency {
  background: rgba(255,255,255,0.12) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
}
#calcCurrency option {
  background: #152B5E !important;
  color: #FFFFFF !important;
  font-family: 'Manrope', sans-serif !important;
}
#calcCurrency option:checked {
  background: #0F2A5C !important;
  color: #F0C040 !important;
}

/* ALL dark hero headings — white, final word */
.page-hero-sm h1,.calc-hero h1,.search-hero h1,
.psych-hero h1,.schol-hero h1,.page-hero h1,
.ip-hero h1,.sp2-hero h1,.ielts-hero h1,
.careers-hero h1,.inst-hero h1,
.schol-hero h1,[class$="-hero"] h1,[class*="-hero"] h1{
  color:#FFFFFF!important;
  font-family:'Manrope',sans-serif!important;
  font-weight:800!important;
}

/* ══════════════════════════════════════════════════════════════
   MOBILE & TABLET — Complete responsive overhaul v17
   Breakpoints: 1100px (tablet), 768px (mobile), 480px (small)
═══════════════════════════════════════════════════════════════ */

/* ── HAMBURGER — always visible below 1100px ── */
@media (max-width: 1100px) {
  .nav-links { display: none !important; }
  .hamburger { display: flex !important; }

  /* Mobile nav drawer */
  .mobile-nav {
    display: none;
    position: fixed !important;
    top: 64px !important; left: 0 !important; right: 0 !important;
    bottom: 0 !important;
    background: #FFFFFF !important;
    z-index: 9999 !important;
    flex-direction: column !important;
    overflow-y: auto !important;
    border-top: 2px solid #E2E8F0 !important;
    padding: 1rem 0 2rem !important;
    box-shadow: 0 8px 32px rgba(15,42,92,0.15) !important;
  }
  .mobile-nav.open { display: flex !important; }

  .mobile-nav a {
    font-family: 'Manrope', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    color: #1E293B !important;
    padding: 0.85rem 1.5rem !important;
    text-decoration: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
    border-bottom: 1px solid #F1F5F9 !important;
    transition: background .15s ease !important;
  }
  .mobile-nav a:hover { background: #F0F4FF !important; color: #0F2A5C !important; }
  .mobile-nav a i { color: #D97706 !important; width: 20px !important; font-size: 0.85rem !important; }

  .mobile-nav-section {
    font-family: 'Manrope', sans-serif !important;
    font-size: 0.62rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    color: #9CA3AF !important;
    padding: 1.1rem 1.5rem 0.4rem !important;
    margin-top: 0.25rem !important;
  }

  /* Nav currency + CTA on mobile */
  .nav-right { gap: 0.5rem !important; }
  .currency-select { font-size: 0.7rem !important; padding: 0.3rem 0.5rem !important; }

  /* Search layout */
  .search-layout-v2 { grid-template-columns: 1fr !important; }
  .search-panel { position: static !important; height: auto !important; border-right: none !important; border-bottom: 2px solid #E2E8F0 !important; }

  /* Scholarships layout */
  .sp2-layout { grid-template-columns: 1fr !important; }
  .schol-panel { position: static !important; height: auto !important; border-right: none !important; border-bottom: 2px solid #E2E8F0 !important; }

  /* Institution page */
  .ip-body { grid-template-columns: 1fr !important; }
  .ip-stat-grid { grid-template-columns: repeat(2, 1fr) !important; }

  /* Hero panel hidden */
  .hero-panel { display: none !important; }
  .hero-inner { grid-template-columns: 1fr !important; }
}

/* ── TABLET 768px ── */
@media (max-width: 768px) {
  /* Typography */
  .hero-title { font-size: clamp(1.8rem, 6vw, 2.4rem) !important; }
  .sec-title, .section-title { font-size: clamp(1.2rem, 4vw, 1.6rem) !important; }
  .page-hero-sm h1, .calc-hero h1, .schol-hero h1,
  .ielts-hero h1, .sp2-hero h1 {
    font-size: clamp(1.4rem, 5vw, 2rem) !important;
    color: #FFFFFF !important;
  }

  /* Sections */
  .section { padding: 3rem 0 !important; }

  /* Cards — single column */
  .feat-grid, .unis-grid, .schol-cards, .sp2-cards { grid-template-columns: 1fr !important; }
  .dest-grid { grid-template-columns: repeat(3, 1fr) !important; }
  .career-grid, .careers-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .steps-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .ib-grid { grid-template-columns: 1fr !important; }
  .tips-grid { grid-template-columns: 1fr !important; }

  /* Search bar — vertical */
  .search-bar-full { grid-template-columns: 1fr !important; }
  .sf-search-btn { margin-top: 0 !important; }

  /* Financial */
  .calc-layout { grid-template-columns: 1fr !important; }
  .ie-card > div:first-of-type { grid-template-columns: 1fr !important; }

  /* Compare */
  .compare-table { display: block !important; overflow-x: auto !important; }

  /* Institution stats */
  .ip-stat-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .ip-hero-inner { flex-direction: column !important; gap: 1rem !important; }
  .ip-stats { flex-wrap: wrap !important; gap: 0.5rem !important; }
  .ip-stat { min-width: 80px !important; }

  /* Hero stats */
  .hero-stats { gap: 1rem !important; }
  .stat-num { font-size: 1.1rem !important; }
  .hero-ctas { flex-direction: column !important; }
  .hero-ctas .btn { width: 100% !important; justify-content: center !important; }

  /* Footer */
  .foot-inner { grid-template-columns: 1fr 1fr !important; }

  /* Scholarship hero stats */
  .sp2-hero-stats { gap: 0.5rem !important; }
  .sp2-hstat { min-width: 70px !important; padding: 0.5rem 0.75rem !important; }
  .sp2-hstat-num { font-size: 0.95rem !important; }

  /* Search strip */
  .search-strip-inner, .sp2-strip-inner, .schol-strip-inner {
    flex-direction: column !important; align-items: flex-start !important; gap: 0.5rem !important;
  }

  /* Career estimator grid */
  .ie-card [style*="grid-template-columns:1fr 1fr"] {
    display: flex !important; flex-direction: column !important;
  }
}

/* ── SMALL MOBILE 480px ── */
@media (max-width: 480px) {
  .navbar { height: 56px !important; }
  .mobile-nav { top: 56px !important; }
  .nav-brand { font-size: 0.95rem !important; }
  .nav-logo-img { width: 28px !important; height: 28px !important; }

  .dest-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .career-grid, .careers-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .steps-grid { grid-template-columns: 1fr !important; }
  .feat-grid { grid-template-columns: 1fr !important; }

  .ip-stat-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .ip-card-body { padding: 1rem !important; }
  .ip-course { padding: 0.85rem !important; }

  /* Psych test */
  .q-card { padding: 1.25rem !important; }
  .q-question { font-size: 1rem !important; }
  .option-btn, .opt-btn { padding: 0.75rem 0.9rem !important; font-size: 0.84rem !important; }

  /* Scholar page */
  .sc2-head { flex-wrap: wrap !important; }

  /* Hero */
  .hero-title { font-size: 1.6rem !important; }
  .hero-sub { font-size: 0.82rem !important; }
  .hero-ctas .btn { font-size: 0.85rem !important; padding: 0.75rem 1rem !important; }

  /* Footer */
  .foot-inner { grid-template-columns: 1fr !important; }
  .foot-bottom { flex-direction: column !important; text-align: center !important; gap: 0.5rem !important; }
}


/* ── HERO TITLE — 'Find Your' line forced white ── */
.hero-title { color: #FFFFFF !important; }
.hero-title .line {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
.hero-title .gold-stroke {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  -webkit-text-stroke: 1.5px #D97706 !important;
  font-style: italic !important;
}
.hero-title .gold-fill {
  background: linear-gradient(135deg, #D97706 0%, #F59E0B 60%, #D97706 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* ═══════════════════════════════════════════════════════════════
   ONCE-AND-FOR-ALL VISIBILITY FIX
   Applies to every element on every page.
   Light background = dark text. Dark background = white text.
   No exceptions. No invisible text anywhere.
═══════════════════════════════════════════════════════════════ */

/* ── CSS Variable overrides — explicit values, no guessing ── */
:root {
  --navy:       #0F2A5C !important;
  --navy-mid:   #152B5E !important;
  --navy-soft:  #1E3A7A !important;
  --muted:      #4B5563 !important;
  --text:       #1E293B !important;
  --text-mid:   #374151 !important;
  --text-light: #6B7280 !important;
}

/* ── White/light backgrounds → dark readable text ── */
body,
.page-content, .page-body,
.card, .il-card, .ip-card, .sc2, .feat-card,
.search-layout-v2, .sp2-layout,
.section-white, .section-ivory, .section.section-white, .section.section-ivory,
.calc-body, .calc-layout,
.schol-panel, .sp2-panel, .search-panel,
.ip-body, .ip-sidebar-card, .ip-sidebar-body,
.compare-wrapper, .legal-body, .profile-body {
  color: #1E293B !important;
}

/* ── All h1-h6 on light backgrounds → navy ── */
.page-content h1, .page-content h2, .page-content h3, .page-content h4,
.card h1, .card h2, .card h3, .card h4,
.il-card-body h2, .il-card-body h3,
.ip-card-body h2, .ip-card-body h3,
.section-white h2, .section-white h3, .section-white h4,
.section-ivory h2, .section-ivory h3, .section-ivory h4,
.calc-body h2, .calc-body h3, .calc-body h4 {
  color: #0F2A5C !important;
}

/* ── All p / span / label on light backgrounds ── */
.page-content p, .card p, .il-card-body p, .ip-card-body p,
.calc-body p, .section-white p, .section-ivory p,
.section-white span, .section-ivory span,
.search-results-panel p, .search-results-panel span {
  color: #374151 !important;
}

/* ── Dark hero/section backgrounds → WHITE text ── */
.page-hero-sm *,
.calc-hero *,
.search-hero *,
.psych-hero *,
.schol-hero *,
.sp2-hero *,
.ip-hero *,
.ielts-hero *,
.search-hero-band *,
[class$="-hero"] *,
.section-ink *,
.section-ink,
.deadline-section *,
.newsletter-section *,
.ip-arrival-card *,
.mob-hdr * {
  color: #FFFFFF !important;
}

/* ── But restore gold accents inside dark sections ── */
.page-hero-sm i[style*="color:var(--gold)"],
.page-hero-sm .sec-kicker,
.calc-hero .sec-kicker,
[class$="-hero"] i.fa-award,
[class$="-hero"] i.fa-university,
[class$="-hero"] i.fa-language,
[class$="-hero"] i.fa-calculator,
[class$="-hero"] i.fa-brain,
[class$="-hero"] i.fa-compass,
.search-hero-band h1 i,
.sp2-hero h1 i,
.sp2-eyebrow,
.ie-title i {
  color: #F0C040 !important;
}

/* ── Buttons inside dark hero sections ── */

/* Gold btn: white text everywhere EXCEPT when overridden */
.section-ink .btn-gold,
.deadline-section .btn-gold,
.newsletter-section .btn-gold { color: #0F2A5C !important; }

/* Restore gold btn text inside ip-hero (white label on gold bg) */
.ip-hero .btn-gold,
[class$="-hero"] .btn-gold { color: #FFFFFF !important; font-weight: 800 !important; }

/* White-background outline buttons inside ip-hero — force dark text */
.ip-hero #shortlistBtn,
.ip-hero [style*="background:#fff"],
.ip-hero [style*="background: #fff"] {
  color: #0F2A5C !important;
}
/* Override the wildcard white rule specifically for action buttons */
.ip-actions a, .ip-actions button {
  color: revert !important;
}
/* Gold action button */
.ip-actions .btn-gold,
.ip-actions [style*="#D97706"],
.ip-actions [style*="#F59E0B"] { color: #FFFFFF !important; }
/* Outline action buttons (white bg, navy text) */
.ip-actions [style*="background:#fff"],
.ip-actions [style*="background: #fff"] { color: #0F2A5C !important; }
/* Shortlist button specifically */
.ip-actions #shortlistBtn,
.ip-actions #shortlistBtn span,
.ip-actions #shortlistBtn i { color: #0F2A5C !important; }

/* Ghost white buttons in hero */
.section-ink .btn-ghost-white,
[class$="-hero"] .btn-ghost-white { color: #FFFFFF !important; border-color: rgba(255,255,255,0.5) !important; }

/* Share button everywhere — always visible */
.uc-share-btn { color: #64748B !important; }
.uc-share-btn:hover { color: #D97706 !important; }

/* ── SEARCH PAGE — sidebar panel text ── */
.search-panel, .sp2-panel, .schol-panel { color: #1E293B !important; }
.search-panel label, .sp2-panel label, .schol-panel label,
.search-panel .sp-section-head, .sp2-panel .sp2-ph,
.search-panel h4, .sp2-panel h4 { color: #0F2A5C !important; font-weight: 700 !important; }
.search-panel input, .search-panel select,
.sp2-panel input, .sp2-panel select,
.schol-panel input, .schol-panel select { color: #1E293B !important; background: #FFFFFF !important; }

/* Search results count, sort, strip */
.search-strip, .sp2-strip { background: #FFFFFF !important; }
.search-strip *, .sp2-strip * { color: #374151 !important; }
.search-strip strong, .sp2-strip strong,
.search-strip-title, .results-count strong { color: #0F2A5C !important; font-weight: 700 !important; }

/* University cards in results */
.uni-card-header-info h3, .uni-card-top-info h3 { color: #0F2A5C !important; font-weight: 700 !important; }
.uni-loc, .uni-location { color: #6B7280 !important; }
.uni-desc { color: #4B5563 !important; }
.rank-val { color: #0F2A5C !important; font-weight: 700 !important; }
.rank-lbl { color: #9CA3AF !important; }
.foot-accom { color: #6B7280 !important; }
.foot-accom strong { color: #374151 !important; font-weight: 600 !important; }

/* ── FINANCIAL PAGE ── */
.calc-layout label, .calc-body label { color: #374151 !important; font-weight: 600 !important; }
.calc-layout input, .calc-body input { color: #1E293B !important; }
.result-row .lbl, .result-row .label { color: #374151 !important; font-weight: 500 !important; }
.result-row .val, .result-row .value { color: #0F2A5C !important; font-weight: 700 !important; }
.result-row.total .lbl { color: rgba(255,255,255,0.85) !important; }
.result-row.total .val { color: #F0C040 !important; font-weight: 800 !important; }

/* ── CAREER / GRADING PAGES ── */
.career-card h4 { color: #0F2A5C !important; font-weight: 700 !important; }
.career-card .career-salary { color: #D97706 !important; font-weight: 800 !important; }
.career-card p, .career-card span { color: #4B5563 !important; }

/* ── COMPARE TABLE ── */
.compare-table th { color: #0F2A5C !important; background: #EEF2FF !important; font-weight: 700 !important; }
.compare-table td { color: #1E293B !important; }
.compare-table .location-text, .compare-table .meta-text { color: #6B7280 !important; }

/* ── PROFILE PAGE ── */
.profile-body label { color: #374151 !important; font-weight: 600 !important; }
.profile-body p, .profile-body span { color: #374151 !important; }
.profile-body h3, .profile-body h4 { color: #0F2A5C !important; }

/* ── FOOTER ── */
.site-footer { background: #0A1628 !important; }
.site-footer *, .foot-inner *, .foot-col * { color: rgba(255,255,255,0.75) !important; }
.foot-col h4, .foot-brand-logo { color: #FFFFFF !important; font-weight: 700 !important; }
.foot-col a:hover { color: #F0C040 !important; }
.foot-bottom { color: rgba(255,255,255,0.5) !important; border-top-color: rgba(255,255,255,0.1) !important; }

/* ── MOBILE DRAWER ── */
.mob-panel .mob-link { color: #1E293B !important; }
.mob-panel .mob-section, .mob-sec { color: #9CA3AF !important; }
.mob-curr-lbl { color: #374151 !important; }

/* ── BADGES / TAGS — restore their specific colors ── */
.sc2-type.full     { color: #166534 !important; background: #DCFCE7 !important; }
.sc2-type.partial  { color: #1E40AF !important; background: #DBEAFE !important; }
.sc2-type.government { color: #92400E !important; background: #FEF3C7 !important; }
.sc2-type.merit    { color: #5B21B6 !important; background: #EDE9FE !important; }
.ip-badge-gold     { color: #92400E !important; }
.ip-badge-blue     { color: #1E40AF !important; }
.ip-badge-green    { color: #166534 !important; }
.ip-badge-qs       { color: #5B21B6 !important; }

/* ── Global form elements — always readable ── */
input:not([type="submit"]):not([type="button"]),
select, textarea {
  color: #1E293B !important;
}
/* Except inputs on dark backgrounds */
.ie-card input, .ie-card select,
.search-hero-band input, .search-hero-band select,
[class$="-hero"] input, [class$="-hero"] select,
.psych-hero input, .schol-hero input {
  color: #FFFFFF !important;
}

/* ── Search hero band inputs — white text, highest priority ── */
.search-hero-band input.shf-input,
.search-hero-band select.shf-select,
input.shf-input,
select.shf-select {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
input.shf-input::placeholder {
  color: rgba(255,255,255,0.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.65) !important;
}

/* ══════════════════════════════════════════════════════════════
   HOME PAGE — Force all hero/dark section fonts to WHITE
══════════════════════════════════════════════════════════════ */

/* Hero section — ALL text white */
.hero-section *,
.hero-section p,
.hero-section span,
.hero-section li,
.hero-section label,
.hero-section a:not(.btn) {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* Hero stat numbers */
.stat-num {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-weight: 800 !important;
}

/* Stat labels brighter */
.stat-lbl {
  color: rgba(255,255,255,0.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.82) !important;
}

/* Hero sub */
.hero-sub, .hero-sub * {
  color: rgba(255,255,255,0.95) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.95) !important;
}
.hero-sub strong { color: #F0C040 !important; -webkit-text-fill-color: #F0C040 !important; }

/* Search panel labels */
.field-dark label {
  color: rgba(255,255,255,0.85) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.85) !important;
}

/* Smart match strip */
.smartmatch-strip *, .sm-label, .sm-desc { color: #FFFFFF !important; }
.sm-label { color: #F0C040 !important; font-weight: 800 !important; }

/* Trust strip */
.trust-strip *, .trust-item span { color: rgba(255,255,255,0.9) !important; }

/* Section kicker text */
.sec-kicker { color: #D97706 !important; font-weight: 700 !important; }

/* Deadline section — dark background needs white text */
.deadline-section *,
.deadline-section h2, .deadline-section p,
.deadline-section span, .deadline-section .dl-name,
.deadline-section .dl-date, .deadline-section .dl-days,
.deadline-section .dl-unit, .deadline-section .dl-badge {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* Newsletter / CTA dark sections */
.newsletter-section *, .section-ink * {
  color: #FFFFFF !important;
}
.section-ink h2, .newsletter-section h2 { color: #FFFFFF !important; font-weight: 800 !important; }
.section-ink p, .newsletter-section p { color: rgba(255,255,255,0.88) !important; }

/* HERO TITLE — Final authority */
.hero-title .line,
.hero-title .line * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
.hero-title .gold-stroke {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  -webkit-text-stroke: 1.5px #D97706 !important;
}
.hero-title .gold-fill {
  background: linear-gradient(135deg,#D97706,#F0C040,#D97706) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* CAMPUS WATERMARK SECTION — all white */
[style*="0B1E3D"] *, [style*="152B5E"] *, [style*="0F2A5C"] * {
  /* handled individually by inline styles */
}

/* Feat cards on white bg — keep dark */
.feat-card h3 { color: #0F2A5C !important; }
.feat-card p  { color: #4B5563 !important; }

/* Section titles on white/ivory */
.section-white .sec-title,
.section-ivory .sec-title {
  color: #0F2A5C !important;
  font-weight: 800 !important;
}
.section-white .sec-sub,
.section-ivory .sec-sub {
  color: #4B5563 !important;
}

/* Uni card names on white */
.uni-card-top-info h3 { color: #0F2A5C !important; font-weight: 700 !important; }
.uni-loc             { color: #6B7280 !important; }

/* Career cards */
.career-card h4 { color: #0F2A5C !important; font-weight: 700 !important; }
.career-card p  { color: #4B5563 !important; }

/* ══════════════════════════════════════════════════════════════
   GLOBAL LOOK & FEEL UPGRADE v2
══════════════════════════════════════════════════════════════ */

/* Smoother page background */
body { background: #F0F4F8 !important; }

/* Feature cards — richer hover */
.feat-card {
  border-radius: 16px !important;
  transition: all .22s cubic-bezier(.4,0,.2,1) !important;
  border: 1.5px solid #E2E8F0 !important;
}
.feat-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 40px rgba(15,42,92,0.14) !important;
  border-color: #D4DCEF !important;
}

/* Destination cards — flag bigger, card richer */
.dest-card {
  border-radius: 14px !important;
  padding: 1.25rem 1rem !important;
  transition: all .2s ease !important;
  border: 1.5px solid #E2E8F0 !important;
}
.dest-card:hover {
  border-color: #D97706 !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 28px rgba(217,119,6,0.15) !important;
}
.dest-flag { font-size: 2.2rem !important; }

/* University cards */
.uni-card {
  border-radius: 16px !important;
  transition: all .22s ease !important;
  border: 1.5px solid #E2E8F0 !important;
}
.uni-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 32px rgba(15,42,92,0.12) !important;
}

/* Section headings — stronger */
.sec-title {
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
}

/* Smart match strip — more vibrant */
.smartmatch-strip {
  background: linear-gradient(135deg, #1a0533 0%, #2d1460 50%, #1a0533 100%) !important;
}
.sm-label {
  font-size: 0.68rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.15em !important;
  color: #F0C040 !important;
}
.sm-desc {
  font-size: 0.88rem !important;
  color: rgba(255,255,255,0.92) !important;
  font-weight: 500 !important;
}

/* Trust strip icons glow */
.trust-item i {
  color: #F0C040 !important;
  font-size: 1rem !important;
}
.trust-item span {
  font-weight: 700 !important;
  font-size: 0.78rem !important;
}

/* Buttons — rounder, richer shadow */
.btn { border-radius: 10px !important; }
.btn-gold {
  box-shadow: 0 3px 14px rgba(217,119,6,0.3) !important;
  font-weight: 800 !important;
}
.btn-gold:hover {
  box-shadow: 0 6px 24px rgba(217,119,6,0.45) !important;
  transform: translateY(-1px) !important;
}

/* Deadline cards */
.deadline-card {
  border-radius: 14px !important;
  transition: all .18s ease !important;
}
.deadline-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.15) !important;
}

/* Career cards */
.career-card {
  border-radius: 14px !important;
  transition: all .2s ease !important;
  border: 1.5px solid #E2E8F0 !important;
}
.career-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 28px rgba(15,42,92,0.12) !important;
}

/* Scholarship cards */
.schol-card {
  border-radius: 14px !important;
  transition: all .2s ease !important;
}
.schol-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(15,42,92,0.12) !important;
}

/* Testimonial cards */
.testi-card {
  border-radius: 18px !important;
  border: 1.5px solid #E2E8F0 !important;
  transition: all .2s ease !important;
}
.testi-card:hover {
  box-shadow: 0 8px 28px rgba(15,42,92,0.1) !important;
}

/* CTA newsletter section */
.newsletter-section, .cta-section {
  border-radius: 24px !important;
  margin: 0 1rem !important;
}

/* Section ivory background upgrade */
.section-ivory { background: #F7F9FC !important; }
.section-white  { background: #FFFFFF !important; }

/* Improved scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #F1F5F9; }
::-webkit-scrollbar-thumb { background: #CBD5E1; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #94A3B8; }

/* Navbar active indicator upgrade */
.navbar { border-bottom: 2px solid #EEF2FF !important; }

/* Focus rings */
input:focus, select:focus, textarea:focus {
  outline: 2px solid #D97706 !important;
  outline-offset: 2px !important;
}

/* Print styles */
@media print {
  .navbar, .mob-panel, .smartmatch-strip, footer { display: none !important; }
  body { background: white !important; }
}

/* Navbar — List Institution CTA */
.abtn-list-inst {
  font-family: 'Manrope',sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  color: #D97706 !important;
  border: 1.5px solid #D97706;
  background: transparent;
  padding: 0.32rem 0.75rem;
  border-radius: 8px;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 0.3rem;
  white-space: nowrap;
  transition: all .15s ease;
}
.abtn-list-inst:hover {
  background: #D97706 !important;
  color: #FFFFFF !important;
}
