/* ============================================================
   SUBPAGES MASTER — V5.6.25
   Applies only to pages carrying body.subpage-master.
   Agenda/prenotazione is intentionally excluded.
   ============================================================ */

body.subpage-master main{
  padding-top:110px;
  padding-bottom:78px;
}

body.subpage-master main.inner-page{
  min-height:0;
  padding:110px 0 78px;
  background:var(--white);
}

body.subpage-master .container.narrow{
  max-width:900px;
}

body.subpage-master .inner-hero{
  padding:0;
  margin:0 0 52px;
  background:transparent;
  border:0;
}

body.subpage-master .inner-page .back-link{
  margin-bottom:28px;
}

body.subpage-master .section-heading{
  margin:0 auto 52px;
}



body.subpage-master .info-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:0;
}

body.subpage-master .info-card{
  min-height:170px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 2px 0 rgba(2,20,45,.02);
}

body.subpage-master .info-card b{
  display:block;
  color:var(--ink);
  font-size:19px;
  line-height:1.25;
}

body.subpage-master .info-card span{
  display:block;
  margin-top:9px;
  color:var(--muted);
  line-height:1.6;
}

body.subpage-master .info-card p,
body.subpage-master .info-card ul{
  color:var(--muted);
  line-height:1.65;
}

body.subpage-master .prevention-general-stat{
  margin-bottom:24px;
  padding:30px 34px;
  border:1px solid #e8dfcb;
  border-radius:18px;
  background:var(--cream);
}

body.subpage-master .prevention-general-stat strong{
  display:block;
  color:var(--ink);
  font-size:25px;
  line-height:1.3;
}

body.subpage-master .prevention-general-stat small{
  display:block;
  margin-top:14px;
  color:var(--muted);
}

body.subpage-master .prevention-stat-list{
  display:flex;
  flex-direction:column;
  gap:22px;
}

body.subpage-master .prevention-stat-row{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);
  gap:18px;
  align-items:stretch;
}

body.subpage-master .prevention-stat-row .info-card{
  min-height:0;
}

body.subpage-master .prevention-meta{
  margin-top:14px;
  color:var(--muted);
  line-height:1.65;
}

body.subpage-master .prevention-stat{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:30px;
  border:1px solid #e8dfcb;
  border-radius:18px;
  background:var(--cream);
}

body.subpage-master .prevention-stat strong{
  color:var(--ink);
  font-size:24px;
  line-height:1.25;
}

body.subpage-master .prevention-stat small{
  display:block;
  margin-top:18px;
  color:var(--muted);
  line-height:1.45;
}

body.subpage-master .prevention-stat .eyebrow{
  margin-bottom:14px;
}

body.subpage-master .prevention-tests{
  margin-bottom:0;
}

body.subpage-master .benefit-panel{
  margin-top:24px;
  padding:38px;
  border-radius:18px;
  background:var(--cream);
  border:1px solid #e8dfcb;
}

body.subpage-master .page-cta{
  margin-top:34px;
  margin-bottom:0;
  padding:34px;
  border-radius:18px;
  background:var(--navy-900);
  color:#fff;
}

body.subpage-master .page-cta h2{
  color:#fff;
}

body.subpage-master .page-cta p{
  color:#d5e1ee;
  max-width:760px;
}

body.subpage-master .cta-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:22px;
}

body.subpage-master .page-info-cta{
  margin:34px 0 22px;
  padding:30px 34px;
  background:#f7f1e3;
  border:1px solid #e8dfcb;
  border-radius:22px;
}

body.subpage-master .page-info-cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:20px;
}

body.subpage-master .button{
  border-radius:12px;
}

body.subpage-master .button-gold{
  background:var(--gold);
  color:var(--ink);
}

body.subpage-master .button-glass{
  border-color:#ffffff88;
  background:#00152a70;
  color:#fff;
}

/* The “Possiamo aiutarti…” page keeps its approved icon-led list,
   but inherits the same spacing, surfaces and typography rhythm. */
body.subpage-master .situations-intro{
  max-width:900px;
  margin:0 auto 34px;
}

body.subpage-master .situations-list{
  display:flex;
  flex-direction:column;
  gap:0;
  margin:0;
}

body.subpage-master .situation-topic{
  display:grid;
  grid-template-columns:62px minmax(0,1fr);
  gap:20px;
  align-items:start;
  padding:24px 0;
  border-top:1px solid var(--line);
}

body.subpage-master .situation-topic:last-child{
  border-bottom:1px solid var(--line);
}

body.subpage-master .situation-topic-icon{
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  background:#fff;
  font-size:25px;
}

body.subpage-master .situation-topic-content h2{
  margin:0 0 7px;
  font-size:22px;
  line-height:1.2;
}

body.subpage-master .situation-topic-content p{
  margin:0;
  color:var(--muted);
  line-height:1.6;
}

body.subpage-master .situations-solution-panel,
body.subpage-master .situations-distance-panel{
  margin-top:34px;
}

/* Footer is global; these rules only normalize spacing around it. */
body.subpage-master .simple-footer{
  margin-top:0;
}

/* Desktop: keep actions compact rather than forcing every button wide. */
@media (min-width:769px){
  body.subpage-master .cta-row .button,
  body.subpage-master .page-info-cta-actions .button{
    width:auto;
  }
}

/* Mobile */
@media (max-width:768px){
  body.subpage-master .prevention-stat-row{
    grid-template-columns:1fr;
  }

  body.subpage-master .prevention-stat{
    padding:24px;
  }

  body.subpage-master .prevention-stat strong{
    font-size:21px;
  }


  body.subpage-master main,
  body.subpage-master main.inner-page{
    padding:86px 0 58px;
  }

  body.subpage-master .inner-hero{
    margin-bottom:38px;
  }

  body.subpage-master .section-heading{
    margin-bottom:38px;
  }

  body.subpage-master .info-list{
    grid-template-columns:1fr;
    gap:14px;
  }

  body.subpage-master .info-card{
    min-height:auto;
    padding:23px;
  }

  body.subpage-master .benefit-panel,
  body.subpage-master .page-cta{
    padding:27px;
    border-radius:16px;
  }

  body.subpage-master .situation-topic{
    grid-template-columns:48px minmax(0,1fr);
    gap:14px;
    padding:20px 0;
  }

  body.subpage-master .situation-topic-icon{
    width:46px;
    height:46px;
    font-size:21px;
  }

  body.subpage-master .situation-topic-content h2{
    font-size:20px;
  }

  body.subpage-master .cta-row,
  body.subpage-master .page-info-cta-actions{
    flex-direction:column;
    align-items:stretch;
  }

  body.subpage-master .cta-row .button,
  body.subpage-master .page-info-cta-actions .button{
    width:100%;
  }
}

/* P3 intermediate — Services content sections */
body.subpage-master .service-section{
  margin-top:52px;
}
body.subpage-master .service-section h2{
  margin:0 0 28px;
  max-width:900px;
}
body.subpage-master .service-section .info-list{
  margin-top:0;
}

/* P3 intermediate — footer contact actions */
body.subpage-master .footer-actions{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
body.subpage-master .footer-actions .button{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 14px;
  font-size:13px;
}
@media (max-width:768px){
  body.subpage-master .footer-actions{
    width:100%;
  }
  body.subpage-master .footer-actions .button{
    flex:1 1 140px;
  }
}
/* V5.6.37 – Situazioni: cards are direct navigation links */
body.subpage-master a.situation-topic{
  display:flex;
  text-decoration:none;
  color:inherit;
  cursor:pointer;
}
body.subpage-master a.situation-topic:hover,
body.subpage-master a.situation-topic:focus-visible{
  text-decoration:none;
}

/* ============================================================
   V5.6.38 — Pagina Gestione della Miopia
   ============================================================ */
body.subpage-master.miopia-page .miopia-section{margin:58px 0}
body.subpage-master.miopia-page .miopia-hero{margin-bottom:58px}
body.subpage-master.miopia-page .miopia-hero-visual{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:42px;align-items:center}
body.subpage-master.miopia-page .miopia-hero-copy{max-width:690px}
body.subpage-master.miopia-page .miopia-hero-image{margin:0;min-height:430px;border-radius:24px;overflow:hidden;background:#e8edf0;box-shadow:0 16px 38px rgba(2,20,45,.10)}
body.subpage-master.miopia-page .miopia-hero-image img{display:block;width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center}
body.subpage-master.miopia-page .miopia-breath-image{margin:58px 0;border-radius:22px;overflow:hidden;background:#eef2ef;box-shadow:0 12px 32px rgba(2,20,45,.08)}
body.subpage-master.miopia-page .miopia-breath-image img{display:block;width:100%;height:360px;object-fit:cover;object-position:center}
body.subpage-master.miopia-page .miopia-breath-image figcaption{padding:15px 22px 17px;color:var(--muted);font-size:14px;line-height:1.5;background:#fff}
body.subpage-master.miopia-page .miopia-lead{font-size:22px;line-height:1.45;color:var(--ink);max-width:780px}
body.subpage-master.miopia-page .miopia-grid{display:grid;gap:18px;margin-top:28px}
body.subpage-master.miopia-page .miopia-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
body.subpage-master.miopia-page .miopia-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
body.subpage-master.miopia-page .miopia-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
body.subpage-master.miopia-page .miopia-mini-card,.miopia-page .miopia-info-card,.miopia-page .miopia-detail{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 2px 0 rgba(2,20,45,.02)}
body.subpage-master.miopia-page .miopia-mini-card{min-height:132px;padding:24px}
body.subpage-master.miopia-page .miopia-mini-card b{display:block;font-size:15px;letter-spacing:.06em;color:var(--ink)}
body.subpage-master.miopia-page .miopia-mini-card span{display:block;margin-top:11px;color:var(--muted);line-height:1.5}
body.subpage-master.miopia-page .miopia-quote{margin:28px 0 0;padding:24px 28px;border-left:4px solid var(--gold);background:var(--cream);font-size:22px;line-height:1.35;font-weight:700;color:var(--ink)}
body.subpage-master.miopia-page .miopia-detail{padding:0;overflow:hidden}
body.subpage-master.miopia-page .miopia-detail summary{list-style:none;cursor:pointer;padding:26px;display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center}
body.subpage-master.miopia-page .miopia-detail summary::-webkit-details-marker{display:none}
body.subpage-master.miopia-page .miopia-detail summary > span{font-size:24px}
body.subpage-master.miopia-page .miopia-detail summary b{font-size:17px;line-height:1.3}
body.subpage-master.miopia-page .miopia-detail summary small{color:var(--muted)}
body.subpage-master.miopia-page .miopia-detail p{margin:0;padding:0 26px 26px;color:var(--muted);line-height:1.65}
body.subpage-master.miopia-page .evidence-scale{display:grid;gap:14px;margin-top:28px}
body.subpage-master.miopia-page .evidence-card{padding:26px 28px;border:1px solid var(--line);border-radius:18px;background:#fff}
body.subpage-master.miopia-page .evidence-card h3{margin:0 0 10px;font-size:17px;letter-spacing:.02em}
body.subpage-master.miopia-page .evidence-card p{margin:8px 0;color:var(--muted);line-height:1.6}
body.subpage-master.miopia-page .evidence-card strong{line-height:1.55}
body.subpage-master.miopia-page .evidence-green{border-left:5px solid #3e8b62}.miopia-page .evidence-blue{border-left:5px solid #4b82a9}.miopia-page .evidence-yellow{border-left:5px solid #c89b2d}.miopia-page .evidence-red{border-left:5px solid #b65b57}
body.subpage-master.miopia-page .science-note{display:grid;gap:7px;margin-top:18px;padding:17px 19px;border-radius:12px;background:#f5f8f6;border:1px solid #dce8df;font-size:14px;line-height:1.55;color:var(--muted)}
body.subpage-master.miopia-page .science-note b{color:var(--ink)}
body.subpage-master.miopia-page .inline-detail{margin-top:18px}.miopia-page .inline-detail summary{cursor:pointer;font-weight:700;color:var(--ink)}.miopia-page .inline-detail p{margin-top:12px}
body.subpage-master.miopia-page .miopia-emphasis{font-size:20px;font-weight:700;color:var(--ink)}
body.subpage-master.miopia-page .miopia-manifesto{display:grid;gap:8px;margin-top:26px;padding:28px;border-radius:18px;background:var(--navy-900);color:#fff}
body.subpage-master.miopia-page .miopia-manifesto strong{font-size:25px}.miopia-page .miopia-manifesto span{color:#d5e1ee;font-size:18px}
body.subpage-master.miopia-page .miopia-info-card{padding:26px;min-height:280px}.miopia-page .miopia-info-card h3{font-size:17px;margin:12px 0}.miopia-page .miopia-info-card p{color:var(--muted);line-height:1.6}.miopia-page .miopia-info-card small{display:block;margin-top:14px;color:var(--muted);line-height:1.55}.miopia-page .miopia-icon{font-size:30px}
body.subpage-master.miopia-page .miopia-question-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.miopia-page .miopia-question-pair span{padding:18px 20px;border-radius:14px;background:#fff;border:1px solid #e8dfcb;color:var(--muted)}.miopia-page .miopia-question-pair strong{display:block;margin-top:8px;color:var(--ink);font-size:20px;line-height:1.3}
body.subpage-master.miopia-page .science-inline{margin-top:18px;padding-top:18px;border-top:1px solid #e8dfcb;color:var(--muted)}
body.subpage-master.miopia-page .miopia-path{margin:58px 0;padding:30px;border:1px solid #e8dfcb;border-radius:18px;background:var(--cream);display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.miopia-page .miopia-path div{display:grid;text-align:center;gap:5px}.miopia-page .miopia-path b{font-size:12px;color:var(--gold)}.miopia-page .miopia-path span{font-weight:700;font-size:14px;letter-spacing:.03em}.miopia-page .miopia-path i{font-style:normal;color:var(--gold-text);font-size:20px}.miopia-page .miopia-path p{width:100%;text-align:center;margin:12px 0 0;color:var(--muted)}
body.subpage-master.miopia-page .miopia-references{margin-top:30px}.miopia-page .miopia-references details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.miopia-page .miopia-references summary{cursor:pointer;font-weight:700;letter-spacing:.02em}.miopia-page .miopia-references details>div{padding-top:14px;color:var(--muted);line-height:1.65}.miopia-page .miopia-references li{margin:8px 0}.miopia-page .reference-note{font-size:14px}
@media(max-width:768px){
 body.subpage-master.miopia-page .miopia-section{margin:42px 0}
 body.subpage-master.miopia-page .miopia-hero-visual{grid-template-columns:1fr;gap:28px}
 body.subpage-master.miopia-page .miopia-hero-image{min-height:300px;border-radius:20px}
 body.subpage-master.miopia-page .miopia-hero-image img{min-height:300px}
 body.subpage-master.miopia-page .miopia-breath-image{margin:42px 0;border-radius:18px}
 body.subpage-master.miopia-page .miopia-breath-image img{height:250px}
 body.subpage-master.miopia-page .miopia-grid-4,body.subpage-master.miopia-page .miopia-grid-3,body.subpage-master.miopia-page .miopia-grid-2{grid-template-columns:1fr}
 body.subpage-master.miopia-page .miopia-info-card{min-height:auto}
 body.subpage-master.miopia-page .miopia-question-pair{grid-template-columns:1fr}
 body.subpage-master.miopia-page .miopia-quote{font-size:19px;padding:21px}
 body.subpage-master.miopia-page .miopia-detail summary{grid-template-columns:30px 1fr}
 body.subpage-master.miopia-page .miopia-detail summary small{grid-column:2}
 body.subpage-master.miopia-page .miopia-path{gap:8px;padding:24px 15px}.miopia-page .miopia-path i{font-size:15px}
}


/* ZENO Editorial Image Family — V5.6.40 */
.page-editorial-image{margin:0 0 42px;border-radius:22px;overflow:hidden;background:#eef2ef;box-shadow:0 14px 34px rgba(2,20,45,.09)}
.page-editorial-image img{display:block;width:100%;height:360px;object-fit:cover;object-position:center}
.page-editorial-image figcaption{padding:14px 20px 16px;background:#fff;color:var(--muted);font-size:14px;line-height:1.5}
.page-editorial-image--compact img{height:300px}
@media(max-width:760px){.page-editorial-image{margin:0 0 32px;border-radius:18px}.page-editorial-image img,.page-editorial-image--compact img{height:230px}.page-editorial-image figcaption{padding:12px 16px 14px;font-size:13px}}



/* Se un'etichetta è collocata su una superficie scura, resta oro brand. */
.subpage-master .dark-bg .eyebrow,
.subpage-master .dark-bg .section-kicker,
.subpage-master .dark-bg .kicker,
.subpage-master .dark-bg .label,
.subpage-master .dark-bg .hero-label,
.subpage-master .dark-bg .page-label {
  color: var(--gold);
}


/* ACCESSIBILITÀ — testo oro su superfici chiare */
.subpage-master .section-kicker,
.subpage-master .kicker,
.subpage-master .label,
.subpage-master .analysis-number,
.subpage-master .page-label {
  color: var(--gold-text);
}

.subpage-master.miopia-page .miopia-path b {
  color: var(--gold-text);
}

/* V5.6.87 — Esami diagnostici: sistema editoriale ibrido */

body.subpage-master .diagnostic-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 42px;
  margin-top:0;
}

body.subpage-master .diagnostic-item{
  min-height:0;
  padding:27px 0 25px;
  border:0;
  border-bottom:1px solid var(--line);
  background:transparent;
  box-shadow:none;
}

body.subpage-master .diagnostic-item b{
  display:block;
  color:var(--ink);
  font-size:19px;
  line-height:1.3;
}

body.subpage-master .diagnostic-item span{
  display:block;
  margin-top:8px;
  color:var(--muted);
  line-height:1.6;
}

@media(max-width:760px){
  body.subpage-master .diagnostic-list{
    grid-template-columns:1fr;
    gap:0;
  }
  body.subpage-master .diagnostic-item{
    padding:24px 0;
  }
}
