/*
 * UP Assicurazioni — UX pagine interne, bozza 2026-10-16.
 * Solo template page.php; homepage, header, footer, contenuti e form esclusi.
 */
body.up-approved .up-main .up-hero{
  background:linear-gradient(112deg,#eaf6fc 0%,#f7fbfe 61%,#fff 100%);
  border-bottom:1px solid rgba(1,108,174,.18);
}
body.up-approved .up-main .up-hero-copy{
  max-width:1000px;
  padding-top:30px;
  padding-bottom:45px;
}
body.up-approved .up-main .up-breadcrumb{
  gap:10px;
  font-size:12px;
  line-height:1.55;
}
body.up-approved .up-main .up-eyebrow{
  color:var(--up-blue);
  font-size:11px;
  letter-spacing:.13em;
}
body.up-approved .up-main .up-hero-lead{
  max-width:870px;
  font-size:16px;
  line-height:1.75;
  text-wrap:pretty;
}
body.up-approved .up-main .up-body-layout{
  align-items:start;
  padding-top:44px;
  padding-bottom:62px;
}
body.up-approved .up-main .up-body-layout--no-index{
  display:block;
  width:min(1080px,calc(100% - 72px));
}
body.up-approved .up-main .up-body-layout--no-index>.up-content-body{
  width:100%;
  max-width:960px;
  margin-inline:auto;
}
body.up-approved .up-main .up-content-body{
  min-width:0;
  width:100%;
  max-width:930px;
}
body.up-approved .up-main .up-index{
  top:112px;
  padding:18px 16px 18px 0;
  border-top:2px solid var(--up-blue);
}
body.up-approved .up-main .up-index-label{
  font-size:11px;
  letter-spacing:.11em;
  margin-bottom:14px;
}
body.up-approved .up-main .up-index>a:not(.up-index-cta){
  font-size:12.5px;
  line-height:1.55;
  padding:9px 10px 9px 13px;
}
body.up-approved .up-main .up-index>a:not(.up-index-cta):focus-visible{
  outline:2px solid var(--up-blue);
  outline-offset:1px;
}
body.up-approved .up-main .up-content-body>section,
body.up-approved .up-main .up-content-body>.up-content-section{
  padding-bottom:32px;
  margin-bottom:37px;
  border-bottom:1px solid rgba(1,108,174,.15);
}
body.up-approved .up-main .up-content-body>section:last-child{
  border-bottom:0;
  margin-bottom:0;
  padding-bottom:0;
}
body.up-approved .up-main .up-content-body h2{
  font-size:clamp(28px,2.7vw,37px);
  line-height:1.18;
  margin:34px 0 16px;
  scroll-margin-top:120px;
}
body.up-approved .up-main .up-content-body h3{
  font-size:clamp(22px,2vw,27px);
  line-height:1.23;
  margin:26px 0 12px;
}
body.up-approved .up-main .up-content-body p,
body.up-approved .up-main .up-content-body li{
  font-size:15.5px;
  line-height:1.82;
  overflow-wrap:break-word;
}
body.up-approved .up-main .up-content-body p{
  margin-bottom:18px;
}
body.up-approved .up-main .up-content-body ul,
body.up-approved .up-main .up-content-body ol{
  padding-left:24px;
  margin:0 0 22px;
}
body.up-approved .up-main .up-content-body li{
  margin-block:7px;
  padding-left:2px;
}
body.up-approved .up-main .up-content-body .up-content-grid{
  gap:16px;
  margin-block:25px;
}
body.up-approved .up-main .up-link-card{
  background:#f9fcfe;
  border-color:rgba(1,108,174,.2);
  border-radius:5px;
}
body.up-approved .up-main--legal .up-hero-copy{
  padding-bottom:40px;
}
body.up-approved .up-main--legal .up-content-body h2{
  max-width:850px;
}

/* Navigazione e lettura dei documenti legali: differenziata dai prodotti */
body.up-approved .up-main--legal .up-body-layout{
  grid-template-columns:minmax(215px,250px) minmax(0,1fr);
  gap:clamp(26px,4vw,58px);
}
body.up-approved .up-main--legal .up-index{
  border:1px solid rgba(1,108,174,.17);
  border-top:3px solid var(--up-blue);
  background:#f6fbfe;
  padding:22px 19px;
  border-radius:4px;
  max-height:calc(100vh - 132px);
}
body.up-approved .up-main--legal .up-legal-index-heading{
  padding-bottom:16px;
  margin-bottom:10px;
  border-bottom:1px solid rgba(1,108,174,.14);
}
body.up-approved .up-main--legal .up-legal-index-heading .up-index-label{
  color:var(--up-blue);
  font-size:10px;
  margin-bottom:3px;
}
body.up-approved .up-main--legal .up-legal-index-heading strong{
  display:block;
  color:var(--up-deep);
  font:500 25px/1.18 var(--up-display);
}
body.up-approved .up-main--legal .up-legal-index-details>summary{
  list-style:none;
  cursor:pointer;
  color:var(--up-blue);
  font-size:11px;
  font-weight:700;
  padding:6px 22px 11px 0;
  position:relative;
}
body.up-approved .up-main--legal .up-legal-index-details>summary::-webkit-details-marker{
  display:none;
}
body.up-approved .up-main--legal .up-legal-index-details>summary:after{
  content:'−';
  position:absolute;
  right:4px;
}
body.up-approved .up-main--legal .up-legal-index-details:not([open])>summary:after{
  content:'+';
}
body.up-approved .up-main--legal .up-legal-index-links>a{
  display:block;
  padding:10px 2px;
  border-bottom:1px solid rgba(1,108,174,.11);
  color:#335d78;
  line-height:1.42;
  font-size:12px;
  overflow-wrap:anywhere;
}
body.up-approved .up-main--legal .up-legal-index-links>a:hover,
body.up-approved .up-main--legal .up-legal-index-links>a:focus-visible{
  color:var(--up-navy);
  text-decoration:underline;
  text-underline-offset:3px;
}
body.up-approved .up-main--legal .up-content-body{
  max-width:860px;
}
body.up-approved .up-main--legal .up-content-body>section{
  padding-bottom:36px;
  margin-bottom:42px;
}
body.up-approved .up-main--legal .up-content-body>section h2{
  margin-top:12px;
}
@media(max-width:1050px){
  body.up-approved .up-main--legal .up-body-layout{
    grid-template-columns:minmax(0,1fr);
    gap:23px;
  }
  body.up-approved .up-main--legal .up-index{
    position:static;
    max-height:none;
    overflow:visible;
    padding:17px 19px;
  }
  body.up-approved .up-main--legal .up-content-body{
    max-width:100%;
  }
}
@media(max-width:650px){
  body.up-approved .up-main--legal .up-legal-index-heading strong{
    font-size:24px;
  }
  body.up-approved .up-main--legal .up-content-body>section{
    padding-bottom:25px;
    margin-bottom:28px;
  }
}
body.up-approved .up-main--legal .up-content-body > section:first-child{
  padding-top:0;
}
body.up-approved .up-main--legal .up-content-body a:not(.up-content-cta){
  color:var(--up-navy);
  text-decoration:underline;
  text-underline-offset:3px;
}
@media(max-width:1050px){
  body.up-approved .up-main .up-body-layout{
    grid-template-columns:minmax(0,1fr);
    gap:23px;
  }
  body.up-approved .up-main .up-index{
    position:static;
    border:1px solid rgba(1,108,174,.18);
    border-top:2px solid var(--up-blue);
    background:#f7fbfe;
    padding:15px 18px;
    max-height:none;
  }
  body.up-approved .up-main .up-body-layout--no-index{
    width:calc(100% - 48px);
  }
  body.up-approved .up-main .up-content-body{
    max-width:100%;
  }
}
@media(max-width:650px){
  body.up-approved .up-main .up-body-layout{
    padding-top:27px;
    padding-bottom:42px;
  }
  body.up-approved .up-main .up-body-layout--no-index{
    width:calc(100% - 32px);
  }
  body.up-approved .up-main .up-hero-copy{
    padding-top:24px;
    padding-bottom:30px;
  }
  body.up-approved .up-main .up-breadcrumb{
    font-size:11px;
  }
  body.up-approved .up-main .up-content-body h2{
    font-size:29px;
    line-height:1.18;
  }
  body.up-approved .up-main .up-content-body h3{
    font-size:23px;
  }
  body.up-approved .up-main .up-content-body p,
  body.up-approved .up-main .up-content-body li{
    font-size:15px;
    line-height:1.76;
  }
  body.up-approved .up-main .up-content-body>section,
  body.up-approved .up-main .up-content-body>.up-content-section{
    margin-bottom:28px;
    padding-bottom:26px;
  }
  body.up-approved .up-main .up-content-grid{
    grid-template-columns:minmax(0,1fr);
  }
}

