/* v203 keeps the v194 studio system and adds only selected later improvements. */

.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 100 !important;
  overflow: visible !important;
  transition: box-shadow 180ms ease, border-color 180ms ease !important;
}

.site-header.is-scrolled-v203 {
  box-shadow: 0 14px 34px rgba(2, 5, 8, .34) !important;
}

.site-light-toggle-v203 {
  position: absolute;
  z-index: 104;
  right: max(4vw, calc((100vw - 1160px) / 2));
  bottom: -13px;
  display: inline-grid;
  grid-template-columns: 12px auto auto;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid rgba(247, 220, 116, .4);
  border-radius: 3px;
  background: linear-gradient(135deg, #171125, #173849);
  box-shadow: 0 8px 18px rgba(2, 5, 8, .32);
  color: #fffaf2;
  -webkit-text-fill-color: #fffaf2;
  font: 800 .72rem/1 "Open Sans", "Segoe UI", Arial, sans-serif;
  letter-spacing: 0;
  cursor: pointer;
  transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.site-light-toggle-v203:is(:hover, :focus-visible) {
  border-color: #f3cb75;
  background: linear-gradient(135deg, #213756, #1d7b80);
  box-shadow: 0 10px 24px rgba(2, 5, 8, .4);
  transform: translateY(2px);
}

.site-light-toggle-v203:focus-visible {
  outline: 3px solid rgba(247, 220, 116, .82);
  outline-offset: 3px;
}

.site-light-toggle-v203.is-active {
  border-color: #8c713e;
  background: linear-gradient(180deg, #fffdf6, #f3cb75);
  color: #17131d;
  -webkit-text-fill-color: #17131d;
}

.site-light-toggle-icon {
  width: 10px;
  height: 10px;
  border: 2px solid currentColor;
  border-radius: 50%;
  box-shadow: inset 4px -2px 0 transparent;
}

.site-light-toggle-v203.is-active .site-light-toggle-icon {
  background: #f3cb75;
  box-shadow: 0 0 0 3px rgba(243, 203, 117, .24);
}

.site-light-toggle-state {
  opacity: .72;
  font-size: .62rem;
  text-transform: uppercase;
}

.header-discount-banner {
  padding-right: 104px !important;
}

.showcase-service-card {
  padding: 14px !important;
}

.home-trust-shell {
  padding: clamp(20px, 3vw, 34px) !important;
}

.standalone-service-card.growth-card .revamp-inline-offer-list {
  grid-template-columns: 1fr !important;
}

/* Bind text to the pale surfaces it occupies, independent of the active theme. */
small.promo-note {
  background: #fffaf2 !important;
  color: #4f405f !important;
  -webkit-text-fill-color: #4f405f !important;
  text-shadow: none !important;
}

#summary-total {
  color: #24133c !important;
  -webkit-text-fill-color: #24133c !important;
  text-shadow: none !important;
}

#galaxy-email-status {
  color: #4f405f !important;
  -webkit-text-fill-color: #4f405f !important;
  text-shadow: none !important;
}

.summary-note {
  padding-right: 16px !important;
}

.trust-surface.policy-shell > .eyebrow {
  color: #5a2f83 !important;
  -webkit-text-fill-color: #5a2f83 !important;
  text-shadow: none !important;
}

/* Keep the starter offer compact, readable, and visibly actionable. */
.free-sample-popup {
  display: block !important;
  width: min(378px, calc(100vw - 36px)) !important;
  right: 24px !important;
  bottom: 24px !important;
}

.free-sample-popup-close {
  position: absolute !important;
  z-index: 3 !important;
  top: 10px !important;
  right: 10px !important;
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
  border-radius: 4px !important;
}

.free-sample-popup-card {
  display: grid !important;
  gap: 8px !important;
  min-height: 0 !important;
  padding: 22px 44px 22px 82px !important;
  border-left-width: 3px !important;
  border-radius: 7px !important;
  box-shadow: 0 22px 50px rgba(2, 5, 8, .3) !important;
}

.free-sample-popup-card::before {
  left: 20px !important;
  top: 25px !important;
  width: 42px !important;
  height: 42px !important;
}

.free-sample-popup-card > span {
  margin: 0 !important;
  font-size: .7rem !important;
  line-height: 1.25 !important;
}

.free-sample-popup-card > strong {
  margin: 0 !important;
  font-size: 1.08rem !important;
  line-height: 1.22 !important;
}

.free-sample-popup-card > small {
  margin: 0 !important;
  font-size: .86rem !important;
  line-height: 1.45 !important;
}

.free-sample-popup-card > b:not(.contrast-placeholder) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-height: 38px !important;
  margin: 6px 0 0 !important;
  padding: 9px 14px !important;
  border-radius: 4px !important;
  font-size: .8rem !important;
  line-height: 1.15 !important;
}

/* Subject-accurate service imagery in a stable, inspectable landscape frame. */
body.v203-service-art .service-detail-grid {
  grid-template-columns: minmax(0, 1.03fr) minmax(360px, .97fr) !important;
  align-items: center !important;
  gap: clamp(28px, 4vw, 56px) !important;
}

body.v203-service-art .premium-service-visual {
  width: 100% !important;
  max-width: 590px !important;
  margin-inline: auto !important;
  padding: 14px !important;
  overflow: hidden !important;
}

body.v203-service-art .premium-service-visual img {
  width: 100% !important;
  aspect-ratio: 1586 / 992 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 0 16px !important;
  border-radius: 7px !important;
  object-fit: cover !important;
  object-position: center !important;
}

body.v203-service-art .premium-service-visual > :is(b, p) {
  display: block;
  margin-inline: 4px !important;
}

body.v203-service-art .premium-service-visual > b {
  margin-bottom: 6px !important;
}

body.v203-service-art .premium-service-visual > p {
  margin-bottom: 4px !important;
}

#services-v177-page .service-route-card img,
#services-v177-page .services-shortcut-card img {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  height: auto !important;
  object-fit: cover !important;
  object-position: center !important;
}

@media (max-width: 1320px) {
  .site-light-toggle-v203 {
    right: 78px;
  }
}

@media (max-width: 900px) {
  body.v203-service-art .service-detail-grid {
    grid-template-columns: 1fr !important;
  }

  body.v203-service-art .premium-service-visual {
    max-width: 680px !important;
  }
}

@media (max-width: 760px) {
  .site-light-toggle-v203 {
    right: 70px;
    bottom: -11px;
    min-height: 25px;
    padding: 3px 8px;
  }

  .header-discount-banner {
    padding-right: 0 !important;
  }

  .free-sample-popup {
    position: relative !important;
    inset: auto !important;
    width: min(calc(100% - 24px), 520px) !important;
    margin: 18px auto 8px !important;
  }

  .free-sample-popup-card {
    padding: 20px 42px 20px 72px !important;
  }

  .free-sample-popup-card::before {
    left: 17px !important;
    top: 24px !important;
    width: 38px !important;
    height: 38px !important;
  }

  body.v203-service-art .premium-service-visual {
    padding: 10px !important;
  }

  html[data-theme="light"] body.standalone-service-page .service-detail-grid > div:first-child {
    padding: 22px !important;
    border: 1px solid rgba(36, 19, 60, .18) !important;
    border-radius: 7px !important;
    background: rgba(252, 250, 255, .96) !important;
    box-shadow: 0 16px 34px rgba(23, 14, 38, .16) !important;
  }

  html[data-theme="light"] body.standalone-service-page .service-detail-grid > div:first-child :is(h1, h2, h3) {
    color: #24133c !important;
    -webkit-text-fill-color: #24133c !important;
    text-shadow: none !important;
  }

  html[data-theme="light"] body.standalone-service-page .service-detail-grid > div:first-child :is(p, .lead) {
    color: #50455c !important;
    -webkit-text-fill-color: #50455c !important;
    text-shadow: none !important;
  }

  html[data-theme="light"] body.standalone-service-page .service-detail-grid > div:first-child .eyebrow {
    color: #176a70 !important;
    -webkit-text-fill-color: #176a70 !important;
  }
}

@media (max-width: 430px) {
  .site-light-toggle-v203 {
    right: 66px;
  }

  .site-light-toggle-state {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header,
  .site-light-toggle-v203 {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}
