/*
 GLAM TOURING V173 — Rifiniture pagine interne
 - Contrasto corretto sui fondi verdi
 - Servizi più riconoscibile e completo
 - Valuta immobile: immagini a riempimento reale
 - Zone: card e testi più professionali
 - Home esclusa: tutte le regole richiedono body.gt-v172-aligned
*/

/* CONTRASTO: le regole tipografiche generali della V172 non devono vincere sui pannelli scuri */
body.gt-v172-aligned :is(
  .v57-final,
  .v67-cta,
  .v15-commercial-band,
  .v57-cta-band,
  .gt-cta-band,
  .gt-v149-band,
  .v28-cta,
  .v30-choice,
  .v30-booking-home,
  .inner-cta,
  .final-impact-cta,
  .no-stress-panel,
  .vpp-hero-panel,
  .v16-evidence-inner,
  .v73-cta,
  .seo-progress-note,
  .gt-zone-cta-band,
  .v56-cta-band
){
  color:#fff!important;
}
body.gt-v172-aligned :is(
  .v57-final,
  .v67-cta,
  .v15-commercial-band,
  .v57-cta-band,
  .gt-cta-band,
  .gt-v149-band,
  .v28-cta,
  .v30-choice,
  .v30-booking-home,
  .inner-cta,
  .final-impact-cta,
  .no-stress-panel,
  .vpp-hero-panel,
  .v16-evidence-inner,
  .v73-cta,
  .seo-progress-note,
  .gt-zone-cta-band,
  .v56-cta-band
) :is(h1,h2,h3,h4,strong){
  color:#fff!important;
  text-shadow:none!important;
}
body.gt-v172-aligned :is(
  .v57-final,
  .v67-cta,
  .v15-commercial-band,
  .v57-cta-band,
  .gt-cta-band,
  .gt-v149-band,
  .v28-cta,
  .v30-choice,
  .v30-booking-home,
  .inner-cta,
  .final-impact-cta,
  .no-stress-panel,
  .vpp-hero-panel,
  .v16-evidence-inner,
  .v73-cta,
  .seo-progress-note,
  .gt-zone-cta-band,
  .v56-cta-band
) :is(p,li){
  color:rgba(255,255,255,.90)!important;
}
body.gt-v172-aligned :is(
  .v57-final,
  .v67-cta,
  .v15-commercial-band,
  .v57-cta-band,
  .gt-cta-band,
  .gt-v149-band,
  .v28-cta,
  .v30-choice,
  .v30-booking-home,
  .inner-cta,
  .final-impact-cta,
  .no-stress-panel,
  .vpp-hero-panel,
  .v16-evidence-inner,
  .v73-cta,
  .seo-progress-note,
  .gt-zone-cta-band,
  .v56-cta-band
) :is(.eyebrow,[class*="eyebrow"],[class*="kicker"],[class*="label"]){
  color:#f2d293!important;
}
body.gt-v172-aligned :is(
  .v57-final,
  .v67-cta,
  .v15-commercial-band,
  .v57-cta-band,
  .gt-cta-band,
  .gt-v149-band,
  .v28-cta,
  .v30-choice,
  .v30-booking-home,
  .inner-cta,
  .final-impact-cta,
  .no-stress-panel,
  .vpp-hero-panel,
  .v16-evidence-inner,
  .v73-cta,
  .seo-progress-note,
  .gt-zone-cta-band,
  .v56-cta-band
) a:not(.btn):not([class*="btn"]){
  color:#fff!important;
}
body.gt-v172-aligned :is(.v67-cta,.v57-final,.gt-v149-band) .btn.secondary,
body.gt-v172-aligned .gt-v149-band .gt-v149-btn.alt{
  color:#fff!important;
  border-color:rgba(255,255,255,.46)!important;
  background:rgba(255,255,255,.09)!important;
}
body.gt-v172-aligned :is(.v67-cta,.v57-final,.gt-v149-band) .btn.secondary:hover,
body.gt-v172-aligned .gt-v149-band .gt-v149-btn.alt:hover{
  background:#fff!important;
  color:#17382f!important;
}
body.gt-v172-aligned .site-footer :is(h2,h3,strong){color:#fff!important}
body.gt-v172-aligned .site-footer :is(p,a,li){color:rgba(255,255,255,.82)!important}
body.gt-v172-aligned .site-footer a:hover{color:#f1cf8d!important}

/* SERVIZI — identità, icone e contenuto concreto */
body.gt-v172-aligned.gt-page-servizi .gt173-service-hub{
  width:min(1220px,calc(100% - 44px));
  margin:clamp(34px,4.5vw,66px) auto 0!important;
  padding:clamp(24px,3.5vw,44px);
  border:1px solid rgba(22,56,47,.11);
  border-radius:36px;
  background:
    radial-gradient(circle at 92% 4%,rgba(197,139,54,.14),transparent 28%),
    linear-gradient(135deg,#fff 0%,#fbf8f1 58%,#f2eadc 100%);
  box-shadow:0 26px 76px rgba(17,48,40,.10);
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-brand{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:24px 38px;
  align-items:center;
  padding-bottom:26px;
  border-bottom:1px solid rgba(22,56,47,.10);
}
body.gt-v172-aligned.gt-page-servizi .gt173-brand-lockup{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:22px;
  align-items:center;
}
body.gt-v172-aligned.gt-page-servizi .gt173-brand-lockup img{
  width:150px!important;
  max-width:150px!important;
  height:auto!important;
  object-fit:contain!important;
  filter:none!important;
}
body.gt-v172-aligned.gt-page-servizi .gt173-brand-lockup span{
  display:block;
  margin-bottom:7px;
  color:#a56f29!important;
  font-size:.72rem!important;
  line-height:1.2!important;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
body.gt-v172-aligned.gt-page-servizi .gt173-brand-lockup strong{
  display:block;
  color:#16382f!important;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.55rem,2.55vw,2.65rem);
  line-height:1.04;
  letter-spacing:-.035em;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-brand>p{
  margin:0!important;
  color:#526a63!important;
  line-height:1.7!important;
}
body.gt-v172-aligned.gt-page-servizi .gt173-trust-badges{
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
body.gt-v172-aligned.gt-page-servizi .gt173-badge{
  min-height:39px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 14px;
  border:1px solid rgba(22,56,47,.12);
  border-radius:999px;
  background:rgba(255,255,255,.82);
  color:#294b42!important;
  font-size:.79rem!important;
  font-weight:850;
  box-shadow:0 8px 22px rgba(17,48,40,.05);
}
body.gt-v172-aligned.gt-page-servizi .gt173-badge svg{
  width:18px;
  height:18px;
  fill:currentColor;
}
body.gt-v172-aligned.gt-page-servizi .gt173-badge-whatsapp{color:#167f4a!important}
body.gt-v172-aligned.gt-page-servizi .gt173-service-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:26px;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-card{
  min-height:220px;
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:16px;
  align-content:start;
  padding:22px;
  border:1px solid rgba(22,56,47,.10);
  border-radius:25px;
  background:rgba(255,255,255,.90);
  box-shadow:0 14px 36px rgba(17,48,40,.06);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(197,139,54,.35);
  box-shadow:0 24px 48px rgba(17,48,40,.10);
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-icon{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:17px;
  background:linear-gradient(135deg,#173b32,#2c5a4e);
  box-shadow:0 11px 24px rgba(22,56,47,.18);
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-icon svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:#fff;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-card small{
  display:block;
  margin-bottom:6px;
  color:#aa742c!important;
  font-size:.68rem!important;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-card h3{
  margin:0 0 9px!important;
  color:#16382f!important;
  font-size:1.35rem!important;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-card p{
  margin:0!important;
  color:#586f68!important;
  font-size:.94rem!important;
  line-height:1.62!important;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-footer{
  margin-top:18px;
  padding:20px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-radius:24px;
  background:linear-gradient(135deg,#173b32,#0e2c25);
  box-shadow:0 20px 48px rgba(17,48,40,.16);
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-footer span{
  display:block;
  margin-bottom:4px;
  color:#f1cd87!important;
  font-size:.7rem!important;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-footer strong{
  color:#fff!important;
  font-size:1rem;
  line-height:1.45;
}
body.gt-v172-aligned.gt-page-servizi .gt173-service-footer a{
  flex:0 0 auto;
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  background:#fff;
  color:#173b32!important;
  text-decoration:none;
  font-weight:900;
}

/* VALUTA IMMOBILE — il contenitore e l'immagine devono avere la stessa altezza */
body.gt-v172-aligned.gt-page-valuta-immobile .gt-valuta-hero{
  align-items:stretch!important;
}
body.gt-v172-aligned.gt-page-valuta-immobile .gt-valuta-hero-photo{
  position:relative!important;
  min-height:500px!important;
  height:auto!important;
  overflow:hidden!important;
  background:#d8d2c5!important;
}
body.gt-v172-aligned.gt-page-valuta-immobile .gt-valuta-hero-photo img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:scale(1.015)!important;
}
body.gt-v172-aligned.gt-page-valuta-immobile .gt-valuta-side{
  overflow:hidden!important;
}
body.gt-v172-aligned.gt-page-valuta-immobile .gt-valuta-side>img{
  width:100%!important;
  height:300px!important;
  min-height:300px!important;
  object-fit:cover!important;
  object-position:center 54%!important;
  display:block!important;
}

/* ZONE — pannelli meno anonimi e copy più editoriale */
body.gt-v172-aligned.gt-page-zone .impact-feature::after,
body.gt-v172-aligned.gt-page-zone .zone-tile::after{
  display:block!important;
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:linear-gradient(180deg,rgba(4,13,11,.03) 10%,rgba(4,13,11,.18) 50%,rgba(4,13,11,.82) 100%)!important;
}
body.gt-v172-aligned.gt-page-zone .impact-feature .feature-panel,
body.gt-v172-aligned.gt-page-zone .zone-tile .tile-panel{
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  padding:clamp(21px,2.4vw,30px)!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(180deg,rgba(8,29,24,0),rgba(8,29,24,.80) 36%,rgba(8,29,24,.94))!important;
  color:#fff!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
body.gt-v172-aligned.gt-page-zone .impact-feature .feature-panel{
  padding-top:70px!important;
}
body.gt-v172-aligned.gt-page-zone .impact-feature .feature-panel span,
body.gt-v172-aligned.gt-page-zone .zone-tile .tile-panel span{
  margin-bottom:10px!important;
  padding:7px 11px!important;
  border:1px solid rgba(255,255,255,.30)!important;
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  backdrop-filter:blur(8px)!important;
}
body.gt-v172-aligned.gt-page-zone .impact-feature .feature-panel strong,
body.gt-v172-aligned.gt-page-zone .zone-tile .tile-panel h2{
  color:#fff!important;
  text-shadow:0 4px 20px rgba(0,0,0,.38)!important;
}
body.gt-v172-aligned.gt-page-zone .zone-tile .tile-panel h2{
  margin:0 0 9px!important;
  font-size:clamp(1.7rem,2.3vw,2.45rem)!important;
  line-height:1!important;
}
body.gt-v172-aligned.gt-page-zone .impact-feature .feature-panel strong{
  max-width:620px!important;
  font-size:clamp(1.55rem,2.7vw,2.55rem)!important;
  line-height:1.04!important;
}
body.gt-v172-aligned.gt-page-zone .zone-tile .tile-panel p{
  max-width:570px!important;
  margin:0!important;
  color:rgba(255,255,255,.90)!important;
  font-size:.96rem!important;
  line-height:1.58!important;
  text-shadow:0 3px 16px rgba(0,0,0,.35)!important;
}
body.gt-v172-aligned.gt-page-zone .zone-tile{
  min-height:480px!important;
  border:1px solid rgba(255,255,255,.34)!important;
  box-shadow:0 22px 58px rgba(17,48,40,.15)!important;
}
body.gt-v172-aligned.gt-page-zone .zone-tile.large{min-height:520px!important}
body.gt-v172-aligned.gt-page-zone .choice-boxes{
  gap:18px!important;
}
body.gt-v172-aligned.gt-page-zone .choice-boxes article{
  position:relative;
  min-height:190px;
  padding:26px 24px 24px 78px!important;
  border:1px solid rgba(22,56,47,.11)!important;
  background:linear-gradient(145deg,#fff,#f8f4eb)!important;
  box-shadow:0 17px 42px rgba(17,48,40,.07)!important;
}
body.gt-v172-aligned.gt-page-zone .choice-boxes article>span{
  position:absolute;
  left:23px;
  top:25px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#173b32;
  color:#fff!important;
  font-size:.75rem!important;
  font-weight:900;
}
body.gt-v172-aligned.gt-page-zone .choice-boxes h3{
  margin:0 0 10px!important;
  color:#16382f!important;
  font-size:1.38rem!important;
}
body.gt-v172-aligned.gt-page-zone .choice-boxes p{
  margin:0!important;
  color:#586f68!important;
  font-size:.96rem!important;
  line-height:1.62!important;
}
body.gt-v172-aligned.gt-page-zone .gt-v163-panel :is(strong,p),
body.gt-v172-aligned.gt-page-zone .gt-v163-photo-card :is(strong,p){
  color:#fff!important;
}

@media(max-width:980px){
  body.gt-v172-aligned.gt-page-servizi .gt173-service-brand{grid-template-columns:1fr}
  body.gt-v172-aligned.gt-page-servizi .gt173-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.gt-v172-aligned.gt-page-valuta-immobile .gt-valuta-hero-photo{min-height:380px!important}
}
@media(max-width:700px){
  body.gt-v172-aligned.gt-page-servizi .gt173-service-hub{width:calc(100% - 24px);padding:22px 17px;border-radius:26px}
  body.gt-v172-aligned.gt-page-servizi .gt173-brand-lockup{grid-template-columns:1fr;gap:14px}
  body.gt-v172-aligned.gt-page-servizi .gt173-brand-lockup img{width:132px!important;max-width:132px!important}
  body.gt-v172-aligned.gt-page-servizi .gt173-service-grid{grid-template-columns:1fr}
  body.gt-v172-aligned.gt-page-servizi .gt173-service-card{min-height:0;padding:19px 17px}
  body.gt-v172-aligned.gt-page-servizi .gt173-service-footer{display:grid;padding:19px}
  body.gt-v172-aligned.gt-page-servizi .gt173-service-footer a{width:100%}
  body.gt-v172-aligned.gt-page-valuta-immobile .gt-valuta-hero-photo{min-height:300px!important;height:300px!important}
  body.gt-v172-aligned.gt-page-valuta-immobile .gt-valuta-side>img{height:245px!important;min-height:245px!important}
  body.gt-v172-aligned.gt-page-zone .zone-tile,
  body.gt-v172-aligned.gt-page-zone .zone-tile.large{min-height:420px!important}
  body.gt-v172-aligned.gt-page-zone .choice-boxes article{min-height:0;padding:68px 20px 22px!important}
  body.gt-v172-aligned.gt-page-zone .choice-boxes article>span{left:20px;top:20px}
}

/* V174 — Fix contrast hero Vivere Gallipoli */
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .vivere-hero-card,
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .vivere-hero-card :is(h1,p,.lead,.vivere-kicker,em){
  color:#ffffff !important;
}
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .vivere-kicker,
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .vivere-kicker:after,
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 h1 em:after{
  color:#ffffff !important;
  background:rgba(255,255,255,.78) !important;
}
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 h1,
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 h1 em,
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .lead,
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .vivere-kicker,
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .vivere-hero-moments span,
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .vivere-scroll-cue{
  text-shadow:0 8px 26px rgba(0,0,0,.48) !important;
}
body.gt-v172-aligned.gt-page-vivere-gallipoli .vivere-hero-v108 .vivere-hero-moments span{
  color:#ffffff !important;
  border-color:rgba(255,255,255,.36) !important;
  background:rgba(255,255,255,.16) !important;
}

/* V175 — Zone: pagina più ricca, professionale e visiva */
body.gt-v172-aligned.gt-page-zone .gt175-zone-signals,
body.gt-v172-aligned.gt-page-zone .gt175-zone-gallery{
  width:min(1220px,calc(100% - 36px));
  margin:0 auto;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-signals{margin-top:12px;margin-bottom:26px}
body.gt-v172-aligned.gt-page-zone .gt175-zone-brand{
  border-radius:34px;
  padding:clamp(24px,3.5vw,42px);
  background:linear-gradient(135deg,#fff 0%,#fbf7ef 58%,#efe3cf 100%);
  border:1px solid rgba(31,23,15,.10);
  box-shadow:0 24px 72px rgba(30,20,10,.08);
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-lockup{
  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  gap:26px;
  align-items:center;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-lockup img{
  width:160px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-lockup span{
  display:block;
  margin-bottom:8px;
  color:#a46f2b;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.74rem;
  font-weight:900;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-lockup strong{
  display:block;
  color:#22170f;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.6rem,2.8vw,2.85rem);
  line-height:1.06;
  letter-spacing:-.04em;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-lockup p{
  margin:12px 0 0;
  color:#5f4d3a;
  line-height:1.72;
  font-size:1.02rem;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-badges{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:22px;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-badge{
  min-height:64px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:14px 16px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(31,23,15,.09);
  color:#28473f;
  font-weight:800;
  line-height:1.4;
  box-shadow:0 10px 28px rgba(30,20,10,.05);
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-gallery{
  margin-top:8px;
  margin-bottom:28px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-shot{
  position:relative;
  overflow:hidden;
  min-height:410px;
  border-radius:30px;
  background:#1b140e;
  box-shadow:0 22px 66px rgba(30,20,10,.16);
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-shot img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.01);
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-shot::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.06) 16%,rgba(0,0,0,.26) 50%,rgba(0,0,0,.78) 100%);
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-shot-copy{
  position:absolute;
  left:18px;right:18px;bottom:18px;
  z-index:2;
  padding:18px 18px 16px;
  border-radius:22px;
  background:rgba(255,255,255,.92);
  box-shadow:0 14px 40px rgba(0,0,0,.20);
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-shot-copy span{
  display:inline-block;
  margin-bottom:8px;
  padding:6px 10px;
  border-radius:999px;
  background:#ead8bf;
  color:#6a4827;
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-weight:900;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-shot-copy strong{
  display:block;
  color:#22170f;
  font-size:1.28rem;
  line-height:1.16;
  letter-spacing:-.02em;
}
body.gt-v172-aligned.gt-page-zone .gt175-zone-shot-copy p{
  margin:8px 0 0;
  color:#5f4d3a;
  line-height:1.6;
}
@media(max-width:980px){
  body.gt-v172-aligned.gt-page-zone .gt175-zone-lockup{grid-template-columns:1fr}
  body.gt-v172-aligned.gt-page-zone .gt175-zone-badges,
  body.gt-v172-aligned.gt-page-zone .gt175-zone-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  body.gt-v172-aligned.gt-page-zone .gt175-zone-signals,
  body.gt-v172-aligned.gt-page-zone .gt175-zone-gallery{width:min(1220px,calc(100% - 22px))}
  body.gt-v172-aligned.gt-page-zone .gt175-zone-brand{border-radius:26px;padding:22px 18px}
  body.gt-v172-aligned.gt-page-zone .gt175-zone-badges,
  body.gt-v172-aligned.gt-page-zone .gt175-zone-gallery{grid-template-columns:1fr}
  body.gt-v172-aligned.gt-page-zone .gt175-zone-shot{min-height:360px;border-radius:24px}
  body.gt-v172-aligned.gt-page-zone .gt175-zone-shot-copy{left:14px;right:14px;bottom:14px}
}

/* V176 — Pagine zone: fotografia prima, testo e “Scegli la zona” sotto */
body.gt-v172-aligned.gt-page-zone .v64-seo-hero.gt-zone-detail-hero-v3,
body.gt-v172-aligned.gt-page-zone .v15-hero,
body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:clamp(22px,3vw,34px)!important;
  min-height:0!important;
}
body.gt-v172-aligned.gt-page-zone .v64-seo-hero.gt-zone-detail-hero-v3 .v64-seo-media,
body.gt-v172-aligned.gt-page-zone .v15-hero .v15-hero-media,
body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero .inner-hero-card{
  order:1!important;
  width:100%!important;
  min-height:clamp(380px,52vw,620px)!important;
  max-height:620px!important;
  margin:0!important;
}
body.gt-v172-aligned.gt-page-zone .v64-seo-hero.gt-zone-detail-hero-v3 .v64-seo-copy,
body.gt-v172-aligned.gt-page-zone .v15-hero .v15-hero-copy,
body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero .inner-hero-copy{
  order:2!important;
  width:min(940px,100%)!important;
  max-width:940px!important;
  margin:0!important;
  padding:0!important;
}
body.gt-v172-aligned.gt-page-zone .v64-seo-hero.gt-zone-detail-hero-v3 .v64-seo-copy h1,
body.gt-v172-aligned.gt-page-zone .v15-hero .v15-hero-copy h1,
body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero .inner-hero-copy h1{
  max-width:920px!important;
}
body.gt-v172-aligned.gt-page-zone .v64-seo-hero.gt-zone-detail-hero-v3 .v64-seo-media img,
body.gt-v172-aligned.gt-page-zone .v15-hero .v15-hero-media img,
body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero .inner-hero-card img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
/* Vista mare: dopo lo spostamento HTML, la fotografia apre la pagina e il blocco “Scegli la zona” segue sotto */
body.gt-v172-aligned.gt-page-zone .zone-photo-feature{
  margin-top:18px!important;
  margin-bottom:24px!important;
}
body.gt-v172-aligned.gt-page-zone .zone-client-hero{
  min-height:0!important;
  margin-top:0!important;
}
@media(max-width:820px){
  body.gt-v172-aligned.gt-page-zone .v64-seo-hero.gt-zone-detail-hero-v3 .v64-seo-media,
  body.gt-v172-aligned.gt-page-zone .v15-hero .v15-hero-media,
  body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero .inner-hero-card{
    min-height:290px!important;
    max-height:390px!important;
  }
  body.gt-v172-aligned.gt-page-zone .v64-seo-hero.gt-zone-detail-hero-v3,
  body.gt-v172-aligned.gt-page-zone .v15-hero,
  body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero{
    padding:16px!important;
  }
}

/* V177 — Zone hero: testo sotto l'immagine, non sovrapposto */
body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  min-height:auto !important;
  background:#ffffff !important;
  border:1px solid rgba(90,60,28,.12) !important;
  overflow:hidden !important;
}
body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature::after{
  display:none !important;
}
body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature img{
  position:relative !important;
  inset:auto !important;
  display:block !important;
  width:100% !important;
  height:430px !important;
  min-height:430px !important;
  object-fit:cover !important;
  transform:none !important;
  filter:saturate(1.14) contrast(1.06) brightness(1.01) !important;
}
body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature:hover img{
  transform:none !important;
}
body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature .feature-panel{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  margin:0 !important;
  border-radius:0 0 30px 30px !important;
  background:#ffffff !important;
  color:#21170f !important;
  box-shadow:none !important;
  border-top:1px solid rgba(90,60,28,.10) !important;
  padding:22px 22px 24px !important;
  backdrop-filter:none !important;
}
body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature .feature-panel span{
  background:#ead8bf !important;
  color:#6a4724 !important;
}
body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature .feature-panel strong{
  color:#21170f !important;
  text-shadow:none !important;
}
@media(max-width:960px){
  body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature img{
    height:360px !important;
    min-height:360px !important;
  }
}
@media(max-width:640px){
  body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature img{
    height:300px !important;
    min-height:300px !important;
  }
  body.gt-v172-aligned.gt-page-zone .gt-zone-impact .impact-feature .feature-panel{
    border-radius:0 0 24px 24px !important;
    padding:18px 16px 20px !important;
  }
}

/* V178 — Tutte le pagine zona: testo sempre contenuto nelle card */
body.gt-v172-aligned.gt-page-zone :is(
  .v64-seo-copy,
  .v15-hero-copy,
  .inner-hero.advanced-hero .inner-hero-copy,
  .zone-client-hero .inner-hero-copy
){
  box-sizing:border-box !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  padding:clamp(26px,4vw,48px) !important;
  overflow:hidden !important;
}

body.gt-v172-aligned.gt-page-zone :is(
  .v64-seo-copy,
  .v15-hero-copy,
  .inner-hero.advanced-hero .inner-hero-copy,
  .zone-client-hero .inner-hero-copy,
  .v64-card,
  .v15-audience-card,
  .v15-info-grid > article,
  .advanced-card,
  .zone-client-grid > article,
  .gt-zone-icons > article,
  .gt-v149-card,
  .gt-v159-card,
  .gt-v160-card
) :is(h1,h2,h3,h4,p,strong,span,a,li){
  max-width:100% !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
  word-break:normal !important;
  hyphens:auto;
}

body.gt-v172-aligned.gt-page-zone :is(
  .v64-seo-copy h1,
  .v15-hero-copy h1,
  .inner-hero.advanced-hero .inner-hero-copy h1,
  .zone-client-hero .inner-hero-copy h1
){
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  font-size:clamp(2.55rem,4.8vw,4.9rem) !important;
  line-height:1.01 !important;
  letter-spacing:-.045em !important;
}

body.gt-v172-aligned.gt-page-zone :is(
  .v64-seo-copy p,
  .v15-hero-copy p,
  .inner-hero.advanced-hero .inner-hero-copy p,
  .zone-client-hero .inner-hero-copy p
){
  width:100% !important;
  max-width:760px !important;
  margin-right:0 !important;
  font-size:clamp(1rem,1.45vw,1.15rem) !important;
  line-height:1.68 !important;
}

body.gt-v172-aligned.gt-page-zone :is(
  .v64-actions,
  .v15-hero-actions,
  .hero-actions,
  .advanced-cta-row
){
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
  gap:12px !important;
  width:100% !important;
  max-width:100% !important;
}

body.gt-v172-aligned.gt-page-zone :is(
  .v64-actions,
  .v15-hero-actions,
  .hero-actions,
  .advanced-cta-row
) a{
  flex:0 1 auto !important;
  max-width:100% !important;
  white-space:normal !important;
  text-align:center !important;
}

/* Card fotografiche delle pagine zona: immagine sopra e testo sempre dentro */
body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero .inner-hero-card,
body.gt-v172-aligned.gt-page-zone .zone-client-hero .inner-hero-card{
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  overflow:hidden !important;
  background:#fff !important;
}
body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero .inner-hero-card img,
body.gt-v172-aligned.gt-page-zone .zone-client-hero .inner-hero-card img{
  position:relative !important;
  inset:auto !important;
  flex:none !important;
  display:block !important;
  width:100% !important;
  height:clamp(300px,45vw,560px) !important;
  min-height:0 !important;
  object-fit:cover !important;
}
body.gt-v172-aligned.gt-page-zone .inner-hero.advanced-hero .inner-hero-card > :not(img),
body.gt-v172-aligned.gt-page-zone .zone-client-hero .inner-hero-card > :not(img){
  position:relative !important;
  inset:auto !important;
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
  padding:18px 22px !important;
  color:#213b33 !important;
  background:#fff !important;
  text-shadow:none !important;
  overflow-wrap:break-word !important;
}

/* Sicurezza generale sulle card delle zone */
body.gt-v172-aligned.gt-page-zone :is(
  .v64-card,
  .v15-audience-card,
  .v15-info-grid > article,
  .advanced-card,
  .zone-client-grid > article,
  .gt-zone-icons > article,
  .gt-v149-card,
  .gt-v159-card,
  .gt-v160-card
){
  box-sizing:border-box !important;
  min-width:0 !important;
  max-width:100% !important;
  height:auto !important;
  overflow:hidden !important;
}

@media(max-width:820px){
  body.gt-v172-aligned.gt-page-zone :is(
    .v64-seo-copy,
    .v15-hero-copy,
    .inner-hero.advanced-hero .inner-hero-copy,
    .zone-client-hero .inner-hero-copy
  ){
    padding:24px 19px !important;
    border-radius:24px !important;
  }
  body.gt-v172-aligned.gt-page-zone :is(
    .v64-seo-copy h1,
    .v15-hero-copy h1,
    .inner-hero.advanced-hero .inner-hero-copy h1,
    .zone-client-hero .inner-hero-copy h1
  ){
    font-size:clamp(2.15rem,10vw,3.25rem) !important;
    line-height:1.02 !important;
    letter-spacing:-.038em !important;
  }
  body.gt-v172-aligned.gt-page-zone :is(
    .v64-actions,
    .v15-hero-actions,
    .hero-actions,
    .advanced-cta-row
  ){
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  body.gt-v172-aligned.gt-page-zone :is(
    .v64-actions,
    .v15-hero-actions,
    .hero-actions,
    .advanced-cta-row
  ) a{
    width:100% !important;
  }
}

@media(max-width:430px){
  body.gt-v172-aligned.gt-page-zone :is(
    .v64-seo-copy h1,
    .v15-hero-copy h1,
    .inner-hero.advanced-hero .inner-hero-copy h1,
    .zone-client-hero .inner-hero-copy h1
  ){
    font-size:clamp(2rem,9.4vw,2.8rem) !important;
  }
}
