/* Visual layer for Radio In-Store landings. No changes to markup or tracking. */
/* Keep the translucent AI lettering visible beside the opaque console. */
body.radio-acquisition-page .ai-spot-grid::before {
  left: 0; right: auto; bottom: -4vw; color: rgba(255,255,255,.055);
}

/* Light editorial card: keep a continuous surface beneath the fleet's shadows. */
body.radio-acquisition-page .radio-technical-support {
  position: relative; isolation: isolate; overflow: hidden;
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  align-items: center; gap: 24px; padding: 34px 36px;
  color: #102b43;
  background: radial-gradient(ellipse at 82% 20%, #fff 0%, transparent 53%), linear-gradient(115deg, #f8fbfd 5%, #edf5fa 55%, #dcebf5 100%);
  border: 1px solid rgba(222,239,249,.85); border-radius: 22px;
  box-shadow: 0 18px 40px rgba(0,19,45,.15), inset 0 1px 0 #fff;
}
body.radio-acquisition-page .radio-technical-support::before {
  content: ""; position: absolute; top: 0; left: 36px; width: 70px; height: 3px;
  background: #a7c834; border-radius: 0 0 3px 3px; pointer-events: none;
}
body.radio-acquisition-page .radio-technical-support .eyebrow { margin-bottom: 14px; color: #075b96 !important; }
body.radio-acquisition-page .radio-technical-support h3 {
  max-width: 27ch; margin-bottom: 14px; color: #102b43;
  font-size: clamp(23px, 2.1vw, 28px) !important; line-height: 1.25 !important;
}
body.radio-acquisition-page .radio-technical-support-copy > p:not(.eyebrow) {
  max-width: 53ch; margin-bottom: 22px; color: #36556d; font-size: 15px !important; line-height: 1.65 !important;
}
body.radio-acquisition-page .radio-technical-support a {
  display: inline-flex; align-items: center; justify-content: center; gap: 16px;
  min-height: 46px; padding: 10px 18px; border: 1px solid #143c5d; border-radius: 10px;
  color: #fff; background: #143c5d; font-size: 14px; font-weight: 600;
  text-decoration: none; box-shadow: 0 4px 10px rgba(16,43,67,.12);
}
body.radio-acquisition-page .radio-technical-support a .material-symbols-outlined { color: #d2e87a; font-size: 21px; }
body.radio-acquisition-page .radio-technical-support a:hover { color: #fff; background: #0b2d49; }
body.radio-acquisition-page .radio-technical-support a:focus-visible { outline: 2px solid #075b96; outline-offset: 5px; border-radius: 3px; }
body.radio-acquisition-page .radio-technical-support img { display: block; width: 100%; height: auto; }
@media (max-width: 680px) {
  body.radio-acquisition-page .radio-technical-support { grid-template-columns: minmax(0, 1fr); gap: 26px; padding: 28px 22px 22px; border-radius: 18px; }
  body.radio-acquisition-page .radio-technical-support::before { left: 22px; }
  body.radio-acquisition-page .radio-technical-support img { max-width: 480px; justify-self: center; }
}

body[data-landing-variant]:not(.digital-signage-page) .site-header {
  background: rgba(6, 24, 45, .91);
  border-bottom-color: rgba(205, 233, 248, .2);
  backdrop-filter: blur(20px) saturate(135%);
  -webkit-backdrop-filter: blur(20px) saturate(135%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .09), 0 6px 24px rgba(0, 15, 35, .08);
}
body[data-landing-variant]:not(.digital-signage-page) .header-contact-link {
  background: linear-gradient(130deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .045));
  border-color: rgba(208, 232, 247, .3);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .13);
}
body[data-landing-variant]:not(.digital-signage-page) .header-contact-link:hover {
  background: rgba(220, 242, 255, .16);
  border-color: rgba(208, 232, 247, .55);
}
body[data-landing-variant]:not(.digital-signage-page) .form-card {
  background: linear-gradient(140deg, rgba(250, 254, 255, .94), rgba(230, 243, 252, .86));
  border-color: rgba(231, 248, 255, .76);
  backdrop-filter: blur(26px) saturate(130%);
  -webkit-backdrop-filter: blur(26px) saturate(130%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .95), inset 0 -1px 0 rgba(255, 255, 255, .25), 0 22px 54px rgba(0, 15, 35, .2);
}
body[data-landing-variant]:not(.digital-signage-page) .form-card::before {
  height: 2px;
  background: linear-gradient(90deg, rgba(255, 255, 255, .15), #9edcf4, rgba(255, 255, 255, .25));
}
body[data-landing-variant]:not(.digital-signage-page) .form-card:focus-within {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .95), 0 24px 60px rgba(0, 15, 35, .22), 0 0 0 2px rgba(119, 213, 250, .4);
}
body[data-landing-variant]:not(.digital-signage-page) .form-card .field input,
body[data-landing-variant]:not(.digital-signage-page) .form-card .field select,
body[data-landing-variant]:not(.digital-signage-page) .form-card .field textarea {
  background: rgba(255, 255, 255, .78);
  border-color: rgba(157, 188, 210, .55);
  box-shadow: inset 0 1px 2px rgba(17, 55, 85, .025), 0 1px 0 rgba(255, 255, 255, .7);
}
body[data-landing-variant]:not(.digital-signage-page) .form-card .field input:focus,
body[data-landing-variant]:not(.digital-signage-page) .form-card .field select:focus,
body[data-landing-variant]:not(.digital-signage-page) .form-card .field textarea:focus {
  background: rgba(255, 255, 255, .97);
}
body[data-landing-variant]:not(.digital-signage-page) .hero-accessibility {
  padding: 18px 22px;
  border: 1px solid rgba(205, 233, 248, .25);
  border-radius: 16px;
  background: linear-gradient(125deg, rgba(215, 241, 255, .12), rgba(185, 222, 246, .04));
  backdrop-filter: blur(16px) saturate(125%);
  -webkit-backdrop-filter: blur(16px) saturate(125%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 8px 26px rgba(0, 15, 35, .08);
}
body[data-landing-variant]:not(.digital-signage-page) .hero-accessibility::before { display: none; }
body[data-landing-variant]:not(.digital-signage-page) .ai-service-modes > div,
body[data-landing-variant]:not(.digital-signage-page) .final-benefit {
  border: 1px solid rgba(205, 233, 248, .23);
  background: linear-gradient(130deg, rgba(220, 242, 255, .12), rgba(180, 220, 246, .045));
  backdrop-filter: blur(16px) saturate(125%);
  -webkit-backdrop-filter: blur(16px) saturate(125%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
}
body[data-landing-variant]:not(.digital-signage-page) .network-monitor--radio {
  border-color: rgba(183, 226, 246, .35);
  background: linear-gradient(140deg, rgba(9, 79, 118, .9), rgba(5, 33, 62, .92));
  backdrop-filter: blur(20px) saturate(130%);
  -webkit-backdrop-filter: blur(20px) saturate(130%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 18px 45px rgba(0, 22, 45, .16);
}
@media (max-width: 540px) {
  body[data-landing-variant]:not(.digital-signage-page) .hero-accessibility { padding: 16px 18px; border-radius: 12px; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  body[data-landing-variant]:not(.digital-signage-page) .form-card { background: #f2f8fc; }
  body[data-landing-variant]:not(.digital-signage-page) .hero-accessibility,
  body[data-landing-variant]:not(.digital-signage-page) .ai-service-modes > div,
  body[data-landing-variant]:not(.digital-signage-page) .final-benefit { background: rgba(20, 53, 82, .95); }
}

/* Radio navigation: sections, service switch and contact actions. */
html:has(.radio-header), body:has(.radio-header) { overflow-x: clip; }
body[data-landing-variant] .radio-header { position: sticky; top: 0; z-index: 40; }
.radio-header .header-inner { position: relative; flex-wrap: nowrap; gap: 14px; }
.radio-nav { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.radio-nav > a { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 9px 10px; color: #dce9f3; border: 1px solid transparent; border-radius: 9px; font-size: .74rem; font-weight: 700; line-height: 1.3; text-decoration: none; white-space: nowrap; transition: color .2s, background .2s; }
.radio-nav > a:hover { color: #fff; background: rgba(185,225,247,.1); }
.radio-nav > .radio-nav-digital { color: #a1e0f8; border-color: rgba(119,213,250,.3); background: rgba(119,213,250,.075); }
.radio-nav-digital svg { flex: 0 0 18px; }
.radio-nav > a:focus-visible, .radio-menu-toggle:focus-visible, .radio-nav-contact > a:focus-visible { outline: 2px solid #77d5fa; outline-offset: 3px; }
.radio-nav-actions, .radio-menu-toggle { display: none; }
#come-funziona, #reti-franchising, body:has(.radio-header) #spot-ai, body:has(.radio-header) #settori { scroll-margin-top: 100px; }
@media (max-width: 1280px) {
  .radio-header .header-contact { margin-left: auto; }
  .radio-header.has-menu .radio-menu-toggle { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 10px; min-height: 44px; padding: 10px 13px; color: #f2f8fc; border: 1px solid rgba(203,230,246,.32); border-radius: 11px; background: linear-gradient(130deg,rgba(255,255,255,.12),rgba(255,255,255,.045)); box-shadow: inset 0 1px 0 rgba(255,255,255,.13); font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; }
  .radio-menu-icon { position: relative; display: block; width: 19px; height: 16px; }
  .radio-menu-icon i { position: absolute; left: 0; width: 19px; height: 2px; border-radius: 2px; background: currentColor; transition: transform .2s, opacity .2s; }
  .radio-menu-icon i:nth-child(1) { top: 0; }
  .radio-menu-icon i:nth-child(2) { top: 7px; }
  .radio-menu-icon i:nth-child(3) { top: 14px; }
  .radio-header.is-menu-open .radio-menu-icon i:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .radio-header.is-menu-open .radio-menu-icon i:nth-child(2) { opacity: 0; }
  .radio-header.is-menu-open .radio-menu-icon i:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .radio-header.has-menu .radio-nav { position: absolute; top: calc(100% + 8px); left: 0; right: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; gap: 6px; max-height: calc(100dvh - 105px); overflow-y: auto; overscroll-behavior: contain; margin: 0; padding: 18px; border: 1px solid rgba(205,233,248,.25); border-radius: 18px; background: rgba(7,29,51,.97); backdrop-filter: blur(24px) saturate(130%); -webkit-backdrop-filter: blur(24px) saturate(130%); box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 22px 50px rgba(0,13,29,.28); }
  .radio-header.has-menu:not(.is-menu-open) .radio-nav { display: none; }
  .radio-header.has-menu .radio-nav > a { padding: 13px 14px; color: #e0edf6; border-color: rgba(213,236,250,.08); background: rgba(255,255,255,.035); font-size: .9rem; white-space: normal; }
  .radio-header.has-menu .radio-nav > .radio-nav-digital { grid-column: 1/-1; color: #a1e0f8; border-color: rgba(119,213,250,.3); background: rgba(119,213,250,.09); }
  .radio-nav-digital > span { margin-left: auto; }
  .radio-header.has-menu .radio-nav-actions { grid-column: 1/-1; display: grid; gap: 10px; margin-top: 8px; padding-top: 16px; border-top: 1px solid rgba(213,236,250,.14); }
  .radio-nav-actions > .button { min-height: 48px; font-size: .85rem; }
  .radio-nav-contact { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; }
  .radio-nav-contact > a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; color: #dcecf6; font-size: .8rem; font-weight: 650; text-decoration: none; }
}
@media (max-width: 680px) {
  .radio-header .header-inner { min-height: 68px; padding-block: 10px; gap: 14px; }
  .radio-header .brand-logo { width: 142px; }
  .radio-header.has-menu .header-contact { display: none; }
  .radio-header.has-menu .radio-menu-toggle { margin-left: auto; }
  .radio-header.has-menu .radio-nav { grid-template-columns: minmax(0,1fr); padding: 12px; gap: 5px; border-radius: 14px; }
  .radio-header.has-menu .radio-nav > a { padding: 12px 14px; min-height: 44px; }
  .radio-header.has-menu .radio-nav-actions { gap: 6px; margin-top: 7px; padding-top: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .radio-menu-icon i, .radio-nav > a { transition: none; }
}

/* Relieve the customer of selecting and maintaining a music playlist. */
#musica-playlist, #radio-playlist-title { scroll-margin-top: 100px; }
body:has(.radio-header) #contenuto > .radio-playlist { order: 3; }
body:has(.radio-header) #contenuto > .service-bridge { order: 11; }
.radio-playlist { padding: 60px 0; border-bottom: 1px solid #d9e6ee; background: radial-gradient(ellipse at 95% 10%,rgba(119,213,250,.15),transparent 55%),#f4f8fc; }
.radio-playlist-grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); gap: clamp(28px,5vw,64px); align-items: center; }
.radio-playlist-copy .eyebrow { margin-bottom: 14px; color: #156185; font-size: .72rem; }
.radio-playlist-copy h2 { margin-bottom: 18px; color: #143653; font-size: 2.35rem; line-height: 1.12; text-wrap: balance; }
.radio-playlist-copy > p:not(.eyebrow) { margin: 0 0 18px; color: #486170; font-size: 1rem; line-height: 1.65; }
.radio-playlist-contact { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; color: #156185; font-size: .85rem; font-weight: 750; text-underline-offset: 4px; }
.radio-playlist-points { display: grid; gap: 12px; }
.radio-playlist-points article { display: grid; grid-template-columns: 40px minmax(0,1fr); gap: 15px; padding: 20px; border: 1px solid #d4e4ee; border-radius: 14px; background: linear-gradient(130deg,rgba(255,255,255,.86),rgba(255,255,255,.45)); box-shadow: inset 0 1px 0 #fff; }
.radio-playlist-points article > .radio-playlist-icon { display: grid; place-items: center; width: 40px; height: 40px; color: #156185; border: 1px solid #cce2ee; border-radius: 10px; background: #e9f4fa; font-size: 22px; }
.radio-playlist-points h3 { margin: 0 0 6px; font-size: 1rem; line-height: 1.3; }
.radio-playlist-points p { margin: 0; color: #486170; font-size: .9rem; line-height: 1.6; }
@media (max-width: 900px) {
  .radio-playlist-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .radio-playlist-copy h2 { font-size: 2rem; }
  .radio-playlist-points { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .radio-playlist { padding-block: 40px; }
  .radio-playlist-copy h2 { font-size: 1.9rem; }
  .radio-playlist-points { grid-template-columns: minmax(0,1fr); }
  .radio-playlist-points article { padding: 16px; gap: 12px; }
}

/* Compact customer needs on the main landing; sector pages retain their layout. */
body[data-landing-variant="main"] .radio-playlist-grid { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 32px; }
body[data-landing-variant="main"] .radio-playlist-copy h2 { font-size: clamp(1.65rem, 2.4vw, 2.15rem); line-height: 1.2; }
body[data-landing-variant="main"] .radio-playlist-points { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body[data-landing-variant="main"] .radio-playlist-points article { padding: 18px; grid-template-columns: minmax(0, 1fr); gap: 12px; background: #fff; box-shadow: none; }
@media (max-width: 1000px) {
  body[data-landing-variant="main"] .radio-playlist-grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
}
@media (max-width: 540px) {
  body[data-landing-variant="main"] .radio-playlist-points { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  body[data-landing-variant="main"] .radio-playlist-points article { grid-template-columns: 32px minmax(0, 1fr); padding: 13px; gap: 12px; border-radius: 12px; }
  body[data-landing-variant="main"] .radio-playlist-points article > .radio-playlist-icon { width: 32px; height: 32px; font-size: 20px; }
  body[data-landing-variant="main"] .radio-playlist-points h3 { font-size: .95rem; }
  body[data-landing-variant="main"] .radio-playlist-points p { font-size: .875rem; line-height: 1.45; }
}

/* Main Radio landing: HERO only. Commercial copy with a lighter information box. */
body[data-landing-variant="main"] .hero .hero-grid {
  gap: clamp(32px, 4vw, 56px);
  padding-block: 48px;
  align-items: center;
}
body[data-landing-variant="main"] .hero .hero-copy .hero-marketing-title { margin-bottom: 22px; }
body.k-type[data-landing-variant="main"] .hero .hero-lead {
  max-width: 59ch;
  margin-bottom: 0;
  font-size: 17px !important;
  line-height: 1.7 !important;
  text-wrap: initial;
}
body[data-landing-variant="main"] .hero .hero-accessibility {
  margin: 26px 0 24px;
  padding: 18px 20px;
  border: 1px solid rgba(205, 233, 248, .24);
  border-radius: 12px;
  background: rgba(160, 215, 245, .07);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
body.k-type[data-landing-variant="main"] .hero .hero-accessibility strong {
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: -.02em;
  text-wrap: initial;
}
body.k-type[data-landing-variant="main"] .hero .hero-accessibility p {
  max-width: none;
  margin: 9px 0 0;
  font-size: 15px !important;
  line-height: 1.65 !important;
}
body[data-landing-variant="main"] .hero .hero-conversion { padding-top: 22px; border-color: rgba(205, 225, 241, .16); }
body.k-type[data-landing-variant="main"] .hero #form-contatto > .radio-form-title {
  max-width: 27ch;
  margin-bottom: 12px;
  font-size: 27px !important;
  line-height: 1.25 !important;
  text-wrap: initial;
}
body.k-type[data-landing-variant="main"] .hero #form-contatto > p:not(.form-kicker) {
  margin-bottom: 24px;
  font-size: 15px !important;
  line-height: 1.65 !important;
}
@media (max-width: 1020px) {
  body[data-landing-variant="main"] .hero .hero-grid { gap: 30px; padding-block: 36px; }
}
@media (max-width: 540px) {
  body[data-landing-variant="main"] .hero .hero-grid { gap: 28px; padding-block: 28px 36px; }
  body[data-landing-variant="main"] .hero .hero-copy .hero-marketing-title { margin-bottom: 18px; }
  body.k-type[data-landing-variant="main"] .hero .hero-lead { font-size: 16px !important; line-height: 1.65 !important; }
  body[data-landing-variant="main"] .hero .hero-accessibility { margin: 22px 0; padding: 16px; }
  body.k-type[data-landing-variant="main"] .hero .hero-accessibility strong { font-size: 19px !important; }
  body[data-landing-variant="main"] .hero .hero-conversion { padding-top: 20px; }
  body.k-type[data-landing-variant="main"] .hero #form-contatto > .radio-form-title { font-size: 25px !important; }
}

/* Mobile photos: frame the people instead of stretching a background behind the form. */
@media (max-width: 680px) {
  body:has(.radio-header) { --radio-hero-focus: 85% 42%; --radio-editorial-focus: 60% 45%; }
  body[data-landing-variant="supermercati"] { --radio-hero-focus: 88% 42%; --radio-editorial-focus: 58% 45%; }
  body[data-landing-variant="negozi"] { --radio-hero-focus: 85% 42%; --radio-editorial-focus: 42% 35%; }
  body[data-landing-variant="food"] { --radio-hero-focus: 82% 48%; --radio-editorial-focus: 65% 45%; }
  body[data-landing-variant="palestre"] { --radio-hero-focus: 83% 38%; --radio-editorial-focus: 30% 45%; }
  body[data-landing-variant="farmacie"] { --radio-hero-focus: 85% 42%; --radio-editorial-focus: 65% 42%; }
  body[data-landing-variant="parrucchieri"] { --radio-hero-focus: 86% 40%; --radio-editorial-focus: 62% 45%; }
  body:has(.radio-header) .hero-photo { position: relative; inset: auto; width: 100%; height: clamp(280px, 90vw, 420px); opacity: 1; }
  body:has(.radio-header) .hero-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: var(--radio-hero-focus); }
  body:has(.radio-header) .hero-photo::after { background: linear-gradient(180deg, transparent 75%, rgba(4,26,56,.65)); }
  body:has(.radio-header) .editorial-photo-placeholder { min-height: 0; height: auto; aspect-ratio: 4 / 3; padding: 0; }
  body:has(.radio-header) .editorial-photo-placeholder img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: cover; object-position: var(--radio-editorial-focus); }
}

/* Preserve non-competing fixed CTAs on all Radio layouts. */
/* Mirror static hero photos on desktop to move subjects away from the form.
   The main slideshow keeps its own framing below. */
@media (min-width: 901px) {
  body[data-landing-variant]:not([data-landing-variant="main"]):not(.digital-signage-page) .hero-photo img { transform: scaleX(-1); }
  body[data-landing-variant="main"] .hero-photo img { transform: scaleX(-1); }
  body[data-landing-variant="main"] .hero-photo::after {
    background: linear-gradient(90deg, rgba(7,68,120,.78) 0%, rgba(7,68,120,.74) 38%, rgba(7,68,120,.62) 67%, rgba(3,27,57,.5) 100%), linear-gradient(180deg, rgba(2,20,43,.1), rgba(2,20,43,.46));
  }
}
body.radio-acquisition-page .contact-mobile-sticky { position: fixed; z-index: 35; }
body.radio-acquisition-page :is(.contact-desktop-sticky, .contact-mobile-sticky).is-hidden {
  opacity: 0 !important; visibility: hidden !important; pointer-events: none !important;
}

/* Main Radio hero slideshow: opacity-only transitions, no zoom or libraries. */
body[data-landing-variant="main"] .hero-photo[data-hero-slideshow] { isolation: isolate; }
body[data-landing-variant="main"] .hero-photo[data-hero-slideshow]::after { z-index: 3; pointer-events: none; }
body[data-landing-variant="main"] .hero-photo[data-hero-slideshow] img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;
  object-position: var(--slide-focus, 50% 40%); transform: none;
  opacity: 0; z-index: 0; transition: opacity 800ms ease;
}
body[data-landing-variant="main"] .hero-photo[data-hero-slideshow] img[hidden] { display: none; }
body[data-landing-variant="main"] .hero-photo[data-hero-slideshow] img.is-active { opacity: 1; z-index: 1; }
body[data-landing-variant="main"] .hero-photo[data-hero-slideshow] img.is-entering { opacity: 1; z-index: 2; }
/* End the desktop photo at the form's left edge, following the hero grid. */
@media (min-width: 901px) {
  body[data-landing-variant="main"] .hero { background: #074478; }
  body[data-landing-variant="main"] .hero-photo[data-hero-slideshow] {
    --photo-container: min(1200px, calc(100% - 40px));
    --photo-gap: clamp(32px, 4vw, 56px);
    right: auto;
    width: calc((100% - var(--photo-container)) / 2 + (var(--photo-container) - var(--photo-gap)) * .56 + var(--photo-gap));
    opacity: 1;
    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 76%, transparent 100%);
    mask-image: linear-gradient(90deg, #000 0%, #000 76%, transparent 100%);
  }
  body[data-landing-variant="main"] .hero-photo[data-hero-slideshow]::after {
    background: linear-gradient(90deg, rgba(7,68,120,.62), rgba(7,68,120,.7) 65%, rgba(7,68,120,.55)), linear-gradient(180deg, transparent 55%, rgba(2,20,43,.3));
  }
}
@media (min-width: 901px) and (max-width: 1020px) {
  body[data-landing-variant="main"] .hero-photo[data-hero-slideshow] { width: calc(100% - 430px); }
}
.hero-slideshow-controls {
  position: absolute; z-index: 4; bottom: 12px; left: max(20px, calc((100% - 1200px) / 2));
  display: flex; align-items: center; gap: 2px; padding: 2px;
  color: #fff; background: rgba(3, 22, 40, .85); border: 1px solid rgba(255,255,255,.45); border-radius: 10px;
}
.hero-slideshow-controls[hidden], .hero-slideshow-controls button[hidden] { display: none; }
.hero-slideshow-controls button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 7px; color: #fff; background: transparent; cursor: pointer; font-size: 20px; }
.hero-slideshow-controls button:hover { background: rgba(255,255,255,.15); }
.hero-slideshow-controls button:focus-visible { outline: 2px solid #fff; outline-offset: -3px; }
.hero-slideshow-controls .hero-slide-counter { min-width: 44px; padding: 0 4px; text-align: center; font-size: 12px; }
@media (max-width: 680px) {
  body[data-landing-variant="main"] .hero { padding-top: 0; }
  .hero-slideshow-controls { top: calc(clamp(280px, 90vw, 420px) - 58px); bottom: auto; right: 12px; left: auto; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-landing-variant="main"] .hero-photo[data-hero-slideshow] img { transition: none; }
}
