/* GLAM V133 - Pagina /ospiti/: hero stile home + foto più centrate e pagina più elegante */

body.gt-ospiti-v133{
  background:
    radial-gradient(circle at 10% 12%, rgba(200,155,75,.10), transparent 34%),
    radial-gradient(circle at 90% 22%, rgba(128,151,38,.08), transparent 30%),
    #F8F5EF!important;
}

body.gt-ospiti-v133 .v57-main{
  overflow:hidden!important;
}

/* HERO /OSPITI: stessa impostazione della home, larga, centrata, arrotondata, testo sulla foto */
body.gt-ospiti-v133 .v57-page-hero:first-of-type{
  width:min(1460px, calc(100% - 64px))!important;
  margin:34px auto 58px!important;
  min-height:clamp(500px, 43vw, 690px)!important;
  padding:clamp(44px, 6vw, 96px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border-radius:34px!important;
  background:#10251f!important;
  box-shadow:0 34px 95px rgba(14,42,36,.18), 0 2px 0 rgba(255,255,255,.75) inset!important;
  border:1px solid rgba(255,255,255,.56)!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-4!important;
  background-image:url('/assets/img/photos/glam-zone-ospiti-gallipoli-v190619.webp')!important;
  background-size:cover!important;
  background-position:center 54%!important;
  background-repeat:no-repeat!important;
  transform:scale(1.018)!important;
  filter:saturate(1.08) contrast(1.04) brightness(.95)!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-3!important;
  background:
    radial-gradient(circle at 21% 22%, rgba(247,199,105,.34) 0%, rgba(247,199,105,.12) 17%, transparent 42%),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.18) 0%, transparent 28%),
    linear-gradient(90deg, rgba(5,18,18,.68) 0%, rgba(5,18,18,.48) 36%, rgba(5,18,18,.16) 69%, rgba(5,18,18,.10) 100%),
    linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.10) 62%, rgba(0,0,0,.35) 100%)!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type .v57-page-media{
  display:none!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type .v57-page-copy{
  width:min(680px, 100%)!important;
  max-width:680px!important;
  padding:clamp(24px, 3vw, 42px)!important;
  border-radius:28px!important;
  background:linear-gradient(135deg, rgba(9,27,25,.34), rgba(9,27,25,.12))!important;
  border:1px solid rgba(255,255,255,.25)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(3px)!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type .v57-eyebrow{
  color:#F2C46F!important;
  letter-spacing:.34em!important;
  font-weight:900!important;
  text-shadow:0 8px 24px rgba(0,0,0,.35)!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type h1{
  font-family:'Cormorant Garamond', Georgia, serif!important;
  font-size:clamp(3.15rem, 6.1vw, 6.6rem)!important;
  line-height:.9!important;
  letter-spacing:-.045em!important;
  color:#fff!important;
  max-width:760px!important;
  margin:0 0 22px!important;
  text-shadow:0 18px 55px rgba(0,0,0,.45)!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type p:not(.v57-eyebrow){
  color:rgba(255,255,255,.96)!important;
  font-size:clamp(1rem, 1.2vw, 1.18rem)!important;
  line-height:1.7!important;
  max-width:610px!important;
  text-shadow:0 8px 22px rgba(0,0,0,.32)!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type .v57-actions{
  margin-top:26px!important;
  gap:14px!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type .btn.primary{
  background:linear-gradient(135deg,#D49A2F,#F3C66E)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.45)!important;
  box-shadow:0 14px 32px rgba(164,111,34,.32), inset 0 1px 0 rgba(255,255,255,.50)!important;
}

body.gt-ospiti-v133 .v57-page-hero:first-of-type .btn.secondary{
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.34)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(4px)!important;
}

/* Sezioni più ordinate e leggere */
body.gt-ospiti-v133 .v57-section{
  width:min(1220px, calc(100% - 52px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

body.gt-ospiti-v133 .v57-head.center{
  max-width:780px!important;
  margin:0 auto 28px!important;
}

body.gt-ospiti-v133 .v57-head.center h2,
body.gt-ospiti-v133 .v60-essential-copy h2,
body.gt-ospiti-v133 .v57-final h2{
  font-family:'Cormorant Garamond', Georgia, serif!important;
  letter-spacing:-.035em!important;
}

/* Foto: meno enormi, meglio centrate, card più pulite */
body.gt-ospiti-v133 .v57-collection{
  display:grid!important;
  grid-template-columns:1.12fr .94fr .94fr!important;
  gap:20px!important;
  align-items:stretch!important;
  max-width:1160px!important;
  margin:0 auto!important;
}

body.gt-ospiti-v133 .v57-photo-card{
  min-height:255px!important;
  height:clamp(250px, 24vw, 330px)!important;
  border-radius:26px!important;
  overflow:hidden!important;
  box-shadow:0 18px 48px rgba(14,42,36,.13)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  background:#fff!important;
}

body.gt-ospiti-v133 .v57-photo-card.large{
  min-height:300px!important;
  height:clamp(300px, 30vw, 390px)!important;
}

body.gt-ospiti-v133 .v57-photo-card img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:scale(1.001)!important;
  filter:saturate(1.06) contrast(1.03)!important;
}

body.gt-ospiti-v133 .v57-photo-card.large img{
  object-position:center 47%!important;
}

body.gt-ospiti-v133 .v57-photo-card[href*="centro-storico"] img{
  object-position:center 48%!important;
}

body.gt-ospiti-v133 .v57-photo-card[href*="baia-verde"] img{
  object-position:center 55%!important;
}

body.gt-ospiti-v133 .v57-photo-card > div{
  inset:auto 16px 16px 16px!important;
  border-radius:20px!important;
  padding:16px 17px!important;
  background:linear-gradient(135deg,rgba(13,38,34,.78),rgba(13,38,34,.46))!important;
  border:1px solid rgba(255,255,255,.20)!important;
  backdrop-filter:blur(4px)!important;
}

body.gt-ospiti-v133 .v57-label,
body.gt-ospiti-v133 .v60-label{
  color:#C89B4D!important;
  letter-spacing:.18em!important;
}

body.gt-ospiti-v133 .v57-grid-3{
  gap:18px!important;
}

body.gt-ospiti-v133 .v57-card,
body.gt-ospiti-v133 .v60-doc-card{
  border-radius:24px!important;
  background:rgba(255,255,255,.86)!important;
  border:1px solid rgba(22,56,47,.10)!important;
  box-shadow:0 14px 38px rgba(14,42,36,.07)!important;
}

body.gt-ospiti-v133 .v60-essential.v60-ospiti-essential{
  width:min(1220px, calc(100% - 52px))!important;
  margin:56px auto!important;
  border-radius:34px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 82% 18%, rgba(200,155,75,.18), transparent 30%),
    linear-gradient(135deg,#16382F 0%,#0E2A24 100%)!important;
  color:#fff!important;
  box-shadow:0 24px 74px rgba(14,42,36,.18)!important;
}

body.gt-ospiti-v133 .v60-essential-shell{
  padding:clamp(28px, 4vw, 58px)!important;
}

body.gt-ospiti-v133 .v60-essential-copy p{
  color:rgba(255,255,255,.82)!important;
}

body.gt-ospiti-v133 .v60-doc-card{
  background:rgba(255,255,255,.94)!important;
  color:#17372F!important;
}

body.gt-ospiti-v133 .v57-final{
  border-radius:30px!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,255,255,.80)),
    radial-gradient(circle at 90% 10%,rgba(200,155,75,.18),transparent 35%)!important;
  border:1px solid rgba(22,56,47,.10)!important;
  box-shadow:0 18px 48px rgba(14,42,36,.08)!important;
}

@media(max-width:900px){
  body.gt-ospiti-v133 .v57-page-hero:first-of-type{
    width:calc(100% - 28px)!important;
    min-height:560px!important;
    margin:20px auto 42px!important;
    padding:32px 22px!important;
    border-radius:28px!important;
    align-items:flex-end!important;
  }
  body.gt-ospiti-v133 .v57-page-hero:first-of-type::before{
    background-position:center center!important;
  }
  body.gt-ospiti-v133 .v57-page-hero:first-of-type::after{
    background:
      radial-gradient(circle at 18% 18%, rgba(247,199,105,.28) 0%, transparent 38%),
      linear-gradient(180deg, rgba(5,18,18,.08) 0%, rgba(5,18,18,.34) 48%, rgba(5,18,18,.78) 100%)!important;
  }
  body.gt-ospiti-v133 .v57-page-hero:first-of-type .v57-page-copy{
    padding:22px!important;
    border-radius:24px!important;
  }
  body.gt-ospiti-v133 .v57-page-hero:first-of-type h1{
    font-size:clamp(3rem, 13vw, 4.7rem)!important;
  }
  body.gt-ospiti-v133 .v57-page-hero:first-of-type .v57-actions{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  body.gt-ospiti-v133 .v57-page-hero:first-of-type .btn{
    width:100%!important;
    justify-content:center!important;
  }
  body.gt-ospiti-v133 .v57-section,
  body.gt-ospiti-v133 .v60-essential.v60-ospiti-essential{
    width:calc(100% - 28px)!important;
  }
  body.gt-ospiti-v133 .v57-collection{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  body.gt-ospiti-v133 .v57-photo-card,
  body.gt-ospiti-v133 .v57-photo-card.large{
    height:250px!important;
    min-height:250px!important;
  }
  body.gt-ospiti-v133 .v57-photo-card > div{
    inset:auto 12px 12px 12px!important;
    padding:14px!important;
  }
  body.gt-ospiti-v133 .v60-essential-shell{
    padding:26px 18px!important;
  }
}

@media(max-width:520px){
  body.gt-ospiti-v133 .v57-page-hero:first-of-type{
    min-height:540px!important;
    padding:22px 16px!important;
    border-radius:24px!important;
  }
  body.gt-ospiti-v133 .v57-page-hero:first-of-type .v57-page-copy{
    background:linear-gradient(135deg, rgba(9,27,25,.46), rgba(9,27,25,.22))!important;
  }
  body.gt-ospiti-v133 .v57-page-hero:first-of-type p:not(.v57-eyebrow){
    font-size:.98rem!important;
  }
  body.gt-ospiti-v133 .v57-photo-card,
  body.gt-ospiti-v133 .v57-photo-card.large{
    height:226px!important;
    min-height:226px!important;
    border-radius:22px!important;
  }
}
