/**
 * Sprint 18.4.468 — Suppliers country hero: full-width content, responsive, no checks
 */

main.scm {
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Framed hero — full bleed inside page gutters */
main.scm > .scm-hero {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  width: auto !important;
  max-width: none !important;
  margin: 12px 16px 0 !important;
  padding: 20px 20px 22px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: #fff !important;
  background:
    radial-gradient(ellipse at 90% 12%, rgba(255, 194, 38, 0.16), transparent 34%),
    radial-gradient(ellipse at 8% 88%, rgba(80, 160, 255, 0.1), transparent 42%),
    linear-gradient(135deg, #04122a 0%, #0a2c5c 48%, #0d4a8c 100%) !important;
  box-shadow: 0 14px 36px rgba(4, 16, 40, 0.22) !important;
  box-sizing: border-box !important;
}

main.scm > .scm-hero:after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  right: 0 !important;
  top: 0 !important;
  width: auto !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px) !important;
  background-size: 32px 32px !important;
  opacity: 0.9 !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
}

/* Full width shell inside hero */
main.scm > .scm-hero > .scm-shell {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

main.scm > .scm-hero .tf-hero-crumb {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 0 12px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: #9eb2c8 !important;
}
main.scm > .scm-hero .tf-hero-crumb a {
  color: #ffc23e !important;
  text-decoration: none !important;
}
main.scm > .scm-hero .tf-hero-crumb a:hover { text-decoration: underline !important; }
main.scm > .scm-hero .tf-hero-crumb strong {
  color: #fff !important;
  font-weight: 750 !important;
}

main.scm > .scm-hero .scm-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 24px !important;
  align-items: center !important;
  width: 100% !important;
}

main.scm > .scm-hero .scm-kicker {
  color: #ffc23e !important;
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
}

main.scm > .scm-hero h1,
main.scm > .scm-hero .scm-hero-grid h1 {
  max-width: none !important;
  width: 100% !important;
  margin: 8px 0 10px !important;
  font-size: clamp(26px, 3.2vw, 40px) !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
  color: #fff !important;
}

main.scm > .scm-hero p {
  max-width: 640px !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: #c5d3e6 !important;
}

main.scm > .scm-hero .scm-flag {
  width: 120px !important;
  height: 80px !important;
  border-radius: 14px !important;
  border: 2px solid rgba(255, 194, 38, 0.85) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2) !important;
  justify-self: end !important;
}

/* Stats full width row */
main.scm > .scm-hero .scm-stats {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  width: 100% !important;
  margin-top: 18px !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  overflow: hidden !important;
}
main.scm > .scm-hero .scm-stats div {
  min-height: 72px !important;
  padding: 14px 16px !important;
  border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
}
main.scm > .scm-hero .scm-stats div:last-child {
  border-right: 0 !important;
}
main.scm > .scm-hero .scm-stats strong {
  font-size: 22px !important;
  color: #ffc23e !important;
}
main.scm > .scm-hero .scm-stats span {
  font-size: 11.5px !important;
  color: #b8c7db !important;
}

/* Trust strip — full width, no checkbox glyphs */
main.scm > .scm-shell:has(.scm-trust-strip),
main.scm > .scm-shell {
  width: auto !important;
  max-width: none !important;
  margin-left: 16px !important;
  margin-right: 16px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

main.scm .scm-trust-strip {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px 22px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 12px 0 0 !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
  background: #fff !important;
  border: 1px solid #e8eef5 !important;
  box-shadow: 0 6px 18px rgba(7, 27, 70, 0.05) !important;
  color: #3d4f66 !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  box-sizing: border-box !important;
}

main.scm .scm-trust-strip span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #3d4f66 !important;
  font-size: 13px !important;
}

/* Gold dot instead of ✓ */
main.scm .scm-trust-strip span::before {
  content: "" !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #f0b429, #e0a40f) !important;
  box-shadow: 0 0 0 3px rgba(240, 180, 41, 0.14) !important;
  flex: 0 0 auto !important;
}

/* Hide unicode check if still present in text node — reduce visual noise */
main.scm .scm-trust-strip span {
  text-indent: 0 !important;
}

/* Page sections under hero also respect full width gutters */
main.scm > .scm-section > .scm-shell {
  width: auto !important;
  max-width: none !important;
  margin-left: 16px !important;
  margin-right: 16px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 900px) {
  main.scm > .scm-hero .scm-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  main.scm > .scm-hero .scm-stats div:nth-child(2) {
    border-right: 0 !important;
  }
  main.scm > .scm-hero .scm-stats div:nth-child(1),
  main.scm > .scm-hero .scm-stats div:nth-child(2) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  }
}

@media (max-width: 720px) {
  main.scm > .scm-hero {
    margin: 10px 12px 0 !important;
    padding: 16px 14px 16px !important;
    border-radius: 14px !important;
  }
  main.scm > .scm-shell,
  main.scm > .scm-section > .scm-shell {
    margin-left: 12px !important;
    margin-right: 12px !important;
  }
  main.scm > .scm-hero .scm-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  main.scm > .scm-hero .scm-flag {
    justify-self: start !important;
    width: 100px !important;
    height: 66px !important;
  }
  main.scm > .scm-hero h1 {
    font-size: 24px !important;
  }
  main.scm .scm-trust-strip {
    border-radius: 14px !important;
    justify-content: flex-start !important;
    gap: 10px 14px !important;
  }
}

@media (max-width: 420px) {
  main.scm > .scm-hero .scm-stats {
    grid-template-columns: 1fr 1fr !important;
  }
}
