:root{
  --teal:#0c8aa0;        /* dal logo */
  --green:#3a8d3f;       /* &co */
  --dark:#0e2530;
}
h3 {
  color: #0c8aa0 !important;
}
.text-teal{color:var(--teal)!important;}
.text-green{color:var(--green)!important;}
.btn-teal{background:var(--teal);color:#fff;}
.btn-teal:hover{background:#0a7385;color:#fff;}
.btn-green{background:var(--green);color:#fff;}
.btn-green:hover{background:#2f7433;color:#fff;}
.soft-shadow{box-shadow:0 10px 30px rgba(0,0,0,.08);}
.object-fit-cover{object-fit:cover;}

.hero-parallax{
  position: relative;
  min-height: 100vh;
  background: url('../img/hero-parallax.jpg') center/cover no-repeat fixed;
  display: flex;
  align-items: center;     /* centra verticalmente */
  justify-content: center; /* opzionale: centra orizzontalmente */
  text-align: left;        /* mantieni allineamento a sinistra */
}

.hero-overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.85));
}




.hero-parallax .container{
  position: relative;
  z-index: 2;
}

.hero-parallax h1,
.hero-parallax p,
.hero-parallax a {
  position: relative;
  z-index: 2;
  color: #fff !important;        /* forza bianco */
}

.parallax{
  background:url('../img/bath-parallax.jpg') center/cover no-repeat fixed;
}

.hero-parallax::after{
  /* overlay sfumato + leggero vignettatura ai bordi */
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(80% 60% at 50% 40%, rgba(0,0,0,0) 55%, rgba(0,0,0,.25) 100%),
    linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.40) 40%, rgba(0,0,0,.65) 100%);
  pointer-events:none;
  z-index:1;
}

.section-overlay{position:relative;}
.section-overlay::before{
  content:""; position:absolute; inset:0; background:rgba(0,0,0,.45);
}
.section-overlay .container{position:relative; z-index:2;}

.service-icon{
  width:44px;height:44px;border-radius:12px;background:rgba(12,138,160,.12);
  display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--teal);
}
#bagno img {
  max-width: 100%;
  border-radius: 1rem;
}
.img-fade{opacity:0;transform:translateY(8px);transition:all .6s ease;}
.img-fade.in{opacity:1;transform:none;}
.reveal{opacity:0;transform:translateY(12px);transition:all .6s ease;}
.reveal.in{opacity:1;transform:none;}

#servizi {
  background: linear-gradient(135deg, rgba(12,138,160,0.08), rgba(58,141,63,0.08));
}

/* Card con icona decorativa */
.service-card{
  position: relative;
  overflow: hidden;
}
.service-card::after{
  content: "";
  font-size: 6rem;
  color: rgba(12,138,160,0.07);
  position: absolute;
  bottom: -10px;
  right: 10px;
  pointer-events: none;
}

/* Icône specifiche per card */
.service-card.service-build::after { content: "🏗️"; } /* Costruzioni */
.service-card.service-reno::after  { content: "🛠️"; } /* Ristrutturazioni */

.icon-circle{
  width:64px;height:64px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:28px;color:#fff;
}
.bg-teal{ background:#0c8aa0; }
.bg-green{ background:#3a8d3f; }
.bg-dark{ background:#0e2530; }


.captcha-placeholder{border:1px solid #e0e0e0;background:#fafafa;color:#666}
.reveal, .img-fade { opacity: 1; transform: none; }