/* V115 - rifinitura reale: hero home pulita, niente sfondo verde sotto, effetti visibili, mobile più navigabile */
:root{
  --gt115-ivory:#f8f5ef;
  --gt115-white:#ffffff;
  --gt115-green:#0f302a;
  --gt115-green2:#0a221e;
  --gt115-gold:#d29a35;
  --gt115-gold2:#f1bd63;
  --gt115-orange:#f0a33f;
  --gt115-text:#263530;
}
html,body{overflow-x:hidden!important;background:var(--gt115-ivory)!important;}

/* HOME HERO: la foto deve coprire tutta la hero, senza fascia verde/ombra laterale */
.gt-home-v91 .gt-v91-hero{
  width:100%!important;
  max-width:100%!important;
  height:clamp(540px,64vh,720px)!important;
  min-height:clamp(540px,64vh,720px)!important;
  margin:0!important;
  padding:92px clamp(24px,6.4vw,116px) 116px!important;
  overflow:hidden!important;
  background:var(--gt115-ivory)!important;
  border-radius:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  position:relative!important;
  isolation:isolate!important;
  box-shadow:none!important;
}
.gt-home-v91 .gt-v91-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:-4!important;
  display:block!important;
  background-image:url('/assets/img/photos/mura-gallipoli-tramonto.webp')!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  filter:saturate(1.16) contrast(1.07) brightness(.88)!important;
  transform:scale(1.035)!important;
  transform-origin:center center!important;
  animation:gt115HeroPan 24s ease-in-out infinite alternate!important;
  will-change:transform,filter!important;
}
.gt-home-v91 .gt-v91-hero:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-3!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 17% 52%, rgba(0,0,0,.64) 0%, rgba(0,0,0,.42) 24%, rgba(0,0,0,.16) 48%, transparent 68%),
    linear-gradient(90deg, rgba(5,18,20,.70) 0%, rgba(5,18,20,.38) 35%, rgba(5,18,20,.06) 70%, rgba(5,18,20,.02) 100%),
    linear-gradient(180deg, rgba(0,0,0,.16) 0%, rgba(0,0,0,.04) 73%, rgba(248,245,239,.28) 100%)!important;
}

/* dissolvenza inferiore pulita: niente verde sotto la foto */
.gt-home-v91 .gt-v91-hero .gt-hero-clean-fade{display:none!important;}
.gt-home-v91 .gt-v91-hero-clean-bottom,
.gt-home-v91 .gt-v91-hero-bottom,
.gt-home-v91 .gt-hero-bottom-fade{display:none!important;}
.gt-home-v91 .gt-v91-search{
  width:min(1320px,calc(100% - 52px))!important;
  max-width:min(1320px,calc(100% - 52px))!important;
  margin:-58px auto 42px!important;
  padding:0!important;
  position:relative!important;
  z-index:40!important;
  background:transparent!important;
}
.gt-home-v91 .gt-v91-search:before{display:none!important;content:none!important;}
.gt-home-v91 .gt-v91-search .v57-search-panel{
  background:#fff!important;
  border-radius:28px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 30px 80px rgba(16,28,25,.16),0 8px 25px rgba(209,154,53,.08)!important;
}

/* testo più ordinato e mai sovrapposto */
.gt-home-v91 .gt-v91-hero-copy{
  width:min(570px,92vw)!important;
  max-width:570px!important;
  z-index:10!important;
  position:relative!important;
  margin:0!important;
  padding:0!important;
  animation:gt115CopyIn .9s cubic-bezier(.2,.85,.2,1) both!important;
}
.gt-home-v91 .gt-v91-hero-copy:before{
  content:""!important;
  position:absolute!important;
  left:-52px!important;
  top:-26px!important;
  width:360px!important;
  height:360px!important;
  border-radius:50%!important;
  background:radial-gradient(circle, rgba(241,189,99,.32), rgba(209,154,53,.13) 45%, transparent 72%)!important;
  filter:blur(34px)!important;
  opacity:.92!important;
  z-index:-1!important;
  animation:gt115GlowPulse 4.5s ease-in-out infinite!important;
  pointer-events:none!important;
}
.gt-home-v91 .gt-v91-hero-copy:after{
  content:""!important;
  position:absolute!important;
  left:-50px!important;
  top:48px!important;
  width:290px!important;
  height:330px!important;
  background:
    radial-gradient(circle at 9% 15%, rgba(255,244,214,.95) 0 2px, transparent 4px),
    radial-gradient(circle at 18% 70%, rgba(241,189,99,.9) 0 2px, transparent 5px),
    radial-gradient(circle at 57% 38%, rgba(255,255,255,.84) 0 1.5px, transparent 4px),
    radial-gradient(circle at 80% 74%, rgba(241,189,99,.78) 0 2px, transparent 5px),
    radial-gradient(circle at 38% 88%, rgba(255,244,214,.65) 0 1.5px, transparent 4px)!important;
  opacity:.9!important;
  filter:drop-shadow(0 0 10px rgba(209,154,53,.45))!important;
  animation:gt115Sparkle 2.8s ease-in-out infinite alternate!important;
  z-index:-1!important;
  pointer-events:none!important;
}
.gt-home-v91 .gt-v91-kicker{
  display:block!important;
  font-family:'Great Vibes',cursive!important;
  font-size:clamp(2rem,3.1vw,3.1rem)!important;
  line-height:.95!important;
  margin:0 0 8px clamp(16px,4.8vw,70px)!important;
  color:var(--gt115-orange)!important;
  text-shadow:0 3px 12px rgba(0,0,0,.82),0 0 26px rgba(240,163,63,.42)!important;
  text-transform:none!important;
  letter-spacing:.01em!important;
  font-weight:400!important;
}
.gt-home-v91 .gt-v91-hero h1.gt-script-title{
  display:block!important;
  font-family:'Great Vibes',cursive!important;
  font-size:clamp(4.9rem,8.3vw,8rem)!important;
  line-height:.78!important;
  margin:0 0 22px!important;
  color:#fff!important;
  font-weight:400!important;
  letter-spacing:-.018em!important;
  white-space:nowrap!important;
  text-shadow:0 7px 20px rgba(0,0,0,.86),0 28px 60px rgba(0,0,0,.62),0 0 24px rgba(255,255,255,.20)!important;
  -webkit-text-stroke:.25px rgba(255,255,255,.28)!important;
  transform:translateZ(0)!important;
  animation:gt115TitleFloat 5.5s ease-in-out infinite!important;
}
.gt-home-v91 .gt-heart{display:inline!important;margin-left:.035em!important;}
.gt-home-v91 .gt-hero-subtitle,
.gt-home-v91 .gt-v91-hero p.gt-hero-subtitle{
  display:block!important;
  max-width:500px!important;
  margin:0 0 26px!important;
  font-family:'Cormorant Garamond',Georgia,serif!important;
  font-size:clamp(1.22rem,1.55vw,1.7rem)!important;
  line-height:1.16!important;
  color:#fffdf6!important;
  text-shadow:0 4px 12px rgba(0,0,0,.88),0 14px 34px rgba(0,0,0,.62)!important;
}
.gt-home-v91 .gt-sub-gold{color:var(--gt115-gold2)!important;font-style:italic!important;}

/* effetto pulsante più evidente ma elegante */
.gt-home-v91 .gt-v91-actions .gt-v91-btn.gold{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  display:inline-flex!important;
  min-height:52px!important;
  padding:15px 32px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#efb653 0%,#cb8f2e 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.58)!important;
  box-shadow:0 18px 44px rgba(58,32,8,.44),0 0 44px rgba(209,154,53,.34), inset 0 1px 0 rgba(255,255,255,.42)!important;
  text-decoration:none!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.gt-home-v91 .gt-v91-actions .gt-v91-btn.gold:before{
  content:""!important;
  position:absolute!important;
  top:-80%!important;bottom:-80%!important;left:-90%!important;width:65%!important;
  background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.62) 48%,transparent 100%)!important;
  transform:skewX(-22deg)!important;
  animation:gt115ButtonShine 3.8s ease-in-out infinite!important;
  z-index:-1!important;
}
.gt-home-v91 .gt-v91-actions .gt-v91-btn.gold:hover{transform:translateY(-4px)!important;box-shadow:0 28px 68px rgba(58,32,8,.48),0 0 60px rgba(209,154,53,.46)!important;}

/* Effetti premium sulla Home */
.gt-home-v91 .gt-v91-card,
.gt-home-v91 .gt-v91-proof article,
.gt-home-v91 .gt-v91-zone-grid article,
.gt-home-v91 .gt-v91-emotional-card,
.gt-home-v91 .v57-card,
.gt-home-v91 .gt-card{
  transition:transform .35s ease, box-shadow .35s ease, filter .35s ease!important;
}
.gt-home-v91 .gt-v91-card:hover,
.gt-home-v91 .gt-v91-zone-grid article:hover,
.gt-home-v91 .v57-card:hover,
.gt-home-v91 .gt-card:hover{
  transform:translateY(-7px)!important;
  box-shadow:0 24px 65px rgba(16,28,25,.16)!important;
}
.gt-home-v91 .gt-v91-proof{
  background:transparent!important;
}
.gt-home-v91 .gt-v91-proof article{
  background:#fff!important;
  color:var(--gt115-text)!important;
  border:1px solid rgba(209,154,53,.13)!important;
  box-shadow:0 18px 52px rgba(16,28,25,.09)!important;
}
.gt-home-v91 .gt-v91-proof article:hover{transform:translateY(-5px)!important;}

/* Mobile: hero più bassa, testi leggibili, ricerca non tagliata */
@media(max-width:900px){
  .gt-home-v91 .gt-v91-hero{
    height:auto!important;
    min-height:590px!important;
    padding:86px 22px 118px!important;
    align-items:center!important;
  }
  .gt-home-v91 .gt-v91-hero:before{
    background-position:58% center!important;
    transform:scale(1.05)!important;
  }
  .gt-home-v91 .gt-v91-hero-copy{width:min(100%,520px)!important;}
  .gt-home-v91 .gt-v91-hero h1.gt-script-title{
    font-size:clamp(4.3rem,18vw,6.8rem)!important;
    white-space:nowrap!important;
  }
  .gt-home-v91 .gt-v91-kicker{font-size:clamp(1.9rem,8vw,2.8rem)!important;margin-left:34px!important;}
  .gt-home-v91 .gt-hero-subtitle,
  .gt-home-v91 .gt-v91-hero p.gt-hero-subtitle{font-size:1.34rem!important;max-width:92vw!important;}
  .gt-home-v91 .gt-v91-search{width:calc(100% - 28px)!important;max-width:calc(100% - 28px)!important;margin:-54px auto 30px!important;}
  .gt-home-v91 .gt-v91-search .v57-search-panel{border-radius:22px!important;}
}
@media(max-width:560px){
  .gt-home-v91 .gt-v91-hero{min-height:560px!important;padding:78px 18px 110px!important;}
  .gt-home-v91 .gt-v91-hero:before{background-position:61% center!important;}
  .gt-home-v91 .gt-v91-kicker{margin-left:18px!important;font-size:2rem!important;}
  .gt-home-v91 .gt-v91-hero h1.gt-script-title{font-size:4.6rem!important;line-height:.8!important;margin-bottom:18px!important;}
  .gt-home-v91 .gt-heart{font-size:.86em!important;}
  .gt-home-v91 .gt-hero-subtitle,
  .gt-home-v91 .gt-v91-hero p.gt-hero-subtitle{font-size:1.18rem!important;line-height:1.2!important;}
  .gt-home-v91 .gt-v91-actions .gt-v91-btn.gold{width:auto!important;max-width:100%!important;font-size:.76rem!important;padding:14px 22px!important;}
  .gt-home-v91 .gt-v91-search{margin-top:-48px!important;}
}

/* Navigazione mobile più utilizzabile senza cambiare logo/header desktop */
@media(max-width:980px){
  header .menu-toggle,
  header .v61-menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:46px!important;
    height:46px!important;
    border-radius:999px!important;
    border:1px solid rgba(209,154,53,.28)!important;
    background:rgba(255,255,255,.92)!important;
    box-shadow:0 12px 34px rgba(16,28,25,.12)!important;
    color:var(--gt115-green)!important;
    z-index:1002!important;
  }
  header .main-nav,
  header .v57-main-nav,
  header .v61-main-nav{
    position:fixed!important;
    top:72px!important;
    left:14px!important;
    right:14px!important;
    max-height:calc(100vh - 92px)!important;
    overflow:auto!important;
    border-radius:24px!important;
    padding:18px!important;
    background:rgba(255,255,255,.97)!important;
    box-shadow:0 28px 80px rgba(16,28,25,.22)!important;
    border:1px solid rgba(209,154,53,.16)!important;
    z-index:1000!important;
  }
  header .main-nav a,
  header .main-nav button{
    min-height:44px!important;
    border-radius:14px!important;
  }
  header .nav-dropdown,
  header .v57-dropdown{
    position:static!important;
    width:100%!important;
    transform:none!important;
    box-shadow:none!important;
    border:0!important;
    background:rgba(248,245,239,.75)!important;
    margin:8px 0 12px!important;
    border-radius:18px!important;
  }
}

@keyframes gt115HeroPan{
  0%{transform:scale(1.035) translate3d(-1.2%,0,0);filter:saturate(1.12) contrast(1.06) brightness(.87);}
  50%{transform:scale(1.07) translate3d(.25%,-.55%,0);filter:saturate(1.20) contrast(1.08) brightness(.92);}
  100%{transform:scale(1.095) translate3d(1.3%,-.9%,0);filter:saturate(1.14) contrast(1.08) brightness(.89);}
}
@keyframes gt115CopyIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes gt115GlowPulse{0%,100%{opacity:.58;transform:scale(.95)}50%{opacity:1;transform:scale(1.08)}}
@keyframes gt115Sparkle{0%{opacity:.42;transform:translateY(8px) scale(.94)}100%{opacity:.98;transform:translateY(-8px) scale(1.03)}}
@keyframes gt115TitleFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes gt115ButtonShine{0%,34%{left:-90%;opacity:0}45%{opacity:1}67%,100%{left:130%;opacity:0}}

@media(prefers-reduced-motion:reduce){
  .gt-home-v91 .gt-v91-hero:before,
  .gt-home-v91 .gt-v91-hero-copy,
  .gt-home-v91 .gt-v91-hero-copy:before,
  .gt-home-v91 .gt-v91-hero-copy:after,
  .gt-home-v91 .gt-v91-hero h1.gt-script-title,
  .gt-home-v91 .gt-v91-actions .gt-v91-btn.gold:before{animation:none!important;}
}
