:root{
  --navy:#062a44; --navy2:#0b3958; --blue:#006bb2; --cyan:#00a8cf;
  --ice:#eef7fa; --paper:#f7f7f3; --ink:#12202a; --muted:#60717c;
  --line:#d9e3e7; --white:#fff; --lime:#d9ef59;
  --radius:24px; --shell:min(1220px,calc(100% - 48px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.55}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.shell{width:var(--shell);margin:auto}
.site-header{height:94px;background:rgba(255,255,255,.96);border-bottom:1px solid #e9eef0;position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}
.header-inner{height:100%;display:flex;align-items:center;gap:28px}.brand{width:132px;height:76px;display:flex;align-items:center;overflow:hidden;flex:0 0 auto}.brand img{height:72px;width:auto;object-fit:contain}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700;white-space:nowrap}.main-nav a{position:relative;padding:36px 0 32px}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:23px;height:2px;background:var(--cyan);transition:.2s}.main-nav a:hover:after{right:0}
.menu-toggle{display:none;border:0;background:none}.kicker{font-size:12px;letter-spacing:.16em;font-weight:800;margin:0 0 18px}.kicker.light{color:#b8d9e6}.kicker.dark{color:var(--blue)}.kicker.cyan{color:#64d7ee}
.hero{background:var(--paper);position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero-grid{min-height:690px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:58px;position:relative;z-index:2}.hero-copy{padding:70px 0 84px}.hero h1{font-size:clamp(58px,6.3vw,96px);line-height:.91;letter-spacing:-.065em;margin:0 0 34px;color:var(--navy);font-weight:850}.hero h1 em{font-style:normal;color:var(--blue)}.hero-lead{font-size:20px;max-width:650px;color:#3d505c;margin:0 0 34px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:22px;padding:15px 20px;border-radius:4px;font-weight:800;font-size:14px;transition:.2s}.btn span,.text-link span,.business-links span,.feature-actions span{font-size:20px}.btn.primary{background:var(--navy);color:white}.btn.primary:hover{background:var(--blue);transform:translateY(-2px)}.text-link{font-size:14px;font-weight:800;border-bottom:1px solid #9caab2;padding:10px 0}.proofline{display:flex;align-items:center;gap:14px;margin-top:54px;color:#5b6b74;font-size:13px}.proofline strong{font-size:28px;color:var(--navy)}.proofline i{width:1px;height:34px;background:#cbd6da}
.hero-visual{height:555px;position:relative}.photo{margin:0;overflow:hidden;background:#dce5e8}.photo img{width:100%;height:100%;object-fit:cover}.photo-main{position:absolute;right:0;top:0;width:82%;height:82%;border-radius:4px}.photo-main:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.photo-small{position:absolute;left:0;bottom:0;width:43%;height:42%;border:10px solid var(--paper);box-shadow:0 18px 45px rgba(5,36,55,.18)}.visual-note{position:absolute;right:0;bottom:20px;background:var(--navy);color:#fff;padding:18px 22px;display:flex;gap:13px;align-items:flex-start;min-width:285px}.visual-note p{margin:0;font-size:13px;line-height:1.45}.pulse{width:10px;height:10px;background:var(--lime);border-radius:50%;margin-top:5px;box-shadow:0 0 0 5px rgba(217,239,89,.12)}.hero-word{position:absolute;bottom:-62px;left:-10px;font-size:165px;font-weight:900;letter-spacing:-.07em;color:rgba(6,42,68,.035);white-space:nowrap;z-index:0}
.routes{padding:105px 0 120px}.section-head.compact{display:grid;grid-template-columns:.75fr 1.25fr;align-items:start;margin-bottom:54px}.section-head h2{font-size:48px;line-height:1.03;letter-spacing:-.045em;margin:0;color:var(--navy)}
.route-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.route{min-height:360px;padding:30px 30px 28px;border-right:1px solid var(--line);display:flex;flex-direction:column;transition:.25s;position:relative;overflow:hidden}.route:last-child{border-right:0}.route-num{font-size:12px;color:#82949e;margin-bottom:70px}.route small{font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--blue)}.route h3{font-size:31px;line-height:1.05;margin:12px 0 16px;color:var(--navy);letter-spacing:-.035em}.route p{color:var(--muted);margin:0;max-width:310px}.route>b{margin-top:auto;font-size:13px;color:var(--navy)}.route:hover{background:var(--ice);transform:translateY(-6px);box-shadow:0 18px 45px rgba(10,47,70,.08)}.route-groups:hover{background:#f3f6df}
.evidence{background:var(--navy);color:#fff;padding:115px 0}.evidence-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:78px;align-items:center}.evidence-copy h2{font-size:50px;line-height:1.02;letter-spacing:-.045em;margin:0 0 22px}.big-copy{font-size:25px;color:#b7d6e3}.evidence-copy>p:last-of-type{color:#c3d3db;max-width:520px}.btn.ghost{border:1px solid rgba(255,255,255,.45);color:#fff;margin-top:20px}.btn.ghost:hover{background:#fff;color:var(--navy)}
.evidence-gallery{height:560px;position:relative}.evidence-gallery figure{position:absolute;margin:0;overflow:hidden}.evidence-gallery img{width:100%;height:100%;object-fit:cover}.g1{left:0;top:0;width:66%;height:72%}.g2{right:0;top:15%;width:31%;height:47%}.g3{left:24%;bottom:0;width:54%;height:33%;border:8px solid var(--navy)}
.business{padding:115px 0;background:#fff}.business-top{display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:end;margin-bottom:55px}.business-top h2{font-size:52px;line-height:1.02;letter-spacing:-.045em;margin:0;color:var(--navy)}.business-top>p{color:var(--muted);font-size:17px;margin:0 0 4px}.business-stage{display:grid;grid-template-columns:.92fr 1.08fr;min-height:440px;background:var(--ice)}.business-photo{position:relative;overflow:hidden}.business-photo img{width:100%;height:100%;object-fit:cover}.business-photo span{position:absolute;left:0;bottom:0;background:var(--cyan);color:#003149;padding:10px 16px;font-size:10px;font-weight:900;letter-spacing:.12em}.business-copy{padding:70px;display:flex;flex-direction:column;justify-content:center}.business-copy h3{font-size:39px;line-height:1.08;letter-spacing:-.04em;margin:0 0 22px;color:var(--navy);font-weight:500}.business-copy h3 strong{font-weight:850}.business-copy p{font-size:18px;color:var(--muted);max-width:590px}.business-links{display:flex;gap:30px;flex-wrap:wrap;margin-top:22px}.business-links a{font-weight:800;font-size:14px;border-bottom:1px solid #9fb2bd;padding-bottom:8px}
.dae{background:#041f33;color:#fff;padding:115px 0;overflow:hidden}.dae-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:80px;align-items:center}.dae-copy h2{font-size:53px;line-height:1.02;letter-spacing:-.05em;margin:0 0 28px;max-width:590px}.dae-copy>p:last-of-type{color:#b8cbd5;font-size:17px;max-width:570px}.cyan-btn{background:var(--cyan);color:#00283c;margin-top:18px}.dae-map{height:520px;position:relative}.dae-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:190px;border:1px solid #31556a;border-radius:50%;display:grid;place-items:center;text-align:center;background:#082a40;z-index:2}.dae-center svg{width:65px;fill:none;stroke:var(--cyan);stroke-width:2.4}.dae-center strong{margin-top:-40px;font-size:28px}.dae-map:before,.dae-map:after{content:"";position:absolute;left:50%;top:50%;border:1px solid rgba(100,215,238,.12);border-radius:50%;transform:translate(-50%,-50%)}.dae-map:before{width:370px;height:370px}.dae-map:after{width:510px;height:510px}.dae-map>a{position:absolute;width:190px;padding:13px 15px;border-left:2px solid var(--cyan);background:rgba(255,255,255,.04);z-index:3}.dae-map>a span{display:block;color:#65d6ec;font-size:10px}.dae-map>a b{display:block;font-size:17px}.dae-map>a small{color:#9fb6c2}.dae-map>a:nth-of-type(1){left:0;top:45px}.dae-map>a:nth-of-type(2){right:0;top:70px}.dae-map>a:nth-of-type(3){left:0;bottom:48px}.dae-map>a:nth-of-type(4){right:0;bottom:70px}
.two-worlds{padding:110px 0;background:var(--paper)}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.feature{min-height:520px;padding:56px;position:relative;overflow:hidden}.feature-tag{position:absolute;right:26px;top:24px;font-size:10px;letter-spacing:.13em;font-weight:900}.feature h2{font-size:45px;line-height:1.02;letter-spacing:-.045em;margin:0 0 24px}.feature h2 span{font-weight:400}.feature p:not(.kicker){font-size:17px;max-width:500px}.feature-ecm{background:#fff;border:1px solid var(--line);color:var(--navy)}.feature-ecm:after{content:"50";position:absolute;right:-10px;bottom:-105px;font-size:340px;line-height:1;font-weight:900;color:#edf4f6;z-index:0}.feature-ecm>*{position:relative;z-index:1}.feature-actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-top:50px}.feature-actions a{font-weight:800;border-bottom:1px solid #9eb1bb;padding-bottom:8px}.feature-school{background:linear-gradient(135deg,#0b5578,#07324e);color:#fff}.feature-school:after{content:"";position:absolute;width:360px;height:360px;border:70px solid rgba(0,168,207,.15);border-radius:50%;right:-170px;bottom:-170px}.feature-school p:not(.kicker){color:#c8dbe4}.feature-school .btn{position:relative;z-index:2}
.final-cta{padding:105px 0}.final-grid{display:grid;grid-template-columns:.5fr 1.1fr .7fr;gap:40px;align-items:start}.final-grid h2{font-size:50px;line-height:1.02;letter-spacing:-.045em;margin:0;color:var(--navy)}.final-grid h2 em{font-style:normal;color:var(--blue)}.final-grid>div p{margin-top:0;color:var(--muted)}
.site-footer{background:#031b2b;color:#b7c8d1;padding:70px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:60px}.footer-brand img{width:112px;height:128px;object-fit:contain;filter:brightness(0) invert(1);opacity:.9}.footer-brand p{max-width:320px;font-size:13px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:10px;font-size:13px}.footer-grid b{color:#fff;margin-bottom:8px}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid #244052;margin-top:55px;padding-top:22px;display:flex;justify-content:space-between;font-size:11px}
@media(max-width:1080px){.main-nav{gap:13px;font-size:12px}.hero-grid{gap:30px}.route{padding:25px}.business-copy{padding:45px}.dae-grid{gap:30px}}
@media(max-width:860px){
  :root{--shell:min(100% - 30px,720px)}.site-header{height:78px}.brand{height:68px;width:105px}.brand img{height:62px}.menu-toggle{margin-left:auto;display:flex;flex-direction:column;gap:4px;align-items:flex-end;padding:10px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy)}.menu-toggle b{font-size:9px;margin-top:2px}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px 24px 26px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line);gap:0}.main-nav.open{display:flex}.main-nav a{padding:12px 0;width:100%;border-bottom:1px solid #edf1f2}.main-nav a:after{display:none}
  .hero-grid{grid-template-columns:1fr;min-height:0;padding-bottom:45px}.hero-copy{padding:55px 0 0}.hero h1{font-size:58px}.hero-lead{font-size:17px}.hero-visual{height:430px}.hero-word{display:none}
  .section-head.compact,.evidence-grid,.business-top,.business-stage,.dae-grid,.split-grid,.final-grid{grid-template-columns:1fr}.routes,.business,.dae,.two-worlds,.final-cta{padding:75px 0}.section-head h2,.business-top h2,.dae-copy h2,.final-grid h2{font-size:40px}.section-head.compact{gap:10px}.route-grid{grid-template-columns:1fr}.route{min-height:270px;border-right:0;border-bottom:1px solid var(--line)}.route:last-child{border-bottom:0}.route-num{margin-bottom:40px}
  .evidence{padding:80px 0}.evidence-copy h2{font-size:42px}.evidence-gallery{height:450px}.business-top{gap:20px}.business-stage{min-height:0}.business-photo{height:360px}.business-copy{padding:38px 28px}.business-copy h3{font-size:33px}.dae-map{margin-top:25px}.feature{min-height:460px;padding:38px 28px}.feature h2{font-size:38px}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  :root{--shell:calc(100% - 28px)}.hero h1{font-size:49px}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.proofline{align-items:flex-start;flex-wrap:wrap}.proofline i{display:none}.hero-visual{height:370px}.photo-main{width:91%;height:78%}.photo-small{width:50%;height:43%;border-width:6px}.visual-note{min-width:0;width:72%;bottom:0;padding:14px}.section-head h2,.business-top h2,.dae-copy h2,.final-grid h2{font-size:35px}.evidence-copy h2{font-size:38px}.evidence-gallery{height:380px}.g1{width:75%}.g2{width:38%}.g3{left:10%;width:68%}.business-photo{height:300px}.dae-map{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:180px}.dae-center{top:0;transform:translateX(-50%);width:150px;height:150px}.dae-map:before,.dae-map:after{display:none}.dae-map>a{position:static!important;width:auto;min-height:105px}.split-grid{gap:14px}.feature{min-height:430px}.feature-ecm:after{font-size:250px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}
}


/* ===== HEADER V2 — unica modifica di questa revisione ===== */
.site-header{
  height:92px;
  transition:height .22s ease, box-shadow .22s ease, background .22s ease;
}
.header-inner{gap:34px}
.brand{
  width:auto;
  height:76px;
  display:flex;
  align-items:center;
  gap:11px;
  overflow:visible;
  flex:0 0 auto;
}
.brand img{
  width:64px;
  height:64px;
  object-fit:contain;
  object-position:center;
}
.brand-copy{
  display:flex;
  flex-direction:column;
  line-height:.84;
  letter-spacing:-.045em;
  transform:translateY(1px);
}
.brand-copy strong{
  color:#16374c;
  font-size:18px;
  font-weight:800;
}
.brand-copy b{
  color:var(--blue);
  font-size:22px;
  font-weight:900;
}
.main-nav{
  gap:20px;
  font-size:13px;
  font-weight:600;
}
.main-nav a{
  padding:35px 0 31px;
  position:relative;
}
.main-nav a::before{
  display:none;
}
.main-nav a{
  transition:color .18s ease;
}
.main-nav a:hover,
.main-nav a:focus-visible{
  color:var(--blue);
}
.main-nav a::after{
  display:none;
}
.main-nav a:last-child{
  padding-right:20px;
}
.main-nav a:last-child::after{
  content:"→";
  display:block;
  position:absolute;
  right:0;
  top:33px;
  bottom:auto;
  left:auto;
  height:auto;
  background:none;
  color:var(--blue);
  font-size:15px;
  line-height:1;
}

@media(max-width:1120px){
  .brand-copy strong{font-size:15px}
  .brand-copy b{font-size:19px}
  .brand img{width:56px;height:56px}
  .main-nav{gap:13px;font-size:12px}
}
@media(max-width:860px){
  .main-nav{top:78px}
  .main-nav a::before{display:none}
  .main-nav a:last-child::after{display:block}
}




/* ===== HEADER: stato unico, anche durante lo scroll ===== */
.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  height:92px;
  background:#fff;
  box-shadow:none;
}
.main-nav a{
  transition:color .18s ease;
}
.main-nav a:hover,
.main-nav a:focus-visible{
  color:var(--blue);
}
.main-nav a::before{
  display:none;
}
.main-nav a:last-child::after{
  display:block;
}


/* ===== HERO COPY V2 ===== */
.hero-copy{padding-top:76px}
.hero-lead{max-width:690px;margin:0 0 32px}
.hero-lead p{margin:0 0 14px}
.hero-lead p:last-child{margin-bottom:0}
.hero-lead strong{color:var(--navy);font-weight:800}
.hero-actions{gap:24px}
.text-link strong{font-weight:800}
.proofline{margin-top:48px;gap:12px}
.proofline strong{font-size:36px;line-height:1;letter-spacing:-.035em}
.proofline span{font-size:14px;line-height:1.2;max-width:90px}


/* ===== HERO V3 — correzioni concordate ===== */
.hero h1{
  font-size:clamp(58px,4.7vw,76px);
  line-height:.94;
  letter-spacing:-.058em;
}
.hero h1 span,
.hero h1 em{
  display:block;
  white-space:nowrap;
}
.hero-lead p:first-child{
  font-weight:400;
}
.photo-small img{
  object-position:center center;
}

@media(max-width:1080px){
  .hero h1{font-size:clamp(54px,6.2vw,68px)}
}
@media(max-width:720px){
  .hero h1{font-size:clamp(43px,12vw,58px)}
  .hero h1 span,
  .hero h1 em{white-space:normal}
}


/* ===== HERO V4 — CTA + PROVE, FOTO INVARIATE ===== */

.hero-organizza{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  width:auto;
  padding-bottom:0;
  border-bottom:0;
  line-height:1.25;
}
.hero-organizza::after{display:none}
.hero-organizza > strong{
  color:var(--navy);
  font-weight:800;
}
.hero-organizza .organizza-answer{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--cyan);
  font-weight:800;
}
.hero-organizza .organizza-answer b{
  font-size:18px;
  font-weight:700;
  transition:transform .18s ease;
}
.hero-organizza:hover .organizza-answer b{
  transform:translateX(4px);
}

.hero-proof{
  margin-top:46px;
  display:grid;
  grid-template-columns:1.22fr 1fr 1fr 1fr;
  align-items:stretch;
  max-width:820px;
  border-top:1px solid rgba(8,47,71,.14);
  border-bottom:1px solid rgba(8,47,71,.14);
}
.proof-main,
.proof-item{
  min-height:96px;
  padding:16px 18px;
}
.proof-main{
  padding-left:0;
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:10px;
  align-content:center;
}
.proof-main .proof-over{
  grid-column:1;
  align-self:end;
  font-size:10px;
  line-height:1;
  letter-spacing:.14em;
  font-weight:800;
  color:var(--cyan);
}
.proof-main strong{
  grid-column:1;
  grid-row:2;
  font-size:35px;
  line-height:.95;
  letter-spacing:-.045em;
  color:var(--navy);
}
.proof-main > span:last-child{
  grid-column:2;
  grid-row:1 / 3;
  align-self:center;
  font-size:12px;
  line-height:1.3;
  color:var(--muted);
}
.proof-item{
  border-left:1px solid rgba(8,47,71,.14);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
}
.proof-item strong{
  font-size:13px;
  line-height:1.18;
  color:var(--navy);
}
.proof-item span{
  font-size:11px;
  line-height:1.3;
  color:var(--muted);
}

@media(max-width:1100px){
  .hero-proof{
    grid-template-columns:1fr 1fr;
    max-width:650px;
  }
  .proof-item:nth-child(3){
    border-left:0;
    border-top:1px solid rgba(8,47,71,.14);
    padding-left:0;
  }
  .proof-item:nth-child(4){
    border-top:1px solid rgba(8,47,71,.14);
  }
}
@media(max-width:720px){
  .hero-proof{
    grid-template-columns:1fr;
    margin-top:34px;
  }
  .proof-main,
  .proof-item{
    min-height:auto;
    padding:14px 0;
  }
  .proof-item,
  .proof-item:nth-child(3),
  .proof-item:nth-child(4){
    border-left:0;
    border-top:1px solid rgba(8,47,71,.14);
  }
}


/* ===== HERO V5 — SOLO DUE PROVE FORTI ===== */
.hero-proof.hero-proof-two{
  grid-template-columns:1fr 1.55fr;
  max-width:650px;
}
.hero-proof-two .proof-main{
  min-height:94px;
}
.proof-territory{
  min-height:94px;
  padding:16px 22px;
  border-left:1px solid rgba(8,47,71,.14);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
}
.proof-territory strong{
  font-size:15px;
  line-height:1.18;
  color:var(--navy);
}
.proof-territory span{
  font-size:12px;
  line-height:1.35;
  color:var(--muted);
  max-width:270px;
}

@media(max-width:720px){
  .hero-proof.hero-proof-two{
    grid-template-columns:1fr;
  }
  .proof-territory{
    min-height:auto;
    padding:14px 0;
    border-left:0;
    border-top:1px solid rgba(8,47,71,.14);
  }
}


/* ===== HERO V6 — CTA CLICCABILE + COPERTURA ===== */

.hero-organizza{
  display:inline-flex;
  flex-direction:row;
  align-items:center;
  gap:13px;
  padding:7px 9px 7px 0;
  border-radius:6px;
  transition:background .18s ease, padding-left .18s ease;
}
.hero-organizza .organizza-copy{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.hero-organizza .organizza-answer{
  color:var(--cyan);
  font-weight:800;
}
.hero-organizza .organizza-go{
  width:27px;
  height:27px;
  border:1px solid rgba(0,153,219,.55);
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--cyan);
  font-size:16px;
  line-height:1;
  flex:0 0 auto;
  transition:transform .18s ease, background .18s ease, color .18s ease;
}
.hero-organizza:hover{
  background:rgba(0,153,219,.06);
  padding-left:9px;
}
.hero-organizza:hover .organizza-go{
  transform:translateX(3px);
  background:var(--cyan);
  color:#fff;
}

.hero-proof.hero-proof-three{
  grid-template-columns:1.05fr 1.65fr 1.15fr;
  max-width:820px;
  border-top:1px solid rgba(8,47,71,.13);
  border-bottom:0;
}
.hero-proof-three .proof-main,
.hero-proof-three .proof-territory,
.hero-proof-three .proof-online{
  min-height:92px;
}
.hero-proof-three .proof-territory,
.hero-proof-three .proof-online{
  padding:15px 18px;
  border-left:1px solid rgba(8,47,71,.13);
  display:flex;
  align-items:center;
  gap:12px;
}
.proof-icon{
  width:31px;
  height:31px;
  flex:0 0 31px;
  color:var(--cyan);
}
.proof-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.proof-copy{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.proof-copy strong{
  color:var(--navy);
  font-size:14px;
  line-height:1.2;
}
.proof-copy > span{
  color:var(--muted);
  font-size:11.5px;
  line-height:1.32;
}
.hero-proof-three .proof-main > span:last-child{
  font-size:12px;
}

@media(max-width:1100px){
  .hero-proof.hero-proof-three{
    grid-template-columns:1fr 1fr;
    max-width:650px;
  }
  .hero-proof-three .proof-online{
    grid-column:1 / -1;
    border-left:0;
    border-top:1px solid rgba(8,47,71,.13);
    padding-left:0;
  }
}
@media(max-width:720px){
  .hero-proof.hero-proof-three{
    grid-template-columns:1fr;
  }
  .hero-proof-three .proof-territory,
  .hero-proof-three .proof-online{
    grid-column:auto;
    min-height:auto;
    padding:14px 0;
    border-left:0;
    border-top:1px solid rgba(8,47,71,.13);
  }
}


/* ===== HERO V7 — MAPPE + RIFINITURE FINALI ===== */

/* Hero leggermente più vicina all'header, senza comprimerla */
.hero-copy{padding-top:54px}

/* CTA secondaria: indicatore più vicino al testo */
.hero-organizza{gap:9px}

/* Fascia prove: divisori più delicati */
.hero-proof.hero-proof-three{
  border-top-color:rgba(8,47,71,.095);
}
.hero-proof-three .proof-territory,
.hero-proof-three .proof-online{
  border-left-color:rgba(8,47,71,.095);
}

/* Più spazio al testo del dato principale */
.hero-proof-three .proof-main{
  grid-template-columns:auto minmax(118px,1fr);
  column-gap:12px;
}
.hero-proof-three .proof-main > span:last-child{
  font-size:12px;
  line-height:1.28;
  max-width:125px;
}

/* Sagome Sicilia / Italia */
.proof-icon{
  width:34px;
  height:34px;
  flex-basis:34px;
}
.proof-icon .map-icon{
  width:100%;
  height:100%;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.proof-online .proof-icon{
  height:39px;
}

@media(max-width:1100px){
  .hero-copy{padding-top:46px}
}
@media(max-width:720px){
  .hero-copy{padding-top:34px}
}


/* ===== HERO V8 — SAGOME GEOGRAFICHE REALI ===== */
.proof-icon{
  width:38px;
  height:38px;
  flex:0 0 38px;
  color:var(--cyan);
}
.proof-icon .map-icon{
  width:100%;
  height:100%;
  display:block;
  fill:currentColor;
  stroke:none;
}
.proof-territory .proof-icon{
  width:42px;
  flex-basis:42px;
}
.proof-online .proof-icon{
  width:30px;
  height:42px;
  flex-basis:30px;
}


/* ===== V9 — SOLO SICILIA: SAGOMA GEOGRAFICA REALE ===== */
.proof-territory .proof-icon{
  width:48px;
  height:32px;
  flex:0 0 48px;
  color:var(--cyan);
}
.proof-territory .proof-icon .map-sicilia-real{
  width:48px;
  height:32px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2.35;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* ===== V10 — CORREZIONI MIRATE ===== */

/* Sicilia: silhouette pulita e immediatamente riconoscibile */
.proof-territory .proof-icon{
  width:44px;
  height:34px;
  flex:0 0 44px;
  color:var(--cyan);
}
.proof-territory .proof-icon .map-sicilia-def{
  width:44px;
  height:34px;
  display:block;
  fill:currentColor;
  stroke:none;
}

/* Freccia CTA: centratura ottica nel cerchio */
.hero-organizza .organizza-go{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.hero-organizza .organizza-go{
  padding-bottom:1px;
}


/* ===== V11 — SOLO SICILIA DA IMMAGINE UTENTE + FRECCIA CTA ===== */

.proof-territory .proof-icon{
  width:48px;
  height:32px;
  flex:0 0 48px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.proof-territory .proof-icon .map-sicilia-img{
  display:block;
  width:48px;
  height:auto;
  max-height:32px;
  object-fit:contain;
}

/* annulla il padding della V10 e sposta DAVVERO la freccia verso l'alto */
.hero-organizza .organizza-go{
  padding-bottom:0 !important;
  line-height:1 !important;
  transform:translateY(-2px);
}


/* ===== V12 — CORREZIONI CHIRURGICHE ===== */

/* Sicilia: stessa sagoma fornita dall'utente, ora piena e leggibile */
.proof-territory .proof-icon .map-sicilia-img{
  width:48px;
  height:auto;
  max-height:32px;
  object-fit:contain;
  opacity:1;
}

/* Cerchio fermo: nessun transform sul contenitore */
.hero-organizza .organizza-go{
  transform:none !important;
  padding:0 !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* Si sposta SOLO il glifo della freccia */
.hero-organizza .organizza-arrow-glyph{
  display:block;
  line-height:1;
  transform:translateY(-2px);
}


/* ===== V13 — CHIUSURA FASCIA HERO ===== */

/* Freccia geometrica: centrata realmente nel cerchio */
.hero-organizza .organizza-go{
  transform:none !important;
  padding:0 !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.hero-organizza .organizza-arrow-svg{
  display:block;
  width:14px;
  height:14px;
  overflow:visible;
}
.hero-organizza .organizza-arrow-svg path{
  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Italia: +12% circa, senza modificare la Sicilia */
.proof-online .proof-icon{
  width:34px;
  height:47px;
  flex-basis:34px;
}
.proof-online .proof-icon .map-italia{
  width:34px;
  height:47px;
}

/* Fascia: titoli +9/10%, descrizioni +15% circa */
.hero-proof-three .proof-territory strong,
.hero-proof-three .proof-online strong{
  font-size:13px;
  line-height:1.22;
}

.hero-proof-three .proof-main > span:last-child,
.hero-proof-three .proof-territory span,
.hero-proof-three .proof-online span{
  font-size:12.5px;
  line-height:1.28;
}

/* Il testo del primo dato mantiene una larghezza utile */
.hero-proof-three .proof-main > span:last-child{
  max-width:132px;
}

/* ===== HERO V14 — COMPOSIZIONE FINALE FOTO ===== */
/* Intervento solo sulla composizione visiva destra della Hero.
   Nessun effetto artificiale sulla fotografia: resta fotografica e pulita. */

.hero-visual{
  height:555px;
}

/* Foto principale: leggermente più presente e con un taglio pulito */
.photo-main{
  right:0;
  top:0;
  width:82%;
  height:82%;
  border-radius:3px;
  overflow:hidden;
  box-shadow:0 16px 38px rgba(5,36,55,.10);
}

/* Mantiene leggibili aula, docente e partecipanti senza alterare la foto */
.photo-main img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}

/* La foto piccola si sovrappone in modo più intenzionale */
.photo-small{
  left:0;
  bottom:0;
  width:43%;
  height:42%;
  border:8px solid var(--paper);
  box-shadow:0 16px 36px rgba(5,36,55,.16);
  z-index:3;
}

/* Nota allineata alla foto principale e più integrata nel blocco */
.visual-note{
  right:0;
  bottom:20px;
  min-width:285px;
  padding:17px 21px;
  z-index:4;
}

/* Desktop: evita che il blocco fotografico sembri troppo distante dal copy */
@media(min-width:1081px){
  .hero-grid{
    gap:52px;
  }
}

@media(max-width:860px){
  .photo-main{
    width:88%;
    height:79%;
  }
  .photo-small{
    width:46%;
    height:42%;
  }
}

@media(max-width:560px){
  .photo-main{
    width:91%;
    height:78%;
  }
  .photo-small{
    width:50%;
    height:43%;
    border-width:6px;
  }
}

/* ===== HERO V15 — ALLINEAMENTO FINALE DESKTOP ===== */
/* Alza esclusivamente l'intero collage fotografico di 24px.
   Dimensioni, foto, sovrapposizioni, ombre e contenuti restano invariati. */
@media(min-width:1081px){
  .hero-visual{
    transform:translateY(-24px);
  }
}



/* ===== V16 — SEZIONE PERCORSI ===== */
/* Riduce il vuoto tra la fine visiva della Hero e l'inizio della sezione. */
.routes{
  padding:72px 0 96px;
}

.routes .section-head.compact{
  grid-template-columns:.75fr 1.25fr;
  align-items:start;
  margin-bottom:42px;
}

.routes .section-head h2{
  max-width:620px;
}

/* I tre percorsi sono link completi, ma mantengono il linguaggio editoriale. */
.route{
  min-height:330px;
  cursor:pointer;
}

.route-num{
  margin-bottom:54px;
}

.route p{
  font-size:16px;
  line-height:1.45;
}

.route > b{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:var(--blue);
}

.route > b span{
  font-size:17px;
  transition:transform .18s ease;
}

.route:hover > b span{
  transform:translateX(4px);
}

@media(max-width:860px){
  .routes{
    padding:62px 0 72px;
  }
  .routes .section-head.compact{
    margin-bottom:34px;
  }
  .route{
    min-height:260px;
  }
  .route-num{
    margin-bottom:34px;
  }
}


/* ===== V17 — PERCORSI, RIFINITURA FINALE ===== */
.routes{
  padding:42px 0 66px;
}

.routes .section-head.compact{
  margin-bottom:30px;
}

.route-grid{
  border-bottom:1px solid var(--line);
}

.route{
  min-height:282px;
  padding:28px 26px 24px;
  background:transparent;
  transition:background-color .18s ease;
}

.route-groups{
  background:transparent;
}

.route:hover,
.route-groups:hover{
  background:rgba(0,167,217,.045);
}

.route-num{
  margin-bottom:36px;
}

.route h3{
  margin-bottom:12px;
}

.route p{
  margin-bottom:20px;
}

@media(max-width:860px){
  .routes{
    padding:46px 0 58px;
  }

  .routes .section-head.compact{
    margin-bottom:26px;
  }

  .route{
    min-height:0;
    padding:28px 20px;
  }

  .route-num{
    margin-bottom:28px;
  }
}

/* ===== V19 — RIFINITURA SEZIONE "COSA DEVI IMPARARE?" ===== */

/* Sezione più compatta: meno vuoto sopra e sotto */
.routes{
  padding:38px 0 48px;
}

.routes .section-head.compact{
  margin-bottom:26px;
}

/* Mantiene la struttura editoriale, ma riduce l'altezza inutile */
.routes .route{
  min-height:266px;
  padding-top:26px;
  padding-bottom:22px;
}

/* 01 / 02 / 03: presenti, ma ancora secondari */
.routes .route-num{
  margin-bottom:32px;
  font-size:12px;
  font-weight:700;
  color:#8197a5;
}

/* CTA appena più leggibili, senza trasformarle in pulsanti */
.routes .route > b{
  font-size:14px;
  line-height:1.2;
  font-weight:800;
}

/* Riduce il vuoto prima della sezione successiva */
.routes .route-grid{
  margin-bottom:0;
}

@media(max-width:860px){
  .routes{
    padding:42px 0 48px;
  }

  .routes .section-head.compact{
    margin-bottom:24px;
  }

  .routes .route{
    min-height:0;
    padding-top:26px;
    padding-bottom:26px;
  }

  .routes .route-num{
    margin-bottom:24px;
  }
}

/* ===== HERO V20 — RIDUZIONE REALE DEL SOLO SPAZIO FINALE ===== */
@media(min-width:1081px){
  .hero-grid{
    min-height:0;
  }

  .hero-copy{
    padding-bottom:30px;
  }
}

/* ===== V21 — TITOLO SEZIONE PERCORSI ===== */
/* Solo intestazione della sezione: centrata e su una riga su desktop. */
@media(min-width:861px){
  .routes .section-head.compact{
    display:block;
    text-align:center;
  }

  .routes .section-head h2{
    max-width:none;
    width:100%;
    white-space:nowrap;
    text-align:center;
  }
}

/* ===== V22 — ORGANIZZA UN CORSO: DUE BISOGNI DISTINTI ===== */
.business-top.business-top-v2{
  display:grid;
  grid-template-columns:1fr 1.45fr;
  gap:10px 70px;
  align-items:start;
  margin-bottom:48px;
}

.business-top-v2 .kicker{
  grid-column:1 / -1;
  margin-bottom:6px;
}

.business-top-v2 h2{
  margin:0;
  font-size:52px;
  line-height:1.02;
  letter-spacing:-.045em;
  color:var(--navy);
}

.business-top-v2 > p:last-child{
  margin:5px 0 0;
  max-width:560px;
  font-size:17px;
  line-height:1.55;
  color:var(--muted);
}

.business-stage.business-stage-v2{
  grid-template-columns:.88fr 1.12fr;
  background:var(--ice);
}

.business-stage-v2 .business-photo{
  min-height:500px;
}

.business-options{
  padding:48px 56px 42px;
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:38px;
  align-content:center;
}

.business-option{
  min-width:0;
}

.business-option + .business-option{
  border-left:1px solid rgba(8,47,71,.14);
  padding-left:38px;
}

.business-option-label{
  display:block;
  margin-bottom:16px;
  color:var(--blue);
  font-size:10px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.12em;
}

.business-option h3{
  margin:0 0 16px;
  color:var(--navy);
  font-size:29px;
  line-height:1.08;
  letter-spacing:-.035em;
}

.business-option p{
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.5;
}

.business-main-link{
  grid-column:1 / -1;
  justify-self:start;
  margin-top:38px;
  padding-bottom:7px;
  border-bottom:1px solid #9fb2bd;
  color:var(--blue);
  font-size:14px;
  font-weight:800;
}

.business-main-link span{
  display:inline-block;
  margin-left:7px;
  font-size:18px;
  transition:transform .18s ease;
}

.business-main-link:hover span{
  transform:translateX(4px);
}

@media(max-width:860px){
  .business-top.business-top-v2{
    grid-template-columns:1fr;
    gap:14px;
    margin-bottom:34px;
  }

  .business-top-v2 .kicker{
    grid-column:auto;
    margin-bottom:0;
  }

  .business-top-v2 h2{
    font-size:40px;
  }

  .business-stage.business-stage-v2{
    grid-template-columns:1fr;
  }

  .business-stage-v2 .business-photo{
    min-height:0;
    height:340px;
  }

  .business-options{
    padding:36px 28px;
    grid-template-columns:1fr;
    gap:30px;
  }

  .business-option + .business-option{
    border-left:0;
    border-top:1px solid rgba(8,47,71,.14);
    padding-left:0;
    padding-top:30px;
  }

  .business-main-link{
    grid-column:auto;
    margin-top:4px;
  }
}

@media(max-width:560px){
  .business-top-v2 h2{
    font-size:35px;
  }

  .business-stage-v2 .business-photo{
    height:300px;
  }

  .business-option h3{
    font-size:27px;
  }
}


/* ===== V23 — ORGANIZZA UN CORSO: COPY DIRETTO + SPAZI COMPATTI ===== */
.business{padding:64px 0 78px}
.business-top.business-top-v3{display:block;margin:0 0 34px}
.business-top-v3 h2{max-width:850px;margin:0;color:var(--navy);font-size:48px;line-height:1.04;letter-spacing:-.045em}
.business-stage.business-stage-v3{grid-template-columns:.88fr 1.12fr;min-height:410px;background:var(--ice)}
.business-stage-v3 .business-photo{min-height:410px}
.business-options.business-options-v3{padding:42px 48px 36px;display:grid;grid-template-columns:1fr 1fr;column-gap:34px;align-content:center}
.business-options-v3 .business-option + .business-option{border-left:1px solid rgba(8,47,71,.14);padding-left:34px}
.business-options-v3 .business-option h3{margin:0 0 14px;color:var(--navy);font-size:27px;line-height:1.1;letter-spacing:-.035em}
.business-options-v3 .business-option p{margin:0;color:var(--muted);font-size:16px;line-height:1.5}
.business-options-v3 .business-main-link{grid-column:1/-1;justify-self:start;margin-top:34px}
@media(max-width:860px){
  .business{padding:52px 0 62px}
  .business-top.business-top-v3{margin-bottom:28px}
  .business-top-v3 h2{font-size:40px}
  .business-stage.business-stage-v3{grid-template-columns:1fr;min-height:0}
  .business-stage-v3 .business-photo{min-height:0;height:340px}
  .business-options.business-options-v3{padding:34px 28px;grid-template-columns:1fr;gap:28px}
  .business-options-v3 .business-option + .business-option{border-left:0;border-top:1px solid rgba(8,47,71,.14);padding-left:0;padding-top:28px}
  .business-options-v3 .business-main-link{grid-column:auto;margin-top:2px}
}
@media(max-width:560px){
  .business{padding:44px 0 54px}
  .business-top-v3 h2{font-size:35px}
  .business-stage-v3 .business-photo{height:300px}
  .business-options-v3 .business-option h3{font-size:26px}
}

/* ===== V24 — RIFINITURA ORGANIZZA UN CORSO ===== */
/* Riduce il vuoto superiore e mantiene il titolo generale su una riga desktop. */
@media(min-width:861px){
  .business{
    padding-top:32px;
  }

  .business-top.business-top-v3{
    margin-bottom:28px;
  }

  .business-top-v3 h2{
    max-width:none;
    white-space:nowrap;
    font-size:44px;
  }
}

/* ===== V25 — CHIUSURA ORGANIZZA UN CORSO ===== */
@media(min-width:861px){
  /* Compatta sopra, tra titolo e blocco, e sotto */
  .business{
    padding-top:14px;
    padding-bottom:38px;
  }

  .business-top.business-top-v3{
    margin-bottom:20px;
  }

  /* CTA più evidente, senza trasformarla in un pulsantone */
  .business-options-v3 .business-main-link{
    margin-top:30px;
    padding:10px 14px 10px 0;
    border-bottom:2px solid var(--blue);
    font-size:15px;
    line-height:1.2;
  }
}

/* ===== V26 — RIFINITURA FINALE ORGANIZZA UN CORSO ===== */
@media(min-width:861px){
  /* Meno vuoto sopra */
  .business{
    padding-top:0;
  }

  /* Titolo presente ma non dominante */
  .business-top.business-top-v3{
    margin-bottom:18px;
  }

  .business-top-v3 h2{
    font-size:40px;
  }

  /* Più spazio all'offerta, meno alla fotografia */
  .business-stage.business-stage-v3{
    grid-template-columns:.80fr 1.20fr;
  }

  /* CTA più pulita: niente riga lunga da campo/form */
  .business-options-v3 .business-main-link{
    margin-top:28px;
    padding:8px 0 5px;
    border-bottom:0;
    font-size:15px;
  }

  .business-options-v3 .business-main-link::after{
    content:"";
    display:block;
    width:54px;
    height:2px;
    margin-top:7px;
    background:var(--blue);
  }

  /* Fascetta fotografica più leggibile e meno tecnica */
  .business-stage-v3 .business-photo span{
    padding:9px 14px;
    font-size:11px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.02em;
    text-transform:none;
  }
}


/* ===== V28 — FOTO DEFINITIVA ORGANIZZA UN CORSO ===== */
@media(min-width:861px){
  .business{padding-top:0;padding-bottom:30px}
  .business-top.business-top-v3{margin-bottom:16px}
  .business-stage.business-stage-v3{
    grid-template-columns:.92fr 1.08fr;
    min-height:360px;
  }
  .business-stage-v3 .business-photo{min-height:360px}
  .business-stage-v3 .business-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
  }
  .business-options.business-options-v3{padding:34px 40px 30px}
  .business-options-v3 .business-main-link{
    margin-top:25px;
    padding:8px 0 0;
    border:0;
  }
  .business-options-v3 .business-main-link::after{
    content:none;
    display:none;
  }
}



/* ===== V29 — CHIUSURA SEZIONE ORGANIZZA UN CORSO ===== */
@media(min-width:861px){
  /* Blocco più basso e più denso */
  .business-stage.business-stage-v3{
    min-height:310px;
  }

  .business-stage-v3 .business-photo{
    min-height:310px;
    height:310px;
    overflow:hidden;
  }

  /* Crop più stretto: meno peso ai corsisti in primo piano */
  .business-stage-v3 .business-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:50% 45%;
  }

  .business-options.business-options-v3{
    padding:30px 40px 26px;
    align-content:center;
  }

  /* CTA vicina alle due proposte e graficamente autonoma */
  .business-options-v3 .business-main-link{
    grid-column:1 / -1;
    display:inline-flex;
    align-items:center;
    gap:9px;
    justify-self:start;
    width:auto;
    margin-top:22px;
    padding:10px 16px;
    border:1px solid rgba(0,126,196,.38);
    border-radius:3px;
    font-size:14px;
    line-height:1.15;
    font-weight:900;
    color:var(--blue);
  }

  .business-options-v3 .business-main-link::after{
    content:none;
    display:none;
  }

  .business-options-v3 .business-main-link:hover{
    border-color:var(--blue);
  }
}



/* ===== V30 — CTA COMUNE ALLE DUE PROPOSTE ===== */
@media(min-width:861px){
  .business-options.business-options-v3{
    padding:30px 40px 24px;
  }

  .business-options-v3 .business-main-link{
    grid-column:1 / -1;
    justify-self:stretch;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:9px;
    width:100%;
    margin-top:20px;
    padding:16px 0 0;
    border:0;
    border-top:1px solid rgba(8,47,71,.16);
    border-radius:0;
    background:transparent;
    color:var(--blue);
    font-size:15px;
    line-height:1.2;
    font-weight:900;
  }

  .business-options-v3 .business-main-link:hover{
    border-color:rgba(8,47,71,.16);
  }

  .business-options-v3 .business-main-link span{
    margin-left:2px;
  }
}



/* ===== V31 — CTA CENTRATA ===== */
@media(min-width:861px){
  .business-options-v3 .business-main-link{
    justify-content:center;
    text-align:center;
  }
}



/* ===== V32 — DAE: MESSAGGIO COMMERCIALE DIRETTO ===== */
@media(min-width:861px){
  /* Meno vuoto prima del contenuto DAE */
  .dae{
    padding-top:72px;
    padding-bottom:82px;
  }

  /* Titolo più adatto a una domanda diretta */
  .dae-copy h2{
    max-width:560px;
    font-size:48px;
    line-height:1.04;
    letter-spacing:-.04em;
  }

  .dae-copy p{
    max-width:570px;
  }
}


/* ===== V33 — RIFINITURA DAE ===== */
@media(min-width:861px){
  .dae{padding-top:42px}
  .dae-copy .eyebrow:empty,
  .dae-copy .kicker:empty{display:none}
  .dae-copy h2{
    max-width:620px;
    margin-top:0;
    font-size:46px;
    line-height:1.04;
  }
  .dae-copy p{
    max-width:590px;
    line-height:1.55;
  }
  .dae-step,
  .dae-card{font-size:1.04em}
}



/* ===== V34 — DAE: titolo su due righe + pulizia numeri ===== */
@media(min-width:861px){
  .dae-copy h2{
    max-width:660px;
    font-size:44px;
    line-height:1.04;
    letter-spacing:-.035em;
  }
  .dae-title-line{
    display:block;
    white-space:nowrap;
  }
  .dae-copy p{
    max-width:610px;
  }
}
@media(max-width:860px){
  .dae-title-line{
    display:block;
  }
}



/* ===== V35 — DAE: schema orientato al ciclo cliente ===== */
@media(min-width:861px){
  .dae-copy p{
    max-width:600px;
    line-height:1.52;
  }

  /* Più gerarchia ai 4 momenti del servizio, senza cambiare il layout */
  .dae-step strong,
  .dae-card strong{
    display:block;
    font-size:1.08em;
    line-height:1.15;
  }
}



/* ===== V36 — DAE: schema reale a 5 blocchi ===== */
@media(min-width:861px){
  .dae-map-five > a{
    width:205px;
    padding:12px 14px;
  }
  .dae-map-five > a small{
    display:block;
    margin-top:4px;
    line-height:1.45;
  }

  /* Cinque funzioni distinte intorno al DAE */
  .dae-map-five > a.dae-choice{
    left:0;
    top:30px;
    right:auto;
    bottom:auto;
  }
  .dae-map-five > a.dae-buy{
    right:0;
    top:52px;
    left:auto;
    bottom:auto;
  }
  .dae-map-five > a.dae-parts{
    right:0;
    bottom:42px;
    left:auto;
    top:auto;
  }
  .dae-map-five > a.dae-checks{
    left:50%;
    bottom:-2px;
    top:auto;
    right:auto;
    transform:translateX(-50%);
  }
  .dae-map-five > a.dae-training{
    left:0;
    bottom:42px;
    right:auto;
    top:auto;
  }

  .dae-copy p{
    max-width:545px;
  }
}

@media(max-width:560px){
  .dae-map-five{
    grid-template-columns:1fr;
    padding-top:180px;
  }
  .dae-map-five > a{
    position:static!important;
    transform:none!important;
    width:auto;
  }
}



/* ===== V38 — DAE: 5 blocchi distribuiti realmente attorno al centro ===== */
@media(min-width:861px){
  .dae-map-five{
    position:relative;
  }

  .dae-map-five > a{
    width:190px;
    padding:12px 14px;
  }

  /* pentagono: alto sx / alto dx / basso dx / basso centro / basso sx */
  .dae-map-five > a.dae-choice{
    left:3%;
    top:5%;
    right:auto;
    bottom:auto;
    transform:none;
  }

  .dae-map-five > a.dae-buy{
    right:3%;
    top:5%;
    left:auto;
    bottom:auto;
    transform:none;
  }

  .dae-map-five > a.dae-parts{
    right:0;
    top:auto;
    bottom:8%;
    left:auto;
    transform:none;
  }

  .dae-map-five > a.dae-checks{
    left:50%;
    top:auto;
    bottom:-3%;
    right:auto;
    transform:translateX(-50%);
  }

  .dae-map-five > a.dae-training{
    left:0;
    top:auto;
    bottom:8%;
    right:auto;
    transform:none;
  }
}



/* ===== V39 — DAE: pentagono più aperto + separazione delle due frasi ===== */
@media(min-width:861px){
  .dae-map-five > a{
    width:180px;
  }

  .dae-map-five > a.dae-choice{
    left:-1%;
    top:4%;
    right:auto;
    bottom:auto;
    transform:none;
  }

  .dae-map-five > a.dae-buy{
    right:-1%;
    top:4%;
    left:auto;
    bottom:auto;
    transform:none;
  }

  .dae-map-five > a.dae-training{
    left:-4%;
    bottom:5%;
    right:auto;
    top:auto;
    transform:none;
  }

  .dae-map-five > a.dae-parts{
    right:-4%;
    bottom:5%;
    left:auto;
    top:auto;
    transform:none;
  }

  .dae-map-five > a.dae-checks{
    left:50%;
    bottom:-8%;
    right:auto;
    top:auto;
    transform:translateX(-50%);
  }
}



/* ===== V40 — DAE: 5 servizi in corona regolare ===== */
@media(min-width:861px){
  .dae-map-five > a{
    width:170px;
  }

  /* vertice */
  .dae-map-five > a.dae-choice{
    left:50%;
    top:-1%;
    right:auto;
    bottom:auto;
    transform:translateX(-50%);
  }

  /* diagonale alta destra */
  .dae-map-five > a.dae-buy{
    right:-2%;
    top:29%;
    left:auto;
    bottom:auto;
    transform:none;
  }

  /* diagonale bassa destra */
  .dae-map-five > a.dae-parts{
    right:8%;
    bottom:2%;
    left:auto;
    top:auto;
    transform:none;
  }

  /* diagonale bassa sinistra */
  .dae-map-five > a.dae-training{
    left:8%;
    bottom:2%;
    right:auto;
    top:auto;
    transform:none;
  }

  /* diagonale alta sinistra */
  .dae-map-five > a.dae-checks{
    left:-2%;
    top:29%;
    right:auto;
    bottom:auto;
    transform:none;
  }
}

/* ===== V42 — DAE: testo in due blocchi + corona a 5 servizi regolare ===== */
.dae-copy > p{
  color:#b8cbd5;
  font-size:17px;
  max-width:610px;
  line-height:1.55;
}
.dae-copy > p + p{
  margin-top:8px;
}

@media(min-width:861px){
  .dae-map-five > a{
    width:180px;
    min-height:92px;
    padding:12px 14px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }

  /* Corona regolare: un blocco in alto, due laterali alti, due laterali bassi */
  .dae-map-five > a.dae-choice{
    left:50%;
    top:0;
    right:auto;
    bottom:auto;
    transform:translateX(-50%);
  }
  .dae-map-five > a.dae-checks{
    left:0;
    top:30%;
    right:auto;
    bottom:auto;
    transform:none;
  }
  .dae-map-five > a.dae-buy{
    right:0;
    top:30%;
    left:auto;
    bottom:auto;
    transform:none;
  }
  .dae-map-five > a.dae-training{
    left:10%;
    bottom:0;
    right:auto;
    top:auto;
    transform:none;
  }
  .dae-map-five > a.dae-parts{
    right:10%;
    bottom:0;
    left:auto;
    top:auto;
    transform:none;
  }
}

/* ===== ECM HOME — revisione commerciale ===== */
.feature-ecm h2 strong{font-weight:850}
.feature-ecm .feature-actions{margin-top:42px}
.feature-ecm .feature-primary-link{
  display:inline-flex;
  align-items:center;
  gap:18px;
  padding:13px 16px;
  border:1px solid #8fc6dc;
  color:var(--blue);
  font-weight:850;
}
.feature-ecm .feature-primary-link:hover{background:var(--ice)}

/* ===== V43 — HOME: ritmo verticale ECM/Scuole + CTA finale ===== */
@media(min-width:861px){
  /* Riduce solo gli spazi esterni delle due sezioni, senza toccare card o DAE */
  .two-worlds{
    padding-top:72px;
    padding-bottom:38px;
  }
  .final-cta{
    padding-top:40px;
    padding-bottom:72px;
  }
}

/* ===== V44 — HOME: chiusura sezione DAE più compatta ===== */
@media(min-width:861px){
  .dae{
    padding-bottom:60px;
  }
}

/* ===== V45 — HOME: ECM/Scuole centrata verticalmente ===== */
@media(min-width:861px){
  .two-worlds{
    padding-top:60px;
    padding-bottom:60px;
  }
}


/* ===== V46 — ECM/SCUOLE: equilibrio interno e copy ===== */
.feature-ecm .online-more{
  margin-top:38px;
  padding-top:24px;
  border-top:1px solid var(--line);
  max-width:500px;
}
.feature-ecm .online-more h3{
  margin:0 0 8px;
  font-size:20px;
  line-height:1.15;
  color:var(--navy);
}
.feature-ecm .online-more p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.5;
  color:var(--muted);
}
.feature-ecm .online-more a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding-bottom:6px;
  border-bottom:1px solid #9eb1bb;
  font-size:14px;
  font-weight:800;
  color:var(--navy);
}
.feature-school .school-copy{position:relative;z-index:2}
.feature-school .school-copy p{margin:0 0 18px}
.feature-school .school-copy p:last-child{margin-bottom:0}
.feature-school .school-copy strong{color:#fff}
.feature-school .btn{margin-top:26px}

@media(max-width:860px){
  .feature-ecm .online-more{margin-top:32px;padding-top:22px}
  .feature-school .school-copy p{margin-bottom:16px}
}


/* ===== V47 — HOME: CTA finale + footer ===== */
.final-grid{grid-template-columns:1.35fr .65fr;gap:90px;align-items:center}
.final-grid h2{max-width:760px}
.final-grid h2 em{display:inline;color:var(--blue)}
.final-grid>div p{font-size:16px;line-height:1.55;max-width:460px;margin-bottom:22px}
.footer-brand img{width:170px;height:auto;object-fit:contain;filter:none;opacity:1;background:#fff;padding:10px 12px;border-radius:4px}
.footer-brand p{margin-top:16px}
@media(max-width:860px){
  .final-grid{grid-template-columns:1fr;gap:26px}
  .final-grid>div p{max-width:620px}
}

/* ===== V48 — HOME: CTA finale ripristinata e contatto WhatsApp ===== */
@media(min-width:861px){
  .final-cta{padding-top:52px;padding-bottom:58px}
  .final-grid{grid-template-columns:1.45fr .55fr;gap:78px;align-items:center}
  .final-grid h2{max-width:780px;font-size:48px;line-height:1.02}
}
.final-grid>div{display:flex;flex-direction:column;align-items:flex-start}
.final-grid>div p{margin:0 0 20px}
.final-contact-link{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding-bottom:5px;border-bottom:1px solid #a9b8c0;color:var(--navy);font-size:13px;font-weight:750}
.final-contact-link span{font-size:17px}
.footer-brand img{width:170px;height:auto;object-fit:contain;filter:none;opacity:1;background:#fff;padding:10px 12px;border-radius:4px}
@media(max-width:860px){
  .final-grid{grid-template-columns:1fr;gap:24px}
  .final-grid h2{max-width:620px}
}

/* ===== V49 — HOME: chiusura compatta + footer brand ===== */
.final-cta{padding:46px 0 48px}
.final-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:70px;align-items:center}
.final-copy h2{margin:0 0 8px;max-width:760px;font-size:38px;line-height:1.06;letter-spacing:-.035em;color:var(--navy)}
.final-copy p{margin:0!important;max-width:none!important;font-size:17px!important;line-height:1.45!important;color:var(--muted)}
.final-copy p strong{color:var(--navy)}
.final-actions{display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:center}
.final-actions .whatsapp-cta{white-space:nowrap}
.final-contact-link{margin-top:10px;font-size:12px;font-weight:700}

.footer-brand .footer-logo{display:inline-flex;align-items:center;gap:11px;text-decoration:none}
.footer-brand .footer-logo img{width:46px;height:58px;padding:0;background:transparent;border-radius:0;filter:none;opacity:1;object-fit:contain}
.footer-brand .footer-logo span{display:flex;flex-direction:column;font-size:16px;line-height:.9;letter-spacing:-.03em}
.footer-brand .footer-logo strong{color:#fff;font-weight:850}
.footer-brand .footer-logo b{color:var(--blue);font-weight:900;margin:0}
.footer-brand p{margin-top:14px;max-width:300px}

@media (max-width:900px){
  .final-cta{padding:42px 0 46px}
  .final-grid{grid-template-columns:1fr;gap:24px}
  .final-copy h2{font-size:34px}
}


/* ===== V50 — rifinitura chiusura + footer ===== */
@media (min-width:901px){
  .final-cta{padding-top:30px;padding-bottom:42px}
}
.footer-brand .footer-logo{gap:13px}
.footer-brand .footer-logo img{width:56px;height:70px}
.footer-brand .footer-logo span{font-size:17px}

/* ===== V51 — rifinitura finale CTA e payoff footer ===== */
@media (min-width:901px){
  .final-cta{padding-top:14px;padding-bottom:42px}
}
.footer-brand .footer-logo{gap:14px}
.footer-brand .footer-logo img{width:66px;height:83px}
.footer-brand .footer-logo span{font-size:18px}
.footer-bottom span:last-child{font-size:13px;font-weight:700;color:#e7f0f5;letter-spacing:-.01em}
.footer-bottom span:last-child::first-line{color:#e7f0f5}

/* ===== V52 — riduzione aria superiore CTA e footer ===== */
@media (min-width: 861px){
  .final-cta{padding-top:0}
}
.site-footer{padding-top:50px}

/* =========================================================
   PAGINA BLSD — V2
   ========================================================= */
.bls-page{background:#fff;color:#082d49}.bls-shell{max-width:1060px;margin:0 auto;padding:0 24px}.bls-hero{background:#f7f8f5;padding:36px 0 44px;border-bottom:1px solid #e3e8eb}.bls-hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(390px,.97fr);gap:72px;align-items:center}.bls-eyebrow{margin:0 0 14px;color:#008ecb;font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.bls-hero h1{font-size:58px;line-height:.98;letter-spacing:-.045em;margin:0 0 22px;max-width:650px}.bls-hero h1 span,.bls-head h2 span,.bls-copy h2 span{color:#008ecb}.bls-lead{font-size:19px;line-height:1.55;color:#536b7c;max-width:620px;margin:0 0 17px}.bls-hero-punch{font-size:19px;line-height:1.4;margin:0 0 25px}.bls-price-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.bls-price{display:flex;align-items:baseline;gap:7px}.bls-price strong{font-size:30px;line-height:1}.bls-price span{font-size:14px;color:#617483}.bls-hero-note{margin:13px 0 0;font-size:12px;font-weight:750;color:#647786}.bls-hero-photo img{width:100%;height:500px;object-fit:cover;display:block}.bls-section{padding:72px 0}.bls-section.alt{background:#f7f8f5}.bls-section.dark{background:#062e49;color:#fff}.bls-head{max-width:760px;margin-bottom:34px}.bls-head-wide{max-width:830px}.bls-head h2,.bls-copy h2{font-size:42px;line-height:1.05;letter-spacing:-.035em;margin:0 0 14px}.bls-head p,.bls-copy p{font-size:17px;line-height:1.6;color:#607483;margin:0 0 16px}.bls-split{display:grid;grid-template-columns:.94fr 1.06fr;gap:66px;align-items:center}.bls-split.reverse{grid-template-columns:1.05fr .95fr}.bls-media{margin:0}.bls-media img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover}
.bls-method{padding-top:68px}.bls-method-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d8e2e7;border-bottom:1px solid #d8e2e7}.bls-method-grid article{padding:26px 22px 28px;border-right:1px solid #d8e2e7}.bls-method-grid article:first-child{padding-left:0}.bls-method-grid article:last-child{border-right:0;padding-right:0}.bls-method-grid article>span{display:block;color:#08a8d2;font-size:12px;font-weight:900;letter-spacing:.12em;margin-bottom:15px}.bls-method-grid h3{font-size:23px;margin:0 0 9px}.bls-method-grid p{margin:0;color:#607483;font-size:14px;line-height:1.55}
.bls-teacher-proof{margin-top:26px;padding-top:20px;border-top:1px solid #d7e0e4;display:flex;flex-direction:column;gap:4px}.bls-teacher-proof strong{font-size:17px}.bls-teacher-proof span{font-size:13px;color:#647786}
.bls-tools-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.bls-tool{padding:27px 28px;border:1px solid #d9e3e7;background:#fff;min-height:170px}.bls-tool-featured{grid-row:span 2;background:#062e49;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;min-height:354px}.bls-tool h3{font-size:22px;line-height:1.12;margin:0 0 11px}.bls-tool p{font-size:14px;line-height:1.58;color:#607483;margin:0}.bls-tool-featured h3{font-size:30px}.bls-tool-featured p{font-size:16px;color:#d2dde3;max-width:470px}
.bls-pediatric .bls-eyebrow{color:#2fc4e6}.bls-pediatric h2{font-size:42px;line-height:1.06;letter-spacing:-.035em;margin:0 0 20px}.bls-pediatric h2 span{color:#27bde2}.bls-pediatric p{font-size:17px;line-height:1.62;color:#d2dde3;margin:0 0 16px}.bls-pediatric p strong{color:#fff}.bls-pediatric .bls-media img{aspect-ratio:1.12/1}
.bls-certification .bls-cert-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:start}.bls-cert-list{display:grid;border-top:1px solid #d4dee3}.bls-cert-item{padding:16px 0;border-bottom:1px solid #d4dee3}.bls-cert-item strong{font-size:18px;display:block;margin-bottom:4px}.bls-cert-item span{font-size:14px;color:#667986;line-height:1.45}.bls-cert-callout{background:#062e49;color:#fff;padding:34px}.bls-cert-callout h3{font-size:28px;line-height:1.1;margin:0 0 13px}.bls-cert-callout p{color:#d3dee4;line-height:1.6;margin:0}.light-callout{margin-top:38px}
.bls-summary{padding-top:64px;padding-bottom:64px}.bls-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d8e2e7;border-left:1px solid #d8e2e7}.bls-summary-grid>div{padding:22px 24px;border-right:1px solid #d8e2e7;border-bottom:1px solid #d8e2e7}.bls-summary-grid strong{display:block;font-size:18px;margin-bottom:4px}.bls-summary-grid span{font-size:13px;color:#657986}
.bls-dates{display:grid;gap:12px}.bls-date{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:24px;border:1px solid #dce4e8;padding:20px 22px;background:#fff}.bls-date-date strong{font-size:29px;line-height:1;display:block}.bls-date-date span{font-size:12px;color:#637685;text-transform:uppercase;letter-spacing:.08em}.bls-date-place strong{display:block;font-size:19px;margin-bottom:3px}.bls-date-place span{font-size:14px;color:#687b89}.bls-date .btn{white-space:nowrap}.bls-no-city{margin-top:22px;padding:22px 25px;background:#eaf6fa;display:flex;justify-content:space-between;align-items:center;gap:24px}.bls-no-city p{margin:0;font-size:16px}.bls-no-city a{color:#062e49}.bls-faq-section{padding-top:64px}.bls-faq{max-width:850px}.bls-faq details{border-top:1px solid #d9e1e5}.bls-faq details:last-child{border-bottom:1px solid #d9e1e5}.bls-faq summary{cursor:pointer;font-weight:850;font-size:18px;padding:19px 4px;list-style:none}.bls-faq summary::-webkit-details-marker{display:none}.bls-faq details p{padding:0 4px 19px;margin:0;color:#607483;line-height:1.6}.bls-final{background:#08a8d2;color:#062e49;padding:52px 0}.bls-final-grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.bls-final h2{font-size:39px;line-height:1.08;letter-spacing:-.035em;margin:0 0 8px}.bls-final p{margin:0;font-size:17px}.bls-final .btn{background:#062e49;color:#fff;border-color:#062e49}.bls-secondary-link{display:inline-block;margin-left:18px;color:#062e49;font-weight:800;border-bottom:1px solid rgba(6,46,73,.35);padding-bottom:4px}
@media(max-width:900px){.bls-hero-grid,.bls-split,.bls-split.reverse,.bls-certification .bls-cert-grid{grid-template-columns:1fr;gap:36px}.bls-hero h1{font-size:46px}.bls-hero-photo img{height:auto}.bls-method-grid{grid-template-columns:1fr 1fr}.bls-method-grid article,.bls-method-grid article:first-child,.bls-method-grid article:last-child{padding:24px;border-right:1px solid #d8e2e7;border-bottom:1px solid #d8e2e7}.bls-tools-grid{grid-template-columns:1fr}.bls-tool-featured{grid-row:auto;min-height:260px}.bls-summary-grid{grid-template-columns:1fr 1fr}.bls-date{grid-template-columns:100px 1fr}.bls-date .btn{grid-column:1/-1;width:max-content}.bls-final-grid{grid-template-columns:1fr}}
@media(max-width:600px){.bls-shell{padding:0 18px}.bls-hero{padding:40px 0}.bls-hero h1{font-size:40px}.bls-head h2,.bls-copy h2,.bls-pediatric h2{font-size:34px}.bls-section{padding:54px 0}.bls-method-grid,.bls-summary-grid{grid-template-columns:1fr}.bls-method-grid article,.bls-method-grid article:first-child,.bls-method-grid article:last-child{padding:22px 0;border-right:0}.bls-tool-featured{min-height:auto}.bls-date{grid-template-columns:1fr;gap:10px}.bls-no-city{align-items:flex-start;flex-direction:column}.bls-final h2{font-size:33px}.bls-secondary-link{display:block;margin:16px 0 0}.bls-price-row{align-items:flex-start}.bls-pediatric .bls-media img{aspect-ratio:4/3}}

/* BLSD — affinamento sezione metodo */
.bls-method{padding-top:56px;padding-bottom:50px}
.bls-method .bls-head{margin-bottom:28px}
.bls-method-grid p strong{color:#082d49;font-weight:800}
@media(max-width:600px){.bls-method{padding-top:48px;padding-bottom:44px}}

/* BLSD — sezione docente: riduzione spazio verticale, foto invariata */
@media (min-width: 601px){
  .bls-teaching{padding-top:48px;padding-bottom:48px}
}
@media (max-width: 600px){
  .bls-teaching{padding-top:38px;padding-bottom:38px}
}

/* BLSD — sezione centrale di vendita: pratica spiegata e dimostrata */
.bls-proof-intro{max-width:900px;margin-bottom:42px}
.bls-proof-intro>p:last-child{max-width:820px}
.bls-proof-block{display:grid;grid-template-columns:64px minmax(0,1fr);gap:24px;padding:38px 0;border-top:1px solid #d8e2e7}
.bls-proof-block:last-of-type{border-bottom:1px solid #d8e2e7}
.bls-proof-number{font-size:13px;font-weight:900;letter-spacing:.12em;color:#08a8d2;padding-top:7px}
.bls-proof-copy{max-width:820px}
.bls-proof-copy h3{font-size:31px;line-height:1.12;letter-spacing:-.025em;margin:0 0 18px;color:#082d49}
.bls-proof-copy h3 span{color:#008ecb}
.bls-proof-copy p{font-size:16px;line-height:1.68;color:#5e7382;margin:0 0 14px}
.bls-proof-copy p strong{color:#082d49}
.bls-proof-punch{font-size:18px!important;line-height:1.5!important;margin:20px 0!important;max-width:760px}
.bls-proof-close{max-width:900px;margin:42px 0 0;padding:30px 32px;background:#eef8fb;border-left:4px solid #08a8d2}
.bls-proof-flow{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin:0 0 18px!important;color:#082d49!important;font-size:13px!important;letter-spacing:.06em}
.bls-proof-flow span{color:#08a8d2;font-weight:900}
.bls-proof-close h3{font-size:27px;line-height:1.15;margin:0 0 10px;color:#082d49}
.bls-proof-close>p:last-child{font-size:16px;line-height:1.62;color:#5e7382;margin:0}
@media(max-width:600px){
  .bls-proof-intro{margin-bottom:28px}
  .bls-proof-block{grid-template-columns:1fr;gap:8px;padding:30px 0}
  .bls-proof-number{padding-top:0}
  .bls-proof-copy h3{font-size:26px}
  .bls-proof-copy p{font-size:15px}
  .bls-proof-punch{font-size:17px!important}
  .bls-proof-close{margin-top:30px;padding:24px 20px}
  .bls-proof-flow{gap:7px;font-size:11px!important}
}

/* BLSD — rifinitura layout desktop 04-10-2026 — SOLO CSS, testi invariati */
@media (min-width: 901px){
  /* ritmo verticale tra le macro-sezioni */
  .bls-method{padding-top:50px;padding-bottom:42px}
  .bls-teaching{padding-top:44px;padding-bottom:44px}
  .bls-tools{padding-top:50px;padding-bottom:50px}
  .bls-certification{padding-top:52px;padding-bottom:42px}
  #prossimi-corsi{padding-top:48px;padding-bottom:48px}
  .bls-faq-section{padding-top:48px;padding-bottom:50px}

  /* l'introduzione alla pratica non deve restare sospesa */
  .bls-proof-intro{margin-bottom:18px}

  /* etichette RCP / DISOSTRUZIONE / DAE / PLS sopra il titolo, non in colonna */
  .bls-proof-block{display:block;max-width:900px;padding:34px 0}
  .bls-proof-label{display:block;margin:0 0 10px;padding:0}
  .bls-proof-copy{max-width:820px}

  /* evita il grande vuoto prima e dopo il box numero chiuso */
  .bls-proof-close{margin-top:32px}

  /* certificazione più compatta verso le date */
  .bls-certification .bls-head{margin-bottom:26px}
  .bls-certification .light-callout{margin-top:28px}

  /* date e FAQ più vicine: sono parte dello stesso tratto di conversione */
  #prossimi-corsi .bls-head{margin-bottom:26px}
  .bls-faq-section .bls-head{margin-bottom:24px}
}

@media (max-width: 900px){
  .bls-proof-label{margin-bottom:8px}
}

/* BLSD — conversione date, lead città e FAQ 04-10-2026 */
.bls-interest-form{margin-top:18px;padding:28px 30px;background:#fff;border:1px solid #d8e2e7;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:42px;align-items:start}
.bls-interest-form h3{font-size:27px;line-height:1.12;margin:0 0 10px;color:#082d49}
.bls-interest-form>div>p:last-child{margin:0;color:#607483;line-height:1.6}
.bls-mini-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.bls-form-field:last-of-type{grid-column:1/-1}
.bls-form-field label{display:block;font-size:13px;font-weight:800;color:#082d49;margin:0 0 6px}
.bls-form-field input{width:100%;box-sizing:border-box;border:1px solid #cbd7dd;background:#fff;padding:12px 13px;font:inherit;color:#082d49}
.bls-form-field input:focus{outline:2px solid rgba(8,168,210,.2);border-color:#08a8d2}
.bls-form-privacy{grid-column:1/-1;display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.45;color:#607483}
.bls-form-privacy input{margin-top:3px}.bls-form-privacy a{color:#082d49;text-decoration:underline}
.bls-mini-form .btn{grid-column:1/-1;width:max-content}
/* Il blocco FAQ chiude più vicino alla CTA finale */
.bls-faq-section{padding-bottom:42px}
@media(max-width:700px){.bls-interest-form{grid-template-columns:1fr;gap:24px;padding:24px 20px}.bls-mini-form{grid-template-columns:1fr}.bls-form-field:last-of-type,.bls-form-privacy,.bls-mini-form .btn{grid-column:1}}


/* BLSD — blocco unico avviso città + correzione ancora 04-10-2026 */
#avviso-citta{scroll-margin-top:112px}
.bls-interest-form{margin-top:22px;padding:32px 34px;background:#eaf6fa;border:0;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:48px}
.bls-interest-copy{padding:2px 0}
.bls-interest-copy h3{font-size:30px;margin-bottom:14px}
.bls-interest-copy>p:not(.bls-eyebrow){font-size:15px;line-height:1.62;color:#607483;margin:0 0 12px}
.bls-interest-copy>p:last-child{margin-bottom:0}
.bls-interest-copy strong{color:#082d49}
.bls-interest-form .bls-mini-form{background:#fff;padding:22px 24px;border:1px solid #d8e2e7}
@media(max-width:700px){#avviso-citta{scroll-margin-top:92px}.bls-interest-form{padding:26px 20px;gap:22px}.bls-interest-form .bls-mini-form{padding:20px 18px}}

/* BLSD — iscrizione completa */
.registration-hero{background:#f7f8f5;padding:52px 0 36px;border-bottom:1px solid #e3e8eb}.registration-hero h1{font-size:48px;line-height:1.02;letter-spacing:-.04em;margin:0 0 24px}.registration-course{display:flex;flex-direction:column;gap:5px;padding:18px 20px;background:#eaf6fa;max-width:680px}.registration-course strong{font-size:20px}.registration-course span{color:#607483}.registration-section{padding:52px 0 68px}.registration-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px;align-items:start}.registration-copy h2{font-size:32px;line-height:1.08;margin:0 0 12px}.registration-copy>p{color:#607483;line-height:1.6}.registration-payment{margin-top:28px;padding:22px;background:#eaf6fa;border-left:4px solid #08a8d2}.registration-payment strong{display:block;margin-bottom:8px}.registration-payment p{margin:0;color:#607483;font-size:14px;line-height:1.6}.registration-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;padding:30px;background:#fff;border:1px solid #d8e2e7}.registration-form .full{grid-column:1/-1}.registration-form input{min-height:46px}.registration-submit{padding-top:8px}.registration-submit p{font-size:12px;color:#607483;line-height:1.5;margin:10px 0 0}.registration-success{padding:34px;background:#eaf6fa}.registration-success h2{margin:0 0 10px;font-size:32px}.registration-success p{color:#536b7c;line-height:1.6}.registration-success-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
@media(max-width:800px){.registration-grid{grid-template-columns:1fr;gap:30px}.registration-form{padding:22px}.registration-hero h1{font-size:39px}}
@media(max-width:560px){.registration-form{grid-template-columns:1fr}.registration-form .full{grid-column:1}.registration-section{padding:38px 0 52px}}

/* BLSD — conferme invio moduli */
.bls-interest-success{background:#fff;border:1px solid #d8e2e7;padding:24px}
.bls-interest-success h3{font-size:27px;line-height:1.15;margin:0 0 12px;color:#082d49}
.bls-interest-success p:not(.bls-eyebrow){font-size:14px;line-height:1.58;margin:0 0 12px;color:#607483}
.form-error{margin:0;padding:11px 13px;background:#fff2f0;border-left:3px solid #b83b32;color:#7d2923;font-size:13px;line-height:1.45}
.btn.secondary{background:#fff;color:#082d49;border:1px solid #b9cbd4}
.btn.secondary:hover{border-color:#08a8d2;color:#008ecb}
@media(max-width:600px){.registration-success-actions .btn{width:100%;box-sizing:border-box;text-align:center}}

/* BLSD — fotografie prova pratica 05-10-2026 */
.bls-proof-photo{margin:22px 0 30px}
.bls-proof-photo img{display:block;width:100%;height:auto;border-radius:3px}
.bls-proof-photo-wide{max-width:900px;margin:10px 0 26px}
.bls-proof-photo-feedback{max-width:820px;margin-top:22px;margin-bottom:28px}
@media(max-width:700px){.bls-proof-photo{margin:18px 0 24px}.bls-proof-photo-wide{margin-top:6px}}

/* Sequenza pratica disostruzione adulto */
.bls-disostruzione-sequence{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0 30px}
.bls-disostruzione-shot{position:relative;overflow:hidden;border-radius:3px;background:#eef3f5}
.bls-disostruzione-shot img{display:block;width:100%;height:390px;object-fit:cover;object-position:center}
.bls-disostruzione-shot span{display:block;padding:10px 12px;background:#082d49;color:#fff;font-size:13px;font-weight:800;letter-spacing:.02em}
.bls-disostruzione-sequence figcaption{grid-column:1/-1;margin:0;color:#5e7382;font-size:14px;line-height:1.5}
@media(max-width:700px){.bls-disostruzione-sequence{grid-template-columns:1fr;gap:12px;margin:20px 0 26px}.bls-disostruzione-shot img{height:auto}.bls-disostruzione-sequence figcaption{grid-column:auto}}

/* BLSD — impaginazione editoriale fotografie pratica 05-10-2026 */
.bls-proof-photo-wide{
  position:relative;
  max-width:900px;
  margin:18px 0 34px;
  padding:0;
}
.bls-proof-photo-wide img{
  aspect-ratio:16/8.4;
  object-fit:cover;
  object-position:center;
  border-radius:5px;
}
.bls-proof-photo-wide::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-10px;
  width:92px;
  height:3px;
  background:#08a8d2;
}

.bls-editorial{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(300px,1.18fr);
  gap:30px;
  align-items:center;
  margin:24px 0 30px;
}
.bls-editorial-copy{min-width:0}
.bls-editorial-copy p:last-child{margin-bottom:0}
.bls-editorial .bls-proof-punch{margin-top:0!important}
.bls-editorial .bls-proof-photo{margin:0;max-width:none}
.bls-editorial .bls-proof-photo img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:5px;
}
.bls-editorial-rcp .bls-proof-photo img{object-position:center}
.bls-editorial-dae{
  grid-template-columns:minmax(300px,1.15fr) minmax(0,.85fr);
  align-items:center;
  margin-top:26px;
}
.bls-editorial-dae .bls-editorial-copy{order:2}
.bls-editorial-dae .bls-proof-photo{order:1}
.bls-editorial-dae .bls-proof-photo img{aspect-ratio:1/1;object-position:center}

.bls-disostruzione-sequence{
  gap:10px;
  padding:10px;
  background:#eef3f5;
  border-radius:5px;
}
.bls-disostruzione-shot{border-radius:3px}
.bls-disostruzione-shot span{
  padding:11px 13px;
  background:#082d49;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.bls-disostruzione-sequence figcaption{
  padding:2px 4px 0;
  font-size:13px;
}

@media(max-width:760px){
  .bls-proof-photo-wide{margin:12px 0 28px}
  .bls-proof-photo-wide img{aspect-ratio:4/3}
  .bls-editorial,.bls-editorial-dae{grid-template-columns:1fr;gap:16px;margin:20px 0 26px}
  .bls-editorial-dae .bls-editorial-copy,.bls-editorial-dae .bls-proof-photo{order:initial}
  .bls-editorial .bls-proof-photo img,.bls-editorial-dae .bls-proof-photo img{aspect-ratio:auto}
  .bls-disostruzione-sequence{padding:8px}
}

/* BLSD — PLS: foto integrata nel testo */
.bls-editorial-pls{
  grid-template-columns:minmax(0,.86fr) minmax(320px,1.14fr);
  align-items:center;
  margin:24px 0 28px;
}
.bls-editorial-pls .bls-proof-photo img{
  aspect-ratio:4/3;
  object-position:center;
}
@media(max-width:760px){
  .bls-editorial-pls{grid-template-columns:1fr;gap:16px;margin:20px 0 26px}
  .bls-editorial-pls .bls-proof-photo img{aspect-ratio:auto}
}

/* BLSD — disostruzione lattante: immagine principale + dettaglio integrato */
.bls-infant-sequence{
  display:grid;
  grid-template-columns:minmax(0,1.38fr) minmax(220px,.62fr);
  grid-template-rows:auto auto;
  gap:12px;
  margin:26px 0 32px;
  padding:10px;
  background:#eef3f5;
  border-radius:5px;
}
.bls-infant-main,.bls-infant-secondary{position:relative;overflow:hidden;border-radius:3px;background:#dde8ed}
.bls-infant-main img,.bls-infant-secondary img{display:block;width:100%;height:100%;object-fit:cover}
.bls-infant-main img{aspect-ratio:4/3;object-position:center}
.bls-infant-secondary img{aspect-ratio:3/4;object-position:center}
.bls-infant-main span,.bls-infant-secondary span{
  position:absolute;left:10px;bottom:10px;padding:8px 10px;background:rgba(8,45,73,.94);color:#fff;
  font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;border-radius:2px
}
.bls-infant-sequence figcaption{grid-column:1/-1;margin:0;padding:2px 4px 0;color:#5e7382;font-size:13px;line-height:1.5}
@media(max-width:700px){
  .bls-infant-sequence{grid-template-columns:1fr 42%;gap:8px;margin:20px 0 27px;padding:8px;align-items:start}
  .bls-infant-main img{aspect-ratio:4/3}.bls-infant-secondary img{aspect-ratio:3/4}
  .bls-infant-main span,.bls-infant-secondary span{left:7px;bottom:7px;padding:6px 7px;font-size:9px}
}

/* BLSD — RCP lattante con feedback digitale: blocco editoriale testo + prova visiva */
.bls-infant-feedback-editorial{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);
  gap:34px;
  align-items:center;
  margin:24px 0 32px;
}
.bls-infant-feedback-copy h4{margin-top:0}
.bls-infant-feedback-copy > :last-child{margin-bottom:0}
.bls-infant-feedback-photo{
  width:100%;
  margin:0;
  padding:8px;
  background:#eef3f5;
  border-radius:5px;
}
.bls-infant-feedback-photo img{
  display:block;
  width:100%;
  height:auto;
  border-radius:3px;
}
.bls-infant-feedback-photo figcaption{
  margin:0;
  padding:9px 4px 2px;
  color:#5e7382;
  font-size:13px;
  line-height:1.45;
}
@media(max-width:760px){
  .bls-infant-feedback-editorial{
    grid-template-columns:1fr;
    gap:18px;
    margin:20px 0 28px;
  }
  .bls-infant-feedback-photo{max-width:none;padding:7px}
}


/* BLSD — prova sociale: collage di corsi reali */
.bls-real-courses{
  overflow:hidden;
}
.bls-real-courses-head{
  max-width:820px;
  margin-bottom:28px;
}
.bls-real-courses-collage{
  display:block;
  width:100%;
  max-width:1180px;
  margin:0 auto;
}
.bls-real-courses-collage img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:760px){
  .bls-real-courses-head{margin-bottom:18px}
  .bls-real-courses-collage{width:108%;margin-left:-4%}
}

/* BLSD - richiamo diretto alle date / iscrizione */
.bls-purchase-jump{
  margin-top:28px;
  padding:20px 22px;
  background:#073552;
  border-left:4px solid #10b7df;
  box-shadow:0 8px 22px rgba(7,53,82,.10);
}
.bls-purchase-jump p{
  margin:0 0 11px;
  color:#fff;
  font-size:16px;
  line-height:1.35;
}
.bls-purchase-jump-btn{
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:13px 17px;
  background:#10b7df;
  color:#073552;
  font-weight:800;
  line-height:1.2;
  text-decoration:none;
  transition:transform .18s ease, filter .18s ease;
}
.bls-purchase-jump-btn:hover{
  transform:translateY(-1px);
  filter:brightness(.96);
}
@media (max-width:700px){
  .bls-purchase-jump{padding:18px 16px;}
  .bls-purchase-jump-btn{display:flex;width:100%;justify-content:space-between;}
}

/* ===== BLSD — CTA intermedia verso prossimi corsi ===== */
.bls-buy-cta{
  max-width:720px;
  margin:30px 0 8px;
  padding:0;
}
.bls-buy-cta p{
  margin:0 0 12px!important;
  color:#062e49!important;
  font-size:15px!important;
  line-height:1.4;
  font-weight:800;
}
.bls-buy-cta a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:15px 20px;
  background:#062e49;
  color:#fff!important;
  border:2px solid #062e49;
  border-radius:4px;
  text-decoration:none!important;
  font-size:16px;
  line-height:1.2;
  font-weight:900;
  box-shadow:0 7px 18px rgba(6,46,73,.16);
  transition:transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.bls-buy-cta a:hover{
  background:#08a8d2;
  border-color:#08a8d2;
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(6,46,73,.20);
}
.bls-buy-cta a span{font-size:20px;line-height:1}
@media (max-width:600px){
  .bls-buy-cta a{display:flex;width:100%;justify-content:space-between;padding:15px 16px}
}

/* BLSD — CTA iscrizione + contatto umano */
.bls-date-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.bls-date-whatsapp{font-size:13px;line-height:1.35;font-weight:700;color:#087fb5;text-decoration:none;text-align:right}
.bls-date-whatsapp:hover{text-decoration:underline}
.registration-course{display:flex;flex-direction:column;gap:7px}
.registration-whatsapp{display:inline-block;margin-top:8px;font-weight:800;color:#087fb5;text-decoration:none}
.registration-whatsapp:hover{text-decoration:underline}
@media (max-width:760px){
  .bls-date-actions{align-items:stretch;width:100%}
  .bls-date-whatsapp{text-align:left}
}

/* BLSD — leggibilità link WhatsApp sotto CTA date */
.bls-date-whatsapp{
  font-size:15px;
  line-height:1.4;
  font-weight:700;
  color:#087fb5;
  text-decoration:none;
  text-align:right;
  margin-top:4px;
}

/* Iscrizione BLSD — rifinitura grafica */
.registration-course{gap:7px;padding:22px 24px}
.registration-course>strong{margin-bottom:2px}
.registration-course .registration-price{margin-top:3px;color:#0b304b}
.registration-course .registration-price strong{font-size:inherit;white-space:nowrap}
.registration-whatsapp{display:inline-flex;align-items:center;width:fit-content;max-width:100%;margin-top:10px;font-size:15px;line-height:1.45}
.registration-payment{padding:24px 22px}
.registration-payment>strong{font-size:17px;line-height:1.35;margin-bottom:12px}
.registration-payment p{margin:0 0 12px;font-size:14px;line-height:1.65}
.registration-payment p:last-child{margin-bottom:0}
.registration-payment p strong{color:#0b304b}
.registration-payment-note{padding-top:12px;border-top:1px solid rgba(11,48,75,.12)}
.nowrap{white-space:nowrap}
@media(max-width:560px){.registration-course{padding:20px}.registration-whatsapp{width:auto}}

/* Iscrizione BLSD — colonna sinistra pulita */
.registration-payment-clean{
  margin-top:28px;
  padding-top:22px;
  border-top:3px solid #08a7d8;
}
.registration-payment-clean h3{
  margin:0 0 12px;
  color:#0b304b;
  font-size:19px;
  line-height:1.3;
}
.registration-payment-clean p{
  margin:0 0 13px;
  color:#5f7484;
  font-size:15px;
  line-height:1.65;
}
.registration-payment-clean p:last-child{
  margin-bottom:0;
}
.registration-payment-clean strong{
  color:#0b304b;
}
.registration-terms{
  margin-top:14px !important;
  padding-top:13px;
  border-top:1px solid rgba(11,48,75,.14);
  max-width:680px;
  font-size:12px !important;
  line-height:1.55 !important;
  color:#718493 !important;
}

/* BLSD — introduzione FAQ */
.bls-faq-intro{
  max-width:760px;
  margin:10px 0 24px;
  color:#5f7484;
  font-size:16px;
  line-height:1.6;
}


/* ===== PAGINA 50 ECM FAD ===== */
.ecm-page{background:#fff;color:var(--ink)}
.ecm-shell{max-width:1060px;margin:0 auto;padding:0 24px}
.ecm-eyebrow{margin:0 0 14px;color:var(--blue);font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.ecm-hero{background:var(--paper);border-bottom:1px solid var(--line);padding:64px 0 70px;overflow:hidden}
.ecm-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:74px;align-items:center}
.ecm-hero h1{font-size:64px;line-height:.94;letter-spacing:-.055em;color:var(--navy);margin:0 0 26px;max-width:690px}
.ecm-hero h1 span,.ecm-head h2 span,.ecm-support h2 span,.ecm-certificate h2 span,.ecm-offer h2 span,.ecm-details h2 span,.ecm-final h2 span{color:var(--blue)}
.ecm-lead{font-size:19px;line-height:1.6;color:#526875;max-width:690px;margin:0 0 30px}
.ecm-hero-facts{display:grid;grid-template-columns:repeat(3,1fr);max-width:620px;border-top:1px solid #ccd8dd;border-bottom:1px solid #ccd8dd;margin:0 0 28px}
.ecm-hero-facts>div{padding:17px 20px;border-left:1px solid #ccd8dd;display:flex;flex-direction:column}.ecm-hero-facts>div:first-child{border-left:0;padding-left:0}
.ecm-hero-facts strong{font-size:25px;line-height:1;color:var(--navy)}.ecm-hero-facts span{font-size:11px;color:var(--muted);margin-top:5px}
.ecm-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.ecm-text-link{font-size:13px;font-weight:800;border-bottom:1px solid #9fb0b9;padding-bottom:5px}
.ecm-deadline{font-size:13px;color:var(--muted);margin:18px 0 0}
.ecm-hero-card{background:var(--navy);color:#fff;padding:36px 38px;position:relative;box-shadow:0 22px 50px rgba(6,42,68,.14)}
.ecm-card-kicker{font-size:10px;letter-spacing:.16em;color:#72d9ed;font-weight:900}.ecm-big-number{font-size:150px;line-height:.78;letter-spacing:-.08em;font-weight:900;margin:34px 0 8px;color:#fff}.ecm-big-label{font-size:21px;letter-spacing:.04em}.ecm-hero-card>p{color:#c9d9e1;margin:17px 0 28px}
.ecm-card-line{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.16);padding:12px 0;font-size:13px}.ecm-card-line span{color:#9fb7c4}.ecm-card-line b{font-weight:800}
.ecm-section{padding:82px 0}.ecm-section.alt{background:var(--paper)}.ecm-section.dark{background:var(--navy);color:#fff}.ecm-head{max-width:780px;margin-bottom:38px}.ecm-head-wide{max-width:850px}.ecm-head h2,.ecm-support h2,.ecm-certificate h2,.ecm-offer h2,.ecm-details h2{font-size:44px;line-height:1.04;letter-spacing:-.04em;color:var(--navy);margin:0 0 17px}.ecm-head>p:not(.ecm-eyebrow),.ecm-support p,.ecm-offer-copy>p:not(.ecm-eyebrow){font-size:17px;line-height:1.65;color:var(--muted)}
.ecm-compare{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--line)}.ecm-compare article{padding:30px}.ecm-compare article>span{font-size:10px;font-weight:900;letter-spacing:.15em;color:#82939d}.ecm-compare-one{background:#eaf6fa;border-left:1px solid var(--line)}.ecm-compare-one>span{color:var(--blue)!important}.ecm-steps-muted,.ecm-one-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:25px}.ecm-steps-muted b{font-size:13px;color:#71838e}.ecm-steps-muted i,.ecm-one-flow i{font-style:normal;color:#9fb0b9}.ecm-one-flow b{font-size:17px;color:var(--navy)}.ecm-one-flow strong{font-size:28px;color:var(--blue)}
.ecm-process{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ecm-process article{padding:28px 20px;border-left:1px solid var(--line);min-height:235px}.ecm-process article:first-child{border-left:0;padding-left:0}.ecm-process article>span{font-size:11px;color:var(--blue);font-weight:900}.ecm-process h3{font-size:20px;line-height:1.1;color:var(--navy);margin:45px 0 12px}.ecm-process p{font-size:13px;line-height:1.55;color:var(--muted);margin:0}.ecm-process-result{background:#eaf6fa;padding-left:20px!important}.ecm-process-result h3{color:var(--blue)}
.ecm-support-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.ecm-support h2{margin-bottom:20px}.ecm-whatsapp-card{background:#f0f8f2;border-left:4px solid #25d366;padding:32px}.ecm-whatsapp-card>span{font-size:10px;letter-spacing:.14em;font-weight:900;color:#178a46}.ecm-whatsapp-card h3{font-size:28px;line-height:1.08;color:var(--navy);margin:12px 0}.ecm-whatsapp-card p{font-size:14px;margin:0 0 22px}.ecm-whatsapp-card a{font-size:13px;font-weight:700}.ecm-whatsapp-card a strong{color:#178a46}
.ecm-certificate-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center}.ecm-certificate .ecm-eyebrow{color:#64d7ee}.ecm-certificate h2{color:#fff;margin-bottom:18px}.ecm-certificate h2 span{color:#64d7ee}.ecm-certificate p{color:#c5d7df;font-size:17px;line-height:1.6}.ecm-certificate p strong{color:#fff}.ecm-myecrm{border-left:1px solid rgba(255,255,255,.2);padding:20px 0 20px 38px}.ecm-myecrm>strong{font-size:32px;color:#64d7ee}.ecm-myecrm p{font-size:15px;margin:10px 0 0}
.ecm-offer-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center}.ecm-offer-copy ul{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.ecm-offer-copy li{border-top:1px solid var(--line);padding:11px 0;font-size:14px;color:#526875}.ecm-offer-copy li:before{content:'✓';color:var(--blue);font-weight:900;margin-right:8px}.ecm-buy-card{border:1px solid var(--line);padding:36px;background:var(--paper)}.ecm-buy-card>p{font-size:10px;letter-spacing:.15em;font-weight:900;color:var(--blue);margin:0}.ecm-price{font-size:86px;line-height:1;font-weight:900;letter-spacing:-.065em;color:var(--navy);margin:15px 0}.ecm-price span{font-size:34px}.ecm-buy-card small{display:block;color:var(--muted);line-height:1.55;margin-bottom:25px}.ecm-buy-btn{width:100%;justify-content:space-between}.ecm-buy-help{display:block;text-align:center;margin-top:17px;font-size:12px;font-weight:750;color:#526875}
.ecm-details-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.ecm-details dl{margin:0}.ecm-details dl>div{display:grid;grid-template-columns:150px 1fr;gap:25px;border-top:1px solid var(--line);padding:15px 0}.ecm-details dl>div:last-child{border-bottom:1px solid var(--line)}.ecm-details dt{font-size:12px;font-weight:800;color:#7a8d98}.ecm-details dd{margin:0;font-size:14px;line-height:1.5;color:var(--navy)}
.ecm-faq{max-width:850px}.ecm-faq details{border-top:1px solid var(--line)}.ecm-faq details:last-child{border-bottom:1px solid var(--line)}.ecm-faq summary{cursor:pointer;list-style:none;font-size:18px;font-weight:850;color:var(--navy);padding:19px 4px}.ecm-faq summary::-webkit-details-marker{display:none}.ecm-faq p{padding:0 4px 19px;margin:0;color:var(--muted);line-height:1.65}
.ecm-final{background:var(--cyan);padding:55px 0;color:var(--navy)}.ecm-final-grid{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.ecm-final .ecm-eyebrow{color:var(--navy)}.ecm-final h2{font-size:43px;line-height:1.03;letter-spacing:-.04em;margin:0 0 8px}.ecm-final h2 span{color:#fff}.ecm-final p:not(.ecm-eyebrow){margin:0;font-size:16px}.ecm-final .btn{background:var(--navy);color:#fff}
@media(max-width:900px){.ecm-hero-grid,.ecm-support-grid,.ecm-certificate-grid,.ecm-offer-grid,.ecm-details-grid{grid-template-columns:1fr;gap:42px}.ecm-hero h1{font-size:54px}.ecm-hero-card{max-width:520px}.ecm-process{grid-template-columns:1fr 1fr}.ecm-process article,.ecm-process article:first-child{border-left:0;border-top:1px solid var(--line);padding:24px}.ecm-process article:nth-child(even){border-left:1px solid var(--line)}.ecm-process h3{margin-top:25px}.ecm-process-result{grid-column:1/-1}.ecm-certificate-grid{gap:35px}.ecm-myecrm{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.2)}.ecm-final-grid{grid-template-columns:1fr}}
@media(max-width:600px){.ecm-shell{padding:0 18px}.ecm-hero{padding:42px 0 48px}.ecm-hero h1{font-size:43px}.ecm-lead{font-size:17px}.ecm-hero-facts{grid-template-columns:1fr}.ecm-hero-facts>div,.ecm-hero-facts>div:first-child{border-left:0;border-top:1px solid #ccd8dd;padding:12px 0}.ecm-hero-facts>div:first-child{border-top:0}.ecm-big-number{font-size:120px}.ecm-section{padding:58px 0}.ecm-head h2,.ecm-support h2,.ecm-certificate h2,.ecm-offer h2,.ecm-details h2{font-size:35px}.ecm-compare{grid-template-columns:1fr}.ecm-compare-one{border-left:0;border-top:1px solid var(--line)}.ecm-process{grid-template-columns:1fr}.ecm-process article:nth-child(even){border-left:0}.ecm-process-result{grid-column:auto}.ecm-offer-copy ul{grid-template-columns:1fr}.ecm-details dl>div{grid-template-columns:1fr;gap:4px}.ecm-price{font-size:72px}.ecm-final h2{font-size:35px}}


/* ===== ECM V2 — valore prima del prezzo ===== */
.ecm-hero-path h2{font-size:35px;line-height:1.04;letter-spacing:-.04em;margin:24px 0 28px;color:#fff;font-weight:500}
.ecm-hero-path h2 strong{display:block;color:#72d9ed;font-weight:900;margin-top:5px}
.ecm-path-step{display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:center;padding:14px 0;border-top:1px solid rgba(255,255,255,.15)}
.ecm-path-step span{font-size:10px;letter-spacing:.12em;font-weight:900;color:#72d9ed}
.ecm-path-step b{font-size:14px;line-height:1.35;color:#fff}
.ecm-path-result{margin-top:18px;padding:18px 20px;background:rgba(0,168,207,.13);border-left:3px solid var(--cyan);display:flex;flex-direction:column;gap:4px}
.ecm-path-result span{font-size:9px;letter-spacing:.15em;font-weight:900;color:#72d9ed}
.ecm-path-result strong{font-size:23px;color:#fff}
.ecm-choice-compact{padding:58px 0 62px;background:#fff}
.ecm-choice-compact .ecm-head{margin-bottom:28px}
.ecm-choice-compact .ecm-head h2{max-width:900px}
.ecm-choice-compact .ecm-head p:last-child{margin-bottom:0}
.ecm-choice-compact .ecm-compare{margin-top:0}
@media(max-width:600px){.ecm-hero-path h2{font-size:30px}.ecm-choice-compact{padding:48px 0}.ecm-path-result strong{font-size:21px}}


/* ===== ECM V3 — ritmo verticale compatto + numerazione rimossa ===== */
@media(min-width:601px){
  .ecm-section{padding:58px 0}
  .ecm-choice-compact{padding:44px 0 46px}
  .ecm-choice-compact .ecm-head{margin-bottom:22px}
  .ecm-head{margin-bottom:30px}
  .ecm-process article{min-height:205px;padding-top:24px;padding-bottom:24px}
  .ecm-process h3{margin:18px 0 12px}
  .ecm-support-grid,.ecm-certificate-grid,.ecm-offer-grid{gap:64px}
}
.ecm-path-step{grid-template-columns:1fr;gap:0}
.ecm-process article>span{display:none}
@media(max-width:600px){
  .ecm-section{padding:46px 0}
  .ecm-choice-compact{padding:40px 0 42px}
  .ecm-head{margin-bottom:26px}
  .ecm-process h3{margin-top:0}
}


/* ECM — correzione ritmo verticale */
.ecm-page .ecm-hero { padding-top: 54px !important; padding-bottom: 48px !important; }
.ecm-page .ecm-section { padding-top: 46px !important; padding-bottom: 46px !important; }
.ecm-page .ecm-how { padding-top: 48px !important; padding-bottom: 44px !important; }
.ecm-page .ecm-tutor { padding-top: 44px !important; padding-bottom: 44px !important; }
.ecm-page .ecm-result { padding-top: 44px !important; padding-bottom: 44px !important; }
.ecm-page .ecm-offer { padding-top: 48px !important; padding-bottom: 48px !important; }
.ecm-page .ecm-details { padding-top: 46px !important; padding-bottom: 46px !important; }
.ecm-page .ecm-faq { padding-top: 46px !important; padding-bottom: 40px !important; }
.ecm-page .ecm-final-cta { padding-top: 34px !important; padding-bottom: 34px !important; }

.ecm-page .ecm-kicker { margin-bottom: 10px !important; }
.ecm-page .ecm-how-grid { margin-top: 26px !important; }
.ecm-page .ecm-offer-grid { margin-top: 24px !important; }
.ecm-page .ecm-details-grid { margin-top: 22px !important; }
.ecm-page .ecm-faq-list { margin-top: 22px !important; }

@media (max-width: 760px) {
  .ecm-page .ecm-hero { padding-top: 34px !important; padding-bottom: 34px !important; }
  .ecm-page .ecm-section,
  .ecm-page .ecm-how,
  .ecm-page .ecm-tutor,
  .ecm-page .ecm-result,
  .ecm-page .ecm-offer,
  .ecm-page .ecm-details,
  .ecm-page .ecm-faq { padding-top: 34px !important; padding-bottom: 34px !important; }
  .ecm-page .ecm-final-cta { padding-top: 28px !important; padding-bottom: 28px !important; }
}


/* ECM hero — pannello destro eliminato */
.ecm-page .ecm-hero-grid{
  display:block !important;
}
.ecm-page .ecm-hero-copy{
  width:min(100%, 760px) !important;
  max-width:760px !important;
}
.ecm-page .ecm-hero{
  padding-top:54px !important;
  padding-bottom:46px !important;
}
@media (max-width:760px){
  .ecm-page .ecm-hero-copy{
    width:100% !important;
    max-width:none !important;
  }
}


/* ECM — cuore vendita: poco tempo + supporto personale */
.ecm-page .ecm-time .ecm-head-wide{
  max-width:900px;
}
.ecm-page .ecm-time .ecm-time-promise{
  margin-top:18px;
  max-width:860px;
  font-size:1.08rem;
  line-height:1.65;
}
.ecm-page .ecm-time-points{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:28px;
}
.ecm-page .ecm-time-points article{
  padding:22px 22px 20px;
  border:1px solid rgba(16,42,67,.12);
  background:#fff;
  border-radius:14px;
}
.ecm-page .ecm-time-points strong{
  display:block;
  margin-bottom:8px;
  font-size:1.05rem;
  line-height:1.3;
}
.ecm-page .ecm-time-points span{
  display:block;
  line-height:1.55;
}
@media (max-width:760px){
  .ecm-page .ecm-time-points{
    grid-template-columns:1fr;
    gap:12px;
    margin-top:22px;
  }
  .ecm-page .ecm-time-points article{
    padding:18px;
  }
}


/* ECM — servizio crediti aggiuntivi */
.ecm-page .ecm-more-credits{
  padding-top:38px !important;
  padding-bottom:38px !important;
}
.ecm-page .ecm-more-credits-box{
  max-width:940px;
  padding:30px 32px;
  border:1px solid rgba(16,42,67,.12);
  border-radius:16px;
  background:#fff;
}
.ecm-page .ecm-more-credits-box h2{
  margin-bottom:12px;
}
.ecm-page .ecm-more-credits-box p:not(.ecm-eyebrow){
  max-width:820px;
  line-height:1.65;
}
.ecm-page .ecm-more-credits-box .btn{
  margin-top:18px;
}
@media (max-width:760px){
  .ecm-page .ecm-more-credits{
    padding-top:30px !important;
    padding-bottom:30px !important;
  }
  .ecm-page .ecm-more-credits-box{
    padding:22px 18px;
  }
}


/* ECM — ancore interne */
html{
  scroll-behavior:smooth;
}
.ecm-page #vantaggi,
.ecm-page #come-funziona,
.ecm-page #supporto,
.ecm-page #crediti,
.ecm-page #iscrizione,
.ecm-page #altri-ecm,
.ecm-page #dettagli,
.ecm-page #faq{
  scroll-margin-top:110px;
}
@media (max-width:760px){
  .ecm-page #vantaggi,
  .ecm-page #come-funziona,
  .ecm-page #supporto,
  .ecm-page #crediti,
  .ecm-page #iscrizione,
  .ecm-page #altri-ecm,
  .ecm-page #dettagli,
  .ecm-page #faq{
    scroll-margin-top:86px;
  }
}


/* ECM — ottimizzazione vendita */
.ecm-page .ecm-process.ecm-process-simple{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.ecm-page .ecm-price-bridge{
  padding-top:44px !important;
  padding-bottom:44px !important;
  background:#f5f8fa;
}
.ecm-page .ecm-price-bridge-copy{
  max-width:900px;
}
.ecm-page .ecm-price-bridge-copy h2{
  max-width:820px;
}
.ecm-page .ecm-price-bridge-copy p:last-child{
  max-width:860px;
  font-size:1.06rem;
  line-height:1.65;
}
@media (max-width:760px){
  .ecm-page .ecm-process.ecm-process-simple{
    grid-template-columns:1fr !important;
  }
  .ecm-page .ecm-price-bridge{
    padding-top:32px !important;
    padding-bottom:32px !important;
  }
}


/* =========================================================
   ECM DIRECT RESPONSE — upper sales page intentionally linear
   ========================================================= */
.ecm-page .ecm-dr-hero{
  padding:58px 0 54px !important;
}
.ecm-page .ecm-dr-hero-copy{
  max-width:980px;
}
.ecm-page .ecm-dr-hero h1{
  max-width:900px;
}
.ecm-page .ecm-dr-subhead{
  max-width:880px;
  margin-top:20px;
  font-size:1.24rem;
  line-height:1.55;
}
.ecm-page .ecm-dr-promise{
  max-width:880px;
  margin-top:16px;
  font-size:1.1rem;
  line-height:1.65;
}
.ecm-page .ecm-dr-kicker{
  max-width:900px;
  margin-top:24px;
  padding:18px 0;
  border-top:1px solid rgba(16,42,67,.16);
  border-bottom:1px solid rgba(16,42,67,.16);
}
.ecm-page .ecm-dr-kicker strong,
.ecm-page .ecm-dr-kicker span{
  display:block;
}
.ecm-page .ecm-dr-kicker span{
  margin-top:4px;
  font-size:1.15rem;
}
.ecm-page .ecm-dr-offerline{
  display:flex;
  gap:54px;
  margin-top:26px;
}
.ecm-page .ecm-dr-offerline div{
  display:flex;
  flex-direction:column;
}
.ecm-page .ecm-dr-offerline strong{
  font-size:2rem;
  line-height:1;
}
.ecm-page .ecm-dr-offerline span{
  margin-top:6px;
}
.ecm-page .ecm-dr-actions{
  display:flex;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
  margin-top:28px;
}
.ecm-page .ecm-dr-wa{
  font-weight:700;
  text-decoration:none;
}
.ecm-page .ecm-dr-section{
  padding:50px 0;
}
.ecm-page .ecm-dr-narrow{
  max-width:1040px;
}
.ecm-page .ecm-dr-section h2,
.ecm-page .ecm-dr-result h2{
  max-width:900px;
  margin-bottom:18px;
}
.ecm-page .ecm-dr-section h2 + p{
  max-width:860px;
  font-size:1.08rem;
  line-height:1.7;
}
.ecm-page .ecm-dr-why{
  background:#f5f8fa;
}
.ecm-page .ecm-dr-questions{
  margin:26px 0 22px;
  padding-left:22px;
  border-left:4px solid currentColor;
}
.ecm-page .ecm-dr-questions p{
  margin:7px 0;
  font-size:1.08rem;
}
.ecm-page .ecm-dr-bigline{
  font-size:1.28rem;
}
.ecm-page .ecm-dr-simple{
  padding-top:42px;
  padding-bottom:42px;
}
.ecm-page .ecm-dr-result{
  padding:46px 0;
  background:#0b2940;
  color:#fff;
}
.ecm-page .ecm-dr-result-grid{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);
  gap:54px;
  align-items:center;
}
.ecm-page .ecm-dr-result .ecm-eyebrow{
  color:inherit;
}
.ecm-page .ecm-dr-myecm{
  padding-left:28px;
  border-left:1px solid rgba(255,255,255,.28);
}
.ecm-page .ecm-dr-myecm strong{
  display:block;
  font-size:1.45rem;
  margin-bottom:8px;
}
.ecm-page .ecm-dr-buy{
  padding:48px 0;
}
.ecm-page .ecm-dr-buy-grid{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(260px,.6fr);
  gap:48px;
  align-items:center;
}
.ecm-page .ecm-dr-pay{
  margin-top:16px;
  font-size:.95rem !important;
}
.ecm-page .ecm-dr-buy-action{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
}
.ecm-page .ecm-dr-more{
  background:#f5f8fa;
}
.ecm-page .ecm-dr-more .btn{
  margin-top:20px;
}
.ecm-page .ecm-dr-details{
  padding-bottom:42px;
}
.ecm-page .ecm-dr-dl{
  margin:26px 0 0;
}
.ecm-page .ecm-dr-dl div{
  display:grid;
  grid-template-columns:190px 1fr;
  gap:24px;
  padding:13px 0;
  border-bottom:1px solid rgba(16,42,67,.12);
}
.ecm-page .ecm-dr-dl dt{
  font-weight:800;
}
.ecm-page .ecm-dr-dl dd{
  margin:0;
}
.ecm-page .ecm-dr-faq{
  padding-top:40px;
}
.ecm-page .ecm-dr-faq details{
  border-bottom:1px solid rgba(16,42,67,.14);
  padding:16px 0;
}
.ecm-page .ecm-dr-faq summary{
  cursor:pointer;
  font-weight:800;
}
.ecm-page .ecm-dr-faq details p{
  max-width:850px;
  margin:10px 0 0;
  line-height:1.65;
}
.ecm-page .ecm-dr-final{
  padding-top:38px !important;
  padding-bottom:38px !important;
}
.ecm-page #perche-noi,
.ecm-page #come-funziona,
.ecm-page #crediti,
.ecm-page #iscrizione,
.ecm-page #altri-ecm,
.ecm-page #dettagli,
.ecm-page #faq{
  scroll-margin-top:110px;
}
@media (max-width:760px){
  .ecm-page .ecm-dr-hero{
    padding:38px 0 36px !important;
  }
  .ecm-page .ecm-dr-subhead{
    font-size:1.08rem;
  }
  .ecm-page .ecm-dr-offerline{
    gap:30px;
  }
  .ecm-page .ecm-dr-section{
    padding:34px 0;
  }
  .ecm-page .ecm-dr-result-grid,
  .ecm-page .ecm-dr-buy-grid{
    grid-template-columns:1fr;
    gap:26px;
  }
  .ecm-page .ecm-dr-myecm{
    padding-left:0;
    padding-top:20px;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.28);
  }
  .ecm-page .ecm-dr-dl div{
    grid-template-columns:1fr;
    gap:4px;
  }
  .ecm-page #perche-noi,
  .ecm-page #come-funziona,
  .ecm-page #crediti,
  .ecm-page #iscrizione,
  .ecm-page #altri-ecm,
  .ecm-page #dettagli,
  .ecm-page #faq{
    scroll-margin-top:86px;
  }
}

/* ECM DR v2 */
.ecm-page .ecm-v2-hero{padding:58px 0 54px!important}
.ecm-page .ecm-v2-copy{max-width:900px}
.ecm-page .ecm-v2-copy>p:not(.ecm-eyebrow){max-width:820px;font-size:1.08rem;line-height:1.65}
.ecm-page .ecm-v2-lead{margin-top:20px!important;font-size:1.3rem!important}
.ecm-page .ecm-v2-punch{margin:18px 0 26px!important;font-size:1.18rem!important}
.ecm-page .ecm-v2-section{padding:46px 0}
.ecm-page .ecm-v2-narrow{max-width:980px}
.ecm-page .ecm-v2-section h2,.ecm-page .ecm-v2-result h2{max-width:880px;margin-bottom:18px}
.ecm-page .ecm-v2-section h2+p{max-width:840px;font-size:1.08rem;line-height:1.7}
.ecm-page .ecm-v2-simple,.ecm-page .ecm-v2-more{background:#f5f8fa}
.ecm-page .ecm-v2-big{max-width:850px;margin-top:20px;font-size:1.24rem!important}
.ecm-page .ecm-v2-quote{max-width:900px;margin:28px 0;padding:22px 0;border-top:1px solid rgba(16,42,67,.18);border-bottom:1px solid rgba(16,42,67,.18);font-size:1.45rem;line-height:1.45}
.ecm-page .ecm-v2-result{padding:46px 0;background:#0b2940;color:#fff}
.ecm-page .ecm-v2-result-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:52px;align-items:center}
.ecm-page .ecm-v2-result .ecm-eyebrow{color:inherit}
.ecm-page .ecm-v2-myecm{padding-left:28px;border-left:1px solid rgba(255,255,255,.28)}
.ecm-page .ecm-v2-myecm>strong{display:block;font-size:1.4rem;margin-bottom:8px}
.ecm-page .ecm-v2-more .btn{margin-top:20px}
.ecm-page .ecm-v2-offer{padding:52px 0}
.ecm-page .ecm-v2-offer-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:56px;align-items:center}
.ecm-page .ecm-v2-offer ul{margin:22px 0;padding-left:20px}.ecm-page .ecm-v2-offer li{margin:8px 0}
.ecm-page .ecm-v2-buy{padding-left:34px;border-left:1px solid rgba(16,42,67,.16)}
.ecm-page .ecm-v2-buy>span{display:block;font-size:.78rem;font-weight:800;letter-spacing:.08em}
.ecm-page .ecm-v2-buy>strong{display:block;margin:8px 0 20px;font-size:3.6rem;line-height:1}
.ecm-page .ecm-v2-wa{display:block;margin-top:14px;font-weight:700;text-decoration:none}
.ecm-page .ecm-v2-dl{margin-top:26px}.ecm-page .ecm-v2-dl div{display:grid;grid-template-columns:190px 1fr;gap:24px;padding:13px 0;border-bottom:1px solid rgba(16,42,67,.12)}
.ecm-page .ecm-v2-dl dt{font-weight:800}.ecm-page .ecm-v2-dl dd{margin:0}
.ecm-page .ecm-v2-faq details{border-bottom:1px solid rgba(16,42,67,.14);padding:16px 0}.ecm-page .ecm-v2-faq summary{cursor:pointer;font-weight:800}
.ecm-page .ecm-v2-final{padding:38px 0!important}
.ecm-page #semplice,.ecm-page #differenza,.ecm-page #crediti,.ecm-page #altri-ecm,.ecm-page #iscrizione,.ecm-page #dettagli,.ecm-page #faq{scroll-margin-top:110px}
@media(max-width:760px){
.ecm-page .ecm-v2-hero{padding:38px 0 36px!important}.ecm-page .ecm-v2-section{padding:34px 0}
.ecm-page .ecm-v2-quote{font-size:1.22rem}.ecm-page .ecm-v2-result-grid,.ecm-page .ecm-v2-offer-grid{grid-template-columns:1fr;gap:28px}
.ecm-page .ecm-v2-myecm,.ecm-page .ecm-v2-buy{padding-left:0;padding-top:22px;border-left:0;border-top:1px solid rgba(16,42,67,.16)}
.ecm-page .ecm-v2-result .ecm-v2-myecm{border-top-color:rgba(255,255,255,.28)}.ecm-page .ecm-v2-dl div{grid-template-columns:1fr;gap:4px}
}

/* ECM DIRECT RESPONSE V3 */
.ecm-page .ecm-v3-hero{padding:58px 0 54px!important}
.ecm-page .ecm-v3-copy{max-width:900px}
.ecm-page .ecm-v3-copy>p:not(.ecm-eyebrow){max-width:820px;font-size:1.08rem;line-height:1.65}
.ecm-page .ecm-v3-lead{margin-top:20px!important;font-size:1.32rem!important}
.ecm-page .ecm-v3-punch{margin:18px 0 26px!important;font-size:1.2rem!important}
.ecm-page .ecm-v3-section{padding:46px 0}
.ecm-page .ecm-v3-narrow{max-width:980px}
.ecm-page .ecm-v3-section h2,.ecm-page .ecm-v3-result h2,.ecm-page .ecm-v3-proof h2{max-width:900px;margin-bottom:18px}
.ecm-page .ecm-v3-section h2+p{max-width:850px;font-size:1.08rem;line-height:1.7}
.ecm-page .ecm-v3-enemy,.ecm-page .ecm-v3-more{background:#f5f8fa}
.ecm-page .ecm-v3-big{max-width:850px;margin-top:20px;font-size:1.25rem!important}
.ecm-page .ecm-v3-quote{max-width:900px;margin:28px 0 0;padding:22px 0;border-top:1px solid rgba(16,42,67,.18);border-bottom:1px solid rgba(16,42,67,.18);font-size:1.5rem;line-height:1.45}
.ecm-page .ecm-v3-proof{padding:44px 0;background:#eef3f6}
.ecm-page .ecm-v3-proof-note{max-width:850px;line-height:1.65}
.ecm-page .ecm-v3-proof-placeholder{margin-top:22px;max-width:900px;padding:20px 22px;border:2px dashed rgba(16,42,67,.28);background:#fff}
.ecm-page .ecm-v3-proof-placeholder strong,.ecm-page .ecm-v3-proof-placeholder span{display:block}
.ecm-page .ecm-v3-proof-placeholder span{margin-top:6px}
.ecm-page .ecm-v3-result{padding:46px 0;background:#0b2940;color:#fff}
.ecm-page .ecm-v3-result-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:52px;align-items:center}
.ecm-page .ecm-v3-result .ecm-eyebrow{color:inherit}
.ecm-page .ecm-v3-myecm{padding-left:28px;border-left:1px solid rgba(255,255,255,.28)}
.ecm-page .ecm-v3-myecm>strong{display:block;font-size:1.4rem;margin-bottom:8px}
.ecm-page .ecm-v3-more .btn{margin-top:20px}
.ecm-page .ecm-v3-urgency{border-top:1px solid rgba(16,42,67,.12);border-bottom:1px solid rgba(16,42,67,.12)}
.ecm-page .ecm-v3-offer{padding:52px 0}
.ecm-page .ecm-v3-offer-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:56px;align-items:center}
.ecm-page .ecm-v3-offer ul{margin:22px 0;padding-left:20px}.ecm-page .ecm-v3-offer li{margin:8px 0}
.ecm-page .ecm-v3-buy{padding-left:34px;border-left:1px solid rgba(16,42,67,.16)}
.ecm-page .ecm-v3-buy>span{display:block;font-size:.78rem;font-weight:800;letter-spacing:.08em}
.ecm-page .ecm-v3-buy>strong{display:block;margin:8px 0 20px;font-size:3.6rem;line-height:1}
.ecm-page .ecm-v3-wa{display:block;margin-top:14px;font-weight:700;text-decoration:none}
.ecm-page .ecm-v3-dl{margin-top:26px}.ecm-page .ecm-v3-dl div{display:grid;grid-template-columns:190px 1fr;gap:24px;padding:13px 0;border-bottom:1px solid rgba(16,42,67,.12)}
.ecm-page .ecm-v3-dl dt{font-weight:800}.ecm-page .ecm-v3-dl dd{margin:0}
.ecm-page .ecm-v3-faq details{border-bottom:1px solid rgba(16,42,67,.14);padding:16px 0}.ecm-page .ecm-v3-faq summary{cursor:pointer;font-weight:800}
.ecm-page .ecm-v3-final{padding:38px 0!important}
.ecm-page #semplice,.ecm-page #differenza,.ecm-page #prove,.ecm-page #crediti,.ecm-page #altri-ecm,.ecm-page #urgenza,.ecm-page #iscrizione,.ecm-page #dettagli,.ecm-page #faq{scroll-margin-top:110px}
@media(max-width:760px){
.ecm-page .ecm-v3-hero{padding:38px 0 36px!important}.ecm-page .ecm-v3-section,.ecm-page .ecm-v3-proof{padding:34px 0}
.ecm-page .ecm-v3-quote{font-size:1.22rem}.ecm-page .ecm-v3-result-grid,.ecm-page .ecm-v3-offer-grid{grid-template-columns:1fr;gap:28px}
.ecm-page .ecm-v3-myecm,.ecm-page .ecm-v3-buy{padding-left:0;padding-top:22px;border-left:0;border-top:1px solid rgba(16,42,67,.16)}
.ecm-page .ecm-v3-result .ecm-v3-myecm{border-top-color:rgba(255,255,255,.28)}.ecm-page .ecm-v3-dl div{grid-template-columns:1fr;gap:4px}
}


/* ECM V4 — PROVA SOCIALE QUANTITATIVA */
.ecm-page .ecm-v3-proof-intro{
  max-width:850px;
  margin:0;
  font-size:1.08rem;
  line-height:1.7;
}
.ecm-page .ecm-v3-proof-stats{
  display:grid;
  grid-template-columns:1fr 1fr 1.25fr;
  gap:0;
  max-width:950px;
  margin:30px 0 24px;
  border-top:1px solid rgba(16,42,67,.18);
  border-bottom:1px solid rgba(16,42,67,.18);
}
.ecm-page .ecm-v3-proof-stat{
  padding:24px 26px 24px 0;
}
.ecm-page .ecm-v3-proof-stat + .ecm-v3-proof-stat{
  padding-left:26px;
  border-left:1px solid rgba(16,42,67,.18);
}
.ecm-page .ecm-v3-proof-stat strong{
  display:block;
  font-size:2.75rem;
  line-height:1;
  letter-spacing:-.04em;
  color:#0b2940;
}
.ecm-page .ecm-v3-proof-stat strong small{
  font-size:1.05rem;
  letter-spacing:0;
}
.ecm-page .ecm-v3-proof-stat span{
  display:block;
  max-width:240px;
  margin-top:9px;
  font-weight:700;
  line-height:1.4;
}
.ecm-page .ecm-v3-proof-close{
  max-width:850px;
  margin:0;
  font-size:1.08rem;
  line-height:1.65;
}
.ecm-page .ecm-v3-proof-source{
  max-width:850px;
  margin:15px 0 0;
  font-size:.82rem;
  line-height:1.5;
  opacity:.72;
}
@media(max-width:760px){
  .ecm-page .ecm-v3-proof-stats{
    grid-template-columns:1fr;
    margin:24px 0 20px;
  }
  .ecm-page .ecm-v3-proof-stat{
    padding:18px 0;
  }
  .ecm-page .ecm-v3-proof-stat + .ecm-v3-proof-stat{
    padding-left:0;
    border-left:0;
    border-top:1px solid rgba(16,42,67,.18);
  }
  .ecm-page .ecm-v3-proof-stat strong{
    font-size:2.35rem;
  }
}


/* =========================================================
   ECM V13 — CTA ACQUISTO: VISIBILITÀ E GERARCHIA DRM
   Solo pagina ECM. Non modifica Home / BLSD / altre pagine.
   ========================================================= */

.ecm-page .ecm-buy-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-height:64px;
  padding:18px 30px;
  margin:18px 0 8px;
  border:3px solid #0b2940;
  border-radius:8px;
  background:#fff;
  color:#0b2940;
  font-size:1.02rem;
  font-weight:900;
  line-height:1.15;
  letter-spacing:.01em;
  text-decoration:none;
  box-shadow:6px 6px 0 #0b2940;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}

.ecm-page .ecm-buy-cta:hover,
.ecm-page .ecm-buy-cta:focus-visible{
  background:#f3f8fb;
  color:#0b2940;
  transform:translate(-2px,-2px);
  box-shadow:9px 9px 0 #0b2940;
}

.ecm-page .ecm-buy-cta:active{
  transform:translate(3px,3px);
  box-shadow:3px 3px 0 #0b2940;
}

.ecm-page .ecm-v3-hero .ecm-buy-cta{
  min-width:330px;
  min-height:68px;
  padding:20px 34px;
  margin-top:22px;
  font-size:1.08rem;
}

.ecm-page .ecm-v3-inline-cta{
  margin-top:28px;
  padding-top:4px;
}

.ecm-page .ecm-v3-proof .ecm-buy-cta,
.ecm-page .ecm-v3-urgency .ecm-buy-cta{
  margin-top:24px;
}

.ecm-page .ecm-whatsapp-cta{
  display:block;
  width:max-content;
  max-width:100%;
  margin:12px 0 0;
  padding:10px 0;
  color:#0b2940;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:4px;
}

.ecm-page .ecm-whatsapp-cta:hover{
  text-decoration-thickness:2px;
}

/* CTA dentro la fascia azzurra finale: massima priorità */
.ecm-page .ecm-v3-final .ecm-buy-cta,
.ecm-page .ecm-final .ecm-buy-cta{
  min-width:350px;
  min-height:72px;
  padding:21px 34px;
  border-color:#fff;
  background:#fff;
  color:#062b43;
  font-size:1.1rem;
  box-shadow:7px 7px 0 #062b43;
}

.ecm-page .ecm-v3-final .ecm-buy-cta:hover,
.ecm-page .ecm-final .ecm-buy-cta:hover{
  background:#fff;
  color:#062b43;
  box-shadow:10px 10px 0 #062b43;
}

/* Il link "continua a leggere" resta chiaramente subordinato */
.ecm-page .ecm-v3-hero .ecm-v3-text-link:not(.ecm-whatsapp-cta){
  display:block;
  width:max-content;
  max-width:100%;
  margin-top:6px;
  font-size:.9rem;
  opacity:.75;
}

@media (max-width:760px){
  .ecm-page .ecm-buy-cta,
  .ecm-page .ecm-v3-hero .ecm-buy-cta,
  .ecm-page .ecm-v3-final .ecm-buy-cta,
  .ecm-page .ecm-final .ecm-buy-cta{
    width:100%;
    min-width:0;
    min-height:62px;
    padding:18px 20px;
    font-size:1rem;
    text-align:center;
    box-shadow:5px 5px 0 #0b2940;
  }

  .ecm-page .ecm-v3-final .ecm-buy-cta,
  .ecm-page .ecm-final .ecm-buy-cta{
    box-shadow:5px 5px 0 #062b43;
  }

  .ecm-page .ecm-whatsapp-cta{
    width:100%;
    padding:11px 0;
    line-height:1.35;
  }
}


/* =========================================================
   ECM V14 — CTA DRM AD ALTO CONTRASTO
   Primary = arancio caldo; WhatsApp = verde.
   ========================================================= */

.ecm-page .ecm-buy-cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:360px !important;
  min-height:68px !important;
  padding:20px 34px !important;
  margin:20px 0 10px !important;
  border:0 !important;
  border-radius:7px !important;
  background:#ff5a1f !important;
  color:#fff !important;
  font-size:1.05rem !important;
  font-weight:950 !important;
  line-height:1.1 !important;
  letter-spacing:.025em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  box-shadow:0 6px 0 #b93200, 0 12px 24px rgba(0,0,0,.16) !important;
  cursor:pointer !important;
  transition:transform .14s ease, box-shadow .14s ease, filter .14s ease !important;
}

.ecm-page .ecm-buy-cta:hover,
.ecm-page .ecm-buy-cta:focus-visible{
  background:#ff6b32 !important;
  color:#fff !important;
  transform:translateY(-2px) !important;
  box-shadow:0 8px 0 #b93200, 0 15px 28px rgba(0,0,0,.20) !important;
  filter:saturate(1.08) !important;
}

.ecm-page .ecm-buy-cta:active{
  transform:translateY(4px) !important;
  box-shadow:0 2px 0 #b93200, 0 6px 12px rgba(0,0,0,.16) !important;
}

/* Hero: CTA ancora più dominante */
.ecm-page .ecm-v3-hero .ecm-buy-cta{
  min-width:410px !important;
  min-height:74px !important;
  padding:22px 38px !important;
  font-size:1.12rem !important;
}

/* WhatsApp è una vera CTA, ma resta secondaria rispetto all'acquisto */
.ecm-page .ecm-whatsapp-cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:48px !important;
  margin:14px 0 0 !important;
  padding:12px 20px !important;
  border:2px solid #138a4b !important;
  border-radius:6px !important;
  background:#19a85b !important;
  color:#fff !important;
  font-size:.88rem !important;
  font-weight:850 !important;
  line-height:1.15 !important;
  letter-spacing:.015em !important;
  text-decoration:none !important;
  box-shadow:0 4px 0 #0d6b39 !important;
  transition:transform .14s ease, box-shadow .14s ease, background .14s ease !important;
}

.ecm-page .ecm-whatsapp-cta:hover,
.ecm-page .ecm-whatsapp-cta:focus-visible{
  background:#20b965 !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
  box-shadow:0 5px 0 #0d6b39 !important;
}

/* Mantieni "continua a leggere" piccolo e neutro */
.ecm-page .ecm-v3-hero .ecm-v3-text-link:not(.ecm-whatsapp-cta){
  display:block !important;
  margin-top:16px !important;
  color:#5c6871 !important;
  font-size:.84rem !important;
  font-weight:500 !important;
  text-decoration:none !important;
  opacity:.9 !important;
}

/* Fascia finale: CTA arancio, grande, impossibile da confondere col fondo */
.ecm-page .ecm-v3-final .ecm-buy-cta,
.ecm-page .ecm-final .ecm-buy-cta{
  min-width:390px !important;
  min-height:74px !important;
  background:#ff5a1f !important;
  color:#fff !important;
  box-shadow:0 7px 0 #a92f00, 0 14px 26px rgba(0,0,0,.22) !important;
}

@media (max-width:760px){
  .ecm-page .ecm-buy-cta,
  .ecm-page .ecm-v3-hero .ecm-buy-cta,
  .ecm-page .ecm-v3-final .ecm-buy-cta,
  .ecm-page .ecm-final .ecm-buy-cta{
    width:100% !important;
    min-width:0 !important;
    min-height:66px !important;
    padding:19px 18px !important;
    font-size:.98rem !important;
  }

  .ecm-page .ecm-whatsapp-cta{
    width:100% !important;
    min-height:50px !important;
    padding:13px 16px !important;
  }
}


/* =========================================================
   ECM V15 — CTA: DIRECT RESPONSE + COERENZA GRAFICA
   Un solo protagonista: acquisto. WhatsApp è rassicurazione.
   ========================================================= */

.ecm-page .ecm-buy-cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:350px !important;
  min-height:62px !important;
  padding:18px 30px !important;
  margin:20px 0 0 !important;
  border:0 !important;
  border-radius:5px !important;
  background:#f26430 !important;
  color:#fff !important;
  font-size:1rem !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  letter-spacing:.018em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  box-shadow:0 4px 10px rgba(8,42,64,.16) !important;
  transition:background .15s ease, transform .15s ease, box-shadow .15s ease !important;
}

.ecm-page .ecm-buy-cta:hover,
.ecm-page .ecm-buy-cta:focus-visible{
  background:#dc5120 !important;
  color:#fff !important;
  transform:translateY(-2px) !important;
  box-shadow:0 7px 15px rgba(8,42,64,.20) !important;
}

.ecm-page .ecm-buy-cta:active{
  transform:translateY(0) !important;
  box-shadow:0 3px 7px rgba(8,42,64,.16) !important;
}

/* Hero: forte, ma non "pulsantone da televendita" */
.ecm-page .ecm-v3-hero .ecm-buy-cta{
  min-width:385px !important;
  min-height:66px !important;
  padding:19px 32px !important;
  font-size:1.04rem !important;
}

/* WhatsApp: sotto al CTA, nessun secondo blocco cromatico */
.ecm-page .ecm-whatsapp-cta{
  display:block !important;
  width:max-content !important;
  max-width:100% !important;
  min-height:0 !important;
  margin:14px 0 0 !important;
  padding:0 0 3px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#0d7042 !important;
  font-size:.91rem !important;
  font-weight:750 !important;
  line-height:1.35 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-decoration:none !important;
  border-bottom:1px solid rgba(13,112,66,.35) !important;
  box-shadow:none !important;
  transition:color .15s ease, border-color .15s ease !important;
}

.ecm-page .ecm-whatsapp-cta:hover,
.ecm-page .ecm-whatsapp-cta:focus-visible{
  background:transparent !important;
  color:#084f2e !important;
  border-bottom-color:#084f2e !important;
  transform:none !important;
  box-shadow:none !important;
}

/* Nelle aree CTA, acquisto e WhatsApp devono stare verticalmente */
.ecm-page .ecm-v3-hero .ecm-whatsapp-cta,
.ecm-page .ecm-v3-inline-cta .ecm-whatsapp-cta,
.ecm-page .ecm-v3-proof .ecm-whatsapp-cta,
.ecm-page .ecm-v3-urgency .ecm-whatsapp-cta{
  clear:both !important;
}

/* Link "continua a leggere": terzo livello gerarchico */
.ecm-page .ecm-v3-hero .ecm-v3-text-link:not(.ecm-whatsapp-cta){
  display:block !important;
  width:max-content !important;
  max-width:100% !important;
  margin:12px 0 0 !important;
  padding:0 !important;
  color:#6a747b !important;
  font-size:.82rem !important;
  font-weight:500 !important;
  line-height:1.35 !important;
  text-decoration:none !important;
  opacity:1 !important;
}

/* Fascia azzurra finale: arancione unico punto caldo */
.ecm-page .ecm-v3-final .ecm-buy-cta,
.ecm-page .ecm-final .ecm-buy-cta{
  min-width:365px !important;
  min-height:66px !important;
  background:#f26430 !important;
  color:#fff !important;
  box-shadow:0 5px 12px rgba(4,36,55,.22) !important;
}

.ecm-page .ecm-v3-final .ecm-buy-cta:hover,
.ecm-page .ecm-final .ecm-buy-cta:hover{
  background:#dc5120 !important;
  color:#fff !important;
  box-shadow:0 7px 16px rgba(4,36,55,.25) !important;
}

@media (max-width:760px){
  .ecm-page .ecm-buy-cta,
  .ecm-page .ecm-v3-hero .ecm-buy-cta,
  .ecm-page .ecm-v3-final .ecm-buy-cta,
  .ecm-page .ecm-final .ecm-buy-cta{
    width:100% !important;
    min-width:0 !important;
    min-height:60px !important;
    padding:17px 18px !important;
    font-size:.95rem !important;
  }

  .ecm-page .ecm-whatsapp-cta{
    width:max-content !important;
    max-width:100% !important;
    margin-top:13px !important;
    font-size:.88rem !important;
  }
}


/* =========================================================
   ECM V16 — BOTTONI ISPIRATI ALLA GERARCHIA APPROVATA
   Rosso = iscrizione. Verde = assistenza WhatsApp.
   ========================================================= */

.ecm-page .ecm-buy-cta{
  display:inline-flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:420px !important;
  min-height:78px !important;
  padding:15px 28px 14px !important;
  margin:20px 0 0 !important;
  border:1px solid #d90d1b !important;
  border-radius:5px !important;
  background:#ed1624 !important;
  color:#fff !important;
  text-align:center !important;
  text-decoration:none !important;
  box-shadow:0 3px 8px rgba(7,39,59,.14) !important;
  transition:background .15s ease, transform .15s ease, box-shadow .15s ease !important;
}

.ecm-page .ecm-buy-cta .ecm-cta-main{
  display:block !important;
  color:#fff !important;
  font-size:1.06rem !important;
  font-weight:900 !important;
  line-height:1.12 !important;
  letter-spacing:.01em !important;
  text-transform:uppercase !important;
}

.ecm-page .ecm-buy-cta .ecm-cta-sub{
  display:block !important;
  margin-top:6px !important;
  color:rgba(255,255,255,.92) !important;
  font-size:.78rem !important;
  font-weight:500 !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

.ecm-page .ecm-buy-cta:hover,
.ecm-page .ecm-buy-cta:focus-visible{
  background:#d80f1c !important;
  color:#fff !important;
  transform:translateY(-2px) !important;
  box-shadow:0 6px 13px rgba(7,39,59,.18) !important;
}

.ecm-page .ecm-buy-cta:active{
  transform:translateY(0) !important;
  box-shadow:0 2px 5px rgba(7,39,59,.14) !important;
}

/* WhatsApp: visibile e riconoscibile, ma subordinato all'acquisto */
.ecm-page .ecm-whatsapp-cta{
  display:inline-flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  width:auto !important;
  min-width:330px !important;
  min-height:62px !important;
  margin:12px 0 0 !important;
  padding:10px 20px !important;
  border:1px solid #159447 !important;
  border-radius:5px !important;
  background:#20ad59 !important;
  color:#fff !important;
  text-decoration:none !important;
  box-shadow:0 2px 6px rgba(7,39,59,.11) !important;
  transition:background .15s ease, transform .15s ease !important;
}

.ecm-page .ecm-whatsapp-cta .ecm-wa-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:30px !important;
  height:30px !important;
  flex:0 0 30px !important;
  border:2px solid #fff !important;
  border-radius:50% !important;
  color:#fff !important;
  font-size:.9rem !important;
  font-weight:900 !important;
  line-height:1 !important;
}

.ecm-page .ecm-whatsapp-cta .ecm-wa-copy{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  text-align:left !important;
}

.ecm-page .ecm-whatsapp-cta .ecm-cta-main{
  color:#fff !important;
  font-size:.94rem !important;
  font-weight:850 !important;
  line-height:1.1 !important;
  text-transform:none !important;
}

.ecm-page .ecm-whatsapp-cta .ecm-cta-sub{
  margin-top:4px !important;
  color:rgba(255,255,255,.9) !important;
  font-size:.73rem !important;
  font-weight:500 !important;
  line-height:1.1 !important;
}

.ecm-page .ecm-whatsapp-cta:hover,
.ecm-page .ecm-whatsapp-cta:focus-visible{
  background:#168f49 !important;
  color:#fff !important;
  border-color:#168f49 !important;
  transform:translateY(-1px) !important;
  box-shadow:0 4px 9px rgba(7,39,59,.14) !important;
}

/* Nell'hero i due bottoni sono affiancati, come nel riferimento,
   ma il rosso resta chiaramente dominante. */
.ecm-page .ecm-v3-hero .ecm-buy-cta{
  min-width:420px !important;
  min-height:78px !important;
  margin-right:14px !important;
  vertical-align:middle !important;
}

.ecm-page .ecm-v3-hero .ecm-whatsapp-cta{
  display:inline-flex !important;
  min-width:330px !important;
  min-height:64px !important;
  margin-top:20px !important;
  vertical-align:middle !important;
}

/* Il link di approfondimento resta terzo livello */
.ecm-page .ecm-v3-hero .ecm-v3-text-link:not(.ecm-whatsapp-cta){
  display:block !important;
  width:max-content !important;
  max-width:100% !important;
  margin-top:13px !important;
  color:#6b747b !important;
  font-size:.82rem !important;
  font-weight:500 !important;
  text-decoration:none !important;
}

/* Finale: stesso linguaggio, senza cambiare la fascia */
.ecm-page .ecm-v3-final .ecm-buy-cta,
.ecm-page .ecm-final .ecm-buy-cta{
  min-width:420px !important;
  min-height:78px !important;
  background:#ed1624 !important;
  color:#fff !important;
  box-shadow:0 4px 10px rgba(4,36,55,.20) !important;
}

@media (max-width:900px){
  .ecm-page .ecm-v3-hero .ecm-buy-cta,
  .ecm-page .ecm-v3-hero .ecm-whatsapp-cta{
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    margin-right:0 !important;
  }
}

@media (max-width:760px){
  .ecm-page .ecm-buy-cta,
  .ecm-page .ecm-v3-hero .ecm-buy-cta,
  .ecm-page .ecm-v3-final .ecm-buy-cta,
  .ecm-page .ecm-final .ecm-buy-cta{
    width:100% !important;
    min-width:0 !important;
    min-height:72px !important;
    padding:14px 18px !important;
  }

  .ecm-page .ecm-whatsapp-cta,
  .ecm-page .ecm-v3-hero .ecm-whatsapp-cta{
    width:100% !important;
    min-width:0 !important;
    min-height:58px !important;
    padding:10px 16px !important;
  }
}


/* =========================================================
   ECM V17 — ALLINEAMENTO UNIFORME DELLE COPPIE CTA
   ========================================================= */
.ecm-page .ecm-cta-row{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:14px !important;
  margin-top:20px !important;
}

.ecm-page .ecm-cta-row .ecm-buy-cta,
.ecm-page .ecm-cta-row .ecm-whatsapp-cta{
  margin:0 !important;
  vertical-align:initial !important;
  flex:0 0 auto !important;
}

/* Rosso dominante; verde centrato verticalmente rispetto al rosso */
.ecm-page .ecm-cta-row .ecm-buy-cta{
  min-width:420px !important;
  min-height:78px !important;
}

.ecm-page .ecm-cta-row .ecm-whatsapp-cta{
  min-width:330px !important;
  min-height:62px !important;
}

/* Neutralizza le vecchie differenze specifiche dell'hero */
.ecm-page .ecm-v3-hero .ecm-cta-row .ecm-buy-cta,
.ecm-page .ecm-v3-hero .ecm-cta-row .ecm-whatsapp-cta{
  margin:0 !important;
}

/* Il link "continua a leggere" resta sotto la coppia */
.ecm-page .ecm-v3-hero .ecm-cta-row + .ecm-v3-text-link{
  margin-top:13px !important;
}

@media (max-width:900px){
  .ecm-page .ecm-cta-row{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:10px !important;
  }

  .ecm-page .ecm-cta-row .ecm-buy-cta,
  .ecm-page .ecm-cta-row .ecm-whatsapp-cta{
    width:100% !important;
    min-width:0 !important;
  }
}


/* =========================================================
   ECM V18 — RISK REVERSAL / IMPEGNO DI ASSISTENZA
   ========================================================= */
.ecm-page .ecm-risk-reversal{
  max-width:760px;
  margin:30px 0 6px;
  padding:22px 24px 20px;
  border-left:4px solid #0878bd;
  background:#f2f7fa;
}

.ecm-page .ecm-risk-reversal .ecm-risk-kicker{
  margin:0 0 8px;
  color:#0878bd;
  font-size:.76rem;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.12em;
}

.ecm-page .ecm-risk-reversal h3{
  margin:0 0 10px;
  color:#102536;
  font-size:1.18rem;
  line-height:1.3;
}

.ecm-page .ecm-risk-reversal p{
  margin:0 0 10px;
  max-width:700px;
}

.ecm-page .ecm-risk-reversal .ecm-risk-close{
  margin:14px 0 0;
  color:#102536;
}

@media (max-width:760px){
  .ecm-page .ecm-risk-reversal{
    margin-top:24px;
    padding:18px 18px 17px;
  }
}


/* =========================================================
   ECM V19 — RISK REVERSAL NELLA COLONNA SINISTRA DELL'OFFERTA
   ========================================================= */
.ecm-page .ecm-risk-reversal{
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
  margin:26px 0 0 !important;
  padding:20px 22px 18px !important;
}

.ecm-page .ecm-risk-reversal h3{
  font-size:1.08rem !important;
}

@media (max-width:760px){
  .ecm-page .ecm-risk-reversal{
    margin-top:22px !important;
    padding:18px 18px 17px !important;
  }
}


/* =========================================================
   ECM V21 — HERO DEFINITIVA CON FOTO A DESTRA
   Immagine da caricare in:
   /formazionesanitaria/immagini/ecm-hero-50ecm-v21.png
   ========================================================= */

.ecm-page .ecm-v21-photo-hero{
  position:relative !important;
  overflow:hidden !important;
  background:#fff !important;
}

/* FOTO: solo fascia destra, senza entrare dietro al copy */
.ecm-page .ecm-v21-photo-hero::after{
  content:"";
  position:absolute;
  z-index:0;
  top:0;
  right:0;
  bottom:0;
  width:45%;
  background-image:
    linear-gradient(90deg,
      rgba(255,255,255,.96) 0%,
      rgba(255,255,255,.45) 7%,
      rgba(255,255,255,0) 18%),
    url("immagini/ecm-hero-50ecm-v21.png");
  background-repeat:no-repeat;
  background-position:64% center;
  background-size:cover;
  pointer-events:none;
}

.ecm-page .ecm-v21-photo-hero > *{
  position:relative;
  z-index:1;
}

/* COPY: resta confinato a sinistra */
@media (min-width:901px){
  .ecm-page .ecm-v21-photo-hero{
    min-height:555px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-v3-shell,
  .ecm-page .ecm-v21-photo-hero .container{
    padding-right:47% !important;
    box-sizing:border-box !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-v3-hero-copy,
  .ecm-page .ecm-v21-photo-hero .ecm-v3-copy{
    width:100% !important;
    max-width:none !important;
  }

  /* CTA affiancate su desktop */
  .ecm-page .ecm-v21-photo-hero .ecm-cta-row{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:12px !important;
    width:calc(100vw - 47vw) !important;
    max-width:780px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-buy-cta{
    flex:0 1 390px !important;
    min-width:340px !important;
    width:auto !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-whatsapp-cta{
    flex:0 1 300px !important;
    min-width:270px !important;
    width:auto !important;
  }
}

/* Tablet/mobile: testo prima, fotografia sotto */
@media (max-width:900px){
  .ecm-page .ecm-v21-photo-hero{
    padding-bottom:280px !important;
  }

  .ecm-page .ecm-v21-photo-hero::after{
    top:auto;
    left:0;
    right:0;
    bottom:0;
    width:100%;
    height:260px;
    background-image:
      linear-gradient(180deg,
        rgba(255,255,255,.98) 0%,
        rgba(255,255,255,.18) 18%,
        rgba(255,255,255,0) 35%),
      url("immagini/ecm-hero-50ecm-v21.png");
    background-position:64% 42%;
    background-size:cover;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:10px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-buy-cta,
  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-whatsapp-cta{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
  }
}

@media (max-width:600px){
  .ecm-page .ecm-v21-photo-hero{
    padding-bottom:225px !important;
  }

  .ecm-page .ecm-v21-photo-hero::after{
    height:210px;
  }
}


/* =========================================================
   ECM V22 — HERO ALLINEATA ALLA GABBIA DEL SITO
   La foto non arriva più al bordo del browser.
   ========================================================= */

@media (min-width:901px){

  /* La hero resta bianca full-width, ma la parte fotografica
     si ferma sulla stessa gabbia visiva dell'header. */
  .ecm-page .ecm-v21-photo-hero::after{
    right:max(0px, calc((100vw - 1200px) / 2)) !important;
    width:min(45%, 540px) !important;
  }

  /* Il copy continua a occupare la parte sinistra senza
     sovrapporsi alla fotografia. */
  .ecm-page .ecm-v21-photo-hero .ecm-v3-shell,
  .ecm-page .ecm-v21-photo-hero .container{
    padding-right:46% !important;
  }
}

/* Su schermi molto larghi la foto rimane agganciata
   al contenitore e non si espande verso il bordo. */
@media (min-width:1400px){
  .ecm-page .ecm-v21-photo-hero::after{
    right:calc((100vw - 1200px) / 2) !important;
    width:540px !important;
  }
}


/* =========================================================
   ECM V23 — CORREZIONE CHIRURGICA HERO
   1) foto più a destra
   2) CTA interamente nella zona copy
   Gabbia esterna V22 invariata.
   ========================================================= */

@media (min-width:901px){

  /* Riduciamo la fascia fotografica sul lato sinistro:
     il bordo destro resta identico alla V22. */
  .ecm-page .ecm-v21-photo-hero::after{
    width:min(39%, 470px) !important;
    background-position:58% center !important;
  }

  /* Più spazio reale al copy, senza farlo entrare nella foto */
  .ecm-page .ecm-v21-photo-hero .ecm-v3-shell,
  .ecm-page .ecm-v21-photo-hero .container{
    padding-right:41% !important;
  }

  /* CTA più compatte: entrambe devono chiudersi prima della foto */
  .ecm-page .ecm-v21-photo-hero .ecm-cta-row{
    width:100% !important;
    max-width:690px !important;
    gap:10px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-buy-cta{
    flex:0 0 335px !important;
    width:335px !important;
    min-width:335px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-whatsapp-cta{
    flex:0 0 255px !important;
    width:255px !important;
    min-width:255px !important;
  }
}

@media (min-width:1400px){
  .ecm-page .ecm-v21-photo-hero::after{
    width:470px !important;
  }
}


/* =========================================================
   ECM V24 — COPY MAI SOPRA LA FOTO
   Correzione del testo descrittivo che entrava sul camice.
   ========================================================= */

@media (min-width:901px){

  /* La zona testo termina prima dell'inizio della fotografia */
  .ecm-page .ecm-v21-photo-hero .ecm-v3-shell,
  .ecm-page .ecm-v21-photo-hero .container{
    padding-right:44% !important;
  }

  /* Titoli, paragrafi e punchline restano fisicamente confinati
     nella colonna bianca: nessuna riga può entrare sulla foto. */
  .ecm-page .ecm-v21-photo-hero .ecm-v3-hero-copy,
  .ecm-page .ecm-v21-photo-hero .ecm-v3-copy,
  .ecm-page .ecm-v21-photo-hero .ecm-v3-hero-copy p,
  .ecm-page .ecm-v21-photo-hero .ecm-v3-copy p{
    max-width:610px !important;
  }

  /* Anche le CTA restano dentro la stessa larghezza utile */
  .ecm-page .ecm-v21-photo-hero .ecm-cta-row{
    max-width:610px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-buy-cta{
    flex:0 0 320px !important;
    width:320px !important;
    min-width:320px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-whatsapp-cta{
    flex:0 0 245px !important;
    width:245px !important;
    min-width:245px !important;
  }
}


/* =========================================================
   ECM V25 — HERO: TITOLO E CTA RIPRISTINATI
   Foto/gabbia V24 invariate.
   ========================================================= */

@media (min-width:901px){

  /* Recupera spazio commerciale a sinistra senza far entrare
     i paragrafi nella fotografia. */
  .ecm-page .ecm-v21-photo-hero .ecm-v3-shell,
  .ecm-page .ecm-v21-photo-hero .container{
    padding-right:40% !important;
  }

  /* Il titolo può usare più larghezza: "Un solo corso" resta unito. */
  .ecm-page .ecm-v21-photo-hero h1{
    width:680px !important;
    max-width:680px !important;
    font-size:3.35rem !important;
    line-height:.98 !important;
    letter-spacing:-.035em !important;
  }

  /* I testi lunghi restano più stretti e non arrivano sul camice. */
  .ecm-page .ecm-v21-photo-hero .ecm-v3-hero-copy p,
  .ecm-page .ecm-v21-photo-hero .ecm-v3-copy p{
    max-width:600px !important;
  }

  /* Due CTA pulite e affiancate. */
  .ecm-page .ecm-v21-photo-hero .ecm-cta-row{
    width:650px !important;
    max-width:650px !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-buy-cta{
    flex:0 0 355px !important;
    width:355px !important;
    min-width:355px !important;
    min-height:76px !important;
    padding:13px 18px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-whatsapp-cta{
    flex:0 0 285px !important;
    width:285px !important;
    min-width:285px !important;
    min-height:62px !important;
    padding:10px 15px !important;
  }

  /* Testi principali dei pulsanti sempre su una sola riga. */
  .ecm-page .ecm-v21-photo-hero .ecm-buy-cta .ecm-cta-main,
  .ecm-page .ecm-v21-photo-hero .ecm-whatsapp-cta .ecm-cta-main{
    white-space:nowrap !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-buy-cta .ecm-cta-main{
    font-size:.98rem !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-whatsapp-cta .ecm-cta-main{
    font-size:.90rem !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-whatsapp-cta .ecm-cta-sub{
    white-space:nowrap !important;
    font-size:.68rem !important;
  }

  /* Hero leggermente più compatta. */
  .ecm-page .ecm-v21-photo-hero{
    min-height:525px !important;
  }
}

/* Fascia intermedia: evita forzature prima del layout mobile. */
@media (min-width:901px) and (max-width:1180px){
  .ecm-page .ecm-v21-photo-hero h1{
    width:620px !important;
    max-width:620px !important;
    font-size:3rem !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row{
    width:610px !important;
    max-width:610px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-buy-cta{
    flex-basis:330px !important;
    width:330px !important;
    min-width:330px !important;
  }

  .ecm-page .ecm-v21-photo-hero .ecm-cta-row .ecm-whatsapp-cta{
    flex-basis:270px !important;
    width:270px !important;
    min-width:270px !important;
  }
}


/* =========================================================
   PAGINA CONTATTI
   ========================================================= */
.contact-page{background:#fff;color:#102536}
.contact-page .contact-narrow{max-width:960px}
.contact-page .contact-eyebrow{margin:0 0 14px;color:#0878bd;font-size:.78rem;font-weight:900;letter-spacing:.14em}
.contact-hero{padding:76px 0 72px;background:linear-gradient(120deg,#fff 0%,#fff 65%,#f1f7fa 100%)}
.contact-hero h1{max-width:900px;margin:0;font-size:clamp(2.8rem,5.2vw,5rem);line-height:.98;letter-spacing:-.045em;color:#0b2e49}
.contact-hero h1 span{color:#0878bd}
.contact-lead{max-width:760px;margin:28px 0 0;font-size:1.2rem;line-height:1.6;color:#46545e}
.contact-punch{margin:14px 0 0;font-size:1.12rem;font-weight:800}
.contact-hero-actions{display:flex;align-items:center;gap:22px;margin-top:34px;flex-wrap:wrap}
.contact-wa-main{display:inline-flex;align-items:center;gap:13px;min-width:340px;padding:15px 22px;border-radius:5px;background:#20ad59;color:#fff;text-decoration:none;box-shadow:0 3px 8px rgba(7,39,59,.13)}
.contact-wa-icon{display:grid;place-items:center;width:32px;height:32px;border:2px solid #fff;border-radius:50%;font-weight:900}
.contact-wa-main strong,.contact-wa-main small{display:block}.contact-wa-main strong{font-size:1.02rem}.contact-wa-main small{margin-top:3px;opacity:.9}
.contact-text-link{color:#64717a;text-decoration:none;font-size:.88rem}

.contact-routing{padding:72px 0;background:#f3f7f9}
.contact-routing h2,.contact-reassurance h2,.contact-form-copy h2,.contact-direct h2{margin:0;color:#102536;font-size:clamp(2rem,3vw,3rem);line-height:1.08;letter-spacing:-.025em}
.contact-route-list{margin-top:34px;border-top:1px solid #cfdbe2}
.contact-route-list article{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;padding:25px 0;border-bottom:1px solid #cfdbe2}
.contact-route-list h3{margin:0 0 6px;font-size:1.25rem}.contact-route-list p{margin:0;max-width:680px;color:#52616b;line-height:1.55}
.contact-route-list a{font-weight:850;color:#0878bd;text-decoration:none;white-space:nowrap}

.contact-reassurance{padding:76px 0;background:#0b304b;color:#fff}
.contact-reassurance .contact-eyebrow{color:#5dc5ff}.contact-reassurance h2{color:#fff;max-width:820px}
.contact-reassurance p:last-child{max-width:820px;margin:22px 0 0;font-size:1.08rem;line-height:1.7;color:#e5eef4}

.contact-form-section{padding:80px 0;background:#fff}
.contact-form-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:75px;align-items:start}
.contact-form-copy p:last-child{margin:20px 0 0;color:#58666f;line-height:1.65}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.contact-form label{display:flex;flex-direction:column;gap:7px;font-size:.82rem;font-weight:800;color:#263b49}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;box-sizing:border-box;border:1px solid #c8d3da;border-radius:4px;background:#fff;padding:13px 14px;font:inherit;color:#102536}
.contact-form textarea{resize:vertical}.contact-full{grid-column:1/-1}
.contact-form .contact-privacy{flex-direction:row;align-items:flex-start;font-weight:500}.contact-privacy input{width:auto;margin-top:2px}.contact-privacy a{color:#0878bd}
.contact-form button{border:0;border-radius:4px;background:#ed1624;color:#fff;padding:17px 28px;font-weight:900;font-size:.96rem;cursor:pointer;box-shadow:0 3px 8px rgba(7,39,59,.14)}

.contact-direct{padding:65px 0;background:#f3f7f9}
.contact-direct-wa{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:20px;margin-top:28px;padding:22px 0;border-top:1px solid #cfdbe2;border-bottom:1px solid #cfdbe2;color:#102536;text-decoration:none}
.contact-direct-wa strong{font-size:1.15rem}.contact-direct-wa span{color:#52616b}.contact-direct-wa b{font-size:1.5rem;color:#20ad59}

@media(max-width:800px){
 .contact-hero{padding:52px 0}.contact-hero h1{font-size:2.75rem}
 .contact-route-list article{grid-template-columns:1fr;gap:12px}
 .contact-form-grid{grid-template-columns:1fr;gap:35px}.contact-form{grid-template-columns:1fr}.contact-full{grid-column:auto}
 .contact-wa-main{min-width:0;width:100%;box-sizing:border-box}
 .contact-direct-wa{grid-template-columns:1fr auto}.contact-direct-wa span{grid-row:2}.contact-direct-wa b{grid-row:1/3;grid-column:2}
}


/* =========================================================
   CONTATTI V2 — DUE SOLI PERCORSI: WHATSAPP / EMAIL
   ========================================================= */

.contact-page .contact-choice{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:14px;
  max-width:790px;
  margin-top:34px;
}

.contact-page .contact-choice-wa,
.contact-page .contact-choice-mail{
  display:flex;
  align-items:center;
  gap:15px;
  min-height:86px;
  box-sizing:border-box;
  padding:15px 20px;
  border-radius:5px;
  text-decoration:none;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.contact-page .contact-choice-wa{
  background:#20ad59;
  border:1px solid #159447;
  color:#fff;
  box-shadow:0 3px 8px rgba(7,39,59,.13);
}

.contact-page .contact-choice-mail{
  background:#fff;
  border:1px solid #b8c9d3;
  color:#102536;
}

.contact-page .contact-choice-wa:hover,
.contact-page .contact-choice-mail:hover{
  transform:translateY(-2px);
  box-shadow:0 6px 14px rgba(7,39,59,.13);
}

.contact-page .contact-choice-icon,
.contact-page .contact-choice-symbol{
  display:grid;
  place-items:center;
  flex:0 0 36px;
  width:36px;
  height:36px;
  border-radius:50%;
  font-weight:900;
}

.contact-page .contact-choice-icon{
  border:2px solid #fff;
  color:#fff;
}

.contact-page .contact-choice-symbol{
  border:2px solid #0878bd;
  color:#0878bd;
  font-size:1rem;
}

.contact-page .contact-choice-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left;
}

.contact-page .contact-choice-copy small{
  margin-bottom:3px;
  font-size:.67rem;
  font-style:normal;
  font-weight:900;
  letter-spacing:.12em;
  opacity:.78;
}

.contact-page .contact-choice-copy strong{
  font-size:1.04rem;
  line-height:1.15;
}

.contact-page .contact-choice-copy em{
  margin-top:5px;
  font-size:.76rem;
  line-height:1.2;
  font-style:normal;
  font-weight:500;
  opacity:.9;
}

/* WhatsApp resta il percorso dominante */
.contact-page .contact-choice-wa .contact-choice-copy strong{
  color:#fff;
}

.contact-page .contact-choice-mail .contact-choice-copy small{
  color:#0878bd;
  opacity:1;
}

.contact-page .contact-choice-mail .contact-choice-copy em{
  color:#64717a;
}

/* Il blocco finale di contatto diretto non serve più:
   la pagina offre soltanto WhatsApp oppure modulo email. */
.contact-page .contact-direct{
  display:none !important;
}

@media(max-width:800px){
  .contact-page .contact-choice{
    grid-template-columns:1fr;
    max-width:none;
  }

  .contact-page .contact-choice-wa,
  .contact-page .contact-choice-mail{
    width:100%;
  }
}


/* =========================================================
   CONTATTI V3 — ANCORA MODULO CORRETTA
   Evita che il titolo finisca sotto l'header.
   ========================================================= */
html {
  scroll-behavior: smooth;
}

.contact-page #richiesta {
  scroll-margin-top: 110px !important;
}

@media (max-width: 800px) {
  .contact-page #richiesta {
    scroll-margin-top: 90px !important;
  }
}


/* =========================================================
   CONTATTI V6 — RIFINITURA DESKTOP
   scala, densità, ritmo verticale e proporzioni
   ========================================================= */

@media (min-width: 801px){

  /* HERO: più compatta, senza perdere forza */
  .contact-page .contact-hero{
    padding:58px 0 54px;
  }

  .contact-page .contact-hero h1{
    max-width:880px;
    font-size:clamp(2.65rem,4.25vw,4.25rem);
    line-height:1.01;
    letter-spacing:-.042em;
  }

  .contact-page .contact-lead{
    max-width:720px;
    margin-top:22px;
    font-size:1.08rem;
    line-height:1.55;
  }

  .contact-page .contact-punch{
    margin-top:10px;
    font-size:1.04rem;
  }

  /* Due canali ordinati 50/50.
     WhatsApp resta dominante grazie al colore, non alla dimensione. */
  .contact-page .contact-choice{
    grid-template-columns:1fr 1fr;
    gap:14px;
    max-width:790px;
    margin-top:27px;
  }

  .contact-page .contact-choice-wa,
  .contact-page .contact-choice-mail{
    min-height:82px;
    padding:14px 18px;
  }

  /* ROUTING: meno aria, stessa leggibilità */
  .contact-page .contact-routing{
    padding:55px 0 52px;
  }

  .contact-page .contact-routing h2{
    font-size:clamp(1.9rem,2.7vw,2.65rem);
  }

  .contact-page .contact-route-list{
    margin-top:26px;
  }

  .contact-page .contact-route-list article{
    padding:19px 0;
  }

  .contact-page .contact-route-list h3{
    margin-bottom:4px;
    font-size:1.16rem;
  }

  .contact-page .contact-route-list p{
    line-height:1.45;
  }

  /* FASCIA BLU: rassicurazione, non seconda hero */
  .contact-page .contact-reassurance{
    padding:50px 0 52px;
  }

  .contact-page .contact-reassurance h2{
    max-width:760px;
    font-size:clamp(1.9rem,2.75vw,2.75rem);
    line-height:1.08;
  }

  .contact-page .contact-reassurance p:last-child{
    max-width:800px;
    margin-top:17px;
    font-size:1rem;
    line-height:1.62;
  }

  /* MODULO: 35/65, più operativo e meno spazio morto */
  .contact-page .contact-form-section{
    padding:58px 0 62px;
  }

  .contact-page .contact-form-grid{
    grid-template-columns:.54fr 1fr;
    gap:62px;
  }

  .contact-page .contact-form-copy h2{
    font-size:clamp(1.85rem,2.65vw,2.65rem);
    line-height:1.08;
  }

  .contact-page .contact-form-copy p:last-child{
    margin-top:16px;
    line-height:1.58;
  }

  .contact-page .contact-form{
    gap:15px 18px;
  }

  .contact-page .contact-form input,
  .contact-page .contact-form select{
    padding:11px 13px;
  }

  .contact-page .contact-form textarea{
    padding:11px 13px;
  }

  .contact-page .contact-form button{
    padding:15px 25px;
  }
}

/* Mobile: manteniamo la stessa filosofia di compattezza */
@media (max-width: 800px){
  .contact-page .contact-hero{
    padding:42px 0 44px;
  }

  .contact-page .contact-hero h1{
    font-size:clamp(2.2rem,10vw,2.75rem);
    line-height:1.02;
  }

  .contact-page .contact-lead{
    margin-top:20px;
    font-size:1.02rem;
  }

  .contact-page .contact-choice{
    margin-top:25px;
  }

  .contact-page .contact-routing{
    padding:46px 0;
  }

  .contact-page .contact-route-list{
    margin-top:25px;
  }

  .contact-page .contact-route-list article{
    padding:19px 0;
  }

  .contact-page .contact-reassurance{
    padding:45px 0;
  }

  .contact-page .contact-reassurance h2{
    font-size:2rem;
  }

  .contact-page .contact-form-section{
    padding:48px 0 52px;
  }

  .contact-page .contact-form-grid{
    gap:30px;
  }

  .contact-page .contact-form-copy h2{
    font-size:2rem;
  }
}


/* =========================================================
   CONTATTI V7 — CORREZIONE PROPORZIONI FINALI DESKTOP
   ========================================================= */
@media (min-width: 801px){

  /* HERO: evita "partire." isolato e riduce l'effetto landing */
  .contact-page .contact-narrow{
    max-width: 960px;
  }

  .contact-page .contact-hero{
    padding: 52px 0 48px;
  }

  .contact-page .contact-hero h1{
    max-width: 920px;
    font-size: clamp(2.7rem, 3.65vw, 3.7rem);
    line-height: 1.02;
    letter-spacing: -.038em;
  }

  .contact-page .contact-lead{
    margin-top: 19px;
  }

  .contact-page .contact-punch{
    margin-top: 8px;
  }

  .contact-page .contact-choice{
    max-width: 790px;
    margin-top: 23px;
  }

  /* ELENCO: chiude meglio il blocco senza spazio morto */
  .contact-page .contact-routing{
    padding: 50px 0 45px;
  }

  .contact-page .contact-route-list{
    margin-top: 23px;
  }

  .contact-page .contact-route-list article{
    padding: 17px 0;
  }

  /* FASCIA BLU: ancora più asciutta */
  .contact-page .contact-reassurance{
    padding: 43px 0 45px;
  }

  .contact-page .contact-reassurance h2{
    max-width: 730px;
    font-size: clamp(1.9rem, 2.45vw, 2.45rem);
  }

  .contact-page .contact-reassurance p:last-child{
    margin-top: 14px;
    max-width: 790px;
  }

  /* MODULO: allineamento e chiusura più netti verso il footer */
  .contact-page .contact-form-section{
    padding: 50px 0 52px;
  }

  .contact-page .contact-form-grid{
    grid-template-columns: .50fr 1fr;
    gap: 58px;
  }

  .contact-page .contact-form-copy h2{
    font-size: clamp(1.85rem, 2.35vw, 2.35rem);
  }

  .contact-page .contact-form-copy p:last-child{
    max-width: 330px;
  }

  .contact-page .contact-form textarea{
    min-height: 105px;
  }
}

/* Desktop molto largo: impedisce che il titolo torni enorme */
@media (min-width: 1400px){
  .contact-page .contact-hero h1{
    font-size: 3.7rem;
  }
}


/* =========================================================
   ORGANIZZA UN CORSO
   ========================================================= */
.organizza-page{background:#fff;color:#102536}
.organizza-page .org-narrow{max-width:960px}
.organizza-page .org-eyebrow{margin:0 0 13px;color:#0878bd;font-size:.76rem;font-weight:900;letter-spacing:.14em}
.org-hero{padding:64px 0 62px;background:linear-gradient(120deg,#fff 0%,#fff 67%,#f1f7fa 100%)}
.org-hero h1{max-width:850px;margin:0;color:#0b2e49;font-size:clamp(3rem,4.6vw,4.6rem);line-height:.98;letter-spacing:-.045em}
.org-hero h1 span{color:#0878bd}
.org-lead{max-width:760px;margin:25px 0 0;color:#4f5e68;font-size:1.14rem;line-height:1.6}
.org-punch{max-width:800px;margin:10px 0 0;font-size:1.05rem;font-weight:850}
.org-main-cta{display:inline-block;margin-top:28px;padding:16px 23px;border-radius:4px;background:#ed1624;color:#fff;text-decoration:none;font-weight:900;box-shadow:0 3px 8px rgba(7,39,59,.14)}

.org-choice{padding:64px 0 68px;background:#f3f7f9;scroll-margin-top:100px}
.org-choice h2,.org-path h2,.org-examples h2,.org-courses h2,.org-process h2,.org-final h2{margin:0;font-size:clamp(2rem,3vw,3rem);line-height:1.08;letter-spacing:-.03em}
.org-choice-intro{margin:15px 0 0;color:#596872}
.org-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:31px}
.org-choice-box{position:relative;display:flex;flex-direction:column;min-height:245px;padding:27px;border:1px solid #cbd8df;border-radius:5px;background:#fff;color:#102536;text-decoration:none}
.org-choice-box-accent{border-top:4px solid #0878bd;padding-top:24px}
.org-choice-num{position:absolute;right:22px;top:20px;color:#c8d6de;font-size:2.1rem;font-weight:900}
.org-choice-box small{color:#0878bd;font-size:.7rem;font-weight:900;letter-spacing:.12em}
.org-choice-box h3{max-width:360px;margin:18px 0 10px;font-size:1.48rem;line-height:1.16}
.org-choice-box p{margin:0;color:#5b6972;line-height:1.55}
.org-choice-box strong{margin-top:auto;padding-top:22px;color:#0878bd;font-size:.9rem}

.org-path{padding:67px 0;scroll-margin-top:100px}
.org-path-light{background:#fff}
.org-path-dark{background:#0b304b;color:#fff}
.org-two-col{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:start}
.org-path-dark .org-eyebrow{color:#5dc5ff}.org-path-dark h2{color:#fff}
.org-path-copy>p{margin:0 0 17px;font-size:1.05rem;line-height:1.68;color:#53636d}
.org-path-dark .org-path-copy>p{color:#e4edf2}
.org-points{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:24px 0;border-top:1px solid #d2dde3}
.org-points span{padding:14px 12px 14px 0;border-bottom:1px solid #d2dde3;font-weight:750}
.org-link{display:inline-block;margin-top:8px;color:#0878bd;font-weight:900;text-decoration:none}
.org-link-light{color:#5dc5ff}
.org-highlight{padding:15px 17px;border-left:3px solid #5dc5ff;background:rgba(255,255,255,.06);font-weight:800}

.org-examples{padding:65px 0;background:#f3f7f9}
.org-example-list{margin-top:30px;border-top:1px solid #cbd8df}
.org-example-list article{display:grid;grid-template-columns:.75fr 1.25fr;gap:40px;padding:19px 0;border-bottom:1px solid #cbd8df}
.org-example-list h3,.org-example-list p{margin:0}.org-example-list h3{font-size:1.08rem}.org-example-list p{color:#586771;line-height:1.5}

.org-courses{padding:65px 0;background:#fff}
.org-course-lines{display:grid;grid-template-columns:1fr 1fr;margin-top:28px;border-top:1px solid #d0dce2}
.org-course-lines span{padding:17px 12px 17px 0;border-bottom:1px solid #d0dce2;font-weight:800}

.org-process{padding:65px 0;background:#0b304b;color:#fff}
.org-process .org-eyebrow{color:#5dc5ff}.org-process h2{color:#fff}
.org-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:31px}
.org-steps b{display:block;margin-bottom:13px;color:#5dc5ff;font-size:.78rem;letter-spacing:.12em}
.org-steps h3{margin:0 0 8px;font-size:1.12rem}.org-steps p{margin:0;color:#dce8ee;line-height:1.55}

.org-final{padding:66px 0;background:#f3f7f9;scroll-margin-top:100px}
.org-final-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}
.org-final h2{max-width:680px}.org-final p:last-child{max-width:650px;margin:18px 0 0;color:#586771;line-height:1.6}
.org-final-actions{display:flex;flex-direction:column;gap:12px}
.org-final-actions a{display:flex;flex-direction:column;padding:17px 20px;border-radius:4px;text-decoration:none}
.org-final-actions small{margin-bottom:3px;font-size:.68rem;font-weight:900;letter-spacing:.12em}
.org-final-actions strong{font-size:1rem}
.org-wa{background:#20ad59;color:#fff}
.org-form-link{border:1px solid #b9cbd4;background:#fff;color:#102536}.org-form-link small{color:#0878bd}

@media(max-width:800px){
 .org-hero{padding:46px 0}.org-hero h1{font-size:2.75rem}
 .org-choice,.org-path,.org-examples,.org-courses,.org-process,.org-final{padding:48px 0}
 .org-choice-grid,.org-two-col,.org-final-grid,.org-steps{grid-template-columns:1fr;gap:28px}
 .org-choice-box{min-height:220px}
 .org-two-col{gap:25px}.org-points,.org-course-lines{grid-template-columns:1fr}
 .org-example-list article{grid-template-columns:1fr;gap:6px}
 .org-final-grid{gap:30px}
}


/* =========================================================
   ORGANIZZA UN CORSO V3 — DRM / PROOF / CTA SEGMENTATE
   ========================================================= */
.org-proof{
  padding:65px 0;
  background:#f3f7f9;
}
.org-proof h2{
  max-width:820px;
  margin:0;
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.08;
  letter-spacing:-.03em;
}
.org-proof-intro{
  max-width:790px;
  margin:17px 0 0;
  color:#586771;
  font-size:1.03rem;
  line-height:1.6;
}
.org-proof-list{
  margin-top:30px;
  border-top:1px solid #cbd8df;
}
.org-proof-list article{
  display:grid;
  grid-template-columns:145px .85fr 1.15fr;
  gap:28px;
  align-items:start;
  padding:19px 0;
  border-bottom:1px solid #cbd8df;
}
.org-proof-list strong{
  color:#0878bd;
  font-size:.69rem;
  line-height:1.4;
  letter-spacing:.11em;
}
.org-proof-list h3,
.org-proof-list p{
  margin:0;
}
.org-proof-list h3{
  font-size:1.06rem;
  line-height:1.35;
}
.org-proof-list p{
  color:#586771;
  line-height:1.5;
}
.org-proof-close{
  margin:25px 0 0;
  padding:18px 20px;
  border-left:3px solid #0878bd;
  background:#fff;
  color:#53636d;
  line-height:1.55;
}
.org-proof-close strong{
  color:#102536;
}
.org-wa-public{
  background:#0878bd;
}

@media(max-width:800px){
  .org-proof{padding:48px 0}
  .org-proof-list article{
    grid-template-columns:1fr;
    gap:6px;
  }
}


/* ===== MENU ORGANIZZA UN CORSO ===== */
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-dropdown-toggle{
  appearance:none;border:0;background:transparent;color:inherit;font:inherit;
  cursor:pointer;padding:0;display:flex;align-items:center;gap:6px
}
.nav-dropdown-toggle span{font-size:.9em;transition:transform .2s ease}
.nav-dropdown-menu{
  position:absolute;z-index:100;top:calc(100% + 18px);left:50%;
  width:390px;transform:translate(-50%,8px);padding:8px;
  background:#fff;border:1px solid #dce5ea;border-radius:12px;
  box-shadow:0 18px 45px rgba(14,34,49,.14);
  opacity:0;visibility:hidden;transition:.18s ease
}
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav-dropdown-menu a{display:block!important;padding:13px 14px!important;border-radius:8px;text-decoration:none!important}
.nav-dropdown-menu a:hover{background:#f3f7f9}
.nav-dropdown-menu strong{display:block;color:#102536;font-size:.9rem;line-height:1.25}
.nav-dropdown-menu small{display:block;margin-top:3px;color:#687984;font-size:.73rem;line-height:1.35;font-weight:400}

/* ===== TRE LANDING ===== */
.split-hero{padding:86px 0 74px;background:#f4f8fa}
.split-hero-inner{max-width:980px}
.split-eyebrow{margin:0 0 13px;color:#0878bd;font-size:.72rem;font-weight:800;letter-spacing:.13em}
.split-hero h1{max-width:900px;margin:0;font-size:clamp(2.8rem,5.3vw,5.25rem);line-height:.98;letter-spacing:-.05em;color:#102536}
.split-lead{max-width:760px;margin:24px 0 0;font-size:1.18rem;line-height:1.55;color:#53636d}
.split-primary{display:inline-block;margin-top:28px;padding:14px 19px;border-radius:7px;background:#0878bd;color:#fff!important;text-decoration:none;font-size:.8rem;font-weight:800;letter-spacing:.045em}
.split-section{padding:68px 0}
.split-two{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.split-section h2,.split-proof h2,.split-final h2{margin:0;color:#102536;font-size:clamp(2rem,3.2vw,3.25rem);line-height:1.07;letter-spacing:-.035em}
.split-copy p{margin:0 0 17px;color:#53636d;font-size:1.04rem;line-height:1.65}
.split-highlight{padding:17px 19px;border-left:3px solid #0878bd;background:#f3f7f9;color:#102536!important;font-weight:700}
.split-proof{padding:62px 0;background:#102536;color:#fff}
.split-proof .split-eyebrow{color:#77c9f4}
.split-proof h2{color:#fff}
.split-proofline{max-width:950px;margin:20px 0 0;font-size:1.08rem;line-height:1.65;color:#d6e1e7}
.split-stat{margin:25px 0 0;font-size:1.08rem;color:#fff}
.split-lines{border-top:1px solid #cfdbe1}
.split-lines span{display:block;padding:15px 0;border-bottom:1px solid #cfdbe1;color:#314550}
.case-lines{margin-top:27px;border-top:1px solid rgba(255,255,255,.22)}
.case-lines p{display:grid;grid-template-columns:190px 1fr;gap:28px;margin:0;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.22)}
.case-lines strong{color:#fff}.case-lines span{color:#d6e1e7}
.split-steps{border-top:1px solid #cfdbe1}
.split-steps p{display:grid;grid-template-columns:44px 1fr;gap:14px;margin:0;padding:16px 0;border-bottom:1px solid #cfdbe1;color:#53636d}
.split-steps b{color:#0878bd}
.split-final{padding:66px 0;background:#eaf3f7}
.split-final p:not(.split-eyebrow){max-width:720px;color:#53636d;font-size:1.04rem;line-height:1.6}
.host-hero{background:#eef6f9}
.collab-hero{background:#f7f5f1}

@media(max-width:900px){
 .nav-dropdown{display:block}
 .nav-dropdown-toggle{width:100%;justify-content:space-between}
 .nav-dropdown-menu{position:static;width:auto;transform:none!important;box-shadow:none;border:0;border-left:2px solid #dce5ea;border-radius:0;margin:10px 0 5px 8px;padding:0 0 0 8px;opacity:1;visibility:visible;display:none}
 .nav-dropdown:focus-within .nav-dropdown-menu{display:block}
 .split-hero{padding:58px 0 50px}
 .split-two{grid-template-columns:1fr;gap:28px}
 .split-section{padding:50px 0}
 .case-lines p{grid-template-columns:1fr;gap:5px}
}

/* ===== FORMAZIONE PER AZIENDE E ORGANIZZAZIONI ===== */
.org-formazione-page{color:#102536}
.org-formazione-page .fo-hero{padding:82px 0 72px;background:#f5f7f5}
.org-formazione-page .fo-hero-inner{max-width:1080px}
.org-formazione-page .fo-eyebrow{margin:0 0 13px;color:#007fbd;font-size:.72rem;font-weight:800;letter-spacing:.13em}
.org-formazione-page .fo-hero h1{max-width:990px;margin:0;color:var(--navy);font-size:clamp(2.8rem,5vw,5rem);line-height:.98;letter-spacing:-.05em}
.org-formazione-page .fo-lead{max-width:880px;margin:25px 0 0;color:#52636d;font-size:1.15rem;line-height:1.62}
.org-formazione-page .fo-hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}
.org-formazione-page .fo-primary{display:inline-flex;align-items:center;justify-content:center;margin:0;padding:15px 20px;border:0;border-radius:6px;background:#07334f;color:#fff!important;text-decoration:none;font-size:.79rem;font-weight:800;letter-spacing:.04em;line-height:1.2;cursor:pointer}
.org-formazione-page .fo-primary:hover{background:var(--blue)}
.org-formazione-page .fo-whatsapp-link,.org-formazione-page .fo-final-whatsapp a{color:var(--navy);font-weight:700;text-decoration:none;border-bottom:1px solid #9fb2bd;padding-bottom:3px}

.org-formazione-page .fo-section,.org-formazione-page .fo-how{padding:70px 0}
.org-formazione-page .fo-two{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:78px;align-items:start}
.org-formazione-page .fo-section h2,.org-formazione-page .fo-how h2,.org-formazione-page .fo-proof h2,.org-formazione-page .fo-final h2{margin:0;color:var(--navy);font-size:clamp(2rem,3.15vw,3.15rem);line-height:1.08;letter-spacing:-.035em}
.org-formazione-page .fo-copy>p{margin:0 0 22px;color:#52636d;font-size:1.04rem;line-height:1.65}
.org-formazione-page .fo-points{border-top:1px solid #d1dce1}
.org-formazione-page .fo-points p{display:grid;grid-template-columns:215px 1fr;gap:25px;margin:0;padding:18px 0;border-bottom:1px solid #d1dce1}
.org-formazione-page .fo-points strong{font-size:.95rem;color:var(--navy)}
.org-formazione-page .fo-points span{color:#5c6c75;line-height:1.5}
.org-formazione-page .fo-section-close{margin-top:25px!important;color:var(--navy)!important}

.org-formazione-page .fo-proof{padding:66px 0;background:#092f49;color:#fff}
.org-formazione-page .fo-proof .fo-eyebrow{color:#61c8f2}
.org-formazione-page .fo-proof h2{max-width:980px;color:#fff}
.org-formazione-page .fo-cases{margin-top:30px;border-top:1px solid rgba(255,255,255,.2)}
.org-formazione-page .fo-cases p{display:grid;grid-template-columns:235px 1fr;gap:28px;margin:0;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.2)}
.org-formazione-page .fo-cases strong{color:#fff}
.org-formazione-page .fo-cases span{color:#d5e0e6}
.org-formazione-page .fo-stat{margin:24px 0 0;color:#fff;font-size:1.05rem;line-height:1.55}

.org-formazione-page .fo-course-label{margin:28px 0 10px!important;color:#007fbd!important;font-size:.7rem!important;font-weight:800!important;letter-spacing:.12em!important}
.org-formazione-page .fo-course-featured{border-top:1px solid #c9d8df}
.org-formazione-page .fo-course-featured>a,.org-formazione-page .fo-course-featured>div{display:grid;grid-template-columns:180px 1fr auto;gap:22px;align-items:center;padding:22px 18px;border-bottom:1px solid #c9d8df;border-left:4px solid #007fbd;background:#f4f8fa;color:#102536;text-decoration:none}
.org-formazione-page .fo-course-featured>a:hover{background:#eaf4f8}
.org-formazione-page .fo-course-featured strong{font-size:1.06rem;color:var(--navy)}
.org-formazione-page .fo-course-featured strong small{display:inline-block;margin-left:6px;color:#007fbd;font-size:.68rem;letter-spacing:.08em}
.org-formazione-page .fo-course-featured span{color:#596b75;line-height:1.5}
.org-formazione-page .fo-course-featured b{white-space:nowrap;color:#007fbd;font-size:.82rem}
.org-formazione-page .fo-course-label-secondary{margin-top:30px!important}
.org-formazione-page .fo-course-list{border-top:1px solid #d1dce1}
.org-formazione-page .fo-course-list>span{display:grid;grid-template-columns:190px 1fr;gap:25px;padding:17px 0;border-bottom:1px solid #d1dce1;color:#102536}
.org-formazione-page .fo-course-list>span>span{color:#60717b;line-height:1.5}

.org-formazione-page .fo-how{background:#f3f7f9}
.org-formazione-page .fo-steps{border-top:1px solid #ccd9df}
.org-formazione-page .fo-steps>p{display:grid;grid-template-columns:45px 1fr;gap:15px;margin:0;padding:18px 0;border-bottom:1px solid #ccd9df;color:#52636d;line-height:1.5}
.org-formazione-page .fo-steps b{color:#007fbd}
.org-formazione-page .fo-steps strong{color:#102536}
.org-formazione-page .fo-step-result{display:block;margin-top:22px;padding:20px 0 0;border-top:0;color:var(--navy);font-size:1.02rem;line-height:1.55}

.org-formazione-page .fo-final{scroll-margin-top:110px;padding:72px 0;background:#eaf3f7}
.org-formazione-page .fo-final-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(430px,1.12fr);gap:clamp(45px,6vw,85px);align-items:start}
.org-formazione-page .fo-final-copy>p:not(.fo-eyebrow){max-width:620px;margin:20px 0 0;color:#52636d;font-size:1.04rem;line-height:1.6}
.org-formazione-page .fo-final-whatsapp{margin-top:26px!important}
.org-formazione-page .fo-request-form{display:grid;gap:17px;padding:30px;background:#fff;color:#171717;border:1px solid #d4e0e6;border-radius:12px;box-shadow:0 16px 38px rgba(6,42,68,.09)}
.org-formazione-page .fo-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.org-formazione-page .fo-request-form label{display:grid;gap:8px;font-weight:700;color:#102536}
.org-formazione-page .fo-request-form label>span{font-size:.92rem}
.org-formazione-page .fo-request-form label small{font-weight:500;color:#657680}
.org-formazione-page .fo-request-form input,.org-formazione-page .fo-request-form select,.org-formazione-page .fo-request-form textarea{width:100%;box-sizing:border-box;font:inherit;color:#171717;background:#fff;border:1px solid #b9c8d0;border-radius:7px;padding:12px 13px}
.org-formazione-page .fo-request-form input:focus,.org-formazione-page .fo-request-form select:focus,.org-formazione-page .fo-request-form textarea:focus{outline:2px solid #007fbd;outline-offset:1px;border-color:#007fbd}
.org-formazione-page .fo-request-form textarea{min-height:90px;resize:vertical}
.org-formazione-page .fo-request-form .fo-privacy{display:flex;align-items:flex-start;gap:10px;font-weight:400;color:#52636d}
.org-formazione-page .fo-request-form .fo-privacy input{width:auto;margin:3px 0 0;flex:0 0 auto}
.org-formazione-page .fo-submit{justify-self:start;margin-top:2px}
.org-formazione-page .fo-form-note{margin:-4px 0 0;color:#697a83;font-size:.82rem;line-height:1.45}


.org-formazione-page .fo-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.org-formazione-page .fo-request-form .fo-privacy a{color:#07334f;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.org-formazione-page .fo-form-error{margin:0;padding:12px 14px;border-left:4px solid #b42318;background:#fff1f0;color:#8a1c13;font-size:.9rem;line-height:1.45}
.org-formazione-page .fo-form-success{padding:32px;background:#fff;border:1px solid #d4e0e6;border-radius:12px;box-shadow:0 16px 38px rgba(6,42,68,.09)}
.org-formazione-page .fo-form-success h3{margin:0 0 12px;color:var(--navy);font-size:clamp(1.7rem,2.4vw,2.35rem);line-height:1.08;letter-spacing:-.03em}
.org-formazione-page .fo-form-success>p:not(.fo-eyebrow){margin:0 0 22px;color:#52636d;line-height:1.6}

@media(max-width:900px){
  .org-formazione-page .fo-hero{padding:58px 0 52px}
  .org-formazione-page .fo-two,.org-formazione-page .fo-final-grid{grid-template-columns:1fr;gap:30px}
  .org-formazione-page .fo-section,.org-formazione-page .fo-how{padding:52px 0}
  .org-formazione-page .fo-final{padding:56px 0}
  .org-formazione-page .fo-points p,.org-formazione-page .fo-cases p{grid-template-columns:1fr;gap:6px}
  .org-formazione-page .fo-course-featured>a,.org-formazione-page .fo-course-featured>div{grid-template-columns:1fr;gap:7px}
  .org-formazione-page .fo-course-featured b{white-space:normal}
}

@media(max-width:600px){
  .org-formazione-page .fo-hero h1{font-size:clamp(2.65rem,12vw,4rem)}
  .org-formazione-page .fo-lead{font-size:1.04rem}
  .org-formazione-page .fo-hero-actions{align-items:flex-start;flex-direction:column;gap:15px}
  .org-formazione-page .fo-form-row{grid-template-columns:1fr}
  .org-formazione-page .fo-request-form{padding:22px}
  .org-formazione-page .fo-course-list>span{grid-template-columns:1fr;gap:6px}
  .org-formazione-page .fo-primary{width:100%;text-align:center}
}

/* =========================================================
   FORMAZIONE ORGANIZZAZIONI — FINAL VISUAL PASS V10
   Editoriale / B2B / Direct Response
   ========================================================= */

.org-formazione-page{
  overflow:hidden;
  color:#102536;
}

/* HERO: niente immagine. Il messaggio resta il protagonista. */
.org-formazione-page .fo-hero{
  padding:68px 0 64px;
  background:#f4f7f6;
  border-bottom:1px solid #e2e8e6;
}

.org-formazione-page .fo-hero-inner{
  max-width:1040px;
}

.org-formazione-page .fo-eyebrow{
  margin:0 0 14px;
  color:#007fbd;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.14em;
  line-height:1.3;
}

.org-formazione-page .fo-hero h1{
  max-width:930px;
  margin:0;
  color:var(--navy);
  font-size:clamp(3rem,4.65vw,4.65rem);
  line-height:.99;
  letter-spacing:-.048em;
}

.org-formazione-page .fo-lead{
  max-width:790px;
  margin:25px 0 0;
  color:#51636e;
  font-size:1.08rem;
  line-height:1.62;
}

.org-formazione-page .fo-hero-actions{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  margin-top:28px;
}

.org-formazione-page .fo-primary{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 20px;
  border:0;
  border-radius:6px;
  background:#07334f;
  color:#fff!important;
  text-decoration:none;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.035em;
  line-height:1.2;
  box-shadow:0 7px 18px rgba(7,51,79,.12);
  transition:background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.org-formazione-page .fo-primary:hover{
  background:#007fbd;
  transform:translateY(-1px);
  box-shadow:0 9px 22px rgba(7,51,79,.16);
}

.org-formazione-page .fo-whatsapp-link,
.org-formazione-page .fo-final-whatsapp a{
  color:#0a3a57;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid #9fb3be;
  padding-bottom:2px;
}

/* SEZIONI: meno vuoto, gerarchia più netta */
.org-formazione-page .fo-section{
  padding:64px 0;
}

.org-formazione-page .fo-two{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:72px;
  align-items:start;
}

.org-formazione-page .fo-section h2,
.org-formazione-page .fo-proof h2,
.org-formazione-page .fo-final h2{
  margin:0;
  color:var(--navy);
  font-size:clamp(2.15rem,3vw,3rem);
  line-height:1.06;
  letter-spacing:-.038em;
}

.org-formazione-page .fo-copy>p{
  margin:0 0 20px;
  color:#52636d;
  font-size:1rem;
  line-height:1.62;
}

/* BENEFICI: editoriale, non "tabella tecnica" */
.org-formazione-page .fo-benefits-section{
  padding-top:62px;
  padding-bottom:62px;
}

.org-formazione-page .fo-benefits-section .fo-two>div:first-child{
  max-width:440px;
}

.org-formazione-page .fo-benefits-section .fo-copy>p:first-child{
  font-size:1.05rem;
  color:#445963;
}

.org-formazione-page .fo-points{
  margin-top:24px;
  border-top:1px solid #ccd9df;
}

.org-formazione-page .fo-points p{
  position:relative;
  display:grid;
  grid-template-columns:190px 1fr;
  gap:26px;
  margin:0;
  padding:19px 0 19px 16px;
  border-bottom:1px solid #d7e1e6;
}

.org-formazione-page .fo-points p::before{
  content:"";
  position:absolute;
  left:0;
  top:21px;
  width:4px;
  height:24px;
  border-radius:3px;
  background:#0b8dc8;
}

.org-formazione-page .fo-points strong{
  color:var(--navy);
  font-size:.93rem;
  line-height:1.35;
}

.org-formazione-page .fo-points span{
  color:#5b6d77;
  line-height:1.5;
}

.org-formazione-page .fo-section-close{
  margin-top:23px!important;
  padding-top:2px;
  color:var(--navy)!important;
  line-height:1.55!important;
}

/* PROVA: deve sembrare autorevole, non un CV */
.org-formazione-page .fo-proof{
  padding:68px 0 62px;
  background:#082f49;
  color:#fff;
}

.org-formazione-page .fo-proof .shell{
  max-width:1080px;
}

.org-formazione-page .fo-proof .fo-eyebrow{
  color:#61c8f2;
}

.org-formazione-page .fo-proof h2{
  max-width:960px;
  color:#fff;
  font-size:clamp(2.25rem,3.2vw,3.25rem);
}

.org-formazione-page .fo-proof-lead{
  max-width:970px;
  margin:22px 0 0;
  color:#d8e4ea;
  font-size:1.02rem;
  line-height:1.62;
}

.org-formazione-page .fo-proof-lead strong{
  color:#fff;
}

.org-formazione-page .fo-cases{
  margin-top:30px;
  border-top:1px solid rgba(255,255,255,.22);
}

.org-formazione-page .fo-cases p{
  display:grid;
  grid-template-columns:215px 1fr;
  gap:34px;
  margin:0;
  padding:15px 0;
  border-bottom:1px solid rgba(255,255,255,.17);
}

.org-formazione-page .fo-cases strong{
  color:#fff;
  font-size:.95rem;
}

.org-formazione-page .fo-cases span{
  color:#d3e0e6;
  line-height:1.48;
}

.org-formazione-page .fo-proof-close{
  margin:25px 0 0;
  padding:19px 0 0;
  border-top:1px solid rgba(255,255,255,.22);
  color:#e9f1f4;
  font-size:1rem;
  line-height:1.55;
}

.org-formazione-page .fo-proof-close strong{
  color:#fff;
  font-size:1.08rem;
}

/* CORSI: BLSD e PSA dominanti, il resto subordinato */
.org-formazione-page .fo-courses-section{
  padding-top:66px;
  padding-bottom:64px;
}

.org-formazione-page .fo-course-label{
  margin:27px 0 11px!important;
  color:#007fbd!important;
  font-size:.69rem!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
}

.org-formazione-page .fo-course-featured{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  border:0;
}

.org-formazione-page .fo-course-featured>a,
.org-formazione-page .fo-course-featured>div{
  min-height:158px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:10px;
  padding:24px 24px 22px;
  border:1px solid #c8d8df;
  border-top:4px solid #0788c4;
  border-left:1px solid #c8d8df;
  border-radius:8px;
  background:#f5f9fb;
  color:#102536;
  text-decoration:none;
}

.org-formazione-page .fo-course-featured>a{
  cursor:pointer;
}

.org-formazione-page .fo-course-featured>a:hover{
  background:#edf7fb;
  border-color:#9fc7d9;
}

.org-formazione-page .fo-course-featured strong{
  color:var(--navy);
  font-size:1.12rem;
  line-height:1.25;
}

.org-formazione-page .fo-course-featured strong small{
  margin-left:5px;
  color:#007fbd;
  font-size:.7rem;
  letter-spacing:.08em;
}

.org-formazione-page .fo-course-featured span{
  color:#576a74;
  line-height:1.5;
}

.org-formazione-page .fo-course-featured b{
  margin-top:auto;
  color:#007fbd;
  font-size:.82rem;
  line-height:1.3;
}

.org-formazione-page .fo-course-label-secondary{
  margin-top:30px!important;
}

.org-formazione-page .fo-course-list{
  border-top:1px solid #d2dde2;
}

.org-formazione-page .fo-course-list>span{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:24px;
  padding:16px 0;
  border-bottom:1px solid #d7e1e6;
  color:#102536;
}

.org-formazione-page .fo-course-list>span>strong{
  font-size:.94rem;
  line-height:1.35;
}

.org-formazione-page .fo-course-list>span>span{
  color:#60717b;
  line-height:1.48;
}

.org-formazione-page .fo-courses-section .fo-section-close{
  margin-top:24px!important;
  padding:17px 18px;
  border-left:4px solid #0788c4;
  background:#f2f7f9;
  color:#4d616c!important;
}

.org-formazione-page .fo-courses-section .fo-section-close strong{
  color:var(--navy);
}

/* MODULO: deve sembrare un contatto commerciale, non HTML tecnico */
.org-formazione-page .fo-final{
  scroll-margin-top:110px;
  padding:68px 0 72px;
  background:#eaf3f7;
  border-top:1px solid #d9e6ec;
}

.org-formazione-page .fo-final-grid{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(500px,1.22fr);
  gap:70px;
  align-items:start;
}

.org-formazione-page .fo-final-copy{
  padding-top:10px;
}

.org-formazione-page .fo-final-copy>p:not(.fo-eyebrow){
  max-width:520px;
  margin:20px 0 0;
  color:#53656f;
  font-size:1rem;
  line-height:1.62;
}

.org-formazione-page .fo-final-whatsapp{
  margin-top:25px!important;
}

.org-formazione-page .fo-request-form{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:18px!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:30px!important;
  margin:0!important;
  background:#fff!important;
  color:#102536!important;
  border:1px solid #cfdee5!important;
  border-radius:12px!important;
  box-shadow:0 18px 45px rgba(7,51,79,.10)!important;
}

.org-formazione-page .fo-form-row{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:16px!important;
  width:100%!important;
}

.org-formazione-page .fo-request-form label{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  width:100%!important;
  margin:0!important;
  color:#102536!important;
  font-weight:700!important;
}

.org-formazione-page .fo-request-form label>span{
  display:block!important;
  font-size:.88rem!important;
  line-height:1.3!important;
}

.org-formazione-page .fo-request-form label small{
  color:#6b7c85!important;
  font-weight:500!important;
}

.org-formazione-page .fo-request-form input:not([type="checkbox"]),
.org-formazione-page .fo-request-form select,
.org-formazione-page .fo-request-form textarea{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:13px 14px!important;
  border:1px solid #b9cbd4!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#172d3a!important;
  font:inherit!important;
  line-height:1.35!important;
  box-shadow:none!important;
}

.org-formazione-page .fo-request-form input:not([type="checkbox"]),
.org-formazione-page .fo-request-form select{
  min-height:48px!important;
}

.org-formazione-page .fo-request-form textarea{
  min-height:118px!important;
  resize:vertical!important;
}

.org-formazione-page .fo-request-form input:focus,
.org-formazione-page .fo-request-form select:focus,
.org-formazione-page .fo-request-form textarea:focus{
  outline:2px solid rgba(0,127,189,.18)!important;
  outline-offset:1px!important;
  border-color:#007fbd!important;
}

.org-formazione-page .fo-request-form textarea::placeholder{
  color:#86959c;
  opacity:1;
}

.org-formazione-page .fo-request-form .fo-privacy{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  gap:9px!important;
  color:#5d6e77!important;
  font-weight:400!important;
}

.org-formazione-page .fo-request-form .fo-privacy input{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  margin:2px 0 0!important;
}

.org-formazione-page .fo-request-form .fo-privacy span{
  font-size:.88rem!important;
  line-height:1.4!important;
}

.org-formazione-page .fo-request-form .fo-privacy a{
  color:#07334f!important;
  font-weight:700!important;
  text-decoration:underline!important;
  text-underline-offset:2px;
}

.org-formazione-page .fo-submit{
  justify-self:start!important;
  min-width:210px!important;
  margin-top:1px!important;
}

.org-formazione-page .fo-form-note{
  max-width:500px;
  margin:-2px 0 0!important;
  color:#6b7b83!important;
  font-size:.81rem!important;
  line-height:1.48!important;
}

.org-formazione-page .fo-hp{
  position:absolute!important;
  left:-99999px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

.org-formazione-page .fo-form-error{
  margin:0!important;
  padding:12px 14px!important;
  border-left:4px solid #b42318!important;
  background:#fff1f0!important;
  color:#8a1c13!important;
  font-size:.89rem!important;
  line-height:1.45!important;
}

.org-formazione-page .fo-form-success{
  padding:30px!important;
  background:#fff!important;
  border:1px solid #cfdee5!important;
  border-radius:12px!important;
  box-shadow:0 18px 45px rgba(7,51,79,.10)!important;
}

.org-formazione-page .fo-form-success h3{
  margin:0 0 12px!important;
  color:var(--navy)!important;
  font-size:clamp(1.8rem,2.5vw,2.4rem)!important;
  line-height:1.08!important;
  letter-spacing:-.03em!important;
}

.org-formazione-page .fo-form-success>p:not(.fo-eyebrow){
  margin:0 0 22px!important;
  color:#52636d!important;
  line-height:1.6!important;
}

/* TABLET */
@media(max-width:980px){
  .org-formazione-page .fo-hero{
    padding:58px 0 54px;
  }

  .org-formazione-page .fo-two,
  .org-formazione-page .fo-final-grid{
    grid-template-columns:1fr;
    gap:32px;
  }

  .org-formazione-page .fo-benefits-section .fo-two>div:first-child{
    max-width:620px;
  }

  .org-formazione-page .fo-final-copy{
    padding-top:0;
  }

  .org-formazione-page .fo-course-featured{
    grid-template-columns:1fr 1fr;
  }
}

/* MOBILE */
@media(max-width:680px){
  .org-formazione-page .fo-hero{
    padding:48px 0 45px;
  }

  .org-formazione-page .fo-hero h1{
    font-size:clamp(2.65rem,11.5vw,3.8rem);
    line-height:1;
  }

  .org-formazione-page .fo-lead{
    margin-top:21px;
    font-size:1rem;
  }

  .org-formazione-page .fo-hero-actions{
    flex-direction:column;
    align-items:stretch;
    gap:14px;
  }

  .org-formazione-page .fo-primary{
    width:100%;
    box-sizing:border-box;
    text-align:center;
  }

  .org-formazione-page .fo-whatsapp-link{
    align-self:flex-start;
  }

  .org-formazione-page .fo-section{
    padding:50px 0;
  }

  .org-formazione-page .fo-proof{
    padding:52px 0 48px;
  }

  .org-formazione-page .fo-section h2,
  .org-formazione-page .fo-proof h2,
  .org-formazione-page .fo-final h2{
    font-size:clamp(2rem,9vw,2.75rem);
  }

  .org-formazione-page .fo-points p,
  .org-formazione-page .fo-cases p{
    grid-template-columns:1fr;
    gap:6px;
  }

  .org-formazione-page .fo-points p{
    padding-left:15px;
  }

  .org-formazione-page .fo-course-featured{
    grid-template-columns:1fr;
  }

  .org-formazione-page .fo-course-list>span{
    grid-template-columns:1fr;
    gap:5px;
  }

  .org-formazione-page .fo-final{
    padding:52px 0 56px;
  }

  .org-formazione-page .fo-request-form{
    padding:22px!important;
  }

  .org-formazione-page .fo-form-row{
    grid-template-columns:1fr!important;
  }

  .org-formazione-page .fo-submit{
    width:100%!important;
    min-width:0!important;
  }
}

/* =========================================================
   FORMAZIONE ORGANIZZAZIONI — CONTINUITA VISIVA V11
   Allineata alla grammatica grafica BLSD
   ========================================================= */

/* Stesso asse contenuti della pagina BLSD */
.org-formazione-page .shell{
  width:min(1060px,calc(100% - 48px));
  max-width:1060px;
  margin-left:auto;
  margin-right:auto;
}

.org-formazione-page .fo-hero-inner,
.org-formazione-page .fo-proof .shell{
  max-width:1060px;
}

/* HERO: stessa scala della BLSD, non una landing "più grossa" */
.org-formazione-page .fo-hero{
  padding:42px 0 48px;
}

.org-formazione-page .fo-hero h1{
  max-width:850px;
  font-size:58px;
  line-height:.98;
  letter-spacing:-.045em;
}

.org-formazione-page .fo-hero h1 span{
  color:#008ecb;
}

.org-formazione-page .fo-lead{
  max-width:760px;
  margin-top:22px;
  font-size:18px;
  line-height:1.55;
}

.org-formazione-page .fo-hero-actions{
  margin-top:24px;
}

/* Eyebrow identica come peso/scala alla BLSD */
.org-formazione-page .fo-eyebrow{
  margin-bottom:14px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.15em;
}

/* Titoli interni: stessa scala dei titoli BLSD */
.org-formazione-page .fo-section h2,
.org-formazione-page .fo-final h2{
  font-size:42px;
  line-height:1.05;
  letter-spacing:-.035em;
}

.org-formazione-page .fo-section h2 span,
.org-formazione-page .fo-final h2 span{
  color:#008ecb;
}

/* Dark section: alternanza chiaro/ciano come nelle altre pagine */
.org-formazione-page .fo-proof h2{
  max-width:900px;
  font-size:46px;
  line-height:1.04;
  letter-spacing:-.04em;
}

.org-formazione-page .fo-proof h2 span{
  color:#61c8f2;
}

/* Ritmo verticale più compatto e uniforme */
.org-formazione-page .fo-section{
  padding:56px 0;
}

.org-formazione-page .fo-benefits-section{
  padding-top:54px;
  padding-bottom:56px;
}

.org-formazione-page .fo-proof{
  padding:58px 0 56px;
}

.org-formazione-page .fo-courses-section{
  padding-top:58px;
  padding-bottom:56px;
}

.org-formazione-page .fo-final{
  padding:58px 0 60px;
}

/* Due colonne più equilibrate, senza "salto" di allineamento */
.org-formazione-page .fo-two{
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:60px;
}

.org-formazione-page .fo-benefits-section .fo-two>div:first-child{
  max-width:430px;
}

/* Stringe un po' i blocchi per evitare grandi vuoti iniziali/finali */
.org-formazione-page .fo-proof-lead{
  margin-top:18px;
}

.org-formazione-page .fo-cases{
  margin-top:25px;
}

.org-formazione-page .fo-proof-close{
  margin-top:20px;
  padding-top:16px;
}

.org-formazione-page .fo-course-label{
  margin-top:24px!important;
}

.org-formazione-page .fo-course-label-secondary{
  margin-top:26px!important;
}

.org-formazione-page .fo-courses-section .fo-section-close{
  margin-top:20px!important;
}

.org-formazione-page .fo-final-grid{
  grid-template-columns:minmax(0,.8fr) minmax(500px,1.2fr);
  gap:58px;
}

.org-formazione-page .fo-final-copy{
  padding-top:4px;
}

/* Tablet */
@media(max-width:980px){
  .org-formazione-page .shell{
    width:min(100% - 40px,1060px);
  }

  .org-formazione-page .fo-hero{
    padding:40px 0 44px;
  }

  .org-formazione-page .fo-hero h1{
    font-size:46px;
  }

  .org-formazione-page .fo-section h2,
  .org-formazione-page .fo-final h2{
    font-size:38px;
  }

  .org-formazione-page .fo-proof h2{
    font-size:42px;
  }

  .org-formazione-page .fo-two,
  .org-formazione-page .fo-final-grid{
    grid-template-columns:1fr;
    gap:30px;
  }
}

/* Mobile: stessa compattezza della BLSD */
@media(max-width:600px){
  .org-formazione-page .shell{
    width:calc(100% - 36px);
  }

  .org-formazione-page .fo-hero{
    padding:40px 0;
  }

  .org-formazione-page .fo-hero h1{
    font-size:40px;
  }

  .org-formazione-page .fo-lead{
    font-size:17px;
  }

  .org-formazione-page .fo-section,
  .org-formazione-page .fo-benefits-section,
  .org-formazione-page .fo-courses-section{
    padding:50px 0;
  }

  .org-formazione-page .fo-proof{
    padding:50px 0;
  }

  .org-formazione-page .fo-final{
    padding:50px 0 54px;
  }

  .org-formazione-page .fo-section h2,
  .org-formazione-page .fo-final h2,
  .org-formazione-page .fo-proof h2{
    font-size:34px;
  }
}

/* =========================================================
   FORMAZIONE ORGANIZZAZIONI — SPACING PASS V12
   Riduzione vuoti / continuità tra sezioni
   ========================================================= */

/* Sezione benefici: meno aria in coda */
.org-formazione-page .fo-benefits-section{
  padding-top:50px;
  padding-bottom:42px;
}

/* Sezione proof: entra prima e chiude prima */
.org-formazione-page .fo-proof{
  padding-top:48px;
  padding-bottom:46px;
}

/* Elimina la doppia riga prima di "Oltre 2.200..." */
.org-formazione-page .fo-cases p:last-child{
  border-bottom:0;
}

.org-formazione-page .fo-proof-close{
  margin-top:12px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.22);
}

/* Sezione corsi: meno vuoto sopra e sotto */
.org-formazione-page .fo-courses-section{
  padding-top:50px;
  padding-bottom:42px;
}

/* Il box "Ti serve un corso diverso?" accompagna meglio al form */
.org-formazione-page .fo-courses-section .fo-section-close{
  margin-top:18px!important;
  margin-bottom:0!important;
}

/* Modulo: avvicinato alla sezione precedente */
.org-formazione-page .fo-final{
  padding-top:46px;
  padding-bottom:52px;
}

/* Riduce leggermente il gap generale delle due colonne */
.org-formazione-page .fo-two{
  gap:54px;
}

/* Mantiene compatta la parte corsi dopo l'aggiunta del nuovo percorso */
.org-formazione-page .fo-course-list>span{
  padding-top:14px;
  padding-bottom:14px;
}

@media(max-width:980px){
  .org-formazione-page .fo-benefits-section{
    padding-top:46px;
    padding-bottom:40px;
  }

  .org-formazione-page .fo-proof{
    padding-top:44px;
    padding-bottom:42px;
  }

  .org-formazione-page .fo-courses-section{
    padding-top:46px;
    padding-bottom:40px;
  }

  .org-formazione-page .fo-final{
    padding-top:44px;
    padding-bottom:48px;
  }
}

@media(max-width:600px){
  .org-formazione-page .fo-benefits-section,
  .org-formazione-page .fo-courses-section{
    padding-top:42px;
    padding-bottom:38px;
  }

  .org-formazione-page .fo-proof{
    padding-top:42px;
    padding-bottom:40px;
  }

  .org-formazione-page .fo-final{
    padding-top:42px;
    padding-bottom:46px;
  }
}


/* =========================================================
   OSPITA UN CORSO — V1
   Continuità grafica con Formazione Organizzazioni / BLSD
   ========================================================= */

.host-course-page{
  overflow:hidden;
  color:#102536;
}

.host-course-page .shell{
  width:min(1060px,calc(100% - 48px));
  max-width:1060px;
  margin-left:auto;
  margin-right:auto;
}

.host-course-page .oc-eyebrow{
  margin:0 0 14px;
  color:#007fbd;
  font-size:12px;
  font-weight:900;
  letter-spacing:.15em;
  line-height:1.3;
}

.host-course-page .oc-hero{
  padding:42px 0 48px;
  background:#f4f7f6;
  border-bottom:1px solid #e2e8e6;
}

.host-course-page .oc-hero-inner{
  max-width:1060px;
}

.host-course-page .oc-hero h1{
  max-width:900px;
  margin:0;
  color:var(--navy);
  font-size:58px;
  line-height:.98;
  letter-spacing:-.045em;
}

.host-course-page .oc-hero h1 span,
.host-course-page .oc-section h2 span,
.host-course-page .oc-final h2 span{
  color:#008ecb;
}

.host-course-page .oc-lead{
  max-width:790px;
  margin:22px 0 0;
  color:#51636e;
  font-size:18px;
  line-height:1.55;
}

.host-course-page .oc-hero-actions{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  margin-top:24px;
}

.host-course-page .oc-primary{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 20px;
  border:0;
  border-radius:6px;
  background:#07334f;
  color:#fff!important;
  text-decoration:none;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.035em;
  box-shadow:0 7px 18px rgba(7,51,79,.12);
  transition:background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.host-course-page .oc-primary:hover{
  background:#007fbd;
  transform:translateY(-1px);
  box-shadow:0 9px 22px rgba(7,51,79,.16);
}

.host-course-page .oc-whatsapp-link,
.host-course-page .oc-final-whatsapp a{
  color:#0a3a57;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid #9fb3be;
  padding-bottom:2px;
}

.host-course-page .oc-section{
  padding:50px 0 44px;
}

.host-course-page .oc-two{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:54px;
  align-items:start;
}

.host-course-page .oc-section h2,
.host-course-page .oc-final h2{
  margin:0;
  color:var(--navy);
  font-size:42px;
  line-height:1.05;
  letter-spacing:-.035em;
}

.host-course-page .oc-copy>p{
  margin:0 0 19px;
  color:#52636d;
  font-size:1rem;
  line-height:1.62;
}

.host-course-page .oc-points,
.host-course-page .oc-value-list{
  margin-top:24px;
  border-top:1px solid #ccd9df;
}

.host-course-page .oc-points p,
.host-course-page .oc-value-list p{
  position:relative;
  display:grid;
  grid-template-columns:190px 1fr;
  gap:26px;
  margin:0;
  padding:17px 0 17px 16px;
  border-bottom:1px solid #d7e1e6;
}

.host-course-page .oc-points p::before,
.host-course-page .oc-value-list p::before{
  content:"";
  position:absolute;
  left:0;
  top:19px;
  width:4px;
  height:24px;
  border-radius:3px;
  background:#0b8dc8;
}

.host-course-page .oc-points strong,
.host-course-page .oc-value-list strong{
  color:var(--navy);
  font-size:.93rem;
  line-height:1.35;
}

.host-course-page .oc-points span,
.host-course-page .oc-value-list span{
  color:#5b6d77;
  line-height:1.5;
}

.host-course-page .oc-section-close{
  margin:20px 0 0!important;
  color:var(--navy)!important;
  line-height:1.55!important;
}

.host-course-page .oc-proof{
  padding:50px 0 46px;
  background:#082f49;
  color:#fff;
}

.host-course-page .oc-proof .oc-eyebrow{
  color:#61c8f2;
}

.host-course-page .oc-proof h2{
  max-width:930px;
  margin:0;
  color:#fff;
  font-size:46px;
  line-height:1.04;
  letter-spacing:-.04em;
}

.host-course-page .oc-proof h2 span{
  color:#61c8f2;
}

.host-course-page .oc-proof-lead{
  max-width:930px;
  margin:18px 0 0;
  color:#d8e4ea;
  font-size:1.02rem;
  line-height:1.62;
}

.host-course-page .oc-cases{
  margin-top:25px;
  border-top:1px solid rgba(255,255,255,.22);
}

.host-course-page .oc-cases p{
  display:grid;
  grid-template-columns:245px 1fr;
  gap:34px;
  margin:0;
  padding:15px 0;
  border-bottom:1px solid rgba(255,255,255,.17);
}

.host-course-page .oc-cases p:last-child{
  border-bottom:0;
}

.host-course-page .oc-cases strong{
  color:#fff;
  font-size:.95rem;
}

.host-course-page .oc-cases span{
  color:#d3e0e6;
  line-height:1.48;
}

.host-course-page .oc-proof-close{
  margin:12px 0 0;
  padding:16px 0 0;
  border-top:1px solid rgba(255,255,255,.22);
  color:#e9f1f4;
  font-size:1rem;
  line-height:1.55;
}

.host-course-page .oc-proof-close strong{
  color:#fff;
  font-size:1.08rem;
}

.host-course-page .oc-value{
  background:#fff;
}

.host-course-page .oc-courses{
  background:#f7f9f9;
  border-top:1px solid #e2e9ec;
}

.host-course-page .oc-course-featured{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:24px;
}

.host-course-page .oc-course-featured>a,
.host-course-page .oc-course-featured>div{
  min-height:170px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  padding:24px 24px 22px;
  border:1px solid #c8d8df;
  border-top:4px solid #0788c4;
  border-radius:8px;
  background:#fff;
  color:#102536;
  text-decoration:none;
}

.host-course-page .oc-course-featured>a:hover{
  background:#edf7fb;
  border-color:#9fc7d9;
}

.host-course-page .oc-course-featured strong{
  color:var(--navy);
  font-size:1.12rem;
  line-height:1.25;
}

.host-course-page .oc-course-featured span{
  color:#576a74;
  line-height:1.5;
}

.host-course-page .oc-course-featured b{
  margin-top:auto;
  color:#007fbd;
  font-size:.82rem;
}

.host-course-page .oc-course-label{
  margin:27px 0 11px!important;
  color:#007fbd!important;
  font-size:.69rem!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
}

.host-course-page .oc-course-list{
  border-top:1px solid #d2dde2;
}

.host-course-page .oc-course-list>span{
  display:grid;
  grid-template-columns:215px 1fr;
  gap:24px;
  padding:14px 0;
  border-bottom:1px solid #d7e1e6;
}

.host-course-page .oc-course-list>span>strong{
  font-size:.94rem;
  line-height:1.35;
  color:var(--navy);
}

.host-course-page .oc-course-list>span>span{
  color:#60717b;
  line-height:1.48;
}

.host-course-page .oc-courses .oc-section-close{
  padding:17px 18px;
  border-left:4px solid #0788c4;
  background:#eef5f7;
  color:#4d616c!important;
}

.host-course-page .oc-final{
  scroll-margin-top:110px;
  padding:46px 0 52px;
  background:#eaf3f7;
  border-top:1px solid #d9e6ec;
}

.host-course-page .oc-final-grid{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(500px,1.2fr);
  gap:58px;
  align-items:start;
}

.host-course-page .oc-final-copy{
  padding-top:4px;
}

.host-course-page .oc-final-copy>p:not(.oc-eyebrow){
  max-width:520px;
  margin:20px 0 0;
  color:#53656f;
  font-size:1rem;
  line-height:1.62;
}

.host-course-page .oc-final-whatsapp{
  margin-top:25px!important;
}

.host-course-page .oc-request-form{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  width:100%;
  box-sizing:border-box;
  padding:30px;
  margin:0;
  background:#fff;
  color:#102536;
  border:1px solid #cfdee5;
  border-radius:12px;
  box-shadow:0 18px 45px rgba(7,51,79,.10);
}

.host-course-page .oc-form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.host-course-page .oc-request-form label{
  display:grid;
  gap:7px;
  width:100%;
  margin:0;
  color:#102536;
  font-weight:700;
}

.host-course-page .oc-request-form label>span{
  display:block;
  font-size:.88rem;
  line-height:1.3;
}

.host-course-page .oc-request-form label small{
  color:#6b7c85;
  font-weight:500;
}

.host-course-page .oc-request-form input:not([type="checkbox"]),
.host-course-page .oc-request-form select,
.host-course-page .oc-request-form textarea{
  display:block;
  width:100%;
  min-width:0;
  box-sizing:border-box;
  margin:0;
  padding:13px 14px;
  border:1px solid #b9cbd4;
  border-radius:7px;
  background:#fff;
  color:#172d3a;
  font:inherit;
  line-height:1.35;
  box-shadow:none;
}

.host-course-page .oc-request-form input:not([type="checkbox"]),
.host-course-page .oc-request-form select{
  min-height:48px;
}

.host-course-page .oc-request-form textarea{
  min-height:118px;
  resize:vertical;
}

.host-course-page .oc-request-form input:focus,
.host-course-page .oc-request-form select:focus,
.host-course-page .oc-request-form textarea:focus{
  outline:2px solid rgba(0,127,189,.18);
  outline-offset:1px;
  border-color:#007fbd;
}

.host-course-page .oc-request-form textarea::placeholder{
  color:#86959c;
  opacity:1;
}

.host-course-page .oc-privacy{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  gap:9px!important;
  color:#5d6e77!important;
  font-weight:400!important;
}

.host-course-page .oc-privacy input{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  margin:2px 0 0!important;
}

.host-course-page .oc-privacy span{
  font-size:.88rem!important;
  line-height:1.4!important;
}

.host-course-page .oc-privacy a{
  color:#07334f!important;
  font-weight:700!important;
  text-decoration:underline!important;
  text-underline-offset:2px;
}

.host-course-page .oc-submit{
  justify-self:start;
  min-width:210px;
}

.host-course-page .oc-form-note{
  max-width:500px;
  margin:-2px 0 0;
  color:#6b7b83;
  font-size:.81rem;
  line-height:1.48;
}

.host-course-page .oc-hp{
  position:absolute!important;
  left:-99999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

.host-course-page .oc-form-error{
  margin:0;
  padding:12px 14px;
  border-left:4px solid #b42318;
  background:#fff1f0;
  color:#8a1c13;
  font-size:.89rem;
  line-height:1.45;
}

.host-course-page .oc-form-success{
  padding:30px;
  background:#fff;
  border:1px solid #cfdee5;
  border-radius:12px;
  box-shadow:0 18px 45px rgba(7,51,79,.10);
}

.host-course-page .oc-form-success h3{
  margin:0 0 12px;
  color:var(--navy);
  font-size:2.2rem;
  line-height:1.08;
  letter-spacing:-.03em;
}

.host-course-page .oc-form-success>p:not(.oc-eyebrow){
  margin:0 0 22px;
  color:#52636d;
  line-height:1.6;
}

@media(max-width:980px){
  .host-course-page .shell{
    width:min(100% - 40px,1060px);
  }

  .host-course-page .oc-hero{
    padding:40px 0 44px;
  }

  .host-course-page .oc-hero h1{
    font-size:46px;
  }

  .host-course-page .oc-section h2,
  .host-course-page .oc-final h2{
    font-size:38px;
  }

  .host-course-page .oc-proof h2{
    font-size:42px;
  }

  .host-course-page .oc-two,
  .host-course-page .oc-final-grid{
    grid-template-columns:1fr;
    gap:30px;
  }
}

@media(max-width:680px){
  .host-course-page .shell{
    width:calc(100% - 36px);
  }

  .host-course-page .oc-hero{
    padding:40px 0;
  }

  .host-course-page .oc-hero h1{
    font-size:40px;
    line-height:1;
  }

  .host-course-page .oc-lead{
    font-size:17px;
  }

  .host-course-page .oc-hero-actions{
    flex-direction:column;
    align-items:stretch;
    gap:14px;
  }

  .host-course-page .oc-primary{
    width:100%;
    box-sizing:border-box;
    text-align:center;
  }

  .host-course-page .oc-whatsapp-link{
    align-self:flex-start;
  }

  .host-course-page .oc-section{
    padding:42px 0 38px;
  }

  .host-course-page .oc-proof{
    padding:42px 0 40px;
  }

  .host-course-page .oc-final{
    padding:42px 0 46px;
  }

  .host-course-page .oc-section h2,
  .host-course-page .oc-final h2,
  .host-course-page .oc-proof h2{
    font-size:34px;
  }

  .host-course-page .oc-points p,
  .host-course-page .oc-value-list p,
  .host-course-page .oc-cases p{
    grid-template-columns:1fr;
    gap:6px;
  }

  .host-course-page .oc-course-featured{
    grid-template-columns:1fr;
  }

  .host-course-page .oc-course-list>span{
    grid-template-columns:1fr;
    gap:5px;
  }

  .host-course-page .oc-request-form{
    padding:22px;
  }

  .host-course-page .oc-form-row{
    grid-template-columns:1fr;
  }

  .host-course-page .oc-submit{
    width:100%;
    min-width:0;
  }
}

/* =========================================================
   ORGANIZZA UN CORSO — VISUAL PASS V4
   Ritmo più editoriale, meno vuoti, maggiore gerarchia
   ========================================================= */

@media (min-width: 981px){

  /* HERO: più compatta e più larga, così la domanda non si spezza male */
  .host-course-page .oc-hero{
    padding:36px 0 40px;
  }

  .host-course-page .oc-hero h1{
    max-width:1040px;
    font-size:56px;
    line-height:.96;
    letter-spacing:-.046em;
  }

  .host-course-page .oc-lead{
    max-width:820px;
    margin-top:20px;
    font-size:17px;
    line-height:1.52;
  }

  .host-course-page .oc-hero-actions{
    margin-top:22px;
  }

  /* Ritmo globale più compatto */
  .host-course-page .oc-section{
    padding:42px 0 38px;
  }

  .host-course-page .oc-proof{
    padding:46px 0 42px;
  }

  .host-course-page .oc-final{
    padding:44px 0 48px;
  }

  .host-course-page .oc-two{
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    gap:48px;
  }

  .host-course-page .oc-section h2,
  .host-course-page .oc-final h2{
    font-size:39px;
    line-height:1.03;
    letter-spacing:-.038em;
  }

  .host-course-page .oc-proof h2{
    max-width:880px;
    font-size:43px;
    line-height:1.02;
  }

  /* Prima sezione: il messaggio chiave non deve perdersi */
  .host-course-page .oc-mechanism{
    padding-top:40px;
    padding-bottom:40px;
  }

  .host-course-page .oc-mechanism .oc-copy>p{
    max-width:610px;
  }

  .host-course-page .oc-mechanism .oc-section-close{
    margin-top:20px!important;
    padding:16px 18px!important;
    border-left:4px solid #0788c4;
    background:#eef6f9;
    color:#173a50!important;
  }

  .host-course-page .oc-mechanism .oc-section-close strong{
    color:#062f4a;
    font-size:1.02rem;
  }

  /* Righe: più nette, meno grigio indistinto */
  .host-course-page .oc-points,
  .host-course-page .oc-value-list{
    margin-top:20px;
  }

  .host-course-page .oc-points p,
  .host-course-page .oc-value-list p{
    grid-template-columns:182px minmax(0,1fr);
    gap:24px;
    padding:16px 0 16px 15px;
  }

  .host-course-page .oc-points strong,
  .host-course-page .oc-value-list strong{
    font-size:.95rem;
    line-height:1.3;
  }

  .host-course-page .oc-points span,
  .host-course-page .oc-value-list span{
    font-size:.96rem;
    line-height:1.48;
  }

  /* ESEMPI: mantiene il contenuto ricco ma gli dà una griglia più elegante */
  .host-course-page .oc-proof-lead{
    max-width:860px;
    margin-top:16px;
  }

  .host-course-page .oc-cases{
    margin-top:22px;
  }

  .host-course-page .oc-cases p{
    grid-template-columns:220px minmax(0,1fr);
    gap:30px;
    padding:14px 0;
  }

  .host-course-page .oc-cases strong{
    font-size:.94rem;
    line-height:1.3;
  }

  .host-course-page .oc-cases span{
    font-size:.94rem;
    line-height:1.45;
  }

  .host-course-page .oc-proof-close{
    margin-top:10px;
    padding-top:15px;
  }

  /* Lo spazio/sede resta bianco e pulito */
  .host-course-page .oc-value{
    padding-top:42px;
    padding-bottom:40px;
  }

  /* Online: cambio di fondo per spezzare il lungo bianco centrale */
  .host-course-page .oc-national{
    padding-top:42px;
    padding-bottom:40px;
    background:#f2f7f9;
    border-top:1px solid #dce7eb;
    border-bottom:1px solid #dce7eb;
  }

  /* Corsi: torna bianco e più editoriale */
  .host-course-page .oc-courses{
    padding-top:42px;
    padding-bottom:40px;
    background:#fff;
    border-top:0;
  }

  .host-course-page .oc-course-featured{
    gap:12px;
    margin-top:20px;
  }

  .host-course-page .oc-course-featured>a,
  .host-course-page .oc-course-featured>div{
    min-height:154px;
    padding:20px 20px 18px;
    border-radius:5px;
    border-color:#d1dde2;
    border-top-width:3px;
  }

  .host-course-page .oc-course-featured strong{
    font-size:1.08rem;
  }

  .host-course-page .oc-course-featured span{
    font-size:.94rem;
    line-height:1.45;
  }

  .host-course-page .oc-course-label{
    margin-top:24px!important;
  }

  .host-course-page .oc-course-list>span{
    grid-template-columns:205px minmax(0,1fr);
    gap:22px;
    padding:13px 0;
  }

  .host-course-page .oc-courses .oc-section-close{
    margin-top:16px!important;
    padding:15px 17px;
  }

  /* Modulo: meno "box pesante", più premium */
  .host-course-page .oc-final-grid{
    grid-template-columns:minmax(0,.78fr) minmax(500px,1.22fr);
    gap:52px;
    align-items:center;
  }

  .host-course-page .oc-final-copy{
    padding-top:0;
  }

  .host-course-page .oc-final-copy>p:not(.oc-eyebrow){
    margin-top:17px;
    line-height:1.55;
  }

  .host-course-page .oc-final-whatsapp{
    margin-top:22px!important;
  }

  .host-course-page .oc-request-form{
    gap:15px;
    padding:26px;
    border-radius:8px;
    border-color:#d3e1e7;
    box-shadow:0 12px 30px rgba(7,51,79,.075);
  }

  .host-course-page .oc-form-row{
    gap:14px;
  }

  .host-course-page .oc-request-form input:not([type="checkbox"]),
  .host-course-page .oc-request-form select{
    min-height:46px;
  }

  .host-course-page .oc-request-form textarea{
    min-height:108px;
  }
}

/* Tablet: evita titoli troppo grandi e mantiene ritmo */
@media (max-width:980px) and (min-width:681px){
  .host-course-page .oc-hero h1{
    font-size:44px;
    max-width:820px;
  }

  .host-course-page .oc-section,
  .host-course-page .oc-proof,
  .host-course-page .oc-final{
    padding-top:40px;
    padding-bottom:40px;
  }

  .host-course-page .oc-section h2,
  .host-course-page .oc-final h2{
    font-size:36px;
  }

  .host-course-page .oc-proof h2{
    font-size:39px;
  }

  .host-course-page .oc-national{
    background:#f2f7f9;
    border-top:1px solid #dce7eb;
    border-bottom:1px solid #dce7eb;
  }

  .host-course-page .oc-courses{
    background:#fff;
  }

  .host-course-page .oc-mechanism .oc-section-close{
    padding:15px 17px!important;
    border-left:4px solid #0788c4;
    background:#eef6f9;
  }
}

/* Mobile: stessa gerarchia, niente spazi inutili */
@media (max-width:680px){
  .host-course-page .oc-hero{
    padding:34px 0 36px;
  }

  .host-course-page .oc-hero h1{
    font-size:38px;
    line-height:.99;
  }

  .host-course-page .oc-section{
    padding:36px 0 34px;
  }

  .host-course-page .oc-proof{
    padding:38px 0 36px;
  }

  .host-course-page .oc-final{
    padding:38px 0 42px;
  }

  .host-course-page .oc-section h2,
  .host-course-page .oc-final h2,
  .host-course-page .oc-proof h2{
    font-size:32px;
  }

  .host-course-page .oc-national{
    background:#f2f7f9;
    border-top:1px solid #dce7eb;
    border-bottom:1px solid #dce7eb;
  }

  .host-course-page .oc-courses{
    background:#fff;
  }

  .host-course-page .oc-mechanism .oc-section-close{
    padding:14px 15px!important;
    border-left:4px solid #0788c4;
    background:#eef6f9;
  }

  .host-course-page .oc-request-form{
    padding:20px;
    gap:15px;
    border-radius:8px;
    box-shadow:0 10px 26px rgba(7,51,79,.07);
  }
}

/* =========================================================
   ORGANIZZA UN CORSO — MICRO RIFINITURE FINALI V5
   ========================================================= */

@media (min-width: 981px){

  /* 1. Hero: appena meno dominante, senza perdere forza */
  .host-course-page .oc-hero h1{
    font-size:53px;
  }

  /* 2. Prima sezione: riequilibrio delle due colonne.
     Sinistra più stretta = titolo più verticale.
     Destra più larga = meno sviluppo in altezza delle tre righe. */
  .host-course-page .oc-mechanism .oc-two{
    grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);
    gap:42px;
  }

  .host-course-page .oc-mechanism h2{
    max-width:365px;
  }

  .host-course-page .oc-mechanism .oc-copy{
    max-width:640px;
  }

  /* 3. Riduce il vuoto tra "Non serve avere un'aula"
     e "Hai clienti in tutta Italia?" */
  .host-course-page .oc-value{
    padding-bottom:24px;
  }

  .host-course-page .oc-national{
    padding-top:28px;
  }

  /* 4. Avvicina la sezione corsi al modulo finale */
  .host-course-page .oc-courses{
    padding-bottom:24px;
  }

  .host-course-page .oc-final{
    padding-top:40px;
  }
}

@media (max-width:980px) and (min-width:681px){
  .host-course-page .oc-value{
    padding-bottom:30px;
  }

  .host-course-page .oc-national{
    padding-top:30px;
  }

  .host-course-page .oc-courses{
    padding-bottom:30px;
  }
}

@media (max-width:680px){
  .host-course-page .oc-value{
    padding-bottom:28px;
  }

  .host-course-page .oc-national{
    padding-top:30px;
  }

  .host-course-page .oc-courses{
    padding-bottom:28px;
  }
}

/* =========================================================
   COLLABORA CON NOI — VISUAL REWORK V1
   Solo .partner-page: nessun impatto sulle altre pagine
   ========================================================= */

.partner-page{
  --partner-navy:#07324d;
  --partner-blue:#078ecb;
  --partner-cyan:#4dc4ee;
  --partner-ice:#eef7fa;
  --partner-soft:#f7fafb;
}

/* HERO — più compatta, più commerciale, meno "pagina istituzionale" */
.partner-page .oc-hero{
  position:relative;
  padding:38px 0 42px;
  background:
    linear-gradient(115deg,#f4f7f6 0%,#f4f7f6 72%,#eaf6fa 72%,#eef8fb 100%);
  border-bottom:1px solid #dce7eb;
}

.partner-page .oc-hero::after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  width:28%;
  height:5px;
  background:var(--partner-blue);
  opacity:.9;
}

.partner-page .oc-hero h1{
  max-width:1000px;
  font-size:52px;
  line-height:.96;
  letter-spacing:-.045em;
}

.partner-page .oc-hero .oc-lead{
  max-width:810px;
  margin-top:19px;
  font-size:17px;
  line-height:1.52;
}

.partner-page .oc-hero .oc-lead strong{
  color:var(--partner-navy);
}

.partner-page .oc-hero-actions{
  margin-top:22px;
}

/* BLOCCO 1 — Collabora vs Organizza: deve risolvere subito il dubbio */
.partner-page > .oc-courses{
  padding:42px 0 38px;
  background:#fff;
  border-top:0;
  border-bottom:1px solid #e1e9ec;
}

.partner-page > .oc-courses .oc-two{
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:48px;
}

.partner-page > .oc-courses h2{
  max-width:390px;
  font-size:38px;
  line-height:1.02;
}

.partner-page > .oc-courses .oc-copy>p:first-child{
  margin-bottom:17px;
}

.partner-page > .oc-courses .oc-course-featured{
  grid-template-columns:1.08fr .92fr;
  gap:12px;
  margin-top:18px;
}

.partner-page > .oc-courses .oc-course-featured>div:first-child{
  position:relative;
  min-height:190px;
  padding:22px 22px 20px;
  background:var(--partner-navy);
  border:1px solid var(--partner-navy);
  border-top:4px solid var(--partner-cyan);
  color:#fff;
  box-shadow:0 12px 28px rgba(7,50,77,.12);
}

.partner-page > .oc-courses .oc-course-featured>div:first-child::before{
  content:"SEI QUI";
  display:inline-block;
  margin-bottom:5px;
  color:#75d8f5;
  font-size:10px;
  line-height:1;
  font-weight:900;
  letter-spacing:.13em;
}

.partner-page > .oc-courses .oc-course-featured>div:first-child strong{
  color:#fff;
  font-size:1.15rem;
}

.partner-page > .oc-courses .oc-course-featured>div:first-child span{
  color:#d8e7ed;
}

.partner-page > .oc-courses .oc-course-featured>a{
  min-height:190px;
  padding:22px 22px 20px;
  background:#f8fafb;
  border-color:#cbd9df;
  border-top:4px solid #8eb9ca;
  box-shadow:none;
}

.partner-page > .oc-courses .oc-course-featured>a:hover{
  background:#eef7fa;
  transform:translateY(-1px);
}

.partner-page > .oc-courses .oc-section-close{
  margin-top:14px!important;
  padding:14px 16px;
  background:#eef6f9;
}

/* COME FUNZIONA — 3 passaggi veri, con ritmo da processo */
.partner-page .oc-mechanism{
  padding:42px 0 40px;
  background:var(--partner-soft);
}

.partner-page .oc-mechanism .oc-two{
  grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);
  gap:46px;
}

.partner-page .oc-mechanism h2{
  max-width:355px;
  font-size:40px;
}

.partner-page .oc-mechanism .oc-points{
  margin-top:0;
  border-top:0;
  counter-reset:partner-step;
}

.partner-page .oc-mechanism .oc-points p{
  counter-increment:partner-step;
  position:relative;
  display:grid;
  grid-template-columns:185px minmax(0,1fr);
  gap:24px;
  margin:0;
  padding:20px 18px 20px 58px;
  border:1px solid #d5e2e7;
  border-bottom:0;
  background:#fff;
}

.partner-page .oc-mechanism .oc-points p:first-child{
  border-radius:8px 8px 0 0;
}

.partner-page .oc-mechanism .oc-points p:last-child{
  border-bottom:1px solid #d5e2e7;
  border-radius:0 0 8px 8px;
}

.partner-page .oc-mechanism .oc-points p::before{
  content:counter(partner-step);
  position:absolute;
  left:18px;
  top:18px;
  width:25px;
  height:25px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--partner-blue);
  color:#fff;
  font-size:12px;
  font-weight:900;
}

.partner-page .oc-mechanism .oc-points p::after{
  display:none;
}

.partner-page .oc-mechanism .oc-points strong{
  color:var(--partner-navy);
  font-size:.96rem;
}

.partner-page .oc-mechanism .oc-section-close{
  margin-top:16px!important;
  padding:15px 17px!important;
  border-left:4px solid var(--partner-blue);
  background:#eaf4f7;
}

/* REGOLE / RISK REVERSAL — deve sembrare quasi una garanzia operativa */
.partner-page .oc-partner-rules{
  padding:42px 0 40px;
  background:#eaf5f8;
  border-top:1px solid #d5e5eb;
  border-bottom:1px solid #d5e5eb;
}

.partner-page .oc-partner-rules .oc-two{
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:48px;
}

.partner-page .oc-partner-rules h2{
  max-width:400px;
  font-size:39px;
}

.partner-page .oc-partner-rules .oc-copy>p:first-child{
  padding:16px 18px;
  margin-bottom:16px;
  background:#fff;
  border-left:4px solid var(--partner-blue);
  color:#415866;
}

.partner-page .oc-partner-rules .oc-value-list{
  margin-top:0;
  border-top:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.partner-page .oc-partner-rules .oc-value-list p{
  display:block;
  min-height:124px;
  padding:18px 18px 17px;
  border:1px solid #cfdee4;
  border-radius:7px;
  background:#fff;
}

.partner-page .oc-partner-rules .oc-value-list p::before{
  top:18px;
  left:0;
  height:26px;
}

.partner-page .oc-partner-rules .oc-value-list strong{
  display:block;
  margin-bottom:7px;
  padding-left:2px;
  font-size:.95rem;
}

.partner-page .oc-partner-rules .oc-value-list span{
  display:block;
  padding-left:2px;
  font-size:.92rem;
  line-height:1.46;
}

.partner-page .oc-partner-rules .oc-section-close{
  margin-top:15px!important;
  color:var(--partner-navy)!important;
}

/* CHI PUÒ COLLABORARE — blocco scuro più compatto e leggibile */
.partner-page .oc-proof{
  padding:46px 0 42px;
}

.partner-page .oc-proof h2{
  max-width:850px;
  font-size:42px;
  line-height:1.02;
}

.partner-page .oc-proof-lead{
  max-width:820px;
  margin-top:15px;
}

.partner-page .oc-cases{
  margin-top:20px;
}

.partner-page .oc-cases p{
  grid-template-columns:205px minmax(0,1fr);
  gap:30px;
  padding:13px 0;
}

.partner-page .oc-cases strong{
  font-size:.93rem;
}

.partner-page .oc-cases span{
  font-size:.93rem;
  line-height:1.43;
}

.partner-page .oc-proof-close{
  margin-top:8px;
  padding-top:14px;
}

/* COSA PUOI SEGNALARCI — chiaro, non un secondo muro */
.partner-page .oc-national{
  padding:42px 0 38px;
  background:#fff;
  border-top:0;
  border-bottom:1px solid #e0e9ed;
}

.partner-page .oc-national .oc-two{
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:48px;
}

.partner-page .oc-national h2{
  max-width:395px;
  font-size:39px;
}

.partner-page .oc-national .oc-value-list{
  margin-top:0;
}

.partner-page .oc-national .oc-value-list p{
  grid-template-columns:180px minmax(0,1fr);
  gap:22px;
  padding:15px 0 15px 15px;
}

.partner-page .oc-national .oc-section-close{
  margin-top:15px!important;
  padding:15px 17px;
  background:#f0f7f9;
  border-left:4px solid var(--partner-blue);
}

/* FORM — chiusura più forte e meno dispersiva */
.partner-page .oc-final{
  padding:46px 0 50px;
  background:#e5f1f6;
}

.partner-page .oc-final-grid{
  grid-template-columns:minmax(0,.76fr) minmax(520px,1.24fr);
  gap:50px;
  align-items:center;
}

.partner-page .oc-final h2{
  max-width:420px;
  font-size:40px;
  line-height:1.02;
}

.partner-page .oc-final-copy>p:not(.oc-eyebrow){
  margin-top:17px;
  line-height:1.55;
}

.partner-page .oc-request-form{
  gap:14px;
  padding:25px;
  border:1px solid #cbdce4;
  border-radius:9px;
  box-shadow:0 14px 34px rgba(7,50,77,.09);
}

.partner-page .oc-request-form label>span{
  font-size:.86rem;
}

.partner-page .oc-request-form input:not([type="checkbox"]),
.partner-page .oc-request-form select{
  min-height:45px;
}

.partner-page .oc-request-form textarea{
  min-height:105px;
}

.partner-page .oc-submit{
  min-width:230px;
}

/* =========================================================
   TABLET
   ========================================================= */
@media(max-width:980px) and (min-width:681px){

  .partner-page .oc-hero{
    padding:36px 0 38px;
    background:#f4f7f6;
  }

  .partner-page .oc-hero h1{
    font-size:43px;
  }

  .partner-page > .oc-courses,
  .partner-page .oc-mechanism,
  .partner-page .oc-partner-rules,
  .partner-page .oc-proof,
  .partner-page .oc-national,
  .partner-page .oc-final{
    padding-top:38px;
    padding-bottom:38px;
  }

  .partner-page .oc-partner-rules .oc-value-list{
    grid-template-columns:1fr 1fr;
  }

  .partner-page .oc-final-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
}

/* =========================================================
   MOBILE
   ========================================================= */
@media(max-width:680px){

  .partner-page .oc-hero{
    padding:32px 0 34px;
    background:#f4f7f6;
  }

  .partner-page .oc-hero::after{
    width:52%;
    height:4px;
  }

  .partner-page .oc-hero h1{
    font-size:37px;
    line-height:.98;
  }

  .partner-page > .oc-courses,
  .partner-page .oc-mechanism,
  .partner-page .oc-partner-rules,
  .partner-page .oc-proof,
  .partner-page .oc-national,
  .partner-page .oc-final{
    padding-top:34px;
    padding-bottom:34px;
  }

  .partner-page > .oc-courses .oc-course-featured{
    grid-template-columns:1fr;
  }

  .partner-page > .oc-courses .oc-course-featured>div:first-child,
  .partner-page > .oc-courses .oc-course-featured>a{
    min-height:0;
  }

  .partner-page .oc-mechanism .oc-points p{
    grid-template-columns:1fr;
    gap:7px;
    padding:18px 16px 18px 54px;
  }

  .partner-page .oc-partner-rules .oc-value-list{
    grid-template-columns:1fr;
  }

  .partner-page .oc-partner-rules .oc-value-list p{
    min-height:0;
  }

  .partner-page .oc-cases p,
  .partner-page .oc-national .oc-value-list p{
    grid-template-columns:1fr;
    gap:6px;
  }

  .partner-page .oc-final-grid{
    grid-template-columns:1fr;
    gap:26px;
  }

  .partner-page .oc-request-form{
    padding:20px;
  }
}

/* =========================================================
   COLLABORA CON NOI — MICRO RIFINITURE FINALI V2
   ========================================================= */

@media (min-width:981px){

  /* 1. Hero: rimuove il grande triangolo decorativo */
  .partner-page .oc-hero{
    background:#f4f7f6;
  }

  .partner-page .oc-hero::after{
    display:none;
  }

  /* 2. Colonne sinistre un po' più larghe:
     meno titoli "a colonna" e migliore equilibrio visivo */
  .partner-page .oc-mechanism .oc-two,
  .partner-page .oc-national .oc-two{
    grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
    gap:46px;
  }

  .partner-page .oc-mechanism h2,
  .partner-page .oc-national h2{
    max-width:430px;
  }

  /* 3. Riduce alcuni vuoti verticali fra sezioni */
  .partner-page .oc-mechanism{
    padding-bottom:30px;
  }

  .partner-page .oc-partner-rules{
    padding-top:34px;
  }

  .partner-page .oc-national{
    padding-bottom:28px;
  }

  .partner-page .oc-final{
    padding-top:38px;
  }
}

@media (max-width:980px) and (min-width:681px){

  .partner-page .oc-hero{
    background:#f4f7f6;
  }

  .partner-page .oc-hero::after{
    display:none;
  }

  .partner-page .oc-mechanism{
    padding-bottom:32px;
  }

  .partner-page .oc-partner-rules{
    padding-top:34px;
  }

  .partner-page .oc-national{
    padding-bottom:32px;
  }

  .partner-page .oc-final{
    padding-top:36px;
  }
}

@media (max-width:680px){

  .partner-page .oc-hero{
    background:#f4f7f6;
  }

  .partner-page .oc-hero::after{
    display:none;
  }

  .partner-page .oc-mechanism,
  .partner-page .oc-partner-rules,
  .partner-page .oc-national,
  .partner-page .oc-final{
    padding-top:32px;
    padding-bottom:32px;
  }
}

/* =========================================================
   COLLABORA CON NOI — ALLINEAMENTO FINALE FORM V3
   ========================================================= */

@media (min-width:981px){
  .partner-page .oc-final-grid{
    align-items:start;
  }

  .partner-page .oc-final-copy,
  .partner-page .oc-request-form{
    margin-top:0;
  }
}

/* =========================================================
   SCUOLE — FOTO REALI E RIFINITURE SPECIFICHE V1
   ========================================================= */

.school-page .school-practice-gallery{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
  gap:16px;
  margin:28px 0 0;
}

.school-page .school-practice-gallery figure,
.school-page .school-blsd-photo{
  margin:0;
}

.school-page .school-practice-gallery figure{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  background:rgba(255,255,255,.06);
}

.school-page .school-practice-gallery img{
  display:block;
  width:100%;
  height:310px;
  object-fit:cover;
}

.school-page .school-practice-gallery figcaption{
  margin:0;
  padding:11px 13px 12px;
  color:#dce9ef;
  font-size:.84rem;
  line-height:1.4;
}

.school-page .school-real-photo-note{
  margin:9px 0 0;
  color:#8eb0c1;
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.035em;
}

.school-page .school-blsd-photo{
  margin-top:24px;
  overflow:hidden;
  border:1px solid #d7e2e7;
  border-radius:8px;
  background:#f6f9fa;
}

.school-page .school-blsd-photo img{
  display:block;
  width:100%;
  height:300px;
  object-fit:cover;
}

.school-page .school-blsd-photo figcaption{
  margin:0;
  padding:10px 13px 11px;
  color:#60727d;
  font-size:.82rem;
  line-height:1.4;
}

.school-page .school-authority-note{
  margin:18px 0 0!important;
  padding-top:16px;
  border-top:1px solid #d7e2e7;
  color:#6a7b84!important;
  font-size:.86rem!important;
  line-height:1.45!important;
}

.school-page .school-authority-note strong{
  color:#07334f;
}

.school-page .school-summary{
  background:#f1f7f9;
  border-top:1px solid #dce8ec;
}

.school-page .school-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:8px;
}

.school-page .school-summary-grid p{
  margin:0;
  padding:18px 17px;
  border:1px solid #d8e5ea;
  border-radius:7px;
  background:#fff;
}

.school-page .school-summary-grid strong{
  display:block;
  margin-bottom:7px;
  color:#07334f;
  font-size:.94rem;
}

.school-page .school-summary-grid span{
  color:#60727d;
  font-size:.9rem;
  line-height:1.45;
}

@media (max-width:980px){
  .school-page .school-practice-gallery{
    grid-template-columns:1fr 1fr;
  }

  .school-page .school-practice-gallery img,
  .school-page .school-blsd-photo img{
    height:280px;
  }

  .school-page .school-summary-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:680px){
  .school-page .school-practice-gallery{
    grid-template-columns:1fr;
  }

  .school-page .school-practice-gallery img,
  .school-page .school-blsd-photo img{
    height:auto;
    aspect-ratio:4/3;
  }

  .school-page .school-summary-grid{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   SCUOLE — VISUAL PASS V2
   Correzioni da screenshot desktop: hero, proporzioni, vuoti, form
   ========================================================= */

@media (min-width:981px){

  /* HERO: prima era troppo vuota a destra. Ora copy + immagine. */
  .school-page .oc-hero{
    padding:32px 0 34px;
  }

  .school-page .oc-hero-inner{
    max-width:1060px;
  }

  .school-page .school-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
    gap:38px;
    align-items:center;
  }

  .school-page .school-hero-copy{
    min-width:0;
  }

  .school-page .oc-hero h1{
    max-width:none;
    font-size:47px;
    line-height:.98;
  }

  .school-page .oc-hero .oc-lead{
    max-width:650px;
    margin-top:18px;
    font-size:16px;
    line-height:1.5;
  }

  .school-page .oc-hero-actions{
    margin-top:20px;
    gap:15px;
  }

  .school-page .school-hero-media{
    margin:0;
    overflow:hidden;
    border-radius:8px;
    background:#fff;
    border:1px solid #d6e2e7;
    box-shadow:0 12px 28px rgba(7,51,79,.10);
  }

  .school-page .school-hero-media img{
    display:block;
    width:100%;
    height:330px;
    object-fit:cover;
    object-position:center;
  }

  .school-page .school-hero-media figcaption{
    margin:0;
    padding:8px 11px 9px;
    color:#71818a;
    background:#fff;
    font-size:.72rem;
    line-height:1.35;
  }

  /* La V1 ereditava le proporzioni strette di Organizza un corso.
     Qui il titolo non deve diventare una colonna troppo verticale. */
  .school-page .oc-two,
  .school-page .oc-mechanism .oc-two{
    grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
    gap:54px;
  }

  .school-page .oc-mechanism h2{
    max-width:430px;
  }

  /* Ritmo: meno aria morta tra sezioni senza comprimere i contenuti. */
  .school-page .oc-section{
    padding-top:38px;
    padding-bottom:36px;
  }

  .school-page .oc-mechanism{
    padding-top:38px;
    padding-bottom:36px;
  }

  .school-page .oc-proof{
    padding-top:40px;
    padding-bottom:38px;
  }

  .school-page .oc-national{
    padding-top:36px;
    padding-bottom:36px;
  }

  /* SEZIONE STUDENTI: una sola immagine forte, coerente col target. */
  .school-page .school-practice-gallery,
  .school-page .school-real-photo-note{
    display:none;
  }

  .school-page .school-student-practice-photo{
    margin:24px 0 0;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.17);
    border-radius:8px;
    background:rgba(255,255,255,.05);
  }

  .school-page .school-student-practice-photo img{
    display:block;
    width:100%;
    height:360px;
    object-fit:cover;
    object-position:center 48%;
  }

  .school-page .school-student-practice-photo figcaption{
    margin:0;
    padding:9px 12px 10px;
    color:#c9d9e1;
    font-size:.75rem;
    line-height:1.4;
  }

  /* BLSD: la foto reale riempie il vuoto sotto il titolo, non allunga la colonna destra. */
  .school-page .school-blsd-photo-left{
    margin-top:24px;
  }

  .school-page .school-blsd-photo-left img{
    height:250px;
    object-position:center;
  }

  /* CASE STUDY: authority a sinistra, dove prima restava aria inutilizzata. */
  .school-page .school-authority-stat{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:2px;
    max-width:290px;
    margin-top:26px;
    padding-top:18px;
    border-top:1px solid #d4e0e5;
  }

  .school-page .school-authority-stat strong{
    color:#0788c4;
    font-size:1.55rem;
    line-height:1;
    letter-spacing:-.025em;
  }

  .school-page .school-authority-stat span{
    color:#596c76;
    font-size:.84rem;
    line-height:1.4;
  }

  .school-page .school-authority-note{
    display:none;
  }

  /* SUMMARY: visivamente più compatto e vicino alla CTA. */
  .school-page .school-summary{
    padding-top:32px;
    padding-bottom:32px;
  }

  .school-page .school-summary-grid p{
    padding:16px 15px;
  }

  /* MODULO: nello screenshot il testo sinistro era centrato verticalmente.
     Le due colonne devono partire dalla stessa quota. */
  .school-page .oc-final{
    padding-top:38px;
    padding-bottom:42px;
  }

  .school-page .oc-final-grid{
    grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);
    gap:54px;
    align-items:start;
  }

  .school-page .oc-final-copy{
    padding-top:0;
    align-self:start;
  }

  .school-page .oc-request-form{
    align-self:start;
  }
}

@media (max-width:980px){
  .school-page .school-hero-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:26px;
  }

  .school-page .school-hero-media{
    margin:0;
    overflow:hidden;
    border:1px solid #d6e2e7;
    border-radius:8px;
    background:#fff;
  }

  .school-page .school-hero-media img{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
  }

  .school-page .school-hero-media figcaption{
    margin:0;
    padding:8px 10px;
    color:#71818a;
    font-size:.72rem;
  }

  .school-page .school-student-practice-photo{
    margin:22px 0 0;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.17);
    border-radius:8px;
  }

  .school-page .school-student-practice-photo img{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
  }

  .school-page .school-student-practice-photo figcaption{
    padding:9px 11px;
    color:#c9d9e1;
    font-size:.75rem;
  }

  .school-page .school-blsd-photo-left{
    margin-top:22px;
  }

  .school-page .school-authority-stat{
    margin-top:20px;
    padding-top:16px;
    border-top:1px solid #d4e0e5;
  }

  .school-page .school-authority-stat strong{
    display:block;
    color:#0788c4;
    font-size:1.4rem;
  }

  .school-page .school-authority-stat span{
    color:#596c76;
    font-size:.84rem;
  }

  .school-page .oc-final-grid{
    align-items:start;
  }
}


/* =========================================================
   SCUOLE — LAYOUT DEFINITIVO
   ========================================================= */

.school-page .school-hero-media figcaption,
.school-page .school-student-practice-photo,
.school-page .school-blsd-photo{
  display:none !important;
}

@media (min-width:981px){

  .school-page .oc-hero{
    padding:34px 0 36px;
  }

  .school-page .oc-hero-inner{
    max-width:1080px;
  }

  .school-page .school-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.07fr) minmax(350px,.93fr);
    gap:38px;
    align-items:center;
  }

  .school-page .oc-hero h1{
    font-size:46px;
    line-height:.99;
    max-width:680px;
  }

  .school-page .school-hero-media{
    margin:0;
    overflow:hidden;
    border:1px solid #d7e3e8;
    border-radius:9px;
    box-shadow:0 12px 28px rgba(7,51,79,.09);
    background:#fff;
  }

  .school-page .school-hero-media img{
    display:block;
    width:100%;
    height:330px;
    object-fit:cover;
    object-position:center;
  }

  .school-page .oc-two,
  .school-page .oc-mechanism .oc-two{
    grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);
    gap:52px;
    align-items:start;
  }

  .school-page .oc-section{
    padding-top:38px;
    padding-bottom:38px;
  }

  .school-page .oc-proof{
    padding:42px 0;
  }

  .school-page .school-result-grid{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
    gap:44px;
    align-items:start;
  }

  .school-page .school-result-copy h2{
    max-width:620px;
  }

  .school-page .school-result-copy .oc-proof-lead{
    max-width:650px;
  }

  .school-page .school-result-visuals{
    display:grid;
    gap:14px;
    align-self:start;
  }

  .school-page .school-result-visuals figure{
    margin:0;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.15);
    border-radius:8px;
    background:rgba(255,255,255,.055);
  }

  .school-page .school-result-visuals img{
    display:block;
    width:100%;
    height:205px;
    object-fit:cover;
    object-position:center;
  }

  .school-page .school-result-visuals figcaption{
    margin:0;
    padding:9px 11px 10px;
    color:#cad9e1;
    font-size:.75rem;
    line-height:1.42;
  }

  .school-page .school-result-visuals figcaption strong{
    color:#fff;
  }

  .school-page .school-authority-stat{
    max-width:300px;
    margin-top:24px;
  }

  .school-page .school-summary{
    padding-top:32px;
    padding-bottom:32px;
  }

  .school-page .oc-final{
    padding-top:38px;
    padding-bottom:42px;
  }

  .school-page .oc-final-grid{
    grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);
    gap:52px;
    align-items:start;
  }

  .school-page .oc-final-copy,
  .school-page .oc-request-form{
    align-self:start;
    margin-top:0;
  }
}

@media (max-width:980px){

  .school-page .school-hero-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:22px;
  }

  .school-page .school-hero-media{
    margin:0;
    overflow:hidden;
    border:1px solid #d7e3e8;
    border-radius:8px;
  }

  .school-page .school-hero-media img{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
  }

  .school-page .school-result-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
  }

  .school-page .school-result-visuals{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
  }

  .school-page .school-result-visuals figure{
    margin:0;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.15);
    border-radius:8px;
  }

  .school-page .school-result-visuals img{
    display:block;
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
  }

  .school-page .school-result-visuals figcaption{
    margin:0;
    padding:9px 10px;
    color:#cad9e1;
    font-size:.75rem;
    line-height:1.4;
  }

  .school-page .oc-final-grid{
    align-items:start;
  }
}

@media (max-width:680px){

  .school-page .school-result-visuals{
    grid-template-columns:1fr;
  }

  .school-page .school-result-visuals img{
    aspect-ratio:16/10;
  }
}

/* =========================================================
   SCUOLE — RIPRISTINO FOTO DAE NEL BLOCCO BLSD
   ========================================================= */

.school-page .school-blsd-photo.school-blsd-photo-left{
  display:block !important;
  margin:24px 0 0;
  overflow:hidden;
  border:1px solid #d7e2e7;
  border-radius:8px;
  background:#f6f9fa;
}

.school-page .school-blsd-photo.school-blsd-photo-left img{
  display:block;
  width:100%;
  height:245px;
  object-fit:cover;
  object-position:center;
}

.school-page .school-blsd-photo.school-blsd-photo-left figcaption{
  margin:0;
  padding:9px 11px 10px;
  color:#60727d;
  font-size:.76rem;
  line-height:1.4;
}

@media (max-width:980px){
  .school-page .school-blsd-photo.school-blsd-photo-left{
    margin-top:20px;
  }

  .school-page .school-blsd-photo.school-blsd-photo-left img{
    height:auto;
    aspect-ratio:16/9;
    object-fit:cover;
  }
}


/* =========================================================
   DAE — PAGINA
   ========================================================= */

.dae-page{
  --dae-navy:#07324d;
  --dae-blue:#078ecb;
  --dae-cyan:#4dc4ee;
  --dae-ice:#eef7fa;
  --dae-soft:#f6f9fa;
}

@media (min-width:981px){
  .dae-page .dae-hero{
    padding:38px 0 40px;
  }

  .dae-page .dae-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr);
    gap:54px;
    align-items:center;
  }

  .dae-page .oc-hero h1{
    max-width:720px;
    font-size:52px;
    line-height:.98;
  }

  .dae-page .oc-hero .oc-lead{
    max-width:710px;
  }

  .dae-page .oc-two{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:56px;
    align-items:start;
  }

  .dae-page .oc-section{
    padding-top:42px;
    padding-bottom:42px;
  }

  .dae-page .oc-final-grid{
    grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);
    gap:54px;
    align-items:start;
  }
}

/* HERO SYSTEM CARD */

.dae-page .dae-system-card{
  position:relative;
  margin:0;
  padding:28px 28px 24px;
  overflow:hidden;
  border-radius:10px;
  background:var(--dae-navy);
  box-shadow:0 16px 34px rgba(7,50,77,.14);
}

.dae-page .dae-system-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:var(--dae-cyan);
}

.dae-page .dae-system-kicker{
  margin:0 0 10px;
  color:#6fd1f3;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.13em;
}

.dae-page .dae-system-card h2{
  margin:0 0 22px;
  color:#fff;
  font-size:30px;
  line-height:1.05;
}

.dae-page .dae-system-card h2 span{
  color:var(--dae-cyan);
}

.dae-page .dae-system-list{
  display:grid;
  gap:0;
}

.dae-page .dae-system-list p{
  display:grid;
  gap:4px;
  margin:0;
  padding:13px 0;
  border-top:1px solid rgba(255,255,255,.13);
}

.dae-page .dae-system-list strong{
  color:#fff;
  font-size:.92rem;
}

.dae-page .dae-system-list span{
  color:#cadbe4;
  font-size:.84rem;
  line-height:1.4;
}

.dae-page .dae-system-close{
  margin:16px 0 0;
  padding:13px 14px;
  border-left:3px solid var(--dae-cyan);
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:.86rem;
  line-height:1.45;
}

/* PROBLEM */

.dae-page .dae-problem{
  background:#fff;
}

/* SOLUTION — DARK */

.dae-page .dae-solution{
  background:var(--dae-navy);
}

.dae-page .dae-solution-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:26px;
}

.dae-page .dae-solution-grid article{
  padding:22px 18px 20px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
  background:rgba(255,255,255,.055);
}

.dae-page .dae-solution-grid article > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  margin-bottom:16px;
  border-radius:50%;
  background:var(--dae-cyan);
  color:var(--dae-navy);
  font-weight:900;
  font-size:.8rem;
}

.dae-page .dae-solution-grid h3{
  margin:0 0 8px;
  color:#fff;
  font-size:1rem;
}

.dae-page .dae-solution-grid p{
  margin:0;
  color:#cadbe4;
  font-size:.86rem;
  line-height:1.48;
}

/* REMINDERS */

.dae-page .dae-reminders{
  background:var(--dae-ice);
}

.dae-page .dae-reminder-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:58px;
  align-items:center;
}

.dae-page .dae-reminder-lead{
  max-width:590px;
  margin:16px 0 0;
  color:#5f717c;
  line-height:1.55;
}

.dae-page .dae-timeline{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border:1px solid #cfe0e7;
  border-radius:9px;
  overflow:hidden;
  background:#fff;
}

.dae-page .dae-timeline div{
  position:relative;
  padding:26px 18px 23px;
  text-align:center;
}

.dae-page .dae-timeline div + div{
  border-left:1px solid #d8e5ea;
}

.dae-page .dae-timeline strong{
  display:block;
  color:var(--dae-blue);
  font-size:1rem;
  line-height:1.15;
}

.dae-page .dae-timeline span{
  display:block;
  margin-top:7px;
  color:#667a85;
  font-size:.82rem;
}

.dae-page .dae-reminder-close{
  margin:22px 0 0;
  padding-top:18px;
  border-top:1px solid #cfe0e7;
  color:var(--dae-navy);
}

/* AUDIENCE */

.dae-page .dae-audience{
  background:#fff;
}

/* TOTAL COST */

.dae-page .dae-price{
  background:var(--dae-soft);
}

.dae-page .dae-checklist{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px 12px;
  margin:22px 0 0;
}

.dae-page .dae-checklist span{
  position:relative;
  padding:12px 12px 12px 34px;
  border:1px solid #d9e5ea;
  border-radius:6px;
  background:#fff;
  color:var(--dae-navy);
  font-size:.88rem;
  font-weight:700;
}

.dae-page .dae-checklist span::before{
  content:"✓";
  position:absolute;
  left:12px;
  top:10px;
  color:var(--dae-blue);
  font-weight:900;
}

/* PROCESS */

.dae-page .dae-process{
  background:#fff;
}

.dae-page .dae-process > .shell > h2{
  max-width:720px;
}

.dae-page .dae-process-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:26px;
}

.dae-page .dae-process-grid article{
  padding:22px 18px;
  border:1px solid #d8e5ea;
  border-radius:8px;
  background:#fff;
}

.dae-page .dae-process-grid article > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  margin-bottom:14px;
  border-radius:50%;
  background:var(--dae-blue);
  color:#fff;
  font-size:.82rem;
  font-weight:900;
}

.dae-page .dae-process-grid h3{
  margin:0 0 8px;
  color:var(--dae-navy);
  font-size:.98rem;
}

.dae-page .dae-process-grid p{
  margin:0;
  color:#657883;
  font-size:.86rem;
  line-height:1.48;
}

/* AUTHORITY */

.dae-page .dae-authority{
  background:var(--dae-navy);
}

.dae-page .dae-authority .oc-eyebrow{
  color:#65c9ee;
}

.dae-page .dae-authority h2,
.dae-page .dae-authority .oc-copy p,
.dae-page .dae-authority .oc-section-close{
  color:#fff;
}

.dae-page .dae-authority h2 span{
  color:var(--dae-cyan);
}

.dae-page .dae-authority .oc-copy p{
  color:#d1e0e8;
}

.dae-page .dae-authority .oc-copy strong{
  color:#fff;
}

.dae-page .dae-authority-stat{
  display:inline-grid;
  margin-top:24px;
  padding-top:17px;
  border-top:1px solid rgba(255,255,255,.2);
}

.dae-page .dae-authority-stat strong{
  color:var(--dae-cyan);
  font-size:30px;
  line-height:1;
}

.dae-page .dae-authority-stat span{
  margin-top:6px;
  color:#d1e0e8;
  font-size:.82rem;
}

/* NATIONAL */

.dae-page .dae-national{
  background:#fff;
}

.dae-page .dae-national-box{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:54px;
  align-items:center;
  padding-top:28px;
  padding-bottom:28px;
  border-top:1px solid #d9e5ea;
  border-bottom:1px solid #d9e5ea;
}

.dae-page .dae-national-box h2{
  margin-bottom:0;
}

.dae-page .dae-national-box > p{
  margin:0;
  color:#60747f;
  line-height:1.55;
}

/* FORM */

.dae-page .oc-final{
  background:var(--dae-ice);
}

.dae-page .oc-final-copy,
.dae-page .oc-request-form{
  align-self:start;
}

/* RESPONSIVE — struttura base, rifinitura mobile finale insieme alle altre pagine */

@media (max-width:980px){
  .dae-page .dae-hero-grid,
  .dae-page .dae-reminder-grid,
  .dae-page .dae-national-box{
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
  }

  .dae-page .dae-solution-grid,
  .dae-page .dae-process-grid{
    grid-template-columns:1fr 1fr;
  }

  .dae-page .dae-timeline{
    grid-template-columns:1fr 1fr 1fr;
  }
}

@media (max-width:680px){
  .dae-page .dae-solution-grid,
  .dae-page .dae-process-grid,
  .dae-page .dae-checklist,
  .dae-page .dae-timeline{
    grid-template-columns:1fr;
  }

  .dae-page .dae-timeline div + div{
    border-left:0;
    border-top:1px solid #d8e5ea;
  }
}


/* =========================================================
   DAE V2 — CONSULENZA, CONFRONTO PREVENTIVI, OFFERTA
   ========================================================= */

.dae-page .dae-consulting{
  background:#fff;
}

.dae-page .dae-consult-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 12px;
  margin:22px 0 0;
}

.dae-page .dae-consult-grid p{
  margin:0;
  padding:15px 15px 14px;
  border:1px solid #d9e5ea;
  border-radius:7px;
  background:#f8fbfc;
}

.dae-page .dae-consult-grid strong,
.dae-page .dae-consult-grid span{
  display:block;
}

.dae-page .dae-consult-grid strong{
  margin-bottom:5px;
  color:var(--dae-navy);
  font-size:.91rem;
}

.dae-page .dae-consult-grid span{
  color:#667984;
  font-size:.84rem;
  line-height:1.45;
}

.dae-page .dae-price{
  background:var(--dae-ice);
}

.dae-page .dae-quote-box{
  margin-top:28px;
  padding:24px 24px 22px;
  border:1px solid #bfd9e4;
  border-radius:9px;
  background:#fff;
  box-shadow:0 10px 24px rgba(7,50,77,.06);
}

.dae-page .dae-quote-kicker{
  margin:0 0 7px !important;
  color:var(--dae-blue) !important;
  font-size:.72rem !important;
  font-weight:900;
  letter-spacing:.12em;
}

.dae-page .dae-quote-box h3{
  margin:0 0 10px;
  color:var(--dae-navy);
  font-size:1.22rem;
  line-height:1.15;
}

.dae-page .dae-quote-box > p:not(.dae-quote-kicker):not(.dae-quote-note){
  margin:0;
  color:#5f727d;
  font-size:.9rem;
  line-height:1.52;
}

.dae-page .dae-quote-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:18px;
  padding:13px 16px;
  border-radius:6px;
  background:var(--dae-blue);
  color:#fff;
  font-size:.8rem;
  font-weight:900;
  line-height:1.2;
  text-decoration:none;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.dae-page .dae-quote-button:hover{
  transform:translateY(-1px);
  box-shadow:0 7px 16px rgba(7,142,203,.18);
}

.dae-page .dae-quote-note{
  margin:9px 0 0 !important;
  color:#7a8b94 !important;
  font-size:.74rem !important;
  line-height:1.4 !important;
}

@media (min-width:981px){
  .dae-page .dae-consulting,
  .dae-page .dae-price{
    padding-top:44px;
    padding-bottom:44px;
  }

  .dae-page .dae-price .oc-two{
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  }
}

@media (max-width:680px){
  .dae-page .dae-consult-grid{
    grid-template-columns:1fr;
  }

  .dae-page .dae-quote-box{
    padding:20px 18px;
  }

  .dae-page .dae-quote-button{
    width:100%;
  }
}


/* =========================================================
   DAE V3 — GERARCHIA DRM: SCELTA > CONFRONTO > PREZZO > GESTIONE
   ========================================================= */

.dae-page .dae-consult-intro{
  max-width:500px;
  margin:18px 0 0;
  color:#647781;
  line-height:1.55;
}

.dae-page .dae-compare-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 12px;
}

.dae-page .dae-compare-grid p{
  margin:0;
  padding:14px 15px;
  border:1px solid #d8e5ea;
  border-radius:7px;
  background:#f8fbfc;
}

.dae-page .dae-compare-grid strong,
.dae-page .dae-compare-grid span{
  display:block;
}

.dae-page .dae-compare-grid strong{
  margin-bottom:4px;
  color:var(--dae-navy);
  font-size:.9rem;
}

.dae-page .dae-compare-grid span{
  color:#6a7c86;
  font-size:.82rem;
  line-height:1.38;
}

.dae-page .dae-quote-early{
  background:var(--dae-navy);
}

.dae-page .dae-quote-early-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
  gap:54px;
  align-items:center;
}

.dae-page .dae-quote-early .oc-eyebrow{
  color:var(--dae-cyan);
}

.dae-page .dae-quote-early h2{
  margin-bottom:12px;
  color:#fff;
}

.dae-page .dae-quote-early h2 span{
  color:var(--dae-cyan);
}

.dae-page .dae-quote-early p{
  margin:0;
  color:#d4e3ea;
  line-height:1.55;
}

.dae-page .dae-quote-early p strong{
  color:#fff;
}

.dae-page .dae-quote-early-action{
  padding:22px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
  background:rgba(255,255,255,.055);
}

.dae-page .dae-quote-early-action .oc-primary{
  width:100%;
  justify-content:center;
  text-align:center;
}

.dae-page .dae-quote-early-action p{
  margin-top:9px;
  color:#aac1cc;
  font-size:.76rem;
  text-align:center;
}

.dae-page .dae-spares{
  background:#fff;
}

.dae-page .dae-spares-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);
  gap:54px;
  align-items:center;
}

.dae-page .dae-spares h2{
  margin-bottom:14px;
}

.dae-page .dae-spares > .shell > div:first-child > p:last-child{
  margin:0;
  color:#627680;
  line-height:1.55;
}

.dae-page .dae-spares-action{
  padding:22px;
  border:1px solid #cfe0e7;
  border-radius:8px;
  background:var(--dae-ice);
}

.dae-page .dae-spares-action p{
  margin:0;
  color:#5d717c;
  line-height:1.5;
}

.dae-page .dae-spares-action strong{
  color:var(--dae-navy);
}

.dae-page .dae-spares-action .dae-quote-button{
  margin-top:16px;
}

.dae-page .dae-quote-box{
  display:none;
}

@media (min-width:981px){
  .dae-page .dae-consulting,
  .dae-page .dae-quote-early,
  .dae-page .dae-price,
  .dae-page .dae-spares{
    padding-top:40px;
    padding-bottom:40px;
  }

  .dae-page .dae-hero-grid{
    grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);
  }

  .dae-page .oc-hero h1{
    font-size:50px;
    max-width:760px;
  }
}

@media (max-width:980px){
  .dae-page .dae-quote-early-grid,
  .dae-page .dae-spares-grid{
    grid-template-columns:1fr;
    gap:24px;
  }
}

@media (max-width:680px){
  .dae-page .dae-compare-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   DAE V4 — FINAL DRM ORDER + RIDUZIONE RIDONDANZE
   ========================================================= */

.dae-page .dae-price .oc-copy{
  max-width:680px;
}

.dae-page .dae-price .oc-section-close{
  margin-top:20px;
}

.dae-page .dae-solution-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

@media (min-width:981px){
  .dae-page .dae-consulting,
  .dae-page .dae-quote-early,
  .dae-page .dae-price,
  .dae-page .dae-spares,
  .dae-page .dae-solution,
  .dae-page .dae-reminders,
  .dae-page .dae-authority{
    padding-top:38px;
    padding-bottom:38px;
  }

  .dae-page .dae-price .oc-two{
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  }

  .dae-page .dae-solution-grid article{
    min-height:0;
  }
}

/* Sezioni eliminate nella V4: processo e blocco geografico autonomo */
.dae-page .dae-process,
.dae-page .dae-national{
  display:none !important;
}


/* =========================================================
   DAE V5 — CONSULENZA GRATUITA + PROOF + FORM PIÙ LEGGERO
   ========================================================= */

.dae-page .dae-client-proof{
  display:inline-grid;
  margin:20px 0 0 22px;
  padding-top:17px;
  border-top:1px solid rgba(255,255,255,.2);
  vertical-align:top;
}

.dae-page .dae-client-proof strong{
  color:var(--dae-cyan);
  font-size:30px;
  line-height:1;
}

.dae-page .dae-client-proof span{
  margin-top:6px;
  color:#d1e0e8;
  font-size:.82rem;
}

.dae-page .dae-client-proof small{
  display:block;
  max-width:250px;
  margin-top:7px;
  color:#9fb7c3;
  font-size:.68rem;
  line-height:1.35;
}

@media (max-width:680px){
  .dae-page .dae-client-proof{
    display:grid;
    margin:18px 0 0;
  }
}


/* =========================================================
   DAE V6 — HERO PULITA, PROOF REALE, 3 PILASTRI POST-VENDITA
   ========================================================= */

.dae-page .dae-hero{
  background:#f2f6f7;
}

.dae-page .dae-hero-simple{
  max-width:1120px;
  padding-top:54px;
  padding-bottom:42px;
}

.dae-page .dae-hero-copy{
  max-width:900px;
}

.dae-page .dae-hero .oc-eyebrow{
  margin-bottom:12px;
}

.dae-page .dae-hero h1{
  max-width:920px;
  margin:0;
  font-size:56px;
  line-height:.98;
}

.dae-page .dae-hero .oc-lead{
  max-width:820px;
  margin-top:20px;
  font-size:1.06rem;
  line-height:1.55;
}

.dae-page .dae-free-line{
  display:flex;
  align-items:center;
  gap:14px;
  max-width:820px;
  margin-top:20px;
  padding:12px 14px;
  border-left:4px solid var(--dae-blue);
  background:#fff;
}

.dae-page .dae-free-line strong{
  flex:0 0 auto;
  color:var(--dae-navy);
  font-size:.82rem;
  letter-spacing:.045em;
}

.dae-page .dae-free-line span{
  color:#657984;
  font-size:.85rem;
}

.dae-page .dae-hero .oc-hero-actions{
  margin-top:22px;
}

.dae-page .dae-hero-strip{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:38px;
  border-top:1px solid #cfdee4;
  border-bottom:1px solid #cfdee4;
}

.dae-page .dae-hero-strip > div{
  padding:18px 22px 18px 0;
}

.dae-page .dae-hero-strip > div + div{
  padding-left:22px;
  border-left:1px solid #cfdee4;
}

.dae-page .dae-hero-strip strong,
.dae-page .dae-hero-strip span{
  display:block;
}

.dae-page .dae-hero-strip strong{
  color:var(--dae-navy);
  font-size:.9rem;
}

.dae-page .dae-hero-strip span{
  margin-top:5px;
  color:#687b85;
  font-size:.8rem;
  line-height:1.4;
}

/* Il vecchio pannello hero non viene più usato */
.dae-page .dae-system-card{
  display:none !important;
}

.dae-page .dae-solution-grid-three{
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-width:980px;
}

.dae-page .dae-authority-grid{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:58px;
  align-items:start;
}

.dae-page .dae-proof-pair{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  max-width:390px;
  margin-top:25px;
}

.dae-page .dae-proof-pair .dae-authority-stat,
.dae-page .dae-client-proof-real{
  display:grid;
  margin:0;
  padding:17px 0;
  border-top:1px solid rgba(255,255,255,.2);
}

.dae-page .dae-client-proof-real strong{
  color:var(--dae-cyan);
  font-size:1.15rem;
  line-height:1.1;
}

.dae-page .dae-client-proof-real span{
  margin-top:6px;
  color:#d1e0e8;
  font-size:.82rem;
  line-height:1.4;
}

.dae-page .dae-client-proof-real small{
  display:none;
}

.dae-page .dae-authority-right{
  display:grid;
  gap:20px;
}

.dae-page .dae-real-photo{
  margin:0;
  overflow:hidden;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.15);
}

.dae-page .dae-real-photo img{
  display:block;
  width:100%;
  height:245px;
  object-fit:cover;
  object-position:center;
}

.dae-page .dae-authority-right .oc-copy p:first-child{
  margin-top:0;
}

@media (min-width:981px){
  .dae-page .dae-hero{
    padding:0;
  }
}

@media (max-width:980px){
  .dae-page .dae-hero-simple{
    padding-top:38px;
    padding-bottom:34px;
  }

  .dae-page .dae-hero h1{
    font-size:44px;
  }

  .dae-page .dae-authority-grid{
    grid-template-columns:1fr;
    gap:28px;
  }

  .dae-page .dae-solution-grid-three{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:680px){
  .dae-page .dae-hero h1{
    font-size:38px;
  }

  .dae-page .dae-free-line{
    display:grid;
    gap:5px;
  }

  .dae-page .dae-hero-strip,
  .dae-page .dae-solution-grid-three{
    grid-template-columns:1fr;
  }

  .dae-page .dae-hero-strip > div{
    padding:14px 0;
  }

  .dae-page .dae-hero-strip > div + div{
    padding-left:0;
    border-left:0;
    border-top:1px solid #cfdee4;
  }

  .dae-page .dae-real-photo img{
    height:auto;
    aspect-ratio:16/9;
  }
}


/* =========================================================
   DAE V7 — HERO CON IMMAGINE
   ========================================================= */

.dae-page .dae-hero-with-image{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);
  gap:46px;
  align-items:center;
  max-width:1120px;
  padding-top:44px;
  padding-bottom:26px;
}

.dae-page .dae-hero-with-image .dae-hero-copy{
  max-width:none;
}

.dae-page .dae-hero-with-image h1{
  max-width:700px;
  font-size:50px;
  line-height:1;
}

.dae-page .dae-hero-with-image .oc-lead{
  max-width:700px;
}

.dae-page .dae-hero-photo{
  margin:0;
  overflow:hidden;
  border-radius:10px;
  background:#fff;
  border:1px solid #d7e4e9;
  box-shadow:0 16px 34px rgba(7,50,77,.10);
}

.dae-page .dae-hero-photo img{
  display:block;
  width:100%;
  height:360px;
  object-fit:cover;
  object-position:center;
}

.dae-page .dae-hero-photo figcaption{
  margin:0;
  padding:10px 12px 11px;
  color:#647985;
  background:#fff;
  font-size:.76rem;
  line-height:1.4;
}

.dae-page .dae-hero > .shell:last-child{
  max-width:1120px;
}

.dae-page .dae-hero > .shell:last-child .dae-hero-strip{
  margin-top:0;
  margin-bottom:40px;
}

@media (max-width:980px){
  .dae-page .dae-hero-with-image{
    grid-template-columns:1fr;
    gap:28px;
    padding-top:36px;
  }

  .dae-page .dae-hero-with-image h1{
    font-size:44px;
  }

  .dae-page .dae-hero-photo img{
    height:auto;
    aspect-ratio:16/9;
  }
}

@media (max-width:680px){
  .dae-page .dae-hero-with-image h1{
    font-size:38px;
  }

  .dae-page .dae-hero-photo figcaption{
    font-size:.72rem;
  }
}


/* =========================================================
   DAE V8 — HERO EDITORIALE + RIFINITURA DESKTOP
   ========================================================= */

@media (min-width:981px){
  .dae-page .dae-hero{
    padding:0;
  }

  .dae-page .dae-hero-v8{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr);
    gap:54px;
    align-items:center;
    max-width:1120px;
    padding-top:42px;
    padding-bottom:24px;
  }

  .dae-page .dae-hero-v8 h1{
    max-width:690px;
    font-size:49px;
    line-height:1;
  }

  .dae-page .dae-hero-v8 .oc-lead{
    max-width:680px;
  }

  .dae-page .dae-compare-grid p{
    padding:12px 14px;
  }

  .dae-page .dae-compare-grid strong{
    font-size:.88rem;
  }

  .dae-page .dae-compare-grid span{
    font-size:.8rem;
  }

  .dae-page .dae-solution-grid-three article{
    padding:19px 18px;
  }

  .dae-page .oc-final-grid{
    grid-template-columns:minmax(0,.92fr) minmax(500px,1.08fr);
    gap:46px;
  }
}

.dae-page .dae-hero-visual{
  position:relative;
}

.dae-page .dae-hero-photo-v8{
  margin:0;
  overflow:hidden;
  border-radius:12px;
  box-shadow:0 16px 38px rgba(7,50,77,.13);
  background:#fff;
}

.dae-page .dae-hero-photo-v8 img{
  display:block;
  width:100%;
  height:360px;
  object-fit:cover;
  object-position:center 47%;
}

.dae-page .dae-market-note{
  position:relative;
  width:calc(100% - 36px);
  margin:-42px auto 0;
  padding:15px 17px 14px;
  border:1px solid #cfe0e7;
  border-radius:8px;
  background:rgba(255,255,255,.97);
  box-shadow:0 10px 26px rgba(7,50,77,.10);
}

.dae-page .dae-market-note strong,
.dae-page .dae-market-note span,
.dae-page .dae-market-note small{
  display:block;
}

.dae-page .dae-market-note strong{
  color:var(--dae-navy);
  font-size:.86rem;
}

.dae-page .dae-market-note span{
  margin-top:3px;
  color:#61757f;
  font-size:.78rem;
  line-height:1.4;
}

.dae-page .dae-market-note small{
  margin-top:8px;
  color:#758892;
  font-size:.68rem;
  line-height:1.4;
}

.dae-page .dae-hero-cta-group{
  display:flex;
  align-items:stretch;
  gap:10px;
  margin-top:20px;
}

.dae-page .dae-hero-cta-group .oc-primary{
  flex:0 0 auto;
}

.dae-page .dae-secondary-cta{
  display:grid;
  align-content:center;
  min-width:235px;
  padding:9px 12px;
  border:1px solid #c7d9e1;
  border-radius:6px;
  background:#fff;
  text-decoration:none;
}

.dae-page .dae-secondary-cta strong{
  color:var(--dae-navy);
  font-size:.76rem;
  line-height:1.2;
}

.dae-page .dae-secondary-cta span{
  margin-top:3px;
  color:var(--dae-blue);
  font-size:.74rem;
  font-weight:800;
}

.dae-page .dae-hero-strip-v8{
  margin-top:0;
  margin-bottom:30px;
}

.dae-page .dae-hero-strip-v8 > div{
  padding-top:12px;
  padding-bottom:12px;
}

.dae-page .dae-hero-strip-v8 strong{
  font-size:.84rem;
}

.dae-page .dae-hero-strip-v8 span{
  font-size:.76rem;
}

/* Authority più compatta */
.dae-page .dae-authority-v8{
  max-width:1120px;
}

.dae-page .dae-authority-v8-head{
  max-width:790px;
}

.dae-page .dae-authority-v8-head h2{
  margin-bottom:0;
}

.dae-page .dae-authority-v8-body{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:54px;
  margin-top:26px;
  align-items:start;
}

.dae-page .dae-proof-pair-v8{
  display:grid;
}

.dae-page .dae-proof-pair-v8 > div{
  padding:17px 0;
  border-top:1px solid rgba(255,255,255,.2);
}

.dae-page .dae-proof-pair-v8 strong,
.dae-page .dae-proof-pair-v8 span{
  display:block;
}

.dae-page .dae-proof-pair-v8 strong{
  color:var(--dae-cyan);
  font-size:1.45rem;
  line-height:1.05;
}

.dae-page .dae-proof-pair-v8 span{
  margin-top:6px;
  color:#d2e0e7;
  font-size:.81rem;
  line-height:1.4;
}

.dae-page .dae-authority-copy-v8{
  padding-top:15px;
  border-top:1px solid rgba(255,255,255,.2);
}

.dae-page .dae-authority-copy-v8 p{
  margin:0 0 14px;
  color:#d2e0e7;
  line-height:1.55;
}

.dae-page .dae-authority-copy-v8 strong{
  color:#fff;
}

/* Final CTA meno sbilanciata */
.dae-page .dae-final-trust{
  display:grid;
  gap:7px;
  margin:22px 0 0;
  padding:15px 16px;
  border-left:3px solid var(--dae-blue);
  background:rgba(255,255,255,.55);
}

.dae-page .dae-final-trust span{
  color:var(--dae-navy);
  font-size:.84rem;
  font-weight:700;
}

@media (max-width:980px){
  .dae-page .dae-hero-v8{
    display:grid;
    grid-template-columns:1fr;
    gap:28px;
    padding-top:36px;
    padding-bottom:22px;
  }

  .dae-page .dae-hero-photo-v8 img{
    height:auto;
    aspect-ratio:16/9;
  }

  .dae-page .dae-authority-v8-body{
    grid-template-columns:1fr;
    gap:24px;
  }
}

@media (max-width:680px){
  .dae-page .dae-hero-cta-group{
    display:grid;
  }

  .dae-page .dae-secondary-cta{
    min-width:0;
  }

  .dae-page .dae-market-note{
    width:calc(100% - 20px);
    margin-top:-28px;
  }
}


/* =========================================================
   DAE V9 — RIPRISTINO RESPIRO E PROFONDITÀ DESKTOP
   ========================================================= */

@media (min-width:981px){

  /* Hero: più presenza, senza tornare al pannellone */
  .dae-page .dae-hero-v8{
    padding-top:54px;
    padding-bottom:34px;
    gap:58px;
  }

  .dae-page .dae-hero-photo-v8 img{
    height:395px;
  }

  .dae-page .dae-market-note{
    margin-top:-34px;
    padding:17px 18px 16px;
  }

  .dae-page .dae-hero-strip-v8{
    margin-bottom:42px;
  }

  .dae-page .dae-hero-strip-v8 > div{
    padding-top:16px;
    padding-bottom:16px;
  }

  /* Sezioni: la V8 era stata compressa troppo */
  .dae-page .dae-consulting,
  .dae-page .dae-quote-early,
  .dae-page .dae-price,
  .dae-page .dae-spares,
  .dae-page .dae-solution,
  .dae-page .dae-reminders,
  .dae-page .dae-authority{
    padding-top:54px;
    padding-bottom:54px;
  }

  /* Consulenza: più spazio alle otto variabili */
  .dae-page .dae-compare-grid{
    gap:13px 14px;
  }

  .dae-page .dae-compare-grid p{
    padding:16px 16px 15px;
  }

  /* Preventivo: deve sembrare un vero snodo commerciale */
  .dae-page .dae-quote-early-grid{
    min-height:190px;
  }

  .dae-page .dae-quote-early-action{
    padding:27px 24px;
  }

  /* Ricambi */
  .dae-page .dae-spares-grid{
    gap:62px;
  }

  .dae-page .dae-spares-action{
    padding:27px 25px;
  }

  /* Post acquisto: recuperiamo presenza visiva */
  .dae-page .dae-solution-grid-three{
    max-width:none;
    gap:16px;
    margin-top:30px;
  }

  .dae-page .dae-solution-grid-three article{
    padding:25px 22px 24px;
    min-height:180px;
  }

  /* Scadenze: più respiro */
  .dae-page .dae-reminder-grid{
    gap:66px;
  }

  .dae-page .dae-timeline div{
    padding:30px 20px 27px;
  }

  /* Authority: non deve sembrare un footer anticipato */
  .dae-page .dae-authority-v8{
    padding-top:8px;
    padding-bottom:8px;
  }

  .dae-page .dae-authority-v8-head{
    max-width:880px;
  }

  .dae-page .dae-authority-v8-head h2{
    font-size:42px;
    line-height:1.03;
  }

  .dae-page .dae-authority-v8-body{
    margin-top:34px;
    gap:64px;
  }

  .dae-page .dae-proof-pair-v8 > div{
    padding:22px 0;
  }

  .dae-page .dae-authority-copy-v8{
    padding-top:21px;
  }

  /* Finale: più equilibrio fra messaggio e form */
  .dae-page .oc-final{
    padding-top:58px;
    padding-bottom:62px;
  }

  .dae-page .oc-final-grid{
    grid-template-columns:minmax(0,.98fr) minmax(510px,1.02fr);
    gap:58px;
  }

  .dae-page .dae-final-trust{
    margin-top:26px;
    padding:18px 18px;
  }
}


/* =========================================================
   DAE — RIPRISTINO TESTI APPROVATI + LAYOUT ISPIRATO AL MOCKUP
   Nessuna modifica ai testi commerciali approvati.
   ========================================================= */

@media (min-width:981px){
  .dae-page .dae-hero-v10{
    display:grid;
    grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);
    gap:0;
    align-items:stretch;
    max-width:1120px;
    padding-top:0;
    padding-bottom:0;
  }

  .dae-page .dae-hero-v10 .dae-hero-copy{
    padding:42px 42px 36px 0;
    align-self:center;
    position:relative;
    z-index:2;
  }

  .dae-page .dae-hero-v10 h1{
    max-width:650px;
    font-size:47px;
    line-height:.98;
  }

  .dae-page .dae-hero-v10 .oc-lead{
    max-width:620px;
    margin-top:18px;
  }

  .dae-page .dae-hero-v10 .dae-hero-visual{
    min-height:410px;
  }

  .dae-page .dae-hero-photo-v10{
    height:100%;
    border-radius:0;
    box-shadow:none;
  }

  .dae-page .dae-hero-photo-v10 img{
    width:100%;
    height:100%;
    min-height:410px;
    object-fit:cover;
    object-position:center;
  }

  .dae-page .dae-hero-note-v10{
    position:absolute;
    left:22px;
    right:22px;
    bottom:22px;
    width:auto;
    margin:0;
    background:rgba(255,255,255,.94);
  }

  .dae-page .dae-hero-strip-v8{
    margin-top:0;
    margin-bottom:0;
    padding-top:15px;
    padding-bottom:15px;
  }

  .dae-page .dae-consulting,
  .dae-page .dae-price,
  .dae-page .dae-spares,
  .dae-page .dae-reminders,
  .dae-page .dae-authority{
    padding-top:48px;
    padding-bottom:48px;
  }

  .dae-page .dae-quote-early,
  .dae-page .dae-solution{
    padding-top:38px;
    padding-bottom:38px;
  }

  .dae-page .dae-compare-grid{
    gap:10px 12px;
  }

  .dae-page .dae-compare-grid p{
    padding:14px 15px;
  }

  .dae-page .dae-quote-early-grid{
    min-height:165px;
  }

  .dae-page .dae-solution-grid-three article{
    min-height:155px;
  }

  .dae-page .oc-final{
    padding-top:46px;
    padding-bottom:50px;
  }
}

/* Hero senza riquadro 'card' separato: foto integrata nel blocco */
.dae-page .dae-hero{
  background:#f2f7f9;
}

.dae-page .dae-hero-visual{
  position:relative;
  overflow:hidden;
}

.dae-page .dae-hero-photo-v10{
  margin:0;
  overflow:hidden;
  background:#fff;
}

.dae-page .dae-hero-photo-v10 img{
  display:block;
}

.dae-page .dae-hero-note-v10{
  padding:13px 15px;
  border:1px solid #cfe0e7;
  border-radius:6px;
  box-shadow:0 8px 18px rgba(7,50,77,.08);
}

.dae-page .dae-hero-note-v10 strong,
.dae-page .dae-hero-note-v10 span{
  display:block;
}

.dae-page .dae-hero-note-v10 strong{
  color:var(--dae-navy);
  font-size:.84rem;
}

.dae-page .dae-hero-note-v10 span{
  margin-top:3px;
  color:#657883;
  font-size:.76rem;
}

@media (max-width:980px){
  .dae-page .dae-hero-v10{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
    padding-top:34px;
  }

  .dae-page .dae-hero-v10 .dae-hero-copy{
    padding-bottom:28px;
  }

  .dae-page .dae-hero-photo-v10 img{
    width:100%;
    height:auto;
    aspect-ratio:16/9;
    object-fit:cover;
  }

  .dae-page .dae-hero-note-v10{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    width:calc(100% - 28px);
    margin:-28px auto 0;
  }
}


/* =========================================================
   DAE — FOTO INSTALLAZIONE NELLA SEZIONE COSTO REALE
   Testi invariati rispetto alla versione approvata.
   ========================================================= */

.dae-page .dae-price .oc-copy{
  align-self:start;
}

.dae-page .dae-installation-photo{
  margin:22px 0 0;
  overflow:hidden;
  border-radius:8px;
  border:1px solid #d7e4e9;
  background:#fff;
  box-shadow:0 10px 24px rgba(7,50,77,.08);
}

.dae-page .dae-installation-photo img{
  display:block;
  width:100%;
  height:255px;
  object-fit:cover;
  object-position:center;
}

@media (min-width:981px){
  .dae-page .dae-price .oc-two{
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    gap:56px;
    align-items:start;
  }
}

@media (max-width:980px){
  .dae-page .dae-installation-photo img{
    height:auto;
    aspect-ratio:16/9;
  }
}


/* =========================================================
   DAE — CORREZIONI FINALI DESKTOP
   - hero senza mini-box ridondante
   - sezione "Prezzo e costo reale" a due colonne reali
   - proof aggiornato a oltre 90 clienti
   ========================================================= */

.dae-page .dae-hero-note-v10{
  display:none !important;
}

.dae-page .dae-price-grid-fixed{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:56px;
  align-items:start;
}

.dae-page .dae-price-copy-left h2{
  margin-bottom:0;
}

.dae-page .dae-price-right{
  display:grid;
  gap:22px;
}

.dae-page .dae-price-right .oc-copy{
  margin:0;
}

.dae-page .dae-price-right .dae-installation-photo{
  margin:0;
}

.dae-page .dae-price-right .dae-installation-photo img{
  height:275px;
  object-fit:cover;
  object-position:center;
}

@media (max-width:980px){
  .dae-page .dae-price-grid-fixed{
    grid-template-columns:1fr;
    gap:24px;
  }

  .dae-page .dae-price-right .dae-installation-photo img{
    height:auto;
    aspect-ratio:16/9;
  }
}


/* =========================================================
   DAE V11 — PASSAGGIO GRAFICO FINALE
   ========================================================= */

/* HERO: risk reversal leggibile, non a due colonne */
.dae-page .dae-free-line-v11{
  display:block !important;
  max-width:520px;
  padding:14px 16px 13px !important;
  border-left:3px solid var(--dae-blue);
  background:rgba(255,255,255,.72);
}

.dae-page .dae-free-line-v11 strong,
.dae-page .dae-free-line-v11 span{
  display:block !important;
  width:auto !important;
  max-width:none !important;
}

.dae-page .dae-free-line-v11 strong{
  font-size:.81rem;
  line-height:1.2;
}

.dae-page .dae-free-line-v11 span{
  margin-top:5px;
  color:#667a84;
  font-size:.78rem;
  line-height:1.4;
}

/* CTA secondaria subordinata */
.dae-page .dae-secondary-cta{
  min-width:0 !important;
  padding:8px 0 5px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  align-self:center;
}

.dae-page .dae-secondary-cta strong{
  font-size:.72rem !important;
}

.dae-page .dae-secondary-cta span{
  display:inline-block;
  margin-top:2px !important;
  padding-bottom:2px;
  border-bottom:1px solid #a8bdc8;
  font-size:.75rem !important;
}

/* CRITERI: meno dashboard */
.dae-page .dae-compare-grid-v11{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:0 24px !important;
}

.dae-page .dae-compare-grid-v11 p{
  min-height:0 !important;
  margin:0 !important;
  padding:14px 0 13px !important;
  border:0 !important;
  border-bottom:1px solid #d9e6eb !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.dae-page .dae-compare-grid-v11 strong{
  font-size:.86rem !important;
}

.dae-page .dae-compare-grid-v11 span{
  margin-top:4px;
  font-size:.76rem !important;
  line-height:1.4;
}

/* COSTO REALE: due colonne vere, immagine contenuta */
.dae-page .dae-price-grid-fixed{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:56px;
  align-items:center;
}

.dae-page .dae-price-right{
  display:grid;
  gap:18px;
  min-width:0;
}

.dae-page .dae-price-right .dae-installation-photo{
  margin:0;
  overflow:hidden;
  border-radius:8px;
  border:1px solid #d7e4e9;
  background:#fff;
  box-shadow:0 10px 24px rgba(7,50,77,.08);
}

.dae-page .dae-price-right .dae-installation-photo img{
  display:block;
  width:100%;
  height:268px;
  object-fit:cover;
  object-position:center 48%;
}

/* POST ACQUISTO: non è una sequenza */
.dae-page .dae-solution-num{
  display:none !important;
}

.dae-page .dae-solution-grid-three article{
  padding-top:22px !important;
}

/* PROOF: i due numeri con lo stesso peso */
.dae-page .dae-proof-pair-v11{
  grid-template-columns:1fr 1fr !important;
  gap:22px !important;
}

.dae-page .dae-proof-pair-v11 > div{
  padding:18px 0 !important;
}

.dae-page .dae-proof-pair-v11 strong{
  font-size:1.55rem !important;
  line-height:1 !important;
}

.dae-page .dae-proof-pair-v11 span{
  max-width:230px;
}

/* CLOSING: meno vuoto e form più compatto */
@media (min-width:981px){
  .dae-page .dae-final-grid-v11{
    grid-template-columns:minmax(0,.96fr) minmax(500px,1.04fr) !important;
    gap:46px !important;
    align-items:start;
  }

  .dae-page .dae-final-grid-v11 form{
    padding:18px 20px !important;
  }

  .dae-page .dae-final-grid-v11 .oc-form-row{
    gap:10px !important;
  }

  .dae-page .dae-final-grid-v11 label{
    margin-bottom:8px !important;
  }

  .dae-page .dae-final-grid-v11 textarea{
    min-height:92px !important;
    height:92px !important;
  }

  .dae-page .dae-final-grid-v11 .dae-final-trust{
    margin-top:20px !important;
    padding:14px 15px !important;
    gap:5px !important;
  }
}

@media (max-width:980px){
  .dae-page .dae-compare-grid-v11{
    grid-template-columns:1fr !important;
  }

  .dae-page .dae-price-grid-fixed{
    grid-template-columns:1fr;
    gap:24px;
  }

  .dae-page .dae-price-right .dae-installation-photo img{
    height:auto;
    aspect-ratio:16/9;
  }

  .dae-page .dae-proof-pair-v11{
    grid-template-columns:1fr !important;
    gap:0 !important;
  }
}


/* =========================================================
   DAE V12 — RIFINITURA GRAFICA REALE
   ========================================================= */

/* 1) HERO: CTA secondaria sotto la principale */
.dae-page .dae-hero-cta-group-v12{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:10px !important;
  margin-top:18px !important;
}

.dae-page .dae-hero-cta-group-v12 .oc-primary{
  width:auto !important;
  max-width:100%;
}

.dae-page .dae-hero-cta-group-v12 .dae-secondary-cta{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  padding:0 0 3px !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  line-height:1.25 !important;
}

.dae-page .dae-hero-cta-group-v12 .dae-secondary-cta strong,
.dae-page .dae-hero-cta-group-v12 .dae-secondary-cta span{
  display:inline !important;
  margin:0 !important;
  font-size:.75rem !important;
}

.dae-page .dae-hero-cta-group-v12 .dae-secondary-cta strong{
  color:var(--dae-navy) !important;
  font-weight:700 !important;
}

.dae-page .dae-hero-cta-group-v12 .dae-secondary-cta span{
  color:var(--dae-blue) !important;
  font-weight:800 !important;
  border-bottom:1px solid #a9bdc8;
}

/* 2) CRITERI: 6 righe editoriali con micro-icone */
.dae-page .dae-consulting .oc-two{
  grid-template-columns:minmax(0,.9fr) minmax(470px,1.1fr) !important;
  gap:54px !important;
}

.dae-page .dae-compare-grid-v12{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:0 26px !important;
}

.dae-page .dae-compare-grid-v12 p{
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr);
  gap:11px;
  align-items:start;
  min-height:84px !important;
  padding:14px 0 !important;
  border-bottom:1px solid #d7e4e9 !important;
}

.dae-page .dae-criterion-icon{
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  margin-top:1px;
  border:1px solid #c7dce5;
  border-radius:50%;
  color:var(--dae-blue);
  background:#f5fafc;
}

.dae-page .dae-criterion-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.dae-page .dae-criterion-copy{
  display:block !important;
}

.dae-page .dae-criterion-copy strong,
.dae-page .dae-criterion-copy > span{
  display:block !important;
}

.dae-page .dae-criterion-copy strong{
  font-size:.84rem !important;
  line-height:1.2;
}

.dae-page .dae-criterion-copy > span{
  margin-top:4px !important;
  font-size:.74rem !important;
  line-height:1.4;
  color:#677b86;
}

/* 3) COSTO REALE: entrambe le colonne partono dallo stesso asse */
.dae-page .dae-price-grid-v12{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr) !important;
  gap:56px !important;
  align-items:start !important;
}

.dae-page .dae-price-grid-v12 .dae-price-copy-left,
.dae-page .dae-price-grid-v12 .dae-price-right{
  align-self:start !important;
}

.dae-page .dae-price-grid-v12 .dae-price-right{
  padding-top:0 !important;
}

.dae-page .dae-price-grid-v12 .dae-price-right .oc-copy{
  margin-top:0 !important;
}

.dae-page .dae-price-grid-v12 .dae-price-right .oc-copy > :first-child{
  margin-top:0 !important;
}

.dae-page .dae-price-grid-v12 .dae-installation-photo{
  margin-top:18px !important;
}

.dae-page .dae-price-grid-v12 .dae-installation-photo img{
  height:250px !important;
  object-position:center 48% !important;
}

/* 4) POST-ACQUISTO: nessuna falsa numerazione */
.dae-page .dae-solution-grid-three article > span:first-child{
  display:none !important;
}

.dae-page .dae-solution-grid-three article{
  padding-top:20px !important;
}

/* 5) Authority: headline meno dominante e cyan meno aggressivo */
.dae-page .dae-authority-head-v12{
  max-width:840px !important;
}

.dae-page .dae-authority-head-v12 h2{
  font-size:36px !important;
  line-height:1.05 !important;
}

.dae-page .dae-authority-head-v12 h2 span{
  color:#78d1f0 !important;
}

/* Stesso principio nel post-acquisto: accento, non mezzo titolo sparato */
.dae-page .dae-solution h2 span{
  color:#78d1f0 !important;
}

/* 6) CLOSING: form più basso e colonne più equilibrate */
@media (min-width:981px){
  .dae-page .dae-final-grid-v11{
    grid-template-columns:minmax(0,1fr) minmax(500px,1fr) !important;
    gap:48px !important;
    align-items:start !important;
  }

  .dae-page .dae-form-v12{
    gap:8px !important;
    padding:17px 20px 16px !important;
  }

  .dae-page .dae-form-v12 .oc-form-row{
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  .dae-page .dae-form-v12 label{
    margin-bottom:4px !important;
  }

  .dae-page .dae-form-v12 input,
  .dae-page .dae-form-v12 select{
    min-height:42px !important;
    height:42px !important;
  }

  .dae-page .dae-form-v12 textarea{
    min-height:78px !important;
    height:78px !important;
  }

  .dae-page .dae-form-v12 .oc-privacy{
    margin-top:2px !important;
    margin-bottom:2px !important;
  }

  .dae-page .dae-form-v12 .oc-submit{
    margin-top:2px !important;
  }

  .dae-page .dae-form-v12 .oc-form-note{
    margin:2px 0 0 !important;
  }

  .dae-page .dae-final-trust{
    margin-top:18px !important;
    padding:13px 14px !important;
    gap:4px !important;
  }

  .dae-page .oc-final{
    padding-top:42px !important;
    padding-bottom:42px !important;
  }
}

@media (max-width:980px){
  .dae-page .dae-consulting .oc-two{
    grid-template-columns:1fr !important;
  }

  .dae-page .dae-compare-grid-v12{
    grid-template-columns:1fr !important;
  }

  .dae-page .dae-price-grid-v12{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }

  .dae-page .dae-authority-head-v12 h2{
    font-size:32px !important;
  }
}


/* =========================================================
   DAE V13 — RIFINITURA DESKTOP FINALE
   ========================================================= */

/* HERO: prima riga non spezzata in modo casuale */
@media (min-width:981px){
  .dae-page .dae-hero-v10{
    grid-template-columns:minmax(0,.96fr) minmax(500px,1.04fr) !important;
  }

  .dae-page .dae-hero-v10 h1{
    font-size:44px !important;
    line-height:.99 !important;
  }

  .dae-page .dae-hero-line-one{
    white-space:nowrap;
    color:var(--dae-navy) !important;
  }

  .dae-page .dae-hero-cta-group-v12{
    width:100%;
    text-align:left !important;
  }

  .dae-page .dae-hero-cta-group-v12 .dae-secondary-cta{
    text-align:left !important;
    margin-left:0 !important;
    align-self:flex-start !important;
  }
}

/* Criteri: icone più leggibili e sezione appena più compatta */
.dae-page .dae-consulting{
  padding-top:40px !important;
  padding-bottom:40px !important;
}

.dae-page .dae-criterion-icon{
  border-color:#9fc3d2 !important;
  color:#087fb7 !important;
  background:#f4fafc !important;
}

.dae-page .dae-criterion-icon svg{
  stroke-width:1.9 !important;
}

/* COSTO REALE: bilanciamento delle due colonne */
.dae-page .dae-price-grid-v13,
.dae-page .dae-price-grid-v12{
  align-items:start !important;
}

.dae-page .dae-price-intro-v13{
  margin-top:20px;
  max-width:430px;
}

.dae-page .dae-price-intro-v13 p{
  margin:0;
  color:#5f737e;
  line-height:1.55;
}

.dae-page .dae-price-right .oc-copy{
  padding-top:0 !important;
}

.dae-page .dae-price-right .oc-section-close{
  margin-top:0 !important;
}

.dae-page .dae-price-grid-v12 .dae-installation-photo{
  margin-top:20px !important;
}

/* POST-ACQUISTO: microicone e card meno vuote */
.dae-page .dae-solution{
  padding-top:32px !important;
  padding-bottom:32px !important;
}

.dae-page .dae-solution-grid-three article{
  min-height:138px !important;
  padding:18px 18px 17px !important;
}

.dae-page .dae-service-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  margin-bottom:12px;
  border-radius:50%;
  background:rgba(120,209,240,.12);
  color:#78d1f0;
}

.dae-page .dae-service-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.dae-page .dae-solution-grid-three h3{
  margin-top:0 !important;
}

/* Authority: KPI come numeri, non titoli testuali */
.dae-page .dae-proof-pair-v13{
  align-items:start;
}

.dae-page .dae-proof-pair-v13 > div{
  padding-top:16px !important;
  padding-bottom:16px !important;
}

.dae-page .dae-proof-over{
  display:block;
  margin-bottom:4px;
  color:#8bd8f2;
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.16em;
}

.dae-page .dae-proof-pair-v13 strong{
  display:block;
  color:#58c8ed;
  font-size:2.15rem !important;
  line-height:.92 !important;
  letter-spacing:-.035em;
}

.dae-page .dae-proof-number-line{
  display:flex;
  align-items:flex-end;
  gap:8px;
}

.dae-page .dae-proof-unit{
  padding-bottom:2px;
  color:#58c8ed;
  font-size:.85rem;
  font-weight:900;
  letter-spacing:.045em;
}

.dae-page .dae-proof-caption{
  display:block;
  max-width:210px !important;
  margin-top:7px !important;
  color:#d2e0e7 !important;
  font-size:.72rem !important;
  line-height:1.35 !important;
}

/* FORM: textarea senza scrollbar iniziale + privacy perfettamente allineata */
.dae-page .dae-form-v13 textarea{
  min-height:100px !important;
  height:100px !important;
  overflow-y:auto;
}

.dae-page .dae-form-v13 .oc-privacy{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:8px !important;
  min-height:20px;
  margin:2px 0 3px !important;
}

.dae-page .dae-form-v13 .oc-privacy input[type="checkbox"]{
  display:block !important;
  flex:0 0 16px !important;
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  margin:0 !important;
  padding:0 !important;
}

.dae-page .dae-form-v13 .oc-privacy > span{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1.2 !important;
  font-size:.79rem !important;
  font-weight:400 !important;
}

/* Riduzione cyan: accento solo sulla chiusura delle headline */
.dae-page .dae-solution h2 span,
.dae-page .dae-reminders h2 span{
  color:#78d1f0 !important;
}

/* Mobile: la prima riga hero torna libera di andare a capo */
@media (max-width:980px){
  .dae-page .dae-hero-line-one{
    white-space:normal;
  }

  .dae-page .dae-price-intro-v13{
    max-width:none;
  }

  .dae-page .dae-proof-number-line{
    justify-content:flex-start;
  }
}


/* =========================================================
   DAE V14 — BLOCCO PREZZO / VALORE
   ========================================================= */

.dae-page .dae-price-copy-left h2{
  max-width:500px;
}

.dae-page .dae-price-intro-v13{
  max-width:480px !important;
}

.dae-page .dae-price-right .oc-section-close{
  max-width:520px;
  font-size:.94rem;
  line-height:1.55;
}

@media (min-width:981px){
  .dae-page .dae-price-grid-v13{
    grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr) !important;
    gap:54px !important;
  }
}


/* ==========================================================
   RIPRISTINO LANDING ONLINE — REGOLE CONDIVISE .olanding
   ========================================================== */
.olanding{
  --n:#073b59;
  --d:#062c45;
  --b:#0796d2;
  --c:#58c9ef;
  --m:#5d7583;
  --line:#d8e6ec;
  --ice:#eef8fb;
  --paper:#f7fafb;
  color:var(--n);
  background:#fff;
}
.olanding *{box-sizing:border-box}
.olanding h1,.olanding h2,.olanding h3,.olanding p{margin-top:0}
.olanding p{color:var(--m)}
.olanding .ol-eyebrow{
  margin:0 0 10px;
  color:var(--b);
  font-size:.72rem;
  line-height:1.25;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.olanding .ol-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:13px 18px;
  border:0;
  border-radius:5px;
  background:var(--b);
  color:#fff!important;
  text-decoration:none!important;
  font-size:.78rem;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.02em;
  transition:background .16s ease,transform .16s ease;
}
.olanding .ol-btn:hover,.olanding .ol-btn:focus-visible{
  background:var(--d);
  transform:translateY(-1px);
}
.olanding .ol-btn-light{
  background:#fff;
  color:var(--n)!important;
  border:1px solid rgba(255,255,255,.7);
}
.olanding .ol-btn-light:hover{background:#eaf7fb;color:var(--n)!important}

/* HERO */
.olanding .ol-hero{
  padding:34px 0 36px;
  background:linear-gradient(180deg,#eef8fb 0%,#f8fbfc 100%);
  border-bottom:1px solid var(--line);
}
.olanding .ol-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:42px;
  align-items:start;
}
.olanding .ol-hero h1{
  max-width:790px;
  margin:0;
  color:var(--n);
  font-size:clamp(2.55rem,4.2vw,4.15rem);
  line-height:1;
  letter-spacing:-.047em;
  font-weight:950;
}
.olanding .ol-hero h1 span{color:var(--b)}
.olanding .ol-lead{
  max-width:790px;
  margin:17px 0 0!important;
  color:var(--m);
  font-size:1rem;
  line-height:1.58;
}
.olanding .ol-lead strong{color:var(--n)}
.olanding .ol-quick{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:17px 0 0;
}
.olanding .ol-quick span{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:6px 9px;
  border:1px solid #bfd8e3;
  border-radius:4px;
  background:#fff;
  color:var(--n);
  font-size:.68rem;
  line-height:1.15;
  font-weight:900;
  letter-spacing:.045em;
}
.olanding .ol-hero .ol-btn{margin-top:17px}

/* OFFERTA */
.olanding .ol-offer{
  padding:23px 24px 22px;
  border:1px solid #c8dde6;
  border-radius:9px;
  background:#fff;
  box-shadow:0 14px 34px rgba(4,48,72,.07);
}
.olanding .ol-price-label{
  display:block;
  color:var(--b);
  font-size:.7rem;
  line-height:1.25;
  font-weight:950;
  letter-spacing:.075em;
}
.olanding .ol-price{
  display:flex;
  align-items:flex-end;
  gap:11px;
  margin:8px 0 3px;
}
.olanding .ol-price del{
  color:#7d909b;
  font-size:1rem;
  line-height:1.3;
}
.olanding .ol-price strong{
  color:var(--n);
  font-size:2.85rem;
  line-height:.95;
  letter-spacing:-.045em;
}
.olanding .ol-save{
  display:inline-block;
  margin:4px 0 8px;
  padding:5px 8px;
  border-radius:3px;
  background:#e8f7fc;
  color:#067aa9;
  font-size:.7rem;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.05em;
}
.olanding .ol-offer small{
  display:block;
  color:var(--m);
  font-size:.76rem;
  line-height:1.46;
}
.olanding .ol-offer .ol-btn{width:100%;margin-top:14px}
.olanding .ol-offer hr{
  margin:18px 0 14px;
  border:0;
  border-top:1px solid var(--line);
}
.olanding .ol-offer>strong{
  display:block;
  color:var(--n);
  font-size:.87rem;
  line-height:1.35;
}
.olanding .ol-offer>p{
  margin:6px 0 0!important;
  color:var(--m);
  font-size:.79rem;
  line-height:1.5;
}

/* FOTO / VISUAL */
.olanding .ol-real-visual{padding:18px 0 22px;background:#fff}
.olanding .ol-real-figure{
  position:relative;
  height:345px;
  margin:0;
  overflow:hidden;
  border-radius:8px;
  background:#dfe8ec;
}
.olanding .ol-real-figure img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.olanding .ol-real-figure::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(4,43,66,.80) 0%,rgba(4,43,66,.38) 46%,rgba(4,43,66,.03) 78%);
}
.olanding .ol-real-figure figcaption{
  position:absolute;
  z-index:2;
  left:28px;
  bottom:25px;
  width:min(520px,calc(100% - 56px));
  color:#fff;
}
.olanding .ol-real-figure figcaption span{
  display:block;
  margin-bottom:7px;
  color:#7adbf7;
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.085em;
}
.olanding .ol-real-figure figcaption strong{
  display:block;
  max-width:520px;
  font-size:1.55rem;
  line-height:1.15;
}

/* SEZIONI EDITORIALI */
.olanding .ol-problem,
.olanding .ol-audience,
.olanding .ol-included,
.olanding .ol-faq,
.olanding .ol-close{padding:34px 0}
.olanding .ol-problem{background:#f7fafb}
.olanding .ol-audience{background:#fff}
.olanding .ol-two{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:55px;
  align-items:start;
}
.olanding .ol-two h2,
.olanding .ol-included h2,
.olanding .ol-proof h2,
.olanding .ol-midcta h2,
.olanding .ol-faq h2,
.olanding .ol-close h2,
.olanding .ol-special h2,
.olanding .ol-group h2{
  margin:0;
  color:var(--n);
  font-size:clamp(1.85rem,2.8vw,2.8rem);
  line-height:1.07;
  letter-spacing:-.035em;
}
.olanding .ol-two>div>p:not(.ol-eyebrow){
  margin:12px 0 0!important;
  font-size:.94rem;
  line-height:1.58;
}
.olanding .ol-benefit-list{border-top:1px solid var(--line)}
.olanding .ol-benefit-list>div{
  display:grid;
  grid-template-columns:190px 1fr;
  gap:18px;
  padding:14px 0;
  border-bottom:1px solid var(--line);
}
.olanding .ol-benefit-list strong{
  color:var(--n);
  font-size:.88rem;
  line-height:1.35;
}
.olanding .ol-benefit-list p{
  margin:0!important;
  font-size:.82rem;
  line-height:1.5;
}
.olanding .ol-audience ul{
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid var(--line);
}
.olanding .ol-audience li{
  padding:13px 0;
  border-bottom:1px solid var(--line);
  color:var(--n);
  font-size:.9rem;
  font-weight:800;
}

/* BLOCCO SPECIALE / STEP */
.olanding .ol-special{
  padding:30px 0;
  background:#eef8fb;
}
.olanding .ol-special>.shell>p:not(.ol-eyebrow){
  max-width:850px;
  margin:11px 0 0!important;
  line-height:1.58;
}
.olanding .ol-steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:18px;
}
.olanding .ol-steps>div{
  padding:16px;
  border:1px solid #d4e4ea;
  border-radius:7px;
  background:#fff;
}
.olanding .ol-steps strong{
  display:block;
  color:var(--n);
  font-size:.88rem;
  line-height:1.32;
}
.olanding .ol-steps p{
  margin:6px 0 0!important;
  font-size:.76rem;
  line-height:1.48;
}

/* GRUPPI */
.olanding .ol-group{
  padding:22px 0;
  background:var(--n);
  color:#fff;
}
.olanding .ol-group-grid{
  display:grid;
  grid-template-columns:1fr auto;
  gap:34px;
  align-items:center;
}
.olanding .ol-group .ol-eyebrow{color:#79dcf8}
.olanding .ol-group h2{color:#fff;font-size:1.85rem}
.olanding .ol-group p{
  margin:7px 0 0!important;
  color:#d6e4ea;
  font-size:.88rem;
}

/* COSA COMPRENDE */
.olanding .ol-included{background:#fff}
.olanding .ol-included-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:18px;
}
.olanding .ol-included-grid>div{
  padding:16px;
  border:1px solid #d6e4ea;
  border-radius:7px;
  background:#f9fbfc;
}
.olanding .ol-included-grid strong{
  display:block;
  color:var(--n);
  font-size:.88rem;
  line-height:1.3;
}
.olanding .ol-included-grid p{
  margin:6px 0 0!important;
  font-size:.76rem;
  line-height:1.48;
}

/* PROVA */
.olanding .ol-proof{
  padding:28px 0;
  background:var(--n);
  color:#fff;
}
.olanding .ol-proof-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);
  gap:45px;
  align-items:center;
}
.olanding .ol-proof .ol-eyebrow{color:#79dcf8}
.olanding .ol-proof h2{color:#fff}
.olanding .ol-proof p{
  margin:9px 0 0!important;
  color:#d6e5eb;
  font-size:.86rem;
  line-height:1.5;
}
.olanding .ol-proof-grid>div:last-child{
  padding-left:28px;
  border-left:1px solid rgba(255,255,255,.24);
}
.olanding .ol-proof-grid>div:last-child span{
  display:block;
  color:#b9d5e0;
  font-size:.7rem;
  font-weight:850;
  letter-spacing:.07em;
}
.olanding .ol-proof-grid>div:last-child strong{
  display:block;
  color:#79dcf8;
  font-size:3.7rem;
  line-height:.95;
  letter-spacing:-.05em;
}

/* CTA INTERMEDIA */
.olanding .ol-midcta{
  padding:18px 0;
  background:#eef8fb;
  border-top:1px solid #d9eaf0;
  border-bottom:1px solid #d9eaf0;
}
.olanding .ol-midcta-grid{
  display:grid;
  grid-template-columns:1fr auto;
  gap:35px;
  align-items:center;
}
.olanding .ol-midcta h2{font-size:1.85rem}
.olanding .ol-midcta h2 span{color:var(--b)}
.olanding .ol-midcta p{
  margin:6px 0 0!important;
  font-size:.83rem;
}

/* FAQ */
.olanding .ol-faq{background:#fff}
.olanding .ol-faq-grid{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:55px;
  align-items:start;
}
.olanding .ol-faq-grid>div:last-child{border-top:1px solid var(--line)}
.olanding .ol-faq details{
  margin:0;
  border-bottom:1px solid var(--line);
}
.olanding .ol-faq summary{
  cursor:pointer;
  list-style:none;
  padding:13px 30px 13px 0;
  color:var(--n);
  font-size:.9rem;
  line-height:1.35;
  font-weight:850;
}
.olanding .ol-faq summary::-webkit-details-marker{display:none}
.olanding .ol-faq details p{
  margin:0 0 13px!important;
  color:var(--m);
  font-size:.82rem;
  line-height:1.52;
}

/* CHIUSURA */
.olanding .ol-close{background:#eef8fb}
.olanding .ol-close-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:45px;
  align-items:center;
}
.olanding .ol-close h2 span{color:var(--b)}
.olanding .ol-close>.shell>div:first-child>p:not(.ol-eyebrow){
  margin:9px 0 0!important;
  font-size:.86rem;
}
.olanding .ol-close-action{
  padding:20px 22px;
  border:1px solid #c7dde6;
  border-radius:8px;
  background:#fff;
}
.olanding .ol-close-action .ol-btn{
  width:100%;
  margin-top:13px;
}
.olanding .ol-wa{
  display:block;
  margin-top:12px;
  color:var(--n);
  font-size:.72rem;
  line-height:1.4;
  font-weight:850;
  text-align:center;
  text-decoration:none;
}

@media(max-width:980px){
  .olanding .ol-hero-grid,
  .olanding .ol-two,
  .olanding .ol-proof-grid,
  .olanding .ol-faq-grid,
  .olanding .ol-close-grid{grid-template-columns:1fr}
  .olanding .ol-hero-grid{gap:25px}
  .olanding .ol-offer{max-width:520px}
  .olanding .ol-steps,
  .olanding .ol-included-grid{grid-template-columns:1fr 1fr}
  .olanding .ol-proof-grid>div:last-child{
    padding:20px 0 0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.24);
  }
}
@media(max-width:760px){
  .olanding .ol-hero{padding:27px 0 30px}
  .olanding .ol-hero h1{font-size:2.3rem}
  .olanding .ol-problem,
  .olanding .ol-audience,
  .olanding .ol-included,
  .olanding .ol-faq,
  .olanding .ol-close{padding:28px 0}
  .olanding .ol-real-figure{height:280px}
  .olanding .ol-benefit-list>div{grid-template-columns:1fr;gap:5px}
  .olanding .ol-steps,
  .olanding .ol-included-grid,
  .olanding .ol-group-grid,
  .olanding .ol-midcta-grid{grid-template-columns:1fr}
  .olanding .ol-faq-grid{gap:20px}
  .olanding .ol-close-grid{gap:24px}
}


/* ==========================================================
   RIPRISTINO HUB FORMAZIONE ONLINE — .ohub
   ========================================================== */
.ohub{
  --oh-n:#073b59;
  --oh-d:#062c45;
  --oh-b:#0796d2;
  --oh-c:#58c9ef;
  --oh-m:#5d7583;
  --oh-line:#d8e6ec;
  color:var(--oh-n);
}
.ohub *{box-sizing:border-box}
.ohub h1,.ohub h2,.ohub h3,.ohub p{margin-top:0}
.ohub .ohub-eyebrow{
  margin:0 0 9px;
  color:var(--oh-b);
  font-size:.71rem;
  font-weight:950;
  line-height:1.2;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.ohub .ohub-btn,
.ohub .ohub-form button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:45px;
  padding:12px 17px;
  border:0;
  border-radius:5px;
  background:var(--oh-b);
  color:#fff!important;
  text-decoration:none!important;
  font:inherit;
  font-size:.77rem;
  font-weight:900;
  cursor:pointer;
}
.ohub .ohub-link,
.ohub .ohub-whatsapp{
  color:var(--oh-n);
  font-size:.8rem;
  font-weight:850;
  text-decoration:none;
  border-bottom:1px solid #9eb6c2;
  padding-bottom:3px;
}
.ohub .ohub-hero{
  padding:40px 0;
  background:linear-gradient(180deg,#eef8fb 0%,#f8fbfc 100%);
  border-bottom:1px solid var(--oh-line);
}
.ohub .ohub-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:42px;
  align-items:center;
}
.ohub .ohub-hero h1{
  margin:0;
  color:var(--oh-n);
  font-size:clamp(2.7rem,4.3vw,4.2rem);
  line-height:1;
  letter-spacing:-.047em;
}
.ohub .ohub-hero h1 span{color:var(--oh-b)}
.ohub .ohub-lead{
  max-width:760px;
  margin:16px 0 0;
  color:var(--oh-m);
  font-size:1rem;
  line-height:1.58;
}
.ohub .ohub-actions{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  margin-top:20px;
}
.ohub .ohub-fast{
  padding:22px 24px;
  border:1px solid #c8dde6;
  border-radius:9px;
  background:#fff;
  box-shadow:0 13px 30px rgba(4,48,72,.06);
}
.ohub .ohub-fast>strong{
  display:block;
  margin-bottom:8px;
  color:var(--oh-n);
  font-size:.78rem;
  letter-spacing:.055em;
}
.ohub .ohub-fast>span{
  display:block;
  padding:10px 0;
  border-top:1px solid #e1ebef;
  color:var(--oh-m);
  font-size:.84rem;
}
.ohub .ohub-how{
  padding:24px 0;
  background:#fff;
  border-bottom:1px solid var(--oh-line);
}
.ohub .ohub-how-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
}
.ohub .ohub-how-grid>div{
  padding:15px;
  background:#f7fafb;
  border:1px solid #d8e6ec;
  border-radius:7px;
}
.ohub .ohub-how-grid span{
  color:var(--oh-b);
  font-size:.68rem;
  font-weight:900;
}
.ohub .ohub-how-grid strong{
  display:block;
  margin-top:4px;
  color:var(--oh-n);
  font-size:.87rem;
}
.ohub .ohub-how-grid p{
  margin:5px 0 0;
  color:var(--oh-m);
  font-size:.75rem;
  line-height:1.45;
}
.ohub .ohub-catalog{padding:38px 0;background:#f7fafb}
.ohub .ohub-head h2{
  margin:0;
  color:var(--oh-n);
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.06;
  letter-spacing:-.035em;
}
.ohub .ohub-head h2 span{color:var(--oh-b)}
.ohub .ohub-urgency{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:22px;
  align-items:center;
  margin:20px 0;
  padding:16px 18px;
  border:1px solid #cfe1e8;
  border-radius:8px;
  background:#fff;
}
.ohub .ohub-urgency-label span,
.ohub .ohub-urgency-label strong{display:block}
.ohub .ohub-urgency-label span{
  color:var(--oh-b);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.08em;
}
.ohub .ohub-urgency-label strong{
  margin-top:3px;
  color:var(--oh-n);
  font-size:1.05rem;
}
.ohub .ohub-urgency-copy>strong{
  color:var(--oh-n);
  font-size:.9rem;
}
.ohub .ohub-urgency-copy p{
  margin:4px 0 0;
  color:var(--oh-m);
  font-size:.82rem;
  line-height:1.5;
}
.ohub .ohub-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.ohub .ohub-card{
  display:flex;
  flex-direction:column;
  min-height:265px;
  padding:18px;
  border:1px solid #d4e3e9;
  border-radius:8px;
  background:#fff;
}
.ohub .ohub-card.ohub-featured{
  border-color:#a8d5e5;
  box-shadow:0 10px 24px rgba(5,75,106,.06);
}
.ohub .ohub-kicker{
  margin:0;
  color:var(--oh-b);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.065em;
}
.ohub .ohub-card h3{
  margin:8px 0;
  color:var(--oh-n);
  font-size:1.12rem;
  line-height:1.25;
}
.ohub .ohub-card>p:not(.ohub-kicker){
  margin:0;
  color:var(--oh-m);
  font-size:.79rem;
  line-height:1.48;
}
.ohub .ohub-price{
  display:flex;
  align-items:baseline;
  gap:8px;
  margin-top:auto;
  padding-top:15px;
}
.ohub .ohub-price span{
  color:var(--oh-b);
  font-size:.64rem;
  font-weight:900;
}
.ohub .ohub-price del{
  color:#899aa3;
  font-size:.82rem;
}
.ohub .ohub-price strong{
  color:var(--oh-n);
  font-size:1.4rem;
}
.ohub .ohub-card>a{
  margin-top:10px;
  color:var(--oh-n);
  font-size:.74rem;
  font-weight:900;
  text-decoration:none;
}
.ohub .ohub-secondary{
  padding:24px 0;
  background:#fff;
  border-bottom:1px solid var(--oh-line);
}
.ohub .ohub-secondary-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.ohub .ohub-secondary-grid>a{
  padding:15px 16px;
  border:1px solid #d5e4ea;
  border-radius:7px;
  background:#f8fbfc;
  text-decoration:none;
}
.ohub .ohub-secondary-grid span,
.ohub .ohub-secondary-grid em,
.ohub .ohub-secondary-grid strong{display:block}
.ohub .ohub-secondary-grid span{
  color:var(--oh-n);
  font-size:.82rem;
  font-weight:850;
}
.ohub .ohub-secondary-grid em{
  margin-top:4px;
  color:var(--oh-b);
  font-size:.66rem;
  font-style:normal;
  font-weight:900;
}
.ohub .ohub-secondary-grid strong{
  margin-top:4px;
  color:var(--oh-m);
  font-size:.75rem;
}
.ohub .ohub-proof{
  padding:28px 0;
  background:var(--oh-n);
  color:#fff;
}
.ohub .ohub-proof-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:42px;
  align-items:center;
}
.ohub .ohub-proof .ohub-eyebrow{color:#79dcf8}
.ohub .ohub-proof h2{margin:0;color:#fff;font-size:2rem}
.ohub .ohub-proof p{
  margin:7px 0 0;
  color:#d5e5eb;
  font-size:.84rem;
}
.ohub .ohub-proof-grid>div:last-child{
  padding-left:26px;
  border-left:1px solid rgba(255,255,255,.24);
}
.ohub .ohub-proof-grid>div:last-child span{
  display:block;
  color:#bdd6e0;
  font-size:.69rem;
  font-weight:850;
}
.ohub .ohub-proof-grid>div:last-child strong{
  display:block;
  color:#79dcf8;
  font-size:3.6rem;
  line-height:.95;
}
.ohub .ohub-bundle,
.ohub .ohub-ecm,
.ohub .ohub-help{padding:30px 0}
.ohub .ohub-bundle{background:#eef8fb}
.ohub .ohub-bundle-grid,
.ohub .ohub-ecm-grid,
.ohub .ohub-help-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:45px;
  align-items:start;
}
.ohub .ohub-bundle h2,
.ohub .ohub-ecm h2,
.ohub .ohub-help h2{
  margin:0;
  color:var(--oh-n);
  font-size:2rem;
  line-height:1.08;
}
.ohub .ohub-bundle h2 span,
.ohub .ohub-help h2 span{color:var(--oh-b)}
.ohub .ohub-bundle-offer{
  padding:19px;
  border:1px solid #c9e0e9;
  border-radius:8px;
  background:#fff;
}
.ohub .ohub-bundle-main,
.ohub .ohub-bundle-free{
  display:block;
  color:var(--oh-n);
  font-size:.9rem;
}
.ohub .ohub-bundle-free{margin-top:5px;color:var(--oh-b)}
.ohub .ohub-bundle-offer p{
  margin:9px 0 0;
  color:var(--oh-m);
  font-size:.8rem;
  line-height:1.48;
}
.ohub .ohub-bundle-offer a{
  display:inline-block;
  margin-top:10px;
  color:var(--oh-n);
  font-size:.74rem;
  font-weight:900;
  text-decoration:none;
}
.ohub .ohub-ecm{background:#fff;border-bottom:1px solid var(--oh-line)}
.ohub .ohub-ecm-grid{grid-template-columns:1fr auto;align-items:center}
.ohub .ohub-ecm p,
.ohub .ohub-help p{
  margin:7px 0 0;
  color:var(--oh-m);
  font-size:.84rem;
}
.ohub .ohub-help{background:#f7fafb}
.ohub .ohub-form{
  padding:21px;
  border:1px solid #ccdee6;
  border-radius:8px;
  background:#fff;
}
.ohub .ohub-form label{
  display:block;
  margin-bottom:11px;
}
.ohub .ohub-form label>span{
  display:block;
  margin-bottom:5px;
  color:var(--oh-n);
  font-size:.73rem;
  font-weight:850;
}
.ohub .ohub-form input,
.ohub .ohub-form select{
  width:100%;
  min-height:42px;
  padding:9px 10px;
  border:1px solid #bdd1da;
  border-radius:5px;
  background:#fff;
  font:inherit;
}
.ohub .ohub-form .ohub-privacy{
  display:flex;
  align-items:flex-start;
  gap:8px;
}
.ohub .ohub-form .ohub-privacy input{
  width:auto;
  min-height:0;
  margin-top:2px;
}
.ohub .ohub-hp{
  position:absolute!important;
  left:-9999px!important;
}
.ohub .ohub-error{
  padding:10px;
  border-left:3px solid #b84d4d;
  background:#fff2f2;
  color:#8f3030;
  font-size:.8rem;
}
.ohub .ohub-success strong{color:var(--oh-n)}

@media(max-width:980px){
  .ohub .ohub-hero-grid,
  .ohub .ohub-proof-grid,
  .ohub .ohub-bundle-grid,
  .ohub .ohub-help-grid{grid-template-columns:1fr}
  .ohub .ohub-how-grid,
  .ohub .ohub-grid{grid-template-columns:1fr 1fr}
  .ohub .ohub-secondary-grid{grid-template-columns:1fr}
  .ohub .ohub-fast{max-width:600px}
  .ohub .ohub-proof-grid>div:last-child{
    padding:18px 0 0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.24);
  }
}
@media(max-width:650px){
  .ohub .ohub-hero{padding:30px 0}
  .ohub .ohub-hero h1{font-size:2.35rem}
  .ohub .ohub-how-grid,
  .ohub .ohub-grid{grid-template-columns:1fr}
  .ohub .ohub-urgency{grid-template-columns:1fr;gap:8px}
  .ohub .ohub-ecm-grid{grid-template-columns:1fr}
}
