:root {
    --navy: #24304F;
    --navy-light: #2d3a5c;
    --beige: #d4c5a9;
    --beige-lt: #f5f0e6;
    --white: #fff;
    --off: #fafaf8;
    --red: #a82d2d;
    --red-deep: #8a2525;
    --txt: #1a1a1a;
    --mute: #6b7280;
    --mute-lt: #9ca3af;
    --bdr: rgba(0,0,0,.08);
    --bdr-dk: rgba(255,255,255,.12);
    --font: 'Exo', sans-serif;
    --body: 'Inter', sans-serif;
    --fa: 'Vazirmatn', sans-serif;
    --ease: cubic-bezier(.4,0,.2,1);
    --content-pad: 48px;

    --brand-gap: 10px;
    /* Brand lockup vars */
    --brand-logo-w: 80px;
    --brand-logo-h: auto;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: var(--body); background: var(--off); color: var(--txt); line-height: 1.6; overflow-x: hidden; }
html[dir="rtl"] body { font-family: var(--fa); }
img { max-width: 100%; display: block; }

/* Animations */
@keyframes scanOnce { 0% { left: -100%; opacity: 0; } 10% { opacity: .8; } 90% { opacity: .8; } 100% { left: 100%; opacity: 0; } }
@keyframes fadeUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes lineGrow { from { width: 0; } to { width: 100%; } }
@keyframes arrowFloat { 0%, 100% { transform: translateY(0) rotate(45deg); opacity: .75; } 50% { transform: translateY(4px) rotate(45deg); opacity: 1; } }

/* ===== STICKY NAV ===== */
.sticky-nav { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; background: var(--navy); transform: translateY(-100%); transition: transform .35s var(--ease); box-shadow: 0 2px 20px rgba(0,0,0,.2); padding-top: env(safe-area-inset-top, 0px); }
.sticky-nav.visible { transform: translateY(0); }
.nav-inner { max-width: none; margin: 0; padding: 12px var(--content-pad); display: flex; justify-content: space-between; align-items: center; }

/* Nav brand — ALWAYS LTR: icon left, text right */
.nav-brand { display: flex; flex-direction: row !important; align-items: center; gap: 2px; text-decoration: none; direction: ltr !important; }
html[dir="rtl"] .nav-brand { flex-direction: row !important; direction: ltr !important; }
.nav-logo { width: auto; height: 3rem; flex-shrink: 0; }
.nav-brand span { font-family: var(--font); font-weight: 600; font-size: 1.25rem; color: var(--beige); letter-spacing: .05em; }

/* Desktop nav group — hidden on mobile */
.nav-desktop { display: flex; align-items: center; gap: 14px; }
html[dir="rtl"] .nav-desktop { flex-direction: row-reverse; }
.nav-links { display: flex; align-items: center; gap: 24px; }
html[dir="rtl"] .nav-links { flex-direction: row-reverse; }
.nav-link { color: var(--mute-lt); text-decoration: none; font-size: .875rem; font-weight: 500; transition: color .2s var(--ease); }
.nav-link:hover { color: var(--beige); }
.nav-link-secondary { padding: 8px 18px; border: 1px solid var(--bdr-dk); border-radius: 999px; transition: all .2s var(--ease); }
.nav-link-secondary:hover { border-color: var(--beige); color: var(--beige); }

/* A: Hamburger — hidden on desktop */
.nav-hamburger { display: none; background: none; border: none; cursor: pointer; width: 44px; height: 44px; flex-shrink: 0; position: relative; padding: 0; }
.nav-hamburger span { display: block; width: 22px; height: 2px; background: var(--beige); border-radius: 1px; position: absolute; left: 11px; transition: all .25s var(--ease); }
.nav-hamburger span:nth-child(1) { top: 14px; }
.nav-hamburger span:nth-child(2) { top: 21px; }
.nav-hamburger span:nth-child(3) { top: 28px; }

/* A: Mobile Book CTA — hidden on desktop */
.nav-book-m { display: none !important; }

/* ===== B: FULL-SCREEN OVERLAY MENU ===== */
.menu-overlay { position: fixed; inset: 0; z-index: 2000; background: var(--navy); display: flex; flex-direction: column; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .3s var(--ease), visibility .3s; padding-top: env(safe-area-inset-top, 0px); }
.menu-overlay.open { opacity: 1; visibility: visible; pointer-events: auto; }
body.menu-open { overflow: hidden; }
.overlay-bar { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; border-bottom: 1px solid rgba(255,255,255,.06); }
.overlay-close { background: none; border: none; cursor: pointer; width: 44px; height: 44px; position: relative; flex-shrink: 0; padding: 0; }
.overlay-close span { display: block; width: 22px; height: 2px; background: var(--beige); border-radius: 1px; position: absolute; left: 11px; top: 21px; }
.overlay-close span:nth-child(1) { transform: rotate(45deg); }
.overlay-close span:nth-child(2) { transform: rotate(-45deg); }
.overlay-bar .nav-brand { flex: 1; justify-content: center; }
.overlay-bar .nav-book-m { display: inline-flex !important; }
.overlay-body { flex: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 0; padding: 0 24px; }
.overlay-link { display: block; width: 100%; max-width: 300px; text-align: center; padding: 20px 0; font-family: var(--font); font-size: 1.05rem; font-weight: 500; color: var(--mute-lt); text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.06); transition: color .2s var(--ease); }
.overlay-link:last-child { border-bottom: none; }
.overlay-link:hover { color: var(--beige); }
html[dir="rtl"] .overlay-link { text-align: center; }
.overlay-footer { padding: 24px 24px calc(24px + env(safe-area-inset-bottom, 0px)); display: flex; justify-content: center; }
.lang-switch-sm { transform: scale(0.85); }

/* ===== BUTTONS ===== */
.btn-cta { 
  background: var(--red-deep); 
  color: var(--white); 
  border: none; 
  padding: 12px 28px; 
  font-size: .875rem; 
  font-weight: 600; 
  cursor: pointer; 
  border-radius: 999px; 
  transition: all .2s var(--ease); 
  text-decoration: none; 
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  white-space: nowrap;
}
.btn-cta:hover { background: #701e1e; transform: translateY(-1px); }
.btn-full { width: 100%; text-align: center; }
.btn-secondary { 
  background: transparent; 
  color: rgba(216,195,165,0.95); 
  border: 1px solid rgba(216,195,165,0.5); 
  padding: 12px 28px; 
  font-size: .875rem; 
  font-weight: 600; 
  cursor: pointer; 
  border-radius: 999px; 
  transition: all .2s var(--ease); 
  text-decoration: none; 
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  white-space: nowrap;
}
.btn-secondary:hover { background: rgba(216,195,165,0.08); border-color: rgba(216,195,165,0.85); }

.lang-switch { display: flex; border-radius: 999px; overflow: hidden; border: 1px solid var(--bdr-dk); }
.lang-btn { background: transparent; border: none; color: var(--mute-lt); padding: 8px 14px; font-size: .8125rem; cursor: pointer; transition: all .2s var(--ease); min-height: 44px; }
.lang-btn.active { background: var(--beige); color: var(--navy); }

/* ===== HERO ===== */
.hero { position: relative; min-height: 100vh; background: var(--navy); display: flex; overflow: hidden; }
.hero-bg { position: absolute; inset: 0; }
.hero-img { width: 100%; height: 100%; object-fit: cover; object-position: center right; }
.hero-overlay { position: absolute; inset: 0; background: linear-gradient(105deg, rgba(36,48,79,.96) 0%, rgba(36,48,79,.88) 35%, rgba(36,48,79,.45) 65%, rgba(36,48,79,.15) 100%); }
.hero-content { position: relative; z-index: 10; width: 100%; max-width: none; margin: 0; padding: 72px var(--content-pad) 40px; display: flex; flex-direction: column; justify-content: space-between; min-height: 100vh; }
.hero-top { display: flex; justify-content: space-between; align-items: flex-start; }
/* RTL: Only swap hero-top sides, NOT brand-row formation */
html[dir="rtl"] .hero-top { flex-direction: row-reverse; }

/* Hero lockup fine-tuning (hero only) */
.hero .brand-block{
  --brand-logo-w: 175px;   /* +23% from 142px */
  --brand-logo-h: 175px;
  --brand-gap: 8px;
}
/* #6: IDENTITI word sized — reduced ~20% from 4.15rem */
.hero .brand-text {
  font-size: 3.3rem !important;
  line-height: 1 !important;
}
/* Subline: absolute positioned within brand-block (position:relative) */
.hero .brand-sub {
  position: absolute !important;
  top: 192px !important;
  left: 18px !important;
  color: #9ca3af !important;
  font-family: 'Exo', sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 500 !important;
  letter-spacing: .18em !important;
  text-align: left !important;
  white-space: nowrap !important;
}
/* Brand row: top-aligned, IDENTITI pushed down to dot level via margin */
.hero .brand-row {
  align-items: flex-start !important;
  gap: 2px !important;
}
/* Push IDENTITI down so it sits across from the dot of "id." 
   Logo=175px, dot is at ~73% = ~127px from top. 
   IDENTITI 3.3rem≈53px, center at dot → margin-top ~100px */
.hero .brand-wordmark {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 89px !important;
  justify-content: flex-start !important;
  gap: 0;
}

/* Tagline "Built on Trust" — ONLY the hero-bottom one on desktop */
.hero .hero-bottom .tagline {
  position: static !important;
  margin: 0 !important;
  display: block !important;
  animation: fadeUp .6s var(--ease) .4s both;
}
/* Hide tagline-mobile on desktop — it only shows on mobile via media query */
.hero .tagline-mobile {
  display: none !important;
}
.hero .hero-bottom {
  direction: ltr !important;
}
/* hero-top needs flex:1 to push hero-bottom down */
.hero .hero-top {
  position: relative !important;
  flex: 1 !important;
}

/* FA mode: show hero-bottom tagline, right-aligned */
html[lang="fa"] .hero .hero-bottom .tagline,
html[dir="rtl"] .hero .hero-bottom .tagline {
  display: block !important;
  height: auto !important;
  overflow: visible !important;
}
html[dir="rtl"] .hero .hero-bottom {
  direction: rtl !important;
  text-align: right !important;
}
/* RTL: tagline line gradient flows right-to-left */
html[dir="rtl"] .hero .tagline-line {
  background: linear-gradient(270deg, rgba(216,195,165,0.95), rgba(216,195,165,0.15)) !important;
}
html[dir="rtl"] .hero .tagline-mobile .tagline-line {
  background: linear-gradient(270deg, rgba(216,195,165,0.95), rgba(216,195,165,0.15)) !important;
}
/* FA: brand-sub — wider Persian font to span lockup width naturally */
html[dir="rtl"] .hero .brand-sub {
  direction: rtl !important;
  text-align: left !important;
  left: 18px !important;
  color: #9ca3af !important;
  font-family: 'Estedad', 'Vazirmatn', sans-serif !important;
  font-size: 1.35rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  word-spacing: 0.3em !important;
}






/* ===== BRAND BLOCK - LOGO NEVER FLIPS ===== */
.brand-block { position: relative; padding: 8px 0; } /* Reduced from 24px - moves logo UP */
.scan-fx { position: absolute; top: 8px; left: 0; width: 100%; height: 200px; overflow: hidden; pointer-events: none; }
.scan-fx::after { content: ''; position: absolute; top: 50%; width: 150px; height: 2px; background: linear-gradient(90deg, transparent, rgba(168,45,45,.7), transparent); animation: scanOnce 2s var(--ease) forwards; }

/* 1️⃣ CRITICAL: Logo formation ALWAYS [icon] IDENTITI - NEVER flips */
/* Fix 2 & 3: Locked gap, forced LTR direction on brand-row itself */
.brand-row { 
  display: flex; 
  flex-direction: row !important; 
  align-items: flex-start; 
  gap: var(--brand-gap); /* Locked tight gap */
  position: relative; 
  z-index: 2;
  direction: ltr !important; /* Force LTR to prevent RTL flip */
}
html[dir="rtl"] .brand-row { 
  flex-direction: row !important;
  direction: ltr !important; /* NEVER flip - icon always left */
}

/* 1️⃣B Logo size - gap locked */
.brand-logo { width: var(--brand-logo-w, 80px); height: var(--brand-logo-h, auto); flex-shrink: 0; }
.brand-text { font-family: var(--font); font-weight: 600; font-size: 4.5rem; color: var(--beige); letter-spacing: .05em; line-height: 1; }

.brand-wordmark { display: flex; flex-direction: column; justify-content: space-between; height: var(--brand-logo-h, auto); }

/* 2️⃣ Hero text alignment - aligned with start of IDENTITI wordmark */
/* SECTION 5 FIX: Reduced spacing IDENTITI→Immigration by 50%, increased to Built on Trust */
.brand-sub { 
  font-family: var(--font); 
  font-weight: 500; 
  font-size: 1rem; 
  color: var(--mute-lt); 
  letter-spacing: .15em; 
  text-transform: uppercase; 
  margin: 0; 
  animation: fadeUp .6s var(--ease) .2s both; 
}
html[dir="rtl"] .brand-sub { text-align: right; }

.tagline { 
  margin: 0;
  margin-left: 0;
  position: relative; 
  display: inline-block; 
  animation: fadeUp .6s var(--ease) .4s both; 
}
html[dir="rtl"] .tagline { 
  margin-left: 0;
  margin-right: 0;
  text-align: right; 
}
.tagline span { 
  font-family: var(--font); 
  font-weight: 500; 
  font-size: 1.65rem; 
  color: rgba(216,195,165,0.95); 
  display: block;
  text-shadow: 0 0 40px rgba(216,195,165,0.25);
}
.tagline-line { 
  display: block; 
  height: 2px; 
  background: linear-gradient(90deg, rgba(216,195,165,0.95), rgba(216,195,165,0.15)); 
  margin-top: 6px; 
  animation: lineGrow .8s var(--ease) .8s both; 
}

.hero-actions { display: flex; align-items: center; gap: 12px; padding-top: 8px; flex-wrap: wrap; }
html[dir="rtl"] .hero-actions { flex-direction: row-reverse; }

/* Scroll hint */
.scroll-hint {
  position: absolute;
  left: 50%;
  bottom: 22px;
  transform: translateX(-50%);
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(0,0,0,0.20);
  backdrop-filter: blur(6px);
  display: grid;
  place-items: center;
  text-decoration: none;
  overflow: hidden;
}
.scroll-hint span { position: absolute; opacity: 0; pointer-events: none; }
.scroll-hint::after {
  content: "";
  width: 10px;
  height: 10px;
  border-right: 2px solid rgba(255,255,255,0.75);
  border-bottom: 2px solid rgba(255,255,255,0.75);
  transform: rotate(45deg);
  margin-top: -4px;
  animation: arrowFloat 1.6s ease-in-out infinite;
}
.scroll-hint svg { display: none; }

/* ===== ABOUT SECTION - SECTION 2 ONLY ===== */
/* OBJECTIVE 1: Locked height - never collapses */
/* OBJECTIVE 2: Full-width text, improved typography, subtle watermark */
.about-section { 
  background: var(--navy); 
  padding: 80px 0; /* Locked padding */
  min-height: 420px; /* Stable min-height - prevents collapse */
  position: relative; 
  overflow: hidden; 
}

/* Watermark — full-width edge-to-edge */
.about-watermark { 
  position: absolute; 
  top: 50%; 
  left: 0;
  right: 0;
  width: 100%;
  transform: translateY(-50%); 
  opacity: .035; /* More subtle - 3.5% */
  pointer-events: none; 
  white-space: nowrap;
  overflow: hidden;
  text-align: center;
}
.about-watermark span { 
  font-family: var(--font); 
  font-weight: 700; 
  font-size: 22.5vw; 
  color: var(--white); 
  letter-spacing: -0.01em;
  display: block;
}

.about-wrap { position: relative; z-index: 1; max-width: 1200px !important; margin: 0 auto !important; width: auto; }

/* Standard container width for about content */
.about-content { 
  max-width: 1200px;
  width: 100%;
  margin: 0; 
  padding: 0; 
}
.about-header { display: none; }

/* Section 2 typography - improved readability */
.about-content h2 { 
  font-family: var(--font); 
  font-size: 2.25rem; 
  font-weight: 600; 
  color: var(--white); 
  margin-bottom: 24px;
  text-align: left;
  line-height: 1.2;
}
html[dir="rtl"] .about-content h2 { 
  text-align: right; 
}

/* Full-width text with improved typography */
.about-lead { 
  font-size: 1.125rem; /* Slightly larger - was 1.0625rem */
  color: rgba(255,255,255,0.84); 
  line-height: 1.75; /* Improved readability - was 1.65 */
  max-width: 920px;
  margin: 0 auto;
  text-align: justify;
  text-justify: inter-word;
  white-space: pre-line;
}
html[dir="rtl"] .about-lead {
  text-align: right;
  direction: rtl;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  text-align: justify;
  text-justify: inter-word;

}

.about-features { display: none; }

/* ===== SERVICE PANELS ===== */
.svc-panels { display: flex; width: 100%; height: 100vh; margin: 0; padding: 0; }
.svc-panel { flex: 1; position: relative; text-decoration: none; overflow: hidden; transition: all .45s var(--ease); }
.svc-panel + .svc-panel { border-inline-start: 1px solid rgba(255,255,255,0.12); }
.panel-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .5s var(--ease); }
.panel-dim { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(0,0,0,0.15), rgba(0,0,0,0.55)); transition: opacity .35s var(--ease); opacity: 1; }
.panel-txt { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 32px; }
.svc-panel h2 { font-family: var(--font); font-size: 1.75rem; font-weight: 600; color: var(--white); margin-bottom: 8px; transition: all .25s; }
.svc-panel p { font-size: .9375rem; color: var(--mute-lt); transition: all .25s; }
.svc-panel:hover { flex: 1.35; }
.svc-panel:hover .panel-bg { transform: scale(1.05); }
.svc-panel:hover h2 { color: var(--beige); transform: translateY(-4px); }
.svc-panel:hover p { color: var(--white); }
.svc-panels .svc-panel:not(:hover) { filter: brightness(.85); }

/* ===== CONTENT SECTIONS ===== */
.content-section { padding: 80px 0; background: var(--off); position: relative; }
.content-section.alt { background: var(--beige-lt); }
.section-wrap { max-width: none; margin: 0; padding: 0 var(--content-pad); width: 100%; }
.sec-title { font-family: var(--font); font-size: 2.25rem; font-weight: 600; color: var(--navy); margin-bottom: 16px; }
.sec-intro { font-size: 1rem; color: var(--mute); margin-bottom: 40px; max-width: 700px; }

/* Immigration */
/* RTL: align immigration section text to right */
html[dir="rtl"] .sec-title { text-align: right; }
html[dir="rtl"] .sec-intro { text-align: right; }
html[dir="rtl"] .imm-block { text-align: right; }
html[dir="rtl"] .block-head { text-align: right; }

.imm-dual { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.imm-block { background: var(--white); border: 1px solid var(--bdr); border-radius: 12px; padding: 32px; }
.block-head { font-family: var(--font); font-size: 1.25rem; font-weight: 600; color: var(--navy); padding-bottom: 16px; margin-bottom: 16px; border-bottom: 2px solid var(--beige); }
.imm-cta-wrap { margin-top: 40px; text-align: center; }
#immigration .btn-secondary {
  background: var(--beige);
  color: var(--navy);
  border-color: var(--beige);
}
#immigration .btn-secondary:hover { background: #c9ba9a; }

/* Accordions */
.acc { border-bottom: 1px solid var(--bdr); }
.acc:last-child { border-bottom: none; }
.acc-btn { width: 100%; background: none; border: none; padding: 16px 0; display: flex; justify-content: space-between; align-items: center; cursor: pointer; font-family: var(--font); font-size: .9375rem; font-weight: 600; color: var(--navy); text-align: left; transition: color .2s; }
html[dir="rtl"] .acc-btn { text-align: right; flex-direction: row-reverse; }
.acc-btn:hover { color: var(--red); }
.acc-btn svg { width: 18px; height: 18px; color: var(--mute); transition: transform .25s var(--ease); flex-shrink: 0; }
.acc.open > .acc-btn svg { transform: rotate(180deg); }
.acc-panel { max-height: 0; overflow: hidden; transition: max-height .35s var(--ease); }
.acc.open > .acc-panel { max-height: 800px; }
.acc-panel > p { padding: 0 0 16px; font-size: .875rem; color: var(--mute); line-height: 1.65; }

/* Nested Accordions */
.nested-acc { margin-left: 16px; border-left: 2px solid var(--beige); padding-left: 16px; margin-bottom: 8px; }
html[dir="rtl"] .nested-acc { margin-left: 0; margin-right: 16px; border-left: none; border-right: 2px solid var(--beige); padding-left: 0; padding-right: 16px; }
.nested-btn { width: 100%; background: none; border: none; padding: 12px 0; display: flex; justify-content: space-between; align-items: center; cursor: pointer; font-family: var(--body); font-size: .875rem; font-weight: 500; color: var(--txt); text-align: left; transition: color .2s; }
html[dir="rtl"] .nested-btn { text-align: right; flex-direction: row-reverse; }
.nested-btn:hover { color: var(--red); }
.nested-btn svg { width: 14px; height: 14px; color: var(--mute-lt); transition: transform .25s var(--ease); flex-shrink: 0; }
.nested-acc.open > .nested-btn svg { transform: rotate(180deg); }
.nested-panel { max-height: 0; overflow: hidden; transition: max-height .3s var(--ease); }
.nested-acc.open > .nested-panel { max-height: 200px; }
.nested-panel p { padding: 8px 0; font-size: .8125rem; color: var(--mute); line-height: 1.6; }
.fa-text { display: none; font-family: var(--fa); direction: rtl; }
html[dir="rtl"] .fa-text { display: block; }
html[dir="rtl"] .nested-panel p:not(.fa-text),
html[dir="rtl"] .acc-panel > p:not(.fa-text) { display: none; }

/* ===== 4️⃣ FINGERPRINTING SECTION ===== */
#fingerprinting { background: var(--navy); }
#fingerprinting.content-section.alt { background: var(--navy); }
#fingerprinting .sec-title { color: var(--white); }
#fingerprinting .sec-intro { color: rgba(255,255,255,0.7); }

.fp-watermark { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: .06; pointer-events: none; white-space: nowrap; z-index: 0; }
.fp-watermark span { font-family: var(--font); font-weight: 700; font-size: 12vw; color: var(--white); letter-spacing: .05em; }
.fp-structure { position: relative; z-index: 1; max-width: 900px; }

#fingerprinting .fp-acc {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(8px);
  border-radius: 10px;
  margin-bottom: 12px;
  padding: 0 20px;
}
#fingerprinting .fp-acc .acc-btn { 
  padding: 18px 0; 
  color: var(--beige); 
}
#fingerprinting .fp-acc .acc-btn:hover { color: var(--white); }
#fingerprinting .fp-acc .acc-btn svg { color: rgba(212,197,169,0.6); }
#fingerprinting .fp-acc .acc-panel > p,
#fingerprinting .fp-acc .acc-panel .fa-text { color: rgba(255,255,255,0.8); }


/* RTL FIX: ALL accordion titles must start from the right */
html[dir="rtl"] #immigration .acc .acc-btn,
html[dir="rtl"] #fingerprinting .fp-acc .acc-btn,
html[dir="rtl"] #other .other-acc .acc-btn,
html[dir="rtl"] #faq .faq-acc .acc-btn {
  direction: rtl;
  text-align: right;
}
html[dir="rtl"] #immigration .acc .acc-btn span,
html[dir="rtl"] #fingerprinting .fp-acc .acc-btn span,
html[dir="rtl"] #other .other-acc .acc-btn span,
html[dir="rtl"] #faq .faq-acc .acc-btn span {
  flex: 1;
  text-align: right;
}
/* RTL: immigration nested accordions */
html[dir="rtl"] #immigration .nested-btn {
  direction: rtl;
  text-align: right;
}
html[dir="rtl"] #immigration .nested-btn span {
  flex: 1;
  text-align: right;
}

/* SECTION 1 FIX: Divider positioned at EXACT boundary between sections */
#fingerprinting .fp-affiliation {
  /* Position at bottom of fingerprinting section, on boundary line */
  margin-top: 60px;
  margin-bottom: -80px; /* Extend into padding to sit on visual edge */
  margin-left: calc(-1 * var(--content-pad));
  margin-right: calc(-1 * var(--content-pad));
  padding: 24px var(--content-pad);
  width: calc(100% + (var(--content-pad) * 2));
  font-size: 1rem;
  font-weight: 500;
  color: rgba(216,195,165,0.95);
  line-height: 1.6;
  background: rgba(0,0,0,0.4);
  border: none;
  border-top: 3px solid rgba(216,195,165,0.3);
  border-bottom: 3px solid rgba(216,195,165,0.3);
  border-radius: 0;
  text-align: center;
  position: relative;
  z-index: 10;
}
html[dir="rtl"] #fingerprinting .fp-affiliation {
  text-align: center;
}

/* Reduce fingerprinting section bottom padding to allow divider to sit at edge */
#fingerprinting.content-section { padding-bottom: 40px; }

/* F) Full-width affiliation bar for fingerprinting subpage */
.fp-affiliation-bar {
    width: 100%;
    background: rgba(0,0,0,0.4);
    border-top: 3px solid rgba(216,195,165,0.3);
    border-bottom: 3px solid rgba(216,195,165,0.3);
    padding: 24px var(--content-pad);
    box-sizing: border-box;
}
.fp-affiliation-bar .fp-affiliation-inner {
    max-width: 1200px;
    margin: 0 auto;
    font-size: 1rem;
    font-weight: 500;
    color: rgba(216,195,165,0.95);
    line-height: 1.6;
    text-align: center;
}
html[dir="rtl"] .fp-affiliation-bar .fp-affiliation-inner {
    text-align: center;
}

/* ===== 5️⃣ OTHER SERVICES - Subtle tonal variation ===== */
#other { 
  position: relative; 
  overflow: hidden; 
  background: var(--navy-light); /* Subtle tonal shift from fingerprinting */
}
#other::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("./images/other-services-bg.jpg") center / cover no-repeat;
  opacity: 0.25;
  pointer-events: none;
  z-index: 0;
}
#other::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(45,58,92,0.85) 0%, rgba(36,48,79,0.95) 100%);
  pointer-events: none;
  z-index: 1;
}
#other .section-wrap { position: relative; z-index: 2; }
#other .sec-title { color: var(--white); }
#other .sec-intro { color: rgba(255,255,255,0.7); }

#other .other-acc {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(8px);
  border-radius: 10px;
  margin-bottom: 12px;
  padding: 0 20px;
}
#other .other-acc .acc-btn { 
  padding: 18px 0;
  color: var(--beige); 
}
#other .other-acc .acc-btn:hover { color: var(--white); }
#other .other-acc .acc-btn svg { color: rgba(212,197,169,0.6); }
#other .other-acc .acc-panel > p,
#other .other-acc .acc-panel .fa-text { color: rgba(255,255,255,0.8); }

/* FAQ */
/* B) FAQ standard container — MUST override base .section-wrap */
#faq .section-wrap {
    max-width: 1200px !important;
    margin: 0 auto !important;
    width: auto;
}
/* C) Testimonials standard container — MUST override base .section-wrap */
.testimonials-section .section-wrap {
    max-width: 1200px !important;
    margin: 0 auto !important;
    width: auto;
}
/* D) About section standard container */
#faq .sec-title { text-align: center; }
html[dir="rtl"] #faq .sec-title { text-align: center; }
/* Remove any duplicate FAQ subtitle/intro line */
#faq .sec-intro { display: none !important; }
#faq .section-wrap > p:not(.fa-text) { display: none; }
#faq .faq-grid {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}
#faq .faq-col-title {
  margin: 0 0 12px;
  font-size: .95rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--beige);
}
/* FAQ Watermark — full-width edge-to-edge */
.faq-watermark {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    width: 100%;
    transform: translateY(-50%);
    opacity: 0.04;
    pointer-events: none;
    z-index: 0;
    white-space: nowrap;
    overflow: hidden;
    text-align: center;
}
.faq-watermark img {
    display: none; /* Remove logo from watermark — text only */
}
.faq-watermark span {
    font-family: var(--font);
    font-weight: 700;
    font-size: 22.5vw;
    color: var(--navy);
    letter-spacing: -0.01em;
    line-height: 1;
    display: block;
}
html[dir="rtl"] .faq-watermark {
    direction: ltr;
}

#faq .faq-acc {
  margin-bottom: 12px;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(212,197,169,0.18);
  background: rgba(255,255,255,0.02);
}
#faq .faq-acc .acc-btn { padding: 16px 18px; }
#faq .faq-acc .acc-btn svg { color: rgba(212,197,169,0.7); }
#faq .faq-acc .acc-panel > p,
#faq .faq-acc .acc-panel .fa-text { padding: 0 18px 16px; color: var(--mute); }

@media (max-width: 768px) {
  #faq .faq-grid { grid-template-columns: 1fr; }
}

.other-structure { max-width: 900px; position: relative; z-index: 1; }

/* ===== 6️⃣ ASSESSMENT FORM - Centered ===== */
.assessment-section { padding: 100px 0; }
.assessment-form { 
  max-width: 900px; 
  margin: 0 auto; /* Perfect horizontal centering */
  background: var(--white); 
  border-radius: 16px; 
  padding: 48px; 
  box-shadow: 0 4px 24px rgba(0,0,0,.06); 
}
.form-section { margin-bottom: 40px; padding-bottom: 32px; border-bottom: 1px solid var(--bdr); }
.form-section:last-of-type { border-bottom: none; margin-bottom: 24px; padding-bottom: 0; }
.form-section-title { font-family: var(--font); font-size: 1.125rem; font-weight: 600; color: var(--navy); margin-bottom: 20px; }
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.form-group { display: flex; flex-direction: column; }
.form-group label { font-size: .8125rem; font-weight: 500; color: var(--mute); margin-bottom: 6px; }
.form-group input, .form-group select, .form-group textarea { 
  width: 100%; 
  background: var(--off); 
  border: 1px solid var(--bdr); 
  padding: 12px 14px; 
  font-size: .9375rem; 
  border-radius: 8px; 
  font-family: inherit; 
  transition: border-color .2s;
  min-height: 44px;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { outline: none; border-color: var(--navy); }
.form-group textarea { resize: vertical; min-height: 80px; }
html[dir="rtl"] .form-group input, html[dir="rtl"] .form-group select, html[dir="rtl"] .form-group textarea { text-align: right; }

.assessment-success { display: none; text-align: center; padding: 60px 40px; background: var(--white); border-radius: 16px; max-width: 600px; margin: 0 auto; }
.assessment-success svg { width: 72px; height: 72px; color: var(--navy); margin: 0 auto 24px; }
.assessment-success h3 { font-family: var(--font); font-size: 1.5rem; color: var(--navy); margin-bottom: 16px; }
.assessment-success p { color: var(--mute); font-size: 1rem; line-height: 1.6; }
.assessment-section.submitted .assessment-form { display: none; }
.assessment-section.submitted .assessment-success { display: block; }

/* ===== CONSULTANT ===== */
.consultant-section { background: var(--navy); padding: 100px 0; }
.consultant-section .section-wrap { max-width: 1200px !important; margin: 0 auto !important; width: auto; }
.consultant-grid { display: grid; grid-template-columns: 320px 1fr; gap: 80px; align-items: center; }
html[dir="rtl"] .consultant-grid { direction: rtl; }
.photo-placeholder { width: 280px; height: 350px; background: rgba(255,255,255,.08); border-radius: 12px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--bdr-dk); }
.photo-placeholder svg { width: 80px; height: 80px; color: var(--mute-lt); }
.consultant-info h2 { font-family: var(--font); font-size: 1.5rem; font-weight: 600; color: var(--white); margin-bottom: 8px; }
.c-name { font-family: var(--font); font-size: 1.5rem; font-weight: 600; color: var(--beige); margin-bottom: 4px; }
.c-cred { font-size: .9375rem; color: var(--red); margin-bottom: 20px; }
.c-bio { font-size: 1rem; color: var(--mute-lt); line-height: 1.75; max-width: 540px; margin-bottom: 28px; }
.consultant-social { display: flex; gap: 16px; }
.social-link { display: flex; align-items: center; gap: 10px; color: var(--mute-lt); text-decoration: none; padding: 10px 20px; border: 1px solid var(--bdr-dk); border-radius: 8px; transition: all .2s var(--ease); }
.social-link:hover { color: var(--beige); border-color: var(--beige); }
.social-link svg { width: 20px; height: 20px; }
.social-link span { font-size: .875rem; font-weight: 500; }

/* ===== TESTIMONIALS ===== */
.testimonials-section { background: var(--off); padding: 100px 0; }
.testimonials-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.testimonial-card { background: var(--white); padding: 32px; border-radius: 12px; border: 1px solid var(--bdr); }
.testimonial-text { font-size: 1rem; color: var(--txt); line-height: 1.7; font-style: italic; margin-bottom: 20px; }
.testimonial-author { font-size: .875rem; font-weight: 600; color: var(--navy); }

/* ===== FOOTER - SECTIONS 2 & 3 FIX ===== */
.footer { background: var(--navy); padding: 80px 0 28px; }

/* ENGLISH: Quick Links → Contact → Address → Logo (left to right) */
/* HTML is now in correct order, CSS just defines grid */
.footer-grid { 
  display: grid; 
  grid-template-columns: 1fr 1fr 1fr 1.5fr;
  gap: 48px; 
  padding-bottom: 40px; 
  border-bottom: 1px solid var(--bdr-dk); 
}

/* RTL: Grid direction reverses automatically */
html[dir="rtl"] .footer-grid {
  direction: rtl;
}

/* Footer logo - ALWAYS [icon] IDENTITI - SECTION 4 FIX */
.f-logo { 
  display: flex; 
  flex-direction: row !important; 
  align-items: center; 
  gap: var(--brand-gap);
  margin-bottom: 12px;
  direction: ltr !important; /* Force LTR - NEVER flip */
}
html[dir="rtl"] .f-logo { 
  flex-direction: row !important;
  direction: ltr !important;
}
.f-logo img { width: 36px; height: auto; flex-shrink: 0; }
.f-logo span { font-family: var(--font); font-weight: 600; font-size: 1.25rem; color: var(--beige); letter-spacing: .05em; }

/* Footer brand alignment
   - EN: brand block sits on the right edge of its column (premium, not centered)
   - FA: keep premium alignment and prevent tagline drifting toward the middle */
.footer-brand{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  text-align:right;
}
/* Keep social icons tucked under the brand block edge (prevents "floating" look) */
.footer-brand .social{ justify-content:flex-end; }
html[dir="rtl"] .footer-brand{
  /* Keep icon+wordmark formation (handled by .f-logo), but align the whole block
     so "بر پایه اعتماد" stays under the wordmark, not above social icons. */
  align-items:flex-end;
  text-align:right;
}

.footer-brand > p { font-size: .9375rem; color: var(--mute-lt); margin-bottom: 20px; }
/* Built on Trust aligned under wordmark in footer */
.footer-brand > p[data-i18n="tagline"] {
  margin-left: 48px;
}
html[dir="rtl"] .footer-brand > p[data-i18n="tagline"] {
  margin-left: 0;
  margin-right: 48px;
  text-align: right;
}

.social { display: flex; gap: 12px; justify-content:flex-end; }
.social a { width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--bdr-dk); border-radius: 50%; color: var(--mute-lt); transition: all .2s var(--ease); }
.social a:hover { color: var(--beige); border-color: var(--beige); }
.social svg { width: 16px; height: 16px; }

.footer-col h4 { font-size: .75rem; font-weight: 600; color: var(--beige); text-transform: uppercase; letter-spacing: .1em; margin-bottom: 16px; }
.footer-col p { font-size: .875rem; color: var(--mute-lt); margin-bottom: 6px; }
.footer-col a { color: var(--mute-lt); text-decoration: none; transition: color .2s; }
.footer-col a:hover { color: var(--beige); }

/* Footer contact info stays LTR even in FA */
.footer-col a[href^="tel:"],
.footer-col a[href^="mailto:"] {
  direction: ltr;
  unicode-bidi: embed;
  display: inline-block;
}

.footer-bottom { padding-top: 24px; text-align: center; }
.footer-bottom p { font-size: .75rem; color: var(--mute-lt); opacity: .5; }

/* WhatsApp */
.whatsapp-note { margin-top: 8px; }
.whatsapp-link { display: inline-flex; align-items: center; gap: 8px; color: var(--mute-lt); text-decoration: none; transition: color .2s; }
.whatsapp-link:hover { color: #25D366; }
.whatsapp-link svg { width: 16px; height: 16px; color: #25D366; }
.whatsapp-link span { color: rgba(216,195,165,0.95); }

/* Iran address */
.iran-address { display: none; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--bdr-dk); }
.iran-address:empty { display: none !important; }
html[dir="rtl"] .iran-address:not(:empty) { display: block; }

/* ===== RESPONSIVE - MOBILE FIRST ===== */

/* Tablet Landscape */
@media (max-width: 1200px) {
    .footer-grid { grid-template-columns: 1fr 1fr 1fr; }
    .footer-brand { grid-column: span 3; margin-top: 20px; }
}

/* Tablet Portrait */
@media (max-width: 1024px) {
    :root { --content-pad: 32px; }
    .imm-dual { grid-template-columns: 1fr; }
    .consultant-grid { grid-template-columns: 1fr; text-align: center; gap: 40px; }
    .consultant-photo { justify-self: center; }
    .c-bio { max-width: 100%; margin-left: auto; margin-right: auto; }
    .consultant-social { justify-content: center; }
    .svc-panels { flex-direction: column; height: auto; }
    .svc-panel { min-height: 45vh; }
    .svc-panel:hover { flex: 1; }
    .testimonials-grid { grid-template-columns: 1fr; }
    .form-grid { grid-template-columns: 1fr; }
    .fp-structure, .other-structure { max-width: 100%; }
    /* A: Switch to hamburger + mobile Book CTA */
    .nav-hamburger { display: block; }
    .nav-desktop { display: none !important; }
    .nav-book-m { display: inline-flex !important; padding: 8px 18px; font-size: .8125rem; min-height: 40px; }
    .nav-brand { flex: 1; justify-content: center; }
    .nav-inner { padding: 10px 16px; }
}

/* Mobile Large (414px) */
@media (max-width: 768px) {
    :root { --content-pad: 24px; }
    
    /* Hero mobile layout managed by inline <style> in HTML head */
    
    /* D: About section — text readability */
    .about-section { padding: 80px 0; }
    .about-content h2 { font-size: 1.75rem; }
    .about-lead { font-size: 1rem; line-height: 1.8; max-width: 600px; }
    .about-wrap { padding-left: 24px; padding-right: 24px; }
    
    .sec-title { font-size: 1.75rem; }
    
    /* Service panels mobile */
    .svc-panel { min-height: 35vh; }
    .svc-panel h2 { font-size: 1.5rem; }
    
    /* A: Tighter mobile nav */
    .nav-book-m { padding: 8px 14px !important; font-size: .75rem !important; }
    .nav-brand span { font-size: 1.1rem; }
    .nav-logo { width: auto; height: 2.5rem; }
    
    /* Footer mobile */
    .footer-grid { 
        grid-template-columns: 1fr; 
        text-align: center; 
        gap: 32px; 
    }
    .footer-brand { grid-column: span 1; margin-top: 0; }
    .f-logo { 
        justify-content: center; 
        flex-direction: row !important;
        direction: ltr !important;
    }
    html[dir="rtl"] .f-logo { 
        flex-direction: row !important;
        direction: ltr !important;
    }
    .footer-brand > p[data-i18n="tagline"] {
        margin-left: 0;
        text-align: center;
    }
    html[dir="rtl"] .footer-brand > p[data-i18n="tagline"] {
        margin-right: 0;
        text-align: center;
    }
    .social { justify-content: center; }
    
    .assessment-form { padding: 32px 24px; }
    
    /* Fingerprinting mobile */
    #fingerprinting .fp-affiliation {
        font-size: 0.9375rem;
        padding: 16px 20px;
        margin-bottom: -40px;
    }
    .fp-affiliation-bar {
        padding: 16px 20px;
    }
    .fp-affiliation-bar .fp-affiliation-inner {
        font-size: 0.9375rem;
    }
}

/* Mobile Medium (390px, 375px) */
@media (max-width: 480px) {
    :root { --content-pad: 20px; }
    
    /* Hero mobile managed by inline <style> */
    
    .imm-block { padding: 20px; }
    .block-head { font-size: 1.125rem; }
    
    .assessment-form { padding: 24px 16px; }
    .form-section-title { font-size: 1rem; }
    
    .about-content h2 { font-size: 1.5rem; }
    .sec-title { font-size: 1.5rem; }
}

/* Mobile Small (320px) */
@media (max-width: 360px) {
    :root { --content-pad: 16px; }
    
    /* Hero mobile managed by inline <style> */
    
    .nav-inner { padding: 8px 10px; }
    .nav-brand span { font-size: .95rem; }
    .nav-logo { width: auto; height: 2rem; }
    .nav-book-m { padding: 6px 10px !important; font-size: .7rem !important; }
    
    .svc-panel h2 { font-size: 1.25rem; }
    .svc-panel p { font-size: 0.8125rem; }
}

/* ===== PAGE HERO (Subpages) — TRUE FULL-SCREEN HERO ===== */
/* 100vh immersive hero, image as full background, text overlaid */
.page-hero {
    position: relative;
    width: 100%;
    max-width: none !important;
    min-height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    border-radius: 0 !important;
    box-sizing: border-box;
    background: var(--navy);
}
.page-hero img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-width: none !important;
    object-fit: cover;
    object-position: center;
    display: block;
    border-radius: 0 !important;
    z-index: 0;
}
.page-hero--left .page-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(36,48,79,0.15) 0%, rgba(36,48,79,0.45) 40%, rgba(36,48,79,0.88) 70%, rgba(36,48,79,0.96) 100%);
    z-index: 1;
}
.page-hero--right .page-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(36,48,79,0.15) 0%, rgba(36,48,79,0.45) 40%, rgba(36,48,79,0.88) 70%, rgba(36,48,79,0.96) 100%);
    z-index: 1;
}
.page-hero--bg .page-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(36,48,79,0.5) 0%, rgba(45,58,92,0.92) 100%);
    z-index: 1;
}
.page-hero-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 var(--content-pad) 80px;
}
.page-hero-content h1 {
    font-family: var(--font);
    font-weight: 600;
    font-size: 3.5rem;
    color: var(--white);
    margin-bottom: 16px;
    line-height: 1.15;
}
.page-hero-content p {
    font-size: 1.2rem;
    color: rgba(255,255,255,0.85);
    max-width: 560px;
    line-height: 1.7;
    margin-bottom: 24px;
}
/* Scroll cue for page heroes */
.page-hero .page-hero-scroll {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.14);
    background: rgba(0,0,0,0.2);
    display: grid;
    place-items: center;
    text-decoration: none;
    cursor: pointer;
}
.page-hero .page-hero-scroll::after {
    content: "";
    width: 10px;
    height: 10px;
    border-right: 2px solid rgba(255,255,255,0.75);
    border-bottom: 2px solid rgba(255,255,255,0.75);
    transform: rotate(45deg);
    margin-top: -4px;
    animation: arrowFloat 1.6s ease-in-out infinite;
}
.page-hero--right .page-hero-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}
html[dir="rtl"] .page-hero--left .page-hero-content {
    text-align: right;
}
html[dir="rtl"] .page-hero--right .page-hero-content {
    align-items: flex-start;
    text-align: right;
}

@media (max-width: 768px) {
    .page-hero { min-height: 85vh; }
    .page-hero-content { padding: 0 var(--content-pad) 60px; }
    .page-hero-content h1 { font-size: 2.25rem; }
    .page-hero-content p { font-size: 1rem; }
    .page-hero--right .page-hero-content {
        align-items: flex-start;
        text-align: left;
    }
    .page-hero--right .page-hero-overlay {
        background: linear-gradient(180deg, rgba(36,48,79,0.3) 0%, rgba(36,48,79,0.85) 50%, rgba(36,48,79,0.95) 100%);
    }
    .page-hero--left .page-hero-overlay {
        background: linear-gradient(180deg, rgba(36,48,79,0.3) 0%, rgba(36,48,79,0.85) 50%, rgba(36,48,79,0.95) 100%);
    }
    .page-hero--bg .page-hero-overlay {
        background: linear-gradient(180deg, rgba(36,48,79,0.5) 0%, rgba(36,48,79,0.92) 100%);
    }
    html[dir="rtl"] .page-hero--right .page-hero-content {
        text-align: right;
    }
    /* Show more of the people in hero images on mobile */
    .page-hero--left img {
        object-position: 65% 20% !important;
    }
}

/* Subpage content container - standard width */
.subpage-content .section-wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Ensure no horizontal overflow at any size */
html, body {
    overflow-x: hidden;
    max-width: 100vw;
}

/* Touch-friendly targets */
@media (pointer: coarse) {
    .btn-cta, .btn-secondary, .lang-btn, .acc-btn, .nested-btn {
        min-height: 44px;
    }
    .nav-link {
        padding: 12px 8px;
    }
}

/* ===== FIX 5: INNER PAGES — REMOVE UNWANTED WATERMARKS ===== */
/* A) Fingerprinting subpage: remove IDENTITI watermark, solid navy background */
.subpage-content .fp-watermark {
    display: none !important;
}
.subpage-content #fingerprinting {
    background: var(--navy) !important;
}
.subpage-content #fingerprinting.content-section.alt {
    background: var(--navy) !important;
}

/* B) Other Services subpage: remove background image watermark, solid navy */
.subpage-content #other::before {
    display: none !important;
}
.subpage-content #other::after {
    display: none !important;
}
.subpage-content #other {
    background: var(--navy) !important;
}
.subpage-content #other .section-wrap {
    position: relative;
    z-index: 1;
}

/* ===== FIX 4B: INNER PAGES — Content offset for sticky nav ===== */
/* Ensure page-hero accounts for the fixed nav being visible on load */
.page-hero {
    /* Nav is ~60px tall but hero is full-screen so no offset needed */
}
