.saa-page {
  --bg: #ffffff;
  --surface: rgba(255, 255, 255, 1);
  --surface-2: #f7f7f8;
  --text: rgba(17, 24, 39, 1);
  --muted: rgba(55, 65, 81, 1);
  --muted-2: rgba(107, 114, 128, 1);
  --brand: #0195D8;
  --brand-2: #0195D8;
  --brand-light: rgba(230, 246, 253, 0.9);
  --border: rgba(17, 24, 39, .12);
  --shadow: 0 18px 40px rgba(17, 24, 39, .10);
  --shadow-soft: 0 12px 28px rgba(17, 24, 39, .08);
  --radius-lg: 20px;
  --radius-md: 14px;
  --radius-sm: 12px;
  --container: 1280px;
  --font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";

  --card-grad-start: #0195D8;
  --card-grad-mid:   #0a78b8;
  --card-grad-end:   #0b364a;
}
.saa-page, .saa-page * {margin:0;padding:0;box-sizing:border-box}
.saa-page {scroll-behavior:smooth}
.saa-page {font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
.saa-page a {color:var(--brand);text-decoration:none}
.saa-page .container {max-width:var(--container);margin:0 auto;padding:0 24px}
/* HERO */
.saa-page .services-hero {
  position:relative;
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  padding:0;
  text-align:center;
  background-image:url("/assets/company/backgrounds/why-choose-pages.jpg");
  background-size:100% 100%;
  background-position:center center;
  background-repeat:no-repeat;
  background-color:#FFFCFD;
  color:var(--text);
  box-shadow:none;
}
.saa-page .services-hero::before, .saa-page .services-hero::after {
  display:none;
  content:none;
}
.saa-page .services-hero > * {
  position:relative;
  z-index:2;
}
.saa-page .services-hero .container {
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.saa-page .services-hero .hero-content {
  max-width:900px;
  margin:0 auto;
  text-align:center;
}
.saa-page .services-hero .label {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:0 auto 12px;
  padding:8px 14px;
  color:#0f172a;
  font-size:12px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  border:1px solid rgba(1,149,216,.20);
  background:rgba(255,255,255,.78);
  border-radius:999px;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.saa-page .services-hero .label::before {
  content:"";
  width:9px;
  height:9px;
  border-radius:999px;
  background:#0195D8;
  box-shadow:0 0 0 5px rgba(1,149,216,.12);
}
.saa-page .services-hero h1 {
  max-width:920px;
  margin:0 0 10px;
  font-size:clamp(42px,4.35vw,62px);
  font-weight:850;
  color:#0f172a;
  line-height:1.02;
  letter-spacing:-.045em;
  text-align:center;
}
.saa-page .services-hero h1 .accent {
  position:relative;
  color:#0195D8;
  background:none;
  -webkit-text-fill-color:initial;
  white-space:nowrap;
}
.saa-page .services-hero h1 .accent::after {
  content:"";
  position:absolute;
  left:8px;
  right:10px;
  bottom:-1px;
  height:6px;
  border-radius:70% 35% 65% 40% / 55% 70% 35% 60%;
  background:
    radial-gradient(70% 120% at 18% 55%, rgba(1,149,216,.95) 0%, rgba(1,149,216,.82) 46%, transparent 76%),
    linear-gradient(90deg,rgba(1,149,216,.92),rgba(1,149,216,.36) 72%,rgba(1,149,216,0));
  transform:rotate(-1.2deg) skewX(-7deg);
  opacity:.92;
  filter:drop-shadow(0 2px 1px rgba(1,149,216,.08));
}
.saa-page .services-hero p.lead {
  font-size:16px;
  color:#334155;
  line-height:1.58;
  margin:0 auto;
  max-width:760px;
  text-align:center;
}
.saa-page .hero-stats {
  display:none;
}
@media (max-width:900px){.saa-page .services-hero {
    min-height:360px;
    background-size:cover;
    background-position:center center;
  }
.saa-page .services-hero .container {
    min-height:360px;
  }}
@media (max-width:620px){.saa-page .services-hero {
    min-height:320px;
    background-size:cover;
    background-position:center center;
  }
.saa-page .services-hero .container {
    min-height:320px;
  }
.saa-page .services-hero h1 {
    font-size:38px;
  }
.saa-page .services-hero p.lead {
    font-size:16px;
  }}
/* VISA SERVICE SECTIONS */
.saa-page .visa-service {
  padding: 80px 0;
  border-bottom: 1px solid var(--border);
}
.saa-page .visa-service:nth-child(even) { background: var(--surface-2); }
.saa-page .visa-service:last-of-type { border-bottom: none; }
.saa-page .visa-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: start;
}
.saa-page .visa-service.reverse .visa-grid > .visa-photo { order: 2; }
.saa-page .visa-service.reverse .visa-grid > .visa-content { order: 1; }
/* ============ FIXED: Photo with fallback gradient + emoji ============ */
.saa-page .visa-photo {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 4/3;
  min-height: 440px;
  box-shadow: var(--shadow);
  /* Fallback gradient background (always visible, behind image) */
  background: linear-gradient(135deg, #0195D8 0%, #0a78b8 50%, #0b364a 100%);
  display: flex; align-items: center; justify-content: center;
}
.saa-page .visa-photo img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .8s cubic-bezier(.4,0,.2,1);
  z-index: 1;
}
.saa-page .visa-photo:hover img { transform: scale(1.05); }
/* Decorative fallback emoji visible when image fails */
.saa-page .visa-photo .fallback-icon {
  position: absolute;
  z-index: 0;
  font-size: 120px;
  opacity: .25;
  filter: drop-shadow(0 8px 20px rgba(0,0,0,.3));
  user-select: none;
}
.saa-page .visa-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(1,149,216,.1) 0%, transparent 60%);
  pointer-events: none;
  z-index: 2;
}
.saa-page .photo-badge {
  position: absolute;
  bottom: 24px; left: 28px;
  background: #fff;
  border-radius: 16px;
  padding: 12px 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
  display: flex; align-items: center; gap: 10px;
  z-index: 3;
}
.saa-page .photo-badge .badge-icon {
  width: 36px; height: 36px;
  border-radius: 10px;
  background: var(--brand-light);
  color: var(--brand);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.saa-page .photo-badge .badge-text small {
  display: block;
  font-size: 11px; font-weight: 700;
  color: var(--muted-2);
  letter-spacing: .08em; text-transform: uppercase;
}
.saa-page .photo-badge .badge-text strong {
  display: block;
  font-size: 16px; font-weight: 800;
  color: var(--text);
  line-height: 1.2;
}
.saa-page .visa-content .visa-label {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 6px 14px;
  border-radius: 999px;
  background: var(--brand-light);
  color: var(--brand);
  font-size: 12px; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase;
  margin-bottom: 14px;
}
.saa-page .visa-content h2 {
  font-size: clamp(28px, 3.5vw, 38px);
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.15;
  margin-bottom: 14px;
  color: var(--text);
}
.saa-page .visa-content h2 .accent { color: var(--brand); }
.saa-page .visa-content > p.desc {
  font-size: 15.5px;
  color: var(--muted);
  margin-bottom: 22px;
}
.saa-page .country-chips {
  display: flex; flex-wrap: wrap; gap: 8px;
  margin-bottom: 26px;
}
.saa-page .country-chip {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 12px 6px 6px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  color: var(--muted);
}
.saa-page .country-chip img {
  width: 18px; height: 13px;
  border-radius: 2px;
  object-fit: cover;
}
.saa-page .services-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 26px;
}
.saa-page .service-item {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 12px 14px;
  background: #fff;
  border-radius: var(--radius-sm);
  border: 1px solid var(--border);
  transition: all .25s;
}
.saa-page .service-item:hover {
  border-color: var(--brand);
  transform: translateY(-2px);
  box-shadow: var(--shadow-soft);
}
.saa-page .service-item .si-icon {
  flex-shrink: 0;
  width: 32px; height: 32px;
  border-radius: 8px;
  background: var(--brand-light);
  color: var(--brand);
  display: flex; align-items: center; justify-content: center;
}
.saa-page .service-item .si-text { flex: 1; }
.saa-page .service-item .si-text strong {
  display: block;
  font-size: 13.5px; font-weight: 700;
  color: var(--text);
  margin-bottom: 2px;
  line-height: 1.25;
}
.saa-page .service-item .si-text small {
  display: block;
  font-size: 12px;
  color: var(--muted-2);
  line-height: 1.4;
}
.saa-page .visa-cta {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 13px 24px;
  background: var(--brand);
  color: #fff;
  border-radius: 999px;
  font-weight: 800;
  font-size: 14px;
  line-height: 1;
  width: fit-content;
  max-width: 100%;
  transition: all .25s;
  box-shadow: 0 10px 20px -10px rgba(1,149,216,.65);
}
.saa-page .visa-cta:hover {
  background: #017ab1;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 12px 24px -10px rgba(1,149,216,.75);
}
.saa-page .visa-cta svg { transition: transform .25s; }
.saa-page .visa-cta:hover svg { transform: translateX(4px); }
/* Premium CTA card - aligned with content grid */
.saa-page .visa-action-card {
  margin-top: 18px;
  padding: 16px 18px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(230,246,253,.95), rgba(255,255,255,1));
  border: 1px solid rgba(1,149,216,.18);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  box-shadow: 0 12px 28px rgba(17,24,39,.06);
}
.saa-page .visa-action-copy strong {
  display:block;
  font-size:15px;
  font-weight:800;
  color: var(--text);
  line-height:1.25;
}
.saa-page .visa-action-copy small {
  display:block;
  margin-top:3px;
  color: var(--muted-2);
  font-size:12.5px;
}
.saa-page .visa-action-card .visa-cta {
  margin:0;
  white-space:nowrap;
  padding: 12px 20px;
  box-shadow: 0 10px 22px -10px rgba(1,149,216,.8);
}
.saa-page .rejection-tips {
  margin-top: 22px;
  background: rgba(1,149,216,.05);
  border-left: 3px solid var(--brand);
  padding: 16px 18px;
  border-radius: var(--radius-sm);
}
.saa-page .rejection-tips summary {
  font-weight: 700;
  font-size: 14px;
  color: var(--text);
  cursor: pointer;
  list-style: none;
  display: flex; align-items: center; gap: 8px;
}
.saa-page .rejection-tips summary::-webkit-details-marker { display: none; }
.saa-page .rejection-tips summary::before {
  content: "⚠️";
  font-size: 16px;
}
.saa-page .rejection-tips summary::after {
  content: "+";
  margin-left: auto;
  font-size: 20px;
  font-weight: 400;
  color: var(--brand);
  transition: transform .2s;
}
.saa-page .rejection-tips[open] summary::after { transform: rotate(45deg); }
.saa-page .rejection-tips ul {
  margin-top: 12px;
  padding-left: 0;
  list-style: none;
}
.saa-page .rejection-tips li {
  padding: 6px 0 6px 22px;
  font-size: 13.5px;
  color: var(--muted);
  position: relative;
}
.saa-page .rejection-tips li::before {
  content: "•";
  color: var(--brand);
  font-weight: 800;
  position: absolute;
  left: 8px;
}
/* ADD-ON SERVICES */
.saa-page .addons-section {
  padding: 80px 0;
  background: #fff;
}
.saa-page .section-head {text-align: center; max-width: 720px; margin: 0 auto 50px}
.saa-page .section-head .label {
  display: inline-block;
  font-size: 13px; font-weight: 700;
  color: var(--brand);
  letter-spacing: .15em; text-transform: uppercase;
  margin-bottom: 12px;
}
.saa-page .section-head h2 {
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.15;
  margin-bottom: 14px;
  color: var(--text);
}
.saa-page .section-head h2 .accent {color: var(--brand)}
.saa-page .section-head p {color: var(--muted-2); font-size: 16px}
.saa-page .addons-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 22px;
}
.saa-page .addon-card {
  position: relative;
  background: #fff;
  border: 1px solid rgba(17,24,39,.10);
  border-radius: 24px;
  padding: 0;
  transition: all .35s ease;
  overflow: hidden;
  box-shadow: 0 18px 38px rgba(17,24,39,.08);
}
.saa-page .addon-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 26px 54px rgba(1,149,216,.20);
  border-color: rgba(1,149,216,.22);
}
.saa-page .addon-card .addon-image {
  position: relative;
  height: 185px;
  overflow: hidden;
  background: linear-gradient(135deg, #0195D8, #0b364a);
}
.saa-page .addon-card .addon-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .7s cubic-bezier(.4,0,.2,1);
}
.saa-page .addon-card:hover .addon-image img {
  transform: scale(1.08);
}
.saa-page .addon-card .addon-image::after {
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(1,149,216,.20) 100%);
  pointer-events:none;
}
.saa-page .addon-card .addon-body {
  padding: 24px 26px 30px;
}
.saa-page .addon-card h3 {
  font-size: 18px;
  font-weight: 800;
  color: var(--text);
  margin-bottom: 10px;
  letter-spacing: -.01em;
}
.saa-page .addon-card p {
  font-size: 14px;
  color: var(--muted-2);
  line-height: 1.68;
}
/* PROCESS TIMELINE */
.saa-page .process-section {
  padding: 80px 0;
  background: var(--surface-2);
}
.saa-page .process-timeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  position: relative;
}
.saa-page .process-timeline::before {
  content: "";
  position: absolute;
  top: 38px;
  left: 12.5%;
  right: 12.5%;
  height: 2px;
  background: repeating-linear-gradient(90deg, var(--brand) 0 8px, transparent 8px 16px);
  z-index: 0;
}
.saa-page .process-step {
  position: relative;
  z-index: 1;
  text-align: center;
}
.saa-page .process-step .step-num {
  width: 76px; height: 76px;
  border-radius: 50%;
  background: #fff;
  border: 3px solid var(--brand);
  color: var(--brand);
  display: flex; align-items: center; justify-content: center;
  font-size: 24px; font-weight: 800;
  margin: 0 auto 18px;
  transition: all .3s;
}
.saa-page .process-step:hover .step-num {
  background: var(--brand);
  color: #fff;
  transform: scale(1.08);
}
.saa-page .process-step h4 {
  font-size: 16px; font-weight: 800;
  color: var(--text);
  margin-bottom: 8px;
  letter-spacing: -.01em;
}
.saa-page .process-step p {
  font-size: 13.5px;
  color: var(--muted-2);
  line-height: 1.5;
}
/* FINAL CTA */
.saa-page .final-cta {
  padding: 70px 0 90px;
  background: #fff;
}
.saa-page .cta-banner {
  background: linear-gradient(135deg, var(--card-grad-start) 0%, var(--card-grad-mid) 50%, var(--card-grad-end) 100%);
  border-radius: 28px;
  padding: 60px 40px;
  text-align: center;
  position: relative;
  overflow: hidden;
  color: #fff;
}
.saa-page .cta-banner::before, .saa-page .cta-banner::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  background: rgba(255,255,255,.08);
}
.saa-page .cta-banner::before {
  width: 280px; height: 280px;
  top: -100px; left: -80px;
}
.saa-page .cta-banner::after {
  width: 360px; height: 360px;
  bottom: -150px; right: -100px;
}
.saa-page .cta-banner > * { position: relative; z-index: 1; }
.saa-page .cta-banner h2 {
  font-size: clamp(28px, 4vw, 40px);
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.15;
  margin-bottom: 14px;
}
.saa-page .cta-banner p {
  font-size: 16px;
  color: rgba(255,255,255,.9);
  max-width: 620px;
  margin: 0 auto 30px;
}
.saa-page .cta-buttons {
  display: flex; flex-wrap: wrap; gap: 14px;
  justify-content: center;
}
.saa-page .cta-buttons a {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 14px 28px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 15px;
  transition: all .25s;
}
.saa-page .cta-buttons .btn-primary {
  background: #fff;
  color: var(--brand);
  box-shadow: 0 12px 24px rgba(0,0,0,.18);
}
.saa-page .cta-buttons .btn-primary:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 32px rgba(0,0,0,.25);
  color: var(--brand);
}
.saa-page .cta-buttons .btn-wa {
  background: #25D366;
  color: #fff;
}
.saa-page .cta-buttons .btn-wa:hover {
  background: #1ea952;
  transform: translateY(-3px);
  color: #fff;
}
/* MOBILE */
/* Final alignment refinements */
.saa-page .visa-content { width:100%; }
.saa-page .visa-service .visa-grid { align-items:start; }
.saa-page .visa-service .visa-photo { margin-top: 6px; }
.saa-page .visa-action-card { min-height:76px; }
.saa-page .rejection-tips + .visa-action-card { margin-top: 18px; }
@media (min-width:901px){.saa-page .visa-service.reverse .visa-grid { align-items:start; }}
@media (max-width: 900px){.saa-page .visa-grid { grid-template-columns: 1fr; gap: 30px; }
.saa-page .visa-photo { min-height: 360px; }
.saa-page .visa-service.reverse .visa-grid > .visa-photo, .saa-page .visa-service.reverse .visa-grid > .visa-content { order: unset; }
.saa-page .visa-service { padding: 60px 0; }
.saa-page .addons-section, .saa-page .process-section, .saa-page .final-cta { padding: 60px 0; }
.saa-page .services-hero { padding: 60px 0 40px; }
.saa-page .process-timeline { grid-template-columns: 1fr; gap: 30px; }
.saa-page .process-timeline::before { display: none; }
.saa-page .services-included { grid-template-columns: 1fr; }}
@media (max-width: 480px){.saa-page .visa-photo { border-radius: 16px; min-height: 300px; }
.saa-page .photo-badge { bottom: 14px; left: 14px; padding: 10px 14px; }
.saa-page .cta-banner { padding: 44px 24px; border-radius: 20px; }
.saa-page .cta-buttons { flex-direction: column; }
.saa-page .cta-buttons a { width: 100%; justify-content: center; }
.saa-page .visa-cta { width: 100%; justify-content: center; }}
/* ===== FINAL FIX: CTA directly under each image ===== */
.saa-page .visa-media {
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.saa-page .visa-media .visa-photo {
  width:100%;
}
.saa-page .visa-media .visa-action-card {
  width:100%;
  max-width:none;
  margin:18px 0 0 0;
}
.saa-page .visa-service.reverse .visa-grid > .visa-media { order:2; }
.saa-page .visa-service.reverse .visa-grid > .visa-content { order:1; }
@media (max-width:900px){.saa-page .visa-service.reverse .visa-grid > .visa-media, .saa-page .visa-service.reverse .visa-grid > .visa-content { order:unset; }
.saa-page .visa-media .visa-action-card {
    flex-direction:column;
    align-items:flex-start;
  }
.saa-page .visa-media .visa-action-card .visa-cta {
    width:100%;
    justify-content:center;
  }}
/* Spouse CTA subheadline one-line fix */
.saa-page #spouse-visa .visa-action-copy small {
  white-space: nowrap;
}
@media (max-width:480px){.saa-page #spouse-visa .visa-action-copy small {
    white-space: normal;
  }}
/* ===== SERVICES HERO FLOW UPDATE: Canada-style responsive polish ===== */
@media (max-width: 900px){.saa-page .services-hero {
    min-height: 440px;
    padding: 82px 0 116px;
    text-align: center;
  }
.saa-page .services-hero .hero-content, .saa-page .services-hero p.lead {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
.saa-page .services-hero h1 {
    font-size: clamp(39px, 9vw, 56px);
    margin-left: auto;
    margin-right: auto;
  }
.saa-page .services-hero .label {
    margin-left: auto;
    margin-right: auto;
  }
.saa-page .hero-stats {
    grid-template-columns: 1fr;
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
  }
.saa-page .hero-pills-wrap {
    margin-top: -66px;
    padding-bottom: 24px;
  }
.saa-page .hero-pills-wrap::before { top:66px; }
.saa-page .hero-pills {
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-radius: 22px;
  }
.saa-page .hero-pill {
    min-height: 84px;
    padding: 20px 18px;
    border-bottom: 1px solid rgba(255,255,255,.16);
  }
.saa-page .hero-pill:nth-child(2) { border-right: none; }
.saa-page .hero-pill:nth-child(n/**/+3) { border-bottom: none; }}
@media (max-width: 520px){.saa-page .services-hero {
    min-height: 420px;
    padding: 70px 0 105px;
  }
.saa-page .services-hero h1 { font-size: 39px; }
.saa-page .services-hero p.lead { font-size: 15.5px; }
.saa-page .hero-stats { display: none; }
.saa-page .hero-pills {
    grid-template-columns: 1fr;
  }
.saa-page .hero-pill {
    border-right: none !important;
    border-bottom: 1px solid rgba(255,255,255,.16) !important;
  }
.saa-page .hero-pill:last-child { border-bottom: none !important; }}
/* ===== FINAL FIX: Service shortcut bar exact 50/50 hero overlap ===== */
.saa-page .hero-pills-wrap {
  margin-top:-47px !important;
  padding-bottom:54px !important;
}
.saa-page .hero-pills-wrap::before {
  top:47px !important;
}
@media (max-width:900px){.saa-page .hero-pills-wrap {
    margin-top:-42px !important;
    padding-bottom:42px !important;
  }
.saa-page .hero-pills-wrap::before { top:42px !important; }}
@media (max-width:520px){.saa-page .hero-pills-wrap {
    margin-top:-42px !important;
    padding-bottom:36px !important;
  }
.saa-page .hero-pills-wrap::before { top:42px !important; }}
/* ===== SHARED PAGE HERO FROM CONTACT US ===== */
.saa-page {
  --bg:#ffffff; --surface-2:#f7f7f8;
  --text:rgba(17,24,39,1); --muted:rgba(55,65,81,1); --muted-2:rgba(107,114,128,1);
  --brand:#0195D8; --brand-light:rgba(230,246,253,0.9);
  --border:rgba(17,24,39,.12);
  --shadow:0 18px 40px rgba(17,24,39,.10); --shadow-soft:0 12px 28px rgba(17,24,39,.08);
  --radius-lg:20px; --radius-md:14px;
  --container:1280px;
  --font:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
}
.saa-page, .saa-page * {box-sizing:border-box}
.saa-page {scroll-behavior:smooth}
.saa-page {margin:0;font-family:var(--font);color:var(--text);background:#fff;-webkit-font-smoothing:antialiased}
.saa-page img {max-width:100%;display:block}
.saa-page a {text-decoration:none}
.saa-page .container {max-width:var(--container);margin:0 auto;padding:0 24px}
.saa-page .contact-hero {
  position:relative;
  min-height:238px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  padding:44px 20px 42px;
  text-align:center;
  background:
    radial-gradient(680px 260px at 18% 18%, rgba(1,149,216,.10), transparent 65%),
    radial-gradient(720px 300px at 82% 8%, rgba(1,149,216,.16), transparent 68%),
    linear-gradient(90deg, rgba(244,251,255,.96) 0%, rgba(255,255,255,.91) 34%, rgba(235,248,255,.80) 64%, rgba(1,149,216,.18) 100%);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  box-shadow:inset 0 -34px 44px -44px rgba(1,149,216,.24);
}
.saa-page .contact-hero .soft-transition {display:none;}
.saa-page .contact-hero::before {
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(720px 320px at 12% 15%, rgba(1,149,216,.12), transparent 62%),
    radial-gradient(560px 260px at 92% 18%, rgba(1,149,216,.16), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(238,247,252,.38) 100%);
  pointer-events:none;
  backdrop-filter:blur(2.5px);
  -webkit-backdrop-filter:blur(2.5px);
}
.saa-page .contact-hero::after {
  content:"";
  position:absolute;
  inset:0;
  opacity:.26;
  pointer-events:none;
  background-image:radial-gradient(rgba(1,149,216,.22) 1px, transparent 1px);
  background-size:22px 22px;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 52%,transparent 92%);
  mask-image:linear-gradient(90deg,#000 0%,#000 52%,transparent 92%);
}
.saa-page .contact-hero .container {
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
}
.saa-page .contact-hero-copy {
  max-width:860px;
  margin:0 auto;
  text-align:center;
  padding-top:8px;
}
.saa-page .contact-hero-label {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:0 auto 12px;
  padding:8px 14px;
  color:#0f172a;
  font-size:12px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  border:1px solid rgba(1,149,216,.20);
  background:rgba(255,255,255,.78);
  border-radius:999px;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.saa-page .contact-hero-label::before {
  content:"";
  width:9px;
  height:9px;
  border-radius:999px;
  background:#0195D8;
  box-shadow:0 0 0 5px rgba(1,149,216,.12);
  animation:heroDotPulse 2.8s ease-in-out infinite;
}
@keyframes heroDotPulse{
  0%,100%{transform:scale(1);box-shadow:0 0 0 5px rgba(1,149,216,.12),0 0 0 0 rgba(1,149,216,.20)}
  50%{transform:scale(1.18);box-shadow:0 0 0 6px rgba(1,149,216,.10),0 0 18px 3px rgba(1,149,216,.30)}
}
.saa-page .contact-hero-title {
  font-size:clamp(42px,4.35vw,62px);
  font-weight:850;
  color:#0f172a;
  margin:0 0 10px;
  line-height:1.02;
  letter-spacing:-.045em;
  text-align:center;
}
.saa-page .contact-hero-title .accent {
  position:relative;
  color:#0195D8;
  background:none;
  -webkit-text-fill-color:initial;
  white-space:nowrap;
}
.saa-page .contact-hero-title .accent::after {
  content:"";
  position:absolute;
  left:8px;
  right:10px;
  bottom:-1px;
  height:6px;
  border-radius:70% 35% 65% 40% / 55% 70% 35% 60%;
  background:
    radial-gradient(70% 120% at 18% 55%, rgba(1,149,216,.95) 0%, rgba(1,149,216,.82) 46%, transparent 76%),
    linear-gradient(90deg,rgba(1,149,216,.92),rgba(1,149,216,.36) 72%,rgba(1,149,216,0));
  transform:rotate(-1.2deg) skewX(-7deg);
  opacity:.92;
  filter:drop-shadow(0 2px 1px rgba(1,149,216,.08));
}
.saa-page .contact-hero-sub {
  font-size:16px;
  color:#334155;
  line-height:1.58;
  margin:0 auto;
  max-width:760px;
  text-align:center;
}
.saa-page .contact-hero-badges {display:none}
@media (max-width:900px){.saa-page .contact-hero {min-height:auto;padding:36px 16px 34px;background-position:center}
.saa-page .contact-hero .container {padding:0 16px}}
@media (max-width:620px){.saa-page .contact-hero-title {font-size:38px}
.saa-page .contact-hero-sub {font-size:16px}}
.saa-page .contact-offices {
  padding:44px 20px 70px;position:relative;
  background:
    radial-gradient(700px 400px at 85% 0%, rgba(1,149,216,.08), transparent 60%),
    linear-gradient(180deg,#eef7fc 0%,#f5fbfe 100%);
}
.saa-page .contact-offices::before {
  content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;
  background-image:radial-gradient(rgba(1,149,216,.10) 1px, transparent 1px);
  background-size:22px 22px;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 55%);
  mask-image:linear-gradient(180deg,#000 0%,transparent 55%);
}
.saa-page .contact-offices .container {position:relative;z-index:1}
.saa-page .offices-section-header {text-align:center;max-width:720px;margin:0 auto 42px}
.saa-page .offices-section-title {font-size:clamp(29px,3.7vw,40px);font-weight:800;color:#0f172a;margin:0 0 10px;line-height:1.15;letter-spacing:-.02em}
.saa-page .offices-section-title .accent {color:#0295DA}
.saa-page .offices-section-sub {font-size:16px;color:#64748b;line-height:1.7;margin:0}
.saa-page .offices-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px;max-width:1280px;margin:0 auto}
.saa-page .office-card {
  position:relative;border-radius:24px;overflow:hidden;
  transition:transform .35s cubic-bezier(.4,0,.2,1),box-shadow .35s;
  display:flex;flex-direction:column;color:#fff;
  background:linear-gradient(180deg,#0295DA 0%,#0a78b8 55%,#0b364a 100%);
  box-shadow:0 14px 30px -10px rgba(2,149,218,.45);min-height:512px;border:0;
}
.saa-page .office-card:hover {transform:translateY(-6px);box-shadow:0 24px 50px -14px rgba(2,149,218,.55)}
.saa-page .landmark-banner {position:relative;width:100%;height:230px;overflow:hidden;background:#0b364a;display:block;border-radius:24px 24px 0 0}
.saa-page .landmark-banner img {width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .8s cubic-bezier(.4,0,.2,1)}
.saa-page .office-dhaka .landmark-banner img {object-position:center 48%}
.saa-page .office-chittagong .landmark-banner img {object-position:center 46%}
.saa-page .office-canada .landmark-banner img {object-position:center center}
.saa-page .office-usa .landmark-banner img {object-position:center 48%}
.saa-page .office-card:hover .landmark-banner img {transform:scale(1.06)}
.saa-page .landmark-banner::after {content:"";position:absolute;left:0;right:0;bottom:0;height:46px;background:linear-gradient(180deg,transparent,rgba(2,149,218,.28));pointer-events:none}
.saa-page .hq-ribbon {display:none}
.saa-page .office-body {padding:26px 24px 30px;display:flex;flex-direction:column;flex:1}
.saa-page .office-card h3 {font-size:25px;font-weight:800;text-align:center;letter-spacing:-.01em;margin:0 0 4px;color:#fff}
.saa-page .office-sub {text-align:center;font-size:11.5px;color:rgba(255,255,255,.78);margin:0 0 18px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.saa-page .office-landmark {margin:-6px 0 18px;color:rgba(255,255,255,.90);font-size:12px;font-weight:500;line-height:1.45;text-align:center;white-space:nowrap;letter-spacing:-.15px}
.saa-page .office-card address {
  font-style:normal;color:rgba(255,255,255,.92);line-height:1.85;
  font-size:12.5px;text-align:center;margin:0 0 18px;white-space:nowrap;letter-spacing:-.1px;
}
.saa-page .office-meta {display:flex;flex-direction:column;gap:9px;padding:15px 0;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);margin-bottom:20px}
.saa-page .office-meta a, .saa-page .office-meta span {display:inline-flex;align-items:center;gap:9px;justify-content:center;font-size:13px;color:rgba(255,255,255,.92);font-weight:500;text-decoration:none;white-space:nowrap}
.saa-page .office-meta a:hover {color:#fff;text-decoration:underline}
.saa-page .office-meta svg {flex-shrink:0;opacity:.85}
.saa-page .office-actions {display:flex;justify-content:center;margin-top:auto}
.saa-page .wa-btn {position:relative;display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:0 26px 0 14px;height:54px;min-width:230px;border-radius:999px;background:#fff;color:#0295DA;font-weight:700;font-size:13px;text-decoration:none;transition:all .25s;box-shadow:0 8px 16px rgba(0,0,0,.14)}
.saa-page .wa-btn:hover {transform:translateY(-3px);box-shadow:0 12px 22px rgba(0,0,0,.2);color:#0295DA}
.saa-page .wa-emblem {flex-shrink:0;width:30px;height:30px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}
.saa-page .wa-text {display:flex;flex-direction:column;line-height:1.15;text-align:left}
.saa-page .wa-text small {font-size:9.5px;font-weight:700;color:#64748b;letter-spacing:.08em;text-transform:uppercase}
.saa-page .wa-text strong {font-size:13px;font-weight:700;white-space:nowrap;color:#0f172a}
.saa-page .contact-map-section {padding:80px 20px;background:#ffffff}
.saa-page .map-section-header {text-align:center;max-width:820px;margin:0 auto 36px}
.saa-page .map-section-title {font-size:clamp(28px,4vw,40px);font-weight:800;color:#0f172a;margin:0 0 12px;letter-spacing:-.02em}
.saa-page .map-section-title .accent {color:#0295DA}
.saa-page .map-section-sub {font-size:16px;color:#64748b;margin:0;line-height:1.55;white-space:nowrap}
.saa-page .map-tabs-nav {display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 auto 28px;background:#f4f7fb;padding:8px;border-radius:999px;box-shadow:var(--shadow-soft);width:fit-content;border:1px solid var(--border)}
.saa-page .map-tab-btn {padding:10px 24px;border-radius:999px;font-weight:700;font-size:14px;color:var(--muted-2);cursor:pointer;border:none;background:transparent;transition:all .25s;font-family:inherit}
.saa-page .map-tab-btn.active {background:#0295DA;color:#fff;box-shadow:0 6px 14px -4px rgba(2,149,218,.5)}
.saa-page .map-tab-btn:not(.active):hover {color:var(--text)}
.saa-page .map-pane {display:none}
.saa-page .map-pane.active {display:block}
.saa-page .map-container {border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);border:8px solid #fff;background:var(--border)}
.saa-page .map-container iframe {display:block;width:100%;height:420px;border:0}
.saa-page .contact-cta {padding:80px 20px;background:linear-gradient(180deg,#f5fbfe 0%,#eef7fc 100%)}
.saa-page .contact-cta .cta-banner {max-width:1100px;margin:0 auto;background:linear-gradient(135deg,#0195D8 0%,#0a78b8 50%,#0b364a 100%);border-radius:28px;padding:64px 40px;text-align:center;position:relative;overflow:hidden;color:#fff}
.saa-page .contact-cta .cta-banner::before, .saa-page .contact-cta .cta-banner::after {content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none}
.saa-page .contact-cta .cta-banner::before {width:300px;height:300px;top:-120px;left:-80px}
.saa-page .contact-cta .cta-banner::after {width:420px;height:420px;bottom:-200px;right:-120px}
.saa-page .contact-cta .cta-banner>* {position:relative;z-index:1}
.saa-page .contact-cta .cta-banner h2 {font-size:clamp(28px,4vw,42px);font-weight:800;letter-spacing:-.02em;margin:0 0 10px;line-height:1.1;color:#fff}
.saa-page .contact-cta .cta-banner p {font-size:16px;color:rgba(255,255,255,.9);max-width:640px;margin:0 auto 32px;line-height:1.6}
.saa-page .contact-cta .cta-buttons {display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.saa-page .contact-cta .cta-buttons a {display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:999px;font-weight:700;font-size:15px;transition:all .25s}
.saa-page .contact-cta .cta-btn-primary {background:#fff;color:#0195D8;box-shadow:0 12px 24px rgba(0,0,0,.18)}
.saa-page .contact-cta .cta-btn-primary:hover {transform:translateY(-3px);box-shadow:0 18px 32px rgba(0,0,0,.25);color:#0195D8}
.saa-page .contact-cta .cta-btn-wa {background:#25D366;color:#fff}
.saa-page .contact-cta .cta-btn-wa:hover {background:#1ea952;transform:translateY(-3px);color:#fff}
.saa-page .before-reach-out {
  padding:92px 20px 96px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(760px 360px at 16% 18%, rgba(1,149,216,.11), transparent 68%),
    radial-gradient(720px 360px at 90% 8%, rgba(56,189,248,.14), transparent 70%),
    linear-gradient(180deg,#ffffff 0%,#f4fbff 52%,#ffffff 100%);
}
.saa-page .before-reach-out::before {
  content:"";position:absolute;inset:0;opacity:.55;pointer-events:none;
  background-image:radial-gradient(rgba(1,149,216,.11) 1px, transparent 1px);
  background-size:26px 26px;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 38%,#000 70%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 38%,#000 70%,transparent 100%);
}
.saa-page .before-reach-out::after {
  content:"";position:absolute;width:420px;height:420px;right:-160px;bottom:-190px;border-radius:50%;
  background:radial-gradient(circle, rgba(1,149,216,.16), transparent 68%);
  pointer-events:none;
}
.saa-page .before-reach-out .container {position:relative;z-index:1}
.saa-page .reach-out-header {text-align:center;max-width:720px;margin:0 auto 46px}
.saa-page .reach-out-kicker {
  display:inline-flex;align-items:center;gap:8px;margin:0 auto 14px;padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.86);border:1px solid rgba(1,149,216,.18);box-shadow:0 10px 24px rgba(1,149,216,.08);
  color:#0f172a;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
}
.saa-page .reach-out-kicker::before {
  content:"";width:9px;height:9px;border-radius:50%;background:#0195D8;box-shadow:0 0 0 5px rgba(1,149,216,.12);
}
.saa-page .reach-out-title {font-size:clamp(30px,4vw,46px);font-weight:900;color:#0f172a;margin:0 0 14px;letter-spacing:-.04em;line-height:1.05}
.saa-page .reach-out-title .accent {color:#0295DA}
.saa-page .reach-out-sub {font-size:17px;color:#64748b;margin:0;line-height:1.65}
.saa-page .faq-cards-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;max-width:1180px;margin:0 auto}
.saa-page .faq-card {
  position:relative;
  min-height:250px;
  background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.78) 100%);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border:1px solid rgba(1,149,216,.14);
  border-radius:26px;
  padding:30px 24px 28px;
  transition:transform .32s ease, box-shadow .32s ease, border-color .32s ease, background .32s ease;
  overflow:hidden;
  box-shadow:0 18px 45px rgba(15,23,42,.08);
}
.saa-page .faq-card::before {
  content:"";position:absolute;inset:0 0 auto 0;height:5px;
  background:linear-gradient(90deg,#0195D8,#5ad7ff);
}
.saa-page .faq-card::after {
  content:"";position:absolute;width:110px;height:110px;right:-42px;top:-42px;border-radius:50%;
  background:radial-gradient(circle,rgba(1,149,216,.16),transparent 66%);
}
.saa-page .faq-card:hover {
  transform:translateY(-9px);
  box-shadow:0 26px 60px rgba(1,149,216,.16);
  border-color:rgba(1,149,216,.34);
  background:rgba(255,255,255,.96);
}
.saa-page .faq-icon {
  width:58px;height:58px;border-radius:18px;margin-bottom:20px;display:grid;place-items:center;
  color:#fff;font-size:24px;
  background:linear-gradient(135deg,#0195D8,#36c7ff);
  box-shadow:0 14px 30px rgba(1,149,216,.25);
}
.saa-page .faq-question {font-size:18px;font-weight:900;color:#0f172a;margin:0 0 10px;line-height:1.24;letter-spacing:-.01em}
.saa-page .faq-answer {font-size:14.5px;color:#526179;line-height:1.72;margin:0}
@media (max-width:1080px){.saa-page .faq-cards-grid {grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}}
@media (max-width:620px){.saa-page .before-reach-out {padding:68px 16px 74px}
.saa-page .faq-cards-grid {grid-template-columns:1fr;max-width:420px}
.saa-page .faq-card {min-height:auto;padding:28px 22px}}
@media (max-width:768px){.saa-page .landmark-banner {height:210px}
.saa-page .contact-hero {min-height:230px;padding:56px 20px 44px}
.saa-page .contact-offices {padding:60px 16px 50px}
.saa-page .offices-grid {grid-template-columns:1fr;max-width:420px}
.saa-page .office-card {min-height:auto}
.saa-page .office-card address {font-size:13px;white-space:normal;text-wrap:balance}
.saa-page .contact-map-section, .saa-page .before-reach-out, .saa-page .contact-cta {padding-left:16px;padding-right:16px}
.saa-page .map-container iframe {height:340px}}
@media (max-width:480px){.saa-page .landmark-banner {height:200px}
.saa-page .office-canada .landmark-banner img {object-position:center center}
.saa-page .office-dhaka .landmark-banner img, .saa-page .office-chittagong .landmark-banner img, .saa-page .office-usa .landmark-banner img {object-position:center center}
.saa-page .contact-cta .cta-banner {padding:48px 24px;border-radius:22px}
.saa-page .contact-cta .cta-buttons {flex-direction:column}
.saa-page .contact-cta .cta-buttons a {width:100%;justify-content:center}}
@media (max-width:768px){.saa-page .office-landmark {white-space:normal;font-size:12.5px}}
@media (max-width:768px){.saa-page .contact-hero {min-height:230px;padding:56px 20px 44px}
.saa-page .contact-offices {padding:60px 16px 50px}
.saa-page .offices-grid {grid-template-columns:1fr;max-width:420px}
.saa-page .office-card {min-height:auto}
.saa-page .office-card address {font-size:13px;white-space:normal;text-wrap:balance}
.saa-page .contact-map-section, .saa-page .before-reach-out, .saa-page .contact-cta {padding-left:16px;padding-right:16px}
.saa-page .map-section-header {max-width:100%;margin-bottom:28px}
.saa-page .map-section-sub {white-space:normal;font-size:15px;max-width:520px;margin:0 auto}
.saa-page .map-tabs-nav {width:100%;max-width:520px;border-radius:18px;gap:6px}
.saa-page .map-tab-btn {flex:1 1 calc(50% - 6px);padding:10px 12px;font-size:13px}
.saa-page .map-container iframe {height:340px}}
.saa-page .map-section-header {max-width:860px}
.saa-page .map-section-sub {max-width:760px;margin:0 auto;white-space:normal}
@media (max-width:768px){.saa-page .contact-map-section {padding:56px 16px 64px;background:#fff}
.saa-page .map-section-header {max-width:100%;margin-bottom:26px}
.saa-page .map-section-title {font-size:30px;line-height:1.15;margin-bottom:12px;text-wrap:balance}
.saa-page .map-section-sub {font-size:15px;line-height:1.55;max-width:330px;margin:0 auto;white-space:normal;text-wrap:balance}
.saa-page .map-tabs-nav {width:100%;max-width:330px;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px;border-radius:18px;margin-bottom:28px}
.saa-page .map-tab-btn {width:100%;padding:12px 10px;border-radius:14px;font-size:13px;text-align:center}
.saa-page .map-container {width:100%;max-width:330px;margin:0 auto;border:6px solid #fff;border-radius:18px;box-shadow:0 16px 34px rgba(15,23,42,.12)}
.saa-page .map-container iframe {height:360px;width:100%}}
@media (max-width:390px){.saa-page .map-tabs-nav, .saa-page .map-container {max-width:315px}
.saa-page .map-section-title {font-size:28px}
.saa-page .map-container iframe {height:350px}}
@media (max-width:768px){.saa-page .map-tabs-nav {
    max-width:340px !important;
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
    gap:4px !important;
    padding:6px !important;
    border-radius:999px !important;
  }
.saa-page .map-tab-btn {
    min-width:0 !important;
    width:100% !important;
    padding:10px 4px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }}
@media (max-width:390px){.saa-page .map-tabs-nav {max-width:315px !important; gap:3px !important; padding:5px !important}
.saa-page .map-tab-btn {font-size:11px !important; padding:10px 3px !important}}
.saa-page .contact-hero {
    background-color:#CAC4D5 !important;
    background-image:url("/assets/localized/embedded/7e85cd1b9dd1df.webp") !important;
    background-size:100% 100% !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
    min-height:320px !important;
}
@media (max-width:900px){.saa-page .contact-hero {
    min-height:260px !important;
    background-size:cover !important;
    background-position:center center !important;
  }}
.saa-page .contact-hero::before, .saa-page .contact-hero::after {
    display:none !important;
    content:none !important;
    background:none !important;
    filter:none !important;
    backdrop-filter:none !important;
}
/* Services page hero text refinement only */
.saa-page .contact-hero .contact-hero-copy {
  max-width: 920px;
}
.saa-page .contact-hero-title {
  white-space: normal;
}
.saa-page .contact-hero-sub + .contact-hero-sub {
  margin-top: 2px;
}
/* Remove any old Services hero influence */
.saa-page .services-hero, .saa-page .services-hero * {
  all: unset;
}
/* First service section soft sky-blue, not pure white */
.saa-page .visa-service#student-visa, .saa-page .visa-service#student-visa:nth-child(even), .saa-page .visa-service#student-visa:nth-child(odd) {
  background:
    radial-gradient(760px 360px at 12% 8%, rgba(1,149,216,.08), transparent 62%),
    radial-gradient(700px 360px at 88% 12%, rgba(56,189,248,.09), transparent 64%),
    linear-gradient(180deg, #F8FCFF 0%, #F5FAFF 50%, #F8FCFF 100%) !important;
}
/* Keep shortcut bar clean below shared hero */
.saa-page .hero-pills-wrap {
  margin-top: 0 !important;
  padding: 34px 0 54px !important;
  background: #fff !important;
}
.saa-page .hero-pills-wrap::before {
  display: none !important;
}
@media (max-width:768px){.saa-page .contact-hero {
    min-height:230px !important;
    padding:56px 20px 44px !important;
    background-size:cover !important;
    background-position:center center !important;
  }}
/* ===== FINAL SERVICES PAGE FLOW UPDATE ===== */
/* Remove old shortcut bar completely if any CSS/HTML remains */
.saa-page .hero-pills-wrap {
  display:none !important;
}
/* Clean premium section flow matching homepage/contact style */
.saa-page .visa-service {
  position:relative;
  border-bottom:1px solid rgba(1,149,216,.10) !important;
}
.saa-page .visa-service::before {
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:120px;
  height:1px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(1,149,216,.18),
    transparent
  );
  pointer-events:none;
}
/* Student Visa section: soft ice-blue */
.saa-page .visa-service#student-visa, .saa-page .visa-service#student-visa:nth-child(even), .saa-page .visa-service#student-visa:nth-child(odd) {
  background:
    radial-gradient(760px 360px at 12% 8%, rgba(1,149,216,.08), transparent 62%),
    radial-gradient(700px 360px at 88% 12%, rgba(56,189,248,.09), transparent 64%),
    linear-gradient(180deg, #F8FCFF 0%, #F3FAFF 100%) !important;
}
/* Visitor Visa section: clean white */
.saa-page .visa-service#visitor-visa, .saa-page .visa-service#visitor-visa:nth-child(even), .saa-page .visa-service#visitor-visa:nth-child(odd) {
  background:#FFFFFF !important;
}
/* Spouse Visa section: very light blue */
.saa-page .visa-service#spouse-visa, .saa-page .visa-service#spouse-visa:nth-child(even), .saa-page .visa-service#spouse-visa:nth-child(odd) {
  background:
    radial-gradient(760px 360px at 88% 8%, rgba(1,149,216,.06), transparent 62%),
    linear-gradient(180deg, #FBFDFF 0%, #F6FAFD 100%) !important;
}
/* Add-on section: clean white */
.saa-page .addons-section {
  background:#FFFFFF !important;
}
/* Process section: soft ice-blue instead of gray */
.saa-page .process-section {
  background:
    radial-gradient(760px 360px at 14% 10%, rgba(1,149,216,.07), transparent 64%),
    linear-gradient(180deg, #F8FCFF 0%, #F3F9FE 100%) !important;
}
/* Final CTA wrapper: soft ice-blue flow */
.saa-page .final-cta {
  background:
    radial-gradient(760px 360px at 88% 0%, rgba(1,149,216,.08), transparent 62%),
    linear-gradient(180deg, #F8FCFF 0%, #F3F9FE 100%) !important;
}
/* Keep cards crisp on soft backgrounds */
.saa-page .service-item, .saa-page .country-chip, .saa-page .addon-card, .saa-page .visa-action-card {
  background-color:#FFFFFF;
}
/* Better first-section spacing now that pills are removed */
.saa-page #student-visa {
  padding-top:90px;
}
@media (max-width:900px){.saa-page #student-visa {
    padding-top:64px;
  }}
/* ===== PREMIUM SERVICES ICON / LABEL UPDATE ===== */
/* Hero subheadline should be one natural paragraph, not two separate lines */
.saa-page .contact-hero-sub {
  max-width:820px !important;
}
/* Premium labels without emoji */
.saa-page .visa-label.premium-label {
  position:relative;
  padding-left:34px !important;
  background:linear-gradient(135deg, rgba(230,246,253,.96), rgba(255,255,255,.92)) !important;
  border:1px solid rgba(1,149,216,.16);
  box-shadow:0 10px 24px rgba(1,149,216,.07);
  letter-spacing:.075em;
}
.saa-page .visa-label.premium-label::before {
  content:"";
  position:absolute;
  left:12px;
  top:50%;
  transform:translateY(-50%);
  width:12px;
  height:12px;
  border-radius:50%;
  background:#0195D8;
  box-shadow:
    0 0 0 5px rgba(1,149,216,.10),
    0 8px 18px rgba(1,149,216,.20);
}
.saa-page .visa-label.premium-label::after {
  content:"";
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  width:4px;
  height:4px;
  border-radius:50%;
  background:#ffffff;
}
/* If an image fails, show a premium abstract glow instead of cheap emoji */
.saa-page .visa-photo {
  background:
    radial-gradient(220px 180px at 30% 24%, rgba(255,255,255,.34), transparent 62%),
    radial-gradient(260px 220px at 72% 78%, rgba(90,215,255,.22), transparent 64%),
    linear-gradient(135deg, #0195D8 0%, #0a78b8 52%, #0b364a 100%) !important;
}
/* Service card icons already use SVG. Make them feel more premium */
.saa-page .service-item .si-icon {
  background:linear-gradient(135deg, rgba(230,246,253,.98), rgba(255,255,255,.88)) !important;
  border:1px solid rgba(1,149,216,.12);
  box-shadow:0 8px 18px rgba(1,149,216,.08);
}
.saa-page .photo-badge .badge-icon {
  background:linear-gradient(135deg, rgba(230,246,253,.98), rgba(255,255,255,.88)) !important;
  border:1px solid rgba(1,149,216,.14);
  box-shadow:0 8px 18px rgba(1,149,216,.08);
}
/* ===== FINAL SERVICES HERO TEXT FIX ===== */
.saa-page .contact-hero-sub {
  max-width:860px !important;
  margin:0 auto !important;
  font-size:16px !important;
  line-height:1.58 !important;
  text-align:center !important;
  white-space:normal !important;
}
.saa-page .hero-pills-wrap {
  display:none !important;
}
/* ===================== MATCH THE HOME PAGE LAYOUT =====================
   Every value here is lifted from styles.css so the inner pages sit on the same
   grid and type scale as the home page:
     .container          width:min(1280px, 100% - 48px)     .container
     hero title          clamp(36px, 4.2vw, 56px)           .hero-title
     section heading     clamp(32px, 4vw, 48px) / 800        .destinations-title
     section subtitle    clamp(15px, 1.2vw, 22px) / 1.85     .section-subtitle-2
     section padding     64px 0                              .section
   Mobile steps are inside real media queries, not applied globally.
====================================================================== */
.saa-page .container {
  width: min(var(--container), calc(100% - 48px)) !important;
  max-width: var(--container) !important;
  margin-inline: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.saa-page .section { padding: 64px 0 !important; }
/* One hero scale for every inner page. 62px rather than the home page's 56px because
   these heroes are short 320px bands sitting directly above a 48px section head — at
   56px the two read as the same block twice. */
.saa-page .country-hero h1, .saa-page .contact-hero-title {
  font-size: clamp(42px, 4.35vw, 62px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.02em !important;
}
.saa-page .section-head h2, .saa-page .offices-section-title, .saa-page .map-section-title, .saa-page .form-section-title, .saa-page .reach-out-title {
  font-size: clamp(32px, 4vw, 48px) !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
}
.saa-page .section-head p, .saa-page .offices-section-sub, .saa-page .map-section-sub, .saa-page .reach-out-sub {
  font-size: clamp(15px, 1.2vw, 19px) !important;
  line-height: 1.75 !important;
}
/* one hero subtitle scale for every inner page */
.saa-page .country-hero p.subline, .saa-page .contact-hero-sub {
  font-size: clamp(16px, 1.5vw, 19px) !important;
  line-height: 1.6 !important;
  max-width: 760px !important;
  margin: 0 auto !important;
}
@media (max-width: 900px){.saa-page .container { width: min(var(--container), calc(100% - 36px)) !important; }
.saa-page .section { padding: 48px 0 !important; }
.saa-page .country-hero h1, .saa-page .contact-hero-title { font-size: clamp(32px, 6vw, 44px) !important; }
.saa-page .section-head h2, .saa-page .offices-section-title, .saa-page .map-section-title, .saa-page .form-section-title, .saa-page .reach-out-title { font-size: clamp(28px, 5vw, 36px) !important; }
.saa-page .section-head p, .saa-page .offices-section-sub, .saa-page .map-section-sub, .saa-page .reach-out-sub { font-size: 15px !important; }
.saa-page .country-hero p.subline, .saa-page .contact-hero-sub { font-size: 15.5px !important; }}
@media (max-width: 560px){.saa-page .container { width: min(var(--container), calc(100% - 28px)) !important; }
.saa-page .section { padding: 40px 0 !important; }}
/* ===================== VISA SECTIONS — BOTTOM-ALIGN THE TWO COLUMNS =====================
   The grid was align-items:start, so each column ended wherever its own content ran out.
   The right column's height changes per section (Student has 8 service items, the other
   two have 6; Spouse has 3 country chips against 5), so the CTA card on the left lined
   up with the list on the right in one section and floated above or below it in the
   others. Making both columns full-height and pushing the CTA to the bottom of the left
   column lands them on the same line in every section, whatever the content length.
======================================================================================= */
.saa-page .visa-grid { align-items: stretch !important; }
.saa-page .visa-grid > .visa-media, .saa-page .visa-grid > .visa-content {
  display: flex;
  flex-direction: column;
  height: 100%;
}
/* the card's own 18px top margin is overridden by the margin-top:auto below, so the
   spacing has to come from the column itself or the box lands flat on the photo */
.saa-page .visa-grid > .visa-media { gap: 18px; }
/* a flex column stretches its children to full width by default, which pulled the
   pill labels into full-width bars. These two shrink back to their own text. */
.saa-page .visa-content > .visa-label, .saa-page .visa-media > .visa-label { align-self: flex-start; }
/* the photo takes the slack so the CTA sits on the floor of the column */
.saa-page .visa-media > .visa-photo { flex: 1 1 auto; min-height: 0; }
.saa-page .visa-media > .visa-action-card { margin-top: 0; }
/* whatever block ends the right column gets pushed to the floor — it is
   .services-included in two sections and .rejection-tips in the third */
.saa-page .visa-content > *:last-child { margin-top: auto; margin-bottom: 0 !important; }
@media (max-width: 900px){.saa-page .visa-grid > .visa-media, .saa-page .visa-grid > .visa-content { height: auto; }
.saa-page .visa-media > .visa-photo { flex: 0 0 auto; }
.saa-page .visa-media > .visa-action-card { margin-top: 18px; }
.saa-page .visa-content > *:last-child { margin-top: 18px; }}
/* Shared site chrome is outside main.saa-page. */
