
:root{--green:#087449;--deep:#073e31;--ink:#143d33;--muted:#5b6d67;--soft:#eef8f1;--line:#dfece4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.65 system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:#fff}a{color:var(--green)}.wrap{max-width:1160px;margin:auto;padding:0 24px}.top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;box-shadow:0 3px 15px #073e3108}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:92px}.logo{display:flex;align-items:center;gap:9px;text-decoration:none;flex-shrink:0}.logo img:first-child{width:64px;height:67px;object-fit:contain}.logo img:last-child{width:160px;max-height:62px;object-fit:contain}.links{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.links a{font-size:14px;font-weight:650;text-decoration:none;color:var(--ink)}.links a[aria-current=page],.links a:hover{color:var(--green)}.menu{display:none;border:1px solid var(--line);border-radius:10px;background:white;padding:9px 13px;font-size:20px}.hero{background:linear-gradient(115deg,#eef8f1,#fff);padding:65px 0 52px}.hero-grid{display:grid;grid-template-columns:1fr .88fr;align-items:center;gap:48px}.kicker{font-size:12px;color:var(--green);letter-spacing:.13em;font-weight:850;text-transform:uppercase}h1{font-size:clamp(35px,5vw,62px);line-height:1.12;margin:12px 0 20px;letter-spacing:-.035em}h2{font-size:clamp(28px,3.5vw,42px);line-height:1.2;letter-spacing:-.025em}h3{line-height:1.3;margin:0 0 8px}p{max-width:75ch}.lead{font-size:19px;color:var(--muted);max-width:58ch}.hero-photo{width:100%;height:345px;object-fit:cover;border-radius:25px;box-shadow:0 20px 50px #073e3118}.section{padding:65px 0}.section.soft{background:#f3faf5}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:32px}.card{background:white;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 12px 28px #073e310b}.card .inner{padding:23px}.card img{display:block;width:100%;height:190px;object-fit:cover}.card p{color:var(--muted);margin:0 0 15px}.card a{font-weight:750;text-decoration:none}.card a:hover{text-decoration:underline}.panel{background:var(--soft);padding:30px;border-radius:22px;margin:26px 0}.btn{display:inline-block;padding:13px 23px;background:var(--green);color:white;text-decoration:none;border-radius:12px;font-weight:750}.btn:hover{background:var(--deep)}.steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}.step{border:1px solid var(--line);border-radius:18px;padding:26px;background:#fff}.step .num{color:var(--green);font-weight:850;font-size:22px}.step p{color:var(--muted)}.narrow{max-width:820px}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq summary{cursor:pointer;font-weight:750}.faq p{color:var(--muted)}.cta{background:var(--deep);color:white;padding:45px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.cta h2{margin:0 0 8px}.cta p{margin:0;color:#d8efe2}.cta .btn{background:white;color:var(--deep)}.footer{background:#087449;color:white;padding:50px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:38px}.footer img{width:250px;max-width:100%;height:auto}.footer a{color:white;display:block;text-decoration:none;margin:5px 0}.footer p{color:#e0f2e7}.footer small{color:#e0f2e7}.footline{border-top:1px solid #ffffff50;margin-top:28px;padding-top:15px;font-size:13px;color:#e0f2e7}.tariff-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:22px}.price{font-size:22px;color:var(--green);font-weight:800}.note{font-size:13px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.map{background:#eaf5ee;border-radius:20px;padding:38px;text-align:center}.map strong{display:block;font-size:23px}.map a{font-weight:750}.service-icon{width:48px;height:48px;object-fit:contain;margin-bottom:10px}@media(max-width:940px){.nav{min-height:80px}.menu{display:block}.links{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:20px 24px;box-shadow:0 12px 24px #073e3122}.links.open{display:flex;flex-direction:column;align-items:flex-start}.hero-grid{grid-template-columns:1fr}.hero-photo{height:310px}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.wrap{padding:0 18px}.logo img:first-child{width:46px;height:52px}.logo img:last-child{width:126px}.hero{padding:40px 0}.section{padding:43px 0}.grid,.steps,.tariff-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}.cta .wrap{display:block}.hero-photo{height:245px}.card img{height:200px}}

/* ACCESSIBILITÀ: lettura agevole per anziani */
html{font-size:20px}body{font-size:1rem;line-height:1.75;color:#17382b}p,.card p,.step p,.faq p,.note{font-size:1rem!important;line-height:1.75!important;color:#385449}.lead{font-size:1.2rem!important}h1{font-size:clamp(2.5rem,5vw,3.8rem)}h2{font-size:clamp(2rem,3.5vw,2.8rem)}h3{font-size:1.35rem;line-height:1.4}.links a{font-size:1rem;min-height:44px;display:inline-flex;align-items:center}.btn,.card a,.faq summary{font-size:1rem;min-height:52px;padding:14px 20px}.card a{display:inline-flex;align-items:center;padding:8px 0}.kicker{font-size:.9rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card .inner{padding:26px}.card .inner .icona-servizio-originale{width:80px!important;height:80px!important;object-fit:contain!important;margin-bottom:16px!important}.footer p,.footer a,.footer small,.footline{color:#fff!important;font-size:.95rem!important}.faq summary{padding:12px 0}.menu{min-width:55px;min-height:55px;font-size:1.4rem}a:focus-visible,button:focus-visible,summary:focus-visible{outline:4px solid #ffbf47;outline-offset:4px}@media(max-width:700px){html{font-size:19px}.grid,.steps,.tariff-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}.card .inner{padding:23px}.wrap{padding:0 18px}.links a{padding:9px 0}.hero{padding:38px 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Menu ampio e leggibile anche su schermi medi */
@media(max-width:1750px){.top .nav{position:relative}.top .menu{display:inline-flex!important;align-items:center;justify-content:center;min-width:62px;min-height:58px;cursor:pointer}.top .links{display:none!important;position:absolute;top:100%;right:0;left:auto;width:min(430px,calc(100vw - 32px));background:white;border:2px solid #dce9df;border-radius:0 0 18px 18px;padding:18px;box-shadow:0 18px 40px #073e3128;z-index:50;flex-direction:column;align-items:stretch;gap:4px}.top .links.open{display:flex!important}.top .links a{display:block;min-height:50px;padding:12px 14px;line-height:1.4}.top .logo{min-width:0;max-width:calc(100% - 78px)}.top .logo img{max-width:100%;object-fit:contain}}

@media(min-width:1121px){.top .wrap.nav{max-width:1580px;width:calc(100% - 44px)}.top .links{gap:clamp(10px,1vw,20px)}.top .links a{white-space:nowrap;font-size:clamp(15px,.95vw,18px)}}
@media (max-width: 740px) {
  .editorial-hero {
    background-blend-mode: normal !important;
  }

  .editorial-hero-content {
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
  }

  .editorial-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      90deg,
      rgba(255,255,255,0.65),
      rgba(255,255,255,0.20)
    );
    pointer-events: none;
  }

  .editorial-hero-content {
    position: relative;
    z-index: 1;
  }
}
@media (max-width: 740px) {
  .editorial-hero {
    background-position: 65% center !important;
  }
}
@media (max-width: 740px) {
  .editorial-hero {
    background-size: auto 50% !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-color: #ffffff;
  }
}
@media (max-width: 740px) {
  .editorial-hero {
    background-image: none !important;
    padding-top: 230px;
    position: relative;
  }

  .editorial-hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 220px;
    background-image: var(--hero-image);
    background-size: cover;
    background-position: center;
  }

  .editorial-hero-content {
    background: white;
    border-radius: 0;
    padding: 16px;
  }
}