:root{--navy:#0d2b52;--blue:#1f88e5;--orange:#f59e0b;--light:#f5f8fc;--text:#1d2939;--muted:#667085;--white:#fff;--radius:22px;--shadow:0 18px 45px rgba(13,43,82,.12)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--text);background:#fff;line-height:1.6}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}.container{width:min(1160px,92%);margin-inline:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(13,43,82,.08)}.header-inner{height:82px;display:flex;align-items:center;gap:24px}.brand img{width:230px;display:block}.main-nav{margin-left:auto}.main-nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0}.main-nav a{font-weight:700;color:var(--navy)}.main-nav a:hover{color:var(--blue)}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 22px;font-weight:800;background:var(--orange);color:#111827;box-shadow:0 10px 25px rgba(245,158,11,.24)}.btn.secondary{background:#fff;color:var(--navy)}.menu-toggle{display:none;margin-left:auto;background:none;border:0;font-size:30px;color:var(--navy)}.hero{position:relative;min-height:680px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,rgba(13,43,82,.94),rgba(13,43,82,.72)),url('../img/hero-placeholder.svg') center/cover}.hero:after{content:"";position:absolute;inset:auto -10% -1px -10%;height:90px;background:#fff;border-radius:50% 50% 0 0/100% 100% 0 0}.hero-content{position:relative;z-index:1;color:#fff;max-width:820px;padding:90px 0}.eyebrow{letter-spacing:.18em;text-transform:uppercase;font-weight:900;font-size:.8rem;color:var(--orange)}h1,h2,h3{font-family:Montserrat,Inter,sans-serif;line-height:1.1;color:var(--navy)}.hero h1{font-size:clamp(2.7rem,6vw,5.5rem);margin:.2em 0;color:#fff}.hero p{font-size:1.25rem;max-width:680px;color:rgba(255,255,255,.9)}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}.section{padding:90px 0}.section.light{background:var(--light)}.section-head{max-width:720px;margin-bottom:42px}.section-head h2{font-size:clamp(2rem,4vw,3.4rem);margin:8px 0 12px}.section-head p{color:var(--muted);font-size:1.08rem}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;border:1px solid rgba(13,43,82,.08);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.service-card{min-height:290px;display:flex;flex-direction:column}.service-card .icon{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,var(--navy),var(--blue));display:grid;place-items:center;color:#fff;font-size:24px;margin-bottom:24px}.service-card h3{font-size:1.35rem;margin:0 0 12px}.service-card p{color:var(--muted);margin:0 0 22px}.service-card a{margin-top:auto;color:var(--blue);font-weight:900}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.image-panel{min-height:430px;border-radius:32px;background:linear-gradient(135deg,rgba(13,43,82,.2),rgba(31,136,229,.1)),url('../img/yard-placeholder.svg') center/cover;box-shadow:var(--shadow)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}.stat{background:#fff;border-radius:18px;padding:20px;text-align:center;box-shadow:var(--shadow)}.stat strong{display:block;font-family:Montserrat;font-size:2rem;color:var(--blue)}.cta-band{background:linear-gradient(135deg,var(--navy),#08203e);color:#fff;border-radius:34px;padding:54px;display:flex;align-items:center;justify-content:space-between;gap:26px}.cta-band h2{color:#fff;margin:0 0 10px}.cta-band p{margin:0;color:rgba(255,255,255,.82)}.content-page{padding:80px 0}.entry-content{font-size:1.08rem}.entry-content h2{margin-top:42px}.single-hero{padding:90px 0;background:var(--light)}.single-hero h1{font-size:clamp(2.3rem,5vw,4.2rem);margin:0}.featured-img{margin-top:32px;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.contact-box{background:#fff;border-radius:24px;padding:30px;box-shadow:var(--shadow)}.map-box{overflow:hidden}.map-embed{position:relative;width:100%;height:380px;border-radius:22px;overflow:hidden;margin-top:18px;background:#dbeafe}.map-embed iframe{position:absolute;inset:0;width:100%;height:100%;display:block}.contact-extra{margin-top:24px;color:var(--muted)}.site-footer{background:#071d38;color:#dbeafe;padding:70px 0 28px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:42px}.footer-logo{width:230px;background:#fff;border-radius:16px;padding:8px;margin-bottom:16px}.site-footer h3{color:#fff}.site-footer a{color:#dbeafe}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#9fb3c8;font-size:.9rem}@media(max-width:900px){.header-cta{display:none}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;padding:20px 4%;box-shadow:var(--shadow)}.main-nav.is-open{display:block}.main-nav ul{flex-direction:column}.services-grid,.split,.contact-grid,.footer-grid{grid-template-columns:1fr}.cta-band{display:block}.stats{grid-template-columns:1fr}.hero{min-height:600px}.brand img{width:190px}}

/* Aggiornamento home e servizi con asset separati */
.hero-image {
  background-image: linear-gradient(90deg, rgba(13,43,82,.92), rgba(13,43,82,.64)), url('../img/company/gru-scarpelli.jpg');
  background-size: cover;
  background-position: center;
}
.services-grid-visual {
  align-items: stretch;
}
.visual-card {
  padding: 0 !important;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.service-media {
  display: block;
  height: 210px;
  background: #eaf0f7;
  overflow: hidden;
}
.service-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}
.visual-card:hover .service-media img {
  transform: scale(1.05);
}
.service-body {
  padding: 24px;
  position: relative;
  flex: 1;
}
.service-icon {
  width: 54px;
  height: 54px;
  object-fit: contain;
  margin-bottom: 14px;
  background: #fff;
  border-radius: 16px;
  padding: 9px;
  box-shadow: 0 10px 26px rgba(13,43,82,.10);
}
.read-more {
  display: inline-block;
  margin-top: 10px;
  font-weight: 700;
}
.photo-stack {
  display: grid;
  gap: 18px;
}
.photo-stack img {
  width: 100%;
  min-height: 230px;
  max-height: 320px;
  object-fit: cover;
  border-radius: 26px;
  box-shadow: 0 22px 60px rgba(13,43,82,.16);
}
.method-grid .card h3 {
  color: #0D2B52;
}
.service-single-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.single-service-icon {
  width: 110px;
  height: 110px;
  background: #fff;
  border-radius: 28px;
  padding: 18px;
  box-shadow: 0 18px 50px rgba(13,43,82,.12);
}
.service-featured img {
  width: 100%;
  max-height: 460px;
  object-fit: cover;
  border-radius: 28px;
  margin-bottom: 28px;
}
@media (max-width: 780px) {
  .service-single-head { align-items: flex-start; }
  .single-service-icon { width: 76px; height: 76px; border-radius: 20px; }
  .service-media { height: 190px; }
}

/* v1.2 - Home servizi: card solo icona, senza immagine superiore */
.services-grid-icons {
  align-items: stretch;
}
.service-card-icononly {
  min-height: 300px;
  padding: 30px !important;
  border: 1px solid rgba(13,43,82,.10);
  background:
    radial-gradient(circle at top right, rgba(31,136,229,.10), transparent 35%),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 18px 45px rgba(13,43,82,.12);
  overflow: hidden;
}
.service-icon-wrap {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(13,43,82,.13);
  margin-bottom: 22px;
}
.service-card-icononly .service-icon {
  width: 48px;
  height: 48px;
  object-fit: contain;
  display: block;
  margin: 0;
  padding: 0;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}
.service-card-icononly h3 {
  margin: 0 0 12px;
}
.service-card-icononly p {
  color: var(--muted);
  margin-bottom: 22px;
}
.service-card-icononly .read-more {
  margin-top: auto;
  color: var(--blue);
  font-weight: 900;
}
.service-card-icononly:hover {
  transform: translateY(-4px);
  transition: transform .25s ease, box-shadow .25s ease;
  box-shadow: 0 24px 60px rgba(13,43,82,.16);
}

/* v1.3 - Rimozione arco bianco nel hero */
.hero:after {
  display: none !important;
  content: none !important;
}
.hero {
  min-height: 640px;
}
.hero-content {
  padding: 90px 0 110px;
}
