.elementor-979 .elementor-element.elementor-element-ea15261{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-979 .elementor-element.elementor-element-51ea5e8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-979 .elementor-element.elementor-element-d130c73{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--border-radius:24px 24px 24px 24px;box-shadow:0px 10px 30px 0px rgba(0,0,0,0.06);--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-979 .elementor-element.elementor-element-d130c73:not(.elementor-motion-effects-element-type-background), .elementor-979 .elementor-element.elementor-element-d130c73 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-979 .elementor-element.elementor-element-758b2fb .elementor-heading-title{color:#1B1016;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-979 .elementor-element.elementor-element-6445a07 .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:16px;}.elementor-979 .elementor-element.elementor-element-6445a07 .elementor-icon-box-title{margin-block-end:2px;color:#8A8A8A;}.elementor-979 .elementor-element.elementor-element-6445a07.elementor-view-stacked .elementor-icon{background-color:#FDE3E3;fill:#E8175D;color:#E8175D;}.elementor-979 .elementor-element.elementor-element-6445a07.elementor-view-framed .elementor-icon, .elementor-979 .elementor-element.elementor-element-6445a07.elementor-view-default .elementor-icon{fill:#FDE3E3;color:#FDE3E3;border-color:#FDE3E3;}.elementor-979 .elementor-element.elementor-element-6445a07.elementor-view-framed .elementor-icon{background-color:#E8175D;}.elementor-979 .elementor-element.elementor-element-6445a07 .elementor-icon-box-title, .elementor-979 .elementor-element.elementor-element-6445a07 .elementor-icon-box-title a{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;}.elementor-979 .elementor-element.elementor-element-6445a07 .elementor-icon-box-description{font-size:18px;color:#1B1B1B;}.elementor-979 .elementor-element.elementor-element-3c5b93b .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:16px;}.elementor-979 .elementor-element.elementor-element-3c5b93b .elementor-icon-box-title{margin-block-end:2px;color:#8A8A8A;}.elementor-979 .elementor-element.elementor-element-3c5b93b.elementor-view-stacked .elementor-icon{background-color:#FDE3E3;fill:#E8175D;color:#E8175D;}.elementor-979 .elementor-element.elementor-element-3c5b93b.elementor-view-framed .elementor-icon, .elementor-979 .elementor-element.elementor-element-3c5b93b.elementor-view-default .elementor-icon{fill:#FDE3E3;color:#FDE3E3;border-color:#FDE3E3;}.elementor-979 .elementor-element.elementor-element-3c5b93b.elementor-view-framed .elementor-icon{background-color:#E8175D;}.elementor-979 .elementor-element.elementor-element-3c5b93b .elementor-icon-box-title, .elementor-979 .elementor-element.elementor-element-3c5b93b .elementor-icon-box-title a{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;}.elementor-979 .elementor-element.elementor-element-3c5b93b .elementor-icon-box-description{font-size:18px;color:#1B1B1B;}.elementor-979 .elementor-element.elementor-element-60f50c1 .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:16px;}.elementor-979 .elementor-element.elementor-element-60f50c1 .elementor-icon-box-title{margin-block-end:2px;color:#8A8A8A;}.elementor-979 .elementor-element.elementor-element-60f50c1.elementor-view-stacked .elementor-icon{background-color:#FDE3E3;fill:#E8175D;color:#E8175D;}.elementor-979 .elementor-element.elementor-element-60f50c1.elementor-view-framed .elementor-icon, .elementor-979 .elementor-element.elementor-element-60f50c1.elementor-view-default .elementor-icon{fill:#FDE3E3;color:#FDE3E3;border-color:#FDE3E3;}.elementor-979 .elementor-element.elementor-element-60f50c1.elementor-view-framed .elementor-icon{background-color:#E8175D;}.elementor-979 .elementor-element.elementor-element-60f50c1 .elementor-icon-box-title, .elementor-979 .elementor-element.elementor-element-60f50c1 .elementor-icon-box-title a{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;}.elementor-979 .elementor-element.elementor-element-60f50c1 .elementor-icon-box-description{font-size:18px;color:#1B1B1B;}.elementor-979 .elementor-element.elementor-element-122730f .elementor-icon-box-wrapper{align-items:start;text-align:start;gap:16px;}.elementor-979 .elementor-element.elementor-element-122730f .elementor-icon-box-title{margin-block-end:2px;color:#8A8A8A;}.elementor-979 .elementor-element.elementor-element-122730f.elementor-view-stacked .elementor-icon{background-color:#FDE3E3;fill:#E8175D;color:#E8175D;}.elementor-979 .elementor-element.elementor-element-122730f.elementor-view-framed .elementor-icon, .elementor-979 .elementor-element.elementor-element-122730f.elementor-view-default .elementor-icon{fill:#FDE3E3;color:#FDE3E3;border-color:#FDE3E3;}.elementor-979 .elementor-element.elementor-element-122730f.elementor-view-framed .elementor-icon{background-color:#E8175D;}.elementor-979 .elementor-element.elementor-element-122730f .elementor-icon-box-title, .elementor-979 .elementor-element.elementor-element-122730f .elementor-icon-box-title a{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;}.elementor-979 .elementor-element.elementor-element-122730f .elementor-icon-box-description{font-size:18px;color:#1B1B1B;}.elementor-979 .elementor-element.elementor-element-fa9dd8f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--border-radius:24px 24px 24px 24px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-979 .elementor-element.elementor-element-fa9dd8f:not(.elementor-motion-effects-element-type-background), .elementor-979 .elementor-element.elementor-element-fa9dd8f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBE4D8;}.elementor-979 .elementor-element.elementor-element-66c7681 .elementor-heading-title{color:#1B1016;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-979 .elementor-element.elementor-element-bfb0071{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-979 .elementor-element.elementor-element-7fd33ac{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:18px 18px;--row-gap:18px;--column-gap:18px;--border-radius:24px 24px 24px 24px;box-shadow:0px 10px 30px 0px rgba(0,0,0,0.06);--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-979 .elementor-element.elementor-element-7fd33ac:not(.elementor-motion-effects-element-type-background), .elementor-979 .elementor-element.elementor-element-7fd33ac > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-979 .elementor-element.elementor-element-95bae56 .elementor-heading-title{color:#1B1016;}.elementor-979 .elementor-element.elementor-element-ff5621b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:16px 16px 16px 16px;--padding-top:18px;--padding-bottom:18px;--padding-left:20px;--padding-right:20px;}.elementor-979 .elementor-element.elementor-element-ff5621b:not(.elementor-motion-effects-element-type-background), .elementor-979 .elementor-element.elementor-element-ff5621b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBE4D8;}.elementor-979 .elementor-element.elementor-element-baeef10{width:var( --container-widget-width, 62% );max-width:62%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 14px) 12px;padding:0px 0px 0px 0px;--container-widget-width:62%;--container-widget-flex-grow:0;text-align:start;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-979 .elementor-element.elementor-element-baeef10.elementor-element{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-979 .elementor-element.elementor-element-baeef10 p{margin-block-end:0px;}.elementor-979 .elementor-element.elementor-element-baeef10 a{transition-duration:0s;}.elementor-979 .elementor-element.elementor-element-39393bd{--display:flex;}.elementor-979 .elementor-element.elementor-element-eb351b8 iframe{height:344px;}:root{--page-title-display:none;}@media(max-width:1537px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-979 .elementor-element.elementor-element-baeef10{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-979 .elementor-element.elementor-element-baeef10{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-979 .elementor-element.elementor-element-baeef10{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(min-width:768px){.elementor-979 .elementor-element.elementor-element-51ea5e8{--width:38%;}.elementor-979 .elementor-element.elementor-element-bfb0071{--width:62%;}}@media(min-width:2400px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-icon-box .elementor-icon-box-description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-979 .elementor-element.elementor-element-baeef10{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS *//* ==========================================================================
   GIOCHIAMO CON SOFIA — Pagina Contatti
   Tutto è racchiuso in .gcs-contatti per non entrare in conflitto col tema.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Wrapper, variabili e reset locale
   -------------------------------------------------------------------------- */
.gcs-contatti{
  /* colori presi dal mockup */
  --gcs-ink:#1B1016;
  --gcs-ink-soft:#5A4650;
  --gcs-magenta:#DA0051;
  --gcs-magenta-dark:#B10041;
  --gcs-orange:#F0703F;
  --gcs-orange-dark:#DC5A29;
  --gcs-peach:#FFE7DE;
  --gcs-yellow:#F5C11F;
  --gcs-pink:#EB7CA5;
  --gcs-bg:#FDF9FB;
  --gcs-line:rgba(27,16,22,.12);
  --gcs-radius:28px;
  --gcs-radius-sm:16px;
  --gcs-shadow:0 24px 50px -34px rgba(218,0,81,.45), 0 2px 10px rgba(27,16,22,.04);

  /* tipografia: aggiungi i font da Elementor > Custom Fonts o dal tema */
  --gcs-display:"Ultra", Georgia, "Times New Roman", serif;
  --gcs-body:"Quicksand", ui-rounded, "Segoe UI", system-ui, sans-serif;
  --gcs-hand:"Caveat", "Bradley Hand", cursive;

  position:relative;
  overflow-x:clip;
  padding:0 0 10px;
  font-family:var(--gcs-body);
  font-weight:500;
  font-size:16px;
  line-height:1.65;
  color:var(--gcs-ink);
  background-color:var(--gcs-bg);
  background-image:
    radial-gradient(46% 30% at 4% 6%, #FCE2EC 0%, rgba(252,226,236,0) 62%),
    radial-gradient(40% 26% at 98% 22%, #FFE4D8 0%, rgba(255,228,216,0) 62%),
    radial-gradient(52% 30% at 50% 60%, #FCE4EE 0%, rgba(252,228,238,0) 60%),
    radial-gradient(46% 30% at 0% 94%, #FDE8F0 0%, rgba(253,232,240,0) 60%);
  text-align:left;
  -webkit-font-smoothing:antialiased;
}
.gcs-contatti *,
.gcs-contatti *::before,
.gcs-contatti *::after{box-sizing:border-box}
.gcs-contatti img{max-width:100%;height:auto;display:block}
.gcs-contatti a:focus-visible,
.gcs-contatti button:focus-visible{outline:3px solid var(--gcs-magenta);outline-offset:3px;border-radius:6px}

/* --------------------------------------------------------------------------
   2. Tipografia
   -------------------------------------------------------------------------- */
.gcs-contatti h1,
.gcs-contatti h2,
.gcs-contatti h3{
  font-family:var(--gcs-display);
  font-weight:400;
  line-height:1.06;
  letter-spacing:-.01em;
  text-transform:none;
  margin:0;
  color:var(--gcs-ink);
}
.gcs-contatti h1{font-size:clamp(2.6rem,6.4vw,4.6rem)}
.gcs-contatti h2{font-size:clamp(1.85rem,3.6vw,2.7rem)}
.gcs-contatti h3{font-size:clamp(1.15rem,1.9vw,1.45rem);line-height:1.2}
.gcs-contatti p{margin:0 0 1.1em;color:inherit;line-height:1.65}
.gcs-contatti a{color:var(--gcs-magenta);text-decoration:none}
.gcs-contatti p:last-child{margin-bottom:0}
.gcs-contatti strong{font-weight:700}
.gcs-contatti .gcs-mag{color:var(--gcs-magenta)}
.gcs-contatti .gcs-hand{font-family:var(--gcs-hand);font-weight:600;line-height:1.15}
.gcs-contatti .gcs-eyebrow{
  font-family:var(--gcs-hand);
  font-size:1.5rem;
  color:var(--gcs-ink-soft);
  margin:0 0 .1em;
}
.gcs-contatti .gcs-lead{font-size:1.09rem;color:var(--gcs-ink-soft);max-width:56ch}
.gcs-contatti .gcs-small{font-size:.9rem;color:var(--gcs-ink-soft)}

/* --------------------------------------------------------------------------
   3. Bottoni
   -------------------------------------------------------------------------- */
.gcs-contatti .gcs-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5em;
  font-family:var(--gcs-body);
  font-weight:700;
  font-size:1rem;
  line-height:1.2;
  padding:.86em 1.7em;
  border:0;
  border-radius:999px;
  cursor:pointer;
  text-decoration:none;
  text-transform:none;
  color:#fff;
  background:var(--gcs-magenta);
  box-shadow:0 12px 24px -14px rgba(218,0,81,.85);
  transition:transform .18s ease, background-color .18s ease;
}
.gcs-contatti .gcs-btn:hover,
.gcs-contatti .gcs-btn:focus{background:var(--gcs-magenta-dark);color:#fff;transform:translateY(-2px)}
.gcs-contatti .gcs-btn:active{transform:translateY(0)}
.gcs-contatti .gcs-btn--orange{background:var(--gcs-orange);box-shadow:0 12px 24px -14px rgba(240,112,63,.9)}
.gcs-contatti .gcs-btn--orange:hover,
.gcs-contatti .gcs-btn--orange:focus{background:var(--gcs-orange-dark)}

/* --------------------------------------------------------------------------
   4. Struttura: contenitore, sezioni, hero
   -------------------------------------------------------------------------- */
.gcs-contatti .gcs-wrap{width:min(1180px, 100% - 44px);margin-left:auto;margin-right:auto}
.gcs-contatti .gcs-section{position:relative;padding:clamp(34px,5vw,62px) 0}
.gcs-contatti .gcs-section--tight{padding-top:8px}

.gcs-contatti .gcs-hero{position:relative;padding:clamp(38px,6vw,74px) 0 clamp(28px,4vw,44px)}
.gcs-contatti .gcs-hero .gcs-wrap{position:relative;z-index:1}
.gcs-contatti .gcs-hero h1{margin-bottom:.18em}
.gcs-contatti .gcs-hero .gcs-lead{margin-top:18px}
.gcs-contatti .gcs-hero-note{
  position:absolute;
  right:2%;
  top:14%;
  z-index:2;
  max-width:230px;
  margin:0;
  transform:rotate(-6deg);
  text-align:center;
  font-size:1.35rem;
  color:var(--gcs-ink-soft);
}

/* --------------------------------------------------------------------------
   5. Card
   -------------------------------------------------------------------------- */
.gcs-contatti .gcs-card{
  position:relative;
  background:#fff;
  border-radius:var(--gcs-radius);
  padding:clamp(24px,3.4vw,40px);
  box-shadow:var(--gcs-shadow);
}
.gcs-contatti .gcs-card--peach{background:var(--gcs-peach);box-shadow:none;overflow:hidden}
.gcs-contatti .gcs-card + .gcs-card{margin-top:20px}
.gcs-contatti .gcs-card-title{font-size:1.5rem;margin-bottom:22px}

/* colonne principali: info a sinistra, form a destra */
.gcs-contatti .gcs-layout{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);
  gap:clamp(22px,3vw,40px);
  align-items:start;
}

/* --------------------------------------------------------------------------
   6. Elenco contatti
   -------------------------------------------------------------------------- */
.gcs-contatti .gcs-info{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.gcs-contatti .gcs-info li{display:flex;gap:14px;align-items:flex-start}
.gcs-contatti .gcs-info-ico{
  flex:0 0 auto;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:var(--gcs-peach);
  color:var(--gcs-magenta);
}
.gcs-contatti .gcs-info h3{
  font-family:var(--gcs-body);
  font-weight:700;
  font-size:.82rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--gcs-ink-soft);
  margin-bottom:2px;
}
.gcs-contatti .gcs-info p{margin:0;font-size:1.02rem}
.gcs-contatti .gcs-info a{
  color:var(--gcs-ink);
  font-weight:700;
  text-decoration:none;
  border-bottom:2px solid rgba(218,0,81,.25);
}
.gcs-contatti .gcs-info a:hover{color:var(--gcs-magenta);border-bottom-color:var(--gcs-magenta)}

/* --------------------------------------------------------------------------
   7. Orari
   -------------------------------------------------------------------------- */
.gcs-contatti .gcs-hours{list-style:none;margin:14px 0 0;padding:0;font-size:.98rem}
.gcs-contatti .gcs-hours li{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:7px 0;
  border-bottom:1px dashed rgba(27,16,22,.13);
}
.gcs-contatti .gcs-hours li:last-child{border-bottom:0}
.gcs-contatti .gcs-hours span:last-child{font-weight:700}

/* --------------------------------------------------------------------------
   8. Sezione parco
   -------------------------------------------------------------------------- */
.gcs-contatti .gcs-parco{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:clamp(20px,3vw,44px);
  align-items:center;
}
.gcs-contatti .gcs-parco-text{position:relative;z-index:1}
.gcs-contatti .gcs-parco-text h2{margin-bottom:14px}
.gcs-contatti .gcs-parco-text p{max-width:52ch}
.gcs-contatti .gcs-parco-media{position:relative;z-index:1}
.gcs-contatti .gcs-photo{
  width:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
  border-radius:22px;
  box-shadow:0 24px 50px -30px rgba(27,16,22,.55);
  background:#F3E4DE;
}
.gcs-contatti .gcs-photo-caption{margin-top:12px;font-size:.86rem;color:#7A4B3A}
.gcs-contatti .gcs-facts{
  list-style:none;
  margin:0 0 26px;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.gcs-contatti .gcs-facts li{
  background:rgba(255,255,255,.75);
  border-radius:999px;
  padding:.45em 1.05em;
  font-size:.92rem;
  font-weight:700;
  color:#7A4B3A;
}

/* --------------------------------------------------------------------------
   9. Scarabocchi decorativi
   -------------------------------------------------------------------------- */
.gcs-contatti .gcs-deco{position:absolute;z-index:0;pointer-events:none;user-select:none}
.gcs-contatti .gcs-deco--flower{left:-40px;top:8px;width:190px}
.gcs-contatti .gcs-deco--marker{right:8%;top:56%;width:120px}
.gcs-contatti .gcs-deco--form{right:-26px;top:-26px;width:150px;opacity:.5}
.gcs-contatti .gcs-deco--parco{left:-30px;bottom:-50px;width:min(42%,300px);opacity:.45}

/* --------------------------------------------------------------------------
   10. Fluent Forms — fa combaciare il form con il resto della pagina.
       I nomi delle classi sono quelli standard di Fluent Forms: se la tua
       versione ne usa altri, controlla con l'inspector e adatta.
   -------------------------------------------------------------------------- */
.gcs-contatti .gcs-form-card{overflow:hidden}
.gcs-contatti .gcs-form-card > h2{position:relative;z-index:1;font-size:1.6rem;margin-bottom:6px}
.gcs-contatti .gcs-form-card > .gcs-small{position:relative;z-index:1;margin-bottom:22px}
.gcs-contatti .gcs-form-slot{position:relative;z-index:1}

.gcs-contatti .fluentform .ff-el-group{margin-bottom:18px}
.gcs-contatti .fluentform .ff-el-input--label label{
  font-family:var(--gcs-body);
  font-weight:700;
  font-size:.95rem;
  color:var(--gcs-ink);
  margin-bottom:7px;
}
.gcs-contatti .fluentform .ff-el-is-required.asterisk-right label::after,
.gcs-contatti .fluentform .ff-el-is-required.asterisk-left label::before{color:var(--gcs-magenta)}

.gcs-contatti .fluentform .ff-el-form-control{
  width:100%;
  font-family:var(--gcs-body);
  font-size:1rem;
  font-weight:500;
  line-height:1.5;
  color:var(--gcs-ink);
  padding:.85em 1em;
  background:#fff;
  border:2px solid rgba(27,16,22,.13);
  border-radius:var(--gcs-radius-sm);
  box-shadow:none;
  transition:border-color .16s ease, box-shadow .16s ease;
}
.gcs-contatti .fluentform .ff-el-form-control::placeholder{color:#A79AA1;opacity:1}
.gcs-contatti .fluentform .ff-el-form-control:focus{
  border-color:var(--gcs-magenta);
  box-shadow:0 0 0 4px rgba(218,0,81,.14);
  outline:none;
}
.gcs-contatti .fluentform textarea.ff-el-form-control{min-height:148px;resize:vertical}

/* errori */
.gcs-contatti .fluentform .ff-el-is-error .ff-el-form-control{border-color:#D3122B;background:#FFF6F7}
.gcs-contatti .fluentform .text-danger,
.gcs-contatti .fluentform .error{color:#C00F27;font-size:.86rem;font-weight:700}

/* checkbox e radio come pill (privacy, motivo del messaggio) */
.gcs-contatti .fluentform .ff-el-form-check{margin-bottom:8px}
.gcs-contatti .fluentform .ff-el-form-check-label{
  font-size:.94rem;
  color:var(--gcs-ink-soft);
  line-height:1.5;
}
.gcs-contatti .fluentform .ff-el-form-check-label a{color:var(--gcs-magenta);font-weight:700}
.gcs-contatti .fluentform .ff_list_inline .ff-el-form-check{display:inline-block;margin-right:10px}
.gcs-contatti .fluentform .ff_list_buttons .ff-el-form-check-label{
  display:inline-block;
  padding:.55em 1.1em;
  border:2px solid rgba(218,0,81,.3);
  border-radius:999px;
  background:#fff;
  font-weight:700;
  color:var(--gcs-ink);
  cursor:pointer;
  transition:background-color .16s ease, color .16s ease, border-color .16s ease;
}
.gcs-contatti .fluentform .ff_list_buttons .ff-el-form-check-input{position:absolute;opacity:0}
.gcs-contatti .fluentform .ff_list_buttons .ff-el-form-check-label:hover{border-color:var(--gcs-magenta)}
.gcs-contatti .fluentform .ff_list_buttons .ff-el-form-check-label:has(input:checked){
  background:var(--gcs-magenta);
  border-color:var(--gcs-magenta);
  color:#fff;
}

/* bottone di invio */
.gcs-contatti .fluentform .ff-btn-submit{
  font-family:var(--gcs-body);
  font-weight:700;
  font-size:1rem;
  line-height:1.2;
  padding:.86em 1.7em;
  color:#fff;
  background:var(--gcs-magenta);
  border:0;
  border-radius:999px;
  box-shadow:0 12px 24px -14px rgba(218,0,81,.85);
  transition:transform .18s ease, background-color .18s ease;
}
.gcs-contatti .fluentform .ff-btn-submit:hover{filter:brightness(.92);transform:translateY(-2px)}

/* messaggio di conferma */
.gcs-contatti .ff-message-success{
  background:var(--gcs-peach);
  border:0;
  border-radius:var(--gcs-radius-sm);
  padding:18px 20px;
  color:#7A4B3A;
  font-weight:700;
}

/* --------------------------------------------------------------------------
   11. Responsive
   -------------------------------------------------------------------------- */
@media (max-width:1100px){
  .gcs-contatti .gcs-hero-note{display:none}
}
@media (max-width:940px){
  .gcs-contatti .gcs-layout{grid-template-columns:1fr}
}
@media (max-width:820px){
  .gcs-contatti .gcs-parco{grid-template-columns:1fr}
  .gcs-contatti .gcs-parco-media{order:-1}
}
@media (max-width:760px){
  .gcs-contatti{font-size:15.5px}
  .gcs-contatti .gcs-wrap{width:min(1180px, 100% - 32px)}
  .gcs-contatti .gcs-hero{padding-top:28px}
  .gcs-contatti .gcs-deco--flower,
  .gcs-contatti .gcs-deco--marker{display:none}
  .gcs-contatti .gcs-eyebrow{font-size:1.35rem}
  .gcs-contatti .gcs-card{padding:24px 20px}
  .gcs-contatti .gcs-btn{width:100%}
}

/* --------------------------------------------------------------------------
   12. Preferenze di movimento ridotto
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  .gcs-contatti *{transition-duration:.001ms !important;animation-duration:.001ms !important}
}

/* ==========================================================================
   PONTE ELEMENTOR — applica lo stile gcs-* ai widget nativi
   (i testi restano modificabili dal pannello Elementor)
   ========================================================================== */
.gcs-contatti .gcs-info .elementor-icon-box-wrapper{display:flex;gap:14px;align-items:flex-start;text-align:left}
.gcs-contatti .gcs-info .elementor-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-size:18px}
.gcs-contatti .gcs-info .elementor-icon-box-title{font-family:var(--gcs-body);font-weight:700;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gcs-ink-soft);margin:0 0 2px}
.gcs-contatti .gcs-info .elementor-icon-box-description{margin:0;font-size:1.02rem;font-weight:700;color:var(--gcs-ink)}
.gcs-contatti .gcs-info .gcs-nota{display:block;font-weight:500;font-size:.92rem;color:var(--gcs-ink-soft);margin-top:2px}
.gcs-contatti .gcs-info a{color:var(--gcs-ink);font-weight:700;border-bottom:2px solid rgba(218,0,81,.25)}
.gcs-contatti .gcs-info a:hover{color:var(--gcs-magenta);border-bottom-color:var(--gcs-magenta)}

.gcs-contatti .gcs-orari p{display:flex;justify-content:space-between;gap:16px;margin:0;padding:7px 0;border-bottom:1px dashed rgba(27,16,22,.13)}
.gcs-contatti .gcs-orari p:last-child{border-bottom:0}
.gcs-contatti .gcs-orari strong{font-weight:700}

.gcs-contatti .gcs-obbligatori p{font-size:.9rem;color:var(--gcs-ink-soft);margin:0}
.gcs-contatti .gcs-obbligatori span{color:var(--gcs-magenta);font-weight:700}

/* form: Nome e Cognome affiancati */
.elementor-element-9c56abc{gap:18px}
.elementor-element-c405e13,.elementor-element-1eacf41{flex:1 1 0;min-width:0}

.gcs-contatti .gcs-info .elementor-icon{background:var(--gcs-peach);color:var(--gcs-magenta)}
.gcs-contatti .gcs-info .elementor-icon svg{fill:var(--gcs-magenta);width:18px;height:18px}

.elementor-element-c405e13 input,.elementor-element-1eacf41 input{width:100%;display:block}
.elementor-element-c405e13,.elementor-element-1eacf41{display:flex;flex-direction:column;gap:6px}

.elementor-element-282312b{width:100%;max-width:100%;align-self:stretch}
.elementor-element-282312b > *{width:100%}

/* larghezze form (specificità alzata per battere gli stili atomici v4) */
.gcs-contatti .elementor-element-282312b{width:100%;max-width:100%;align-self:stretch}
.gcs-contatti .elementor-element-9c56abc{width:100%;gap:18px}
.gcs-contatti .elementor-element-c405e13,
.gcs-contatti .elementor-element-1eacf41{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:6px}
.gcs-contatti .elementor-element-282312b input,
.gcs-contatti .elementor-element-282312b textarea{width:100%;max-width:100%}


/* ==========================================================================
   FORM — restyle moderno
   ========================================================================== */
.gcs-contatti form.e-form-base{padding:0;gap:16px}
.gcs-contatti form.e-form-base .e-form-label-base{
  display:block;font-family:var(--gcs-body);font-weight:700;font-size:.92rem;
  color:var(--gcs-ink);margin-bottom:6px}
.gcs-contatti form.e-form-base .e-form-input-base,
.gcs-contatti form.e-form-base .e-form-textarea-base{
  width:100%;font-family:var(--gcs-body);font-size:1rem;color:var(--gcs-ink);
  background:#fff;border-width:1.5px;border-style:solid;border-radius:14px;
  padding:13px 16px;line-height:1.4;box-shadow:none;
  transition:border-color .18s ease, box-shadow .18s ease}
.gcs-contatti form.e-form-base .e-form-input-base::placeholder,
.gcs-contatti form.e-form-base .e-form-textarea-base::placeholder{color:rgba(90,70,80,.55)}
.gcs-contatti form.e-form-base .e-form-input-base:focus,
.gcs-contatti form.e-form-base .e-form-textarea-base:focus{
  outline:none;border-color:var(--gcs-magenta);box-shadow:0 0 0 4px rgba(218,0,81,.12)}
.gcs-contatti form.e-form-base .e-form-textarea-base{min-height:150px;resize:vertical}
.gcs-contatti form.e-form-base .e-form-submit-button-base{
  width:auto;align-self:flex-start;font-family:var(--gcs-body);font-weight:700;
  font-size:1rem;line-height:1.2;border:0;border-radius:999px;padding:14px 34px;cursor:pointer;
  box-shadow:0 12px 24px -14px rgba(218,0,81,.85);
  transition:background-color .18s ease, transform .18s ease}
.gcs-contatti form.e-form-base .e-form-submit-button-base:hover{filter:brightness(.92);transform:translateY(-2px)}
.gcs-contatti form.e-form-base .e-form-submit-button-base:active{transform:translateY(0)}
.gcs-contatti form.e-form-base .e-form-success-message-base,
.gcs-contatti form.e-form-base .e-form-error-message-base{
  border-radius:14px;padding:14px 16px;font-size:.95rem;font-family:var(--gcs-body)}


/* COLORI FORM — cambia qui i due colori del form (il resto si modifica dal pannello) */
.gcs-contatti form.e-form-base .e-form-input-base,
.gcs-contatti form.e-form-base .e-form-textarea-base{border-color:#E3DADE !important}
.gcs-contatti form.e-form-base .e-form-input-base:focus,
.gcs-contatti form.e-form-base .e-form-textarea-base:focus{border-color:var(--gcs-magenta) !important}
.gcs-contatti form.e-form-base .e-form-submit-button-base{
  background-color:var(--gcs-magenta) !important;color:#fff !important}


/* TITOLO CONTATTI BICOLORE — cambia qui i due colori del titolo */
#gcs-tit-a{color:#1B1016}
#gcs-tit-b{color:#DA0051}/* End custom CSS */