/* Barracuda Ischia 60.5 SAFE — rifinitura contenitori foto + smartphone.
   Non modifica dati CMS, focus, zoom, offset, SEO o contenuti. */

/* DESKTOP — il contenitore usa l'altezza già salvata nel CMS.
   Le foto mantengono object-position/zoom/offset già gestiti dal motore esistente. */
@media (min-width:851px){
  body:not(.editor-mode) .story-row.photo-layout-default:not(.image-size-full):not(.text-position-overlay-left):not(.text-position-overlay-center):not(.text-position-overlay-right) .section-media{
    height:var(--media-height,560px)!important;
    min-height:var(--media-height,560px)!important;
    align-self:center!important;
    margin-block:clamp(18px,2.4vw,38px)!important;
  }

  body:not(.editor-mode) .story-row.photo-layout-default:not(.image-size-full) .story-copy{
    min-height:var(--media-height,560px)!important;
  }

  body:not(.editor-mode) .story-row .section-media{
    border-radius:clamp(12px,var(--section-media-radius,20px),28px)!important;
  }

  body:not(.editor-mode) .story-row.media-shadow-soft .section-media{
    box-shadow:0 16px 36px rgba(7,31,43,.15),0 4px 12px rgba(7,31,43,.07)!important;
  }
}

/* SMARTPHONE — il box diventa più ordinato, ma l'immagine interna continua a usare
   focus, zoom e offset mobile già salvati nel CMS. */
@media (max-width:850px){
  body:not(.editor-mode) .story-row{
    overflow:visible!important;
  }

  body:not(.editor-mode) .story-row > .section-media{
    border-radius:clamp(12px,var(--section-media-radius,20px),22px)!important;
    box-shadow:0 12px 28px rgba(7,31,43,.13),0 3px 9px rgba(7,31,43,.06)!important;
  }

  body:not(.editor-mode) .story-row .story-copy h2{
    font-size:clamp(32px,9vw,44px)!important;
    line-height:1.06!important;
    margin-bottom:.35em!important;
  }

  body:not(.editor-mode) .story-row .story-copy .story-text,
  body:not(.editor-mode) .story-row .story-copy .story-long-text,
  body:not(.editor-mode) .story-row .story-copy p:not(.kicker){
    font-size:clamp(15.5px,4.15vw,17px)!important;
    line-height:1.72!important;
  }

  body:not(.editor-mode) .story-row .kicker{
    font-size:10px!important;
    letter-spacing:.22em!important;
  }

  body:not(.editor-mode) .luxury-button,
  body:not(.editor-mode) .text-link,
  body:not(.editor-mode) .contact-actions a,
  body:not(.editor-mode) .location-actions a{
    min-height:44px;
  }

  body:not(.editor-mode) .brand-intro-copy h2{
    line-height:1.06!important;
  }

  body:not(.editor-mode) .gallery-luxury{
    gap:6px!important;
    padding:6px!important;
  }

  body:not(.editor-mode) .contact-luxury{
    padding-left:22px!important;
    padding-right:22px!important;
  }

  body:not(.editor-mode) footer{
    padding-left:22px!important;
    padding-right:22px!important;
    line-height:1.55;
  }
}

@media (max-width:480px){
  body:not(.editor-mode) .story-row > .section-media{
    border-radius:min(var(--section-media-radius,18px),18px)!important;
  }
  body:not(.editor-mode) .story-row .story-copy h2{
    font-size:clamp(30px,9vw,39px)!important;
  }
  body:not(.editor-mode) .side-nav{
    padding-left:24px!important;
    padding-right:24px!important;
  }
}

/* Accessibilità/performance: rispetta la preferenza dell'utente senza cambiare
   le animazioni configurate nel CMS per gli altri visitatori. */
@media (prefers-reduced-motion:reduce){
  body:not(.editor-mode) .story-row *,
  body:not(.editor-mode) .gallery-luxury *{
    scroll-behavior:auto!important;
  }
}

/* v60.15 — fascia chiara compatta; nessun intervento sulle linee dorate. */
body:not(.editor-mode) .section-title-band-v6015{
  font-size:14px !important;
  letter-spacing:.22em !important;
  line-height:1 !important;
}

/* v60.16 — identico box tipografico per le etichette delle fasce */
body:not(.editor-mode) .section-title-band-v6015 .section-title-band-label{
  display:flex !important;
  height:100% !important;
  align-items:center !important;
  line-height:1 !important;
  margin:0 !important;
  padding:0 !important;
  font:inherit !important;
  letter-spacing:inherit !important;
  white-space:nowrap;
}
