/* Smart PDF Pilot legal pages — aligned with the site's existing white/coral visual system. */
.legal-page{background:#fff;color:var(--ink,#151d32)}
.legal-skip{position:absolute;left:-9999px;top:8px;z-index:1000;padding:10px 14px;border-radius:10px;background:#f43f50;color:#fff;font-weight:700}
.legal-skip:focus{left:12px}
.legal-main{overflow:clip;padding:0 0 clamp(64px,8vw,112px);background:radial-gradient(ellipse at 7% 4%,rgba(235,241,255,.78),transparent 34%),radial-gradient(ellipse at 96% 8%,rgba(255,235,237,.72),transparent 30%),#fff}
.legal-main>.container{max-width:1420px}
.legal-page .hero{position:relative;padding:clamp(54px,7vw,94px) 0 30px;border-bottom:1px solid var(--line,#e7eaf0)}
.legal-page .hero:before{content:"SMART PDF PILOT FOR MAC";display:inline-flex;margin-bottom:18px;color:#f43f50;font:800 .76rem/1.2 var(--font-body,Inter,system-ui,sans-serif);letter-spacing:.16em}
.legal-page .hero:after{content:"";position:absolute;left:0;bottom:-1px;width:78px;height:3px;border-radius:8px;background:#f43f50}
.legal-page .hero h1{max-width:900px;margin:0 0 16px;font-family:var(--font-heading,Inter,system-ui,sans-serif);font-size:clamp(2.5rem,5.3vw,4.8rem);line-height:1.02;letter-spacing:-.055em;font-weight:800;color:#151d32}
.legal-page .meta{margin:0;color:#77849b;font:500 .94rem/1.6 var(--font-body,Inter,system-ui,sans-serif)}
.legal-page .layout{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,820px);justify-content:space-between;gap:clamp(32px,5vw,90px);padding:42px 0 0}
.legal-page .toc-side{display:block;position:sticky;top:112px;align-self:start;max-height:calc(100vh - 140px);overflow:auto;padding:20px 18px;border:1px solid #e7eaf1;border-radius:18px;background:rgba(255,255,255,.9);box-shadow:0 12px 35px rgba(22,32,57,.045);font:500 .84rem/1.45 var(--font-body,Inter,system-ui,sans-serif)}
.legal-page .toc-side p{margin:0 0 12px;color:#151d32;font-weight:800}
.legal-page .toc-side ol{list-style:none;margin:0;padding:0;border-left:1px solid #e4e8f0}
.legal-page .toc-side li{margin:0}
.legal-page .toc-side li a{display:block;margin-left:-1px;padding:8px 0 8px 13px;border-left:2px solid transparent;color:#77849b;text-decoration:none;transition:color .2s,border-color .2s}
.legal-page .toc-side li a:hover,.legal-page .toc-side li a:focus-visible{color:#f43f50;border-left-color:#f43f50}
.legal-page .toc-m{display:none}
.legal-page article{max-width:none;min-width:0;font:400 1rem/1.82 var(--font-body,Inter,system-ui,sans-serif);color:#596780}
.legal-page article p{margin:0 0 1rem}
.legal-page article strong{color:#202940;font-weight:750}
.legal-page article a{color:#e93649;text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-page article a:hover{color:#bd2435}
.legal-page article h2{margin:3rem 0 .8rem;padding-top:5px;color:#151d32;font:800 clamp(1.35rem,2vw,1.65rem)/1.25 var(--font-heading,Inter,system-ui,sans-serif);letter-spacing:-.035em;scroll-margin-top:110px}
.legal-page article h3{margin:1.7rem 0 .5rem;color:#202940;font:750 1.06rem/1.4 var(--font-heading,Inter,system-ui,sans-serif)}
.legal-page article ul,.legal-page article ol{padding-left:1.35rem;margin:0 0 1.2rem}
.legal-page article li{padding-left:.2rem;margin:.48rem 0}
.legal-page article li::marker{color:#f43f50}
.legal-page .summary{margin:0 0 20px;padding:clamp(24px,3vw,36px);border:1px solid rgba(244,63,80,.18);border-left:4px solid #f43f50;border-radius:18px;background:linear-gradient(135deg,#fff7f7 0%,#f8faff 100%);box-shadow:0 18px 48px rgba(24,34,59,.055)}
.legal-page .summary .lead{margin:0 0 14px;color:#151d32;font:800 clamp(1.5rem,2.5vw,2rem)/1.2 var(--font-heading,Inter,system-ui,sans-serif);letter-spacing:-.04em}
.legal-page .summary p{color:#596780}
.legal-page .summary dl{display:grid;grid-template-columns:minmax(115px,.6fr) 1fr;gap:8px 18px;padding-top:14px;border-top:1px solid #e7eaf1;font:500 .93rem/1.55 var(--font-body,Inter,system-ui,sans-serif)}
.legal-page .summary dt{color:#202940;font-weight:800}
.legal-page .summary dd{margin:0;color:#66738b}
.legal-page .summary ul{margin:12px 0 0}
.legal-page article address{font-style:normal;line-height:1.9}
.legal-page .caps{font-size:.92rem;line-height:1.8}
@media(max-width:900px){.legal-page .layout{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:28px}.legal-page .toc-side{display:none}.legal-page .toc-m{display:block;margin:0 0 26px;border:1px solid #e5e9f1;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(22,32,57,.04);font:600 .94rem/1.5 var(--font-body,Inter,system-ui,sans-serif)}.legal-page .toc-m summary{cursor:pointer;padding:15px 18px;color:#151d32;font-weight:800}.legal-page .toc-m ol{list-style:none;margin:0;padding:0 18px 16px}.legal-page .toc-m li{margin:7px 0}.legal-page .toc-m a{color:#66738b;text-decoration:none}.legal-page .toc-m a:hover{color:#f43f50}.legal-page article{max-width:100%}}
@media(max-width:560px){.legal-page .hero{padding:44px 0 24px}.legal-page .hero h1{font-size:clamp(2.2rem,11vw,3.25rem)}.legal-page .meta{font-size:.84rem}.legal-page .summary{padding:22px 18px;border-radius:15px}.legal-page .summary dl{grid-template-columns:1fr;gap:2px}.legal-page .summary dd{margin-bottom:8px}.legal-page article h2{margin-top:2.35rem}}
@media(prefers-reduced-motion:reduce){.legal-page *{scroll-behavior:auto!important;transition:none!important}}
@media print{.legal-skip,.legal-page .toc-m,.legal-page .toc-side,.legal-page .site-header,.legal-page .site-footer{display:none!important}.legal-main{background:#fff;padding:0}.legal-page .layout{display:block}.legal-page .summary{box-shadow:none}}


/* === Layout corrections: keep the contents sidebar visible and remove site-wide section spacing === */
.legal-main {
  overflow: visible;
}
.legal-page .layout {
  align-items: start;
  grid-template-columns: 250px minmax(0, 1fr);
  justify-content: initial;
  column-gap: clamp(32px, 4vw, 64px);
}
.legal-page .toc-side {
  position: sticky;
  top: 112px;
  z-index: 5;
  height: max-content;
  max-height: calc(100vh - 132px);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.legal-page article {
  width: 100%;
  min-width: 0;
}
.legal-page article > section {
  display: flow-root;
  padding: 0 !important;
  margin: 0 0 28px !important;
  min-height: 0 !important;
}
.legal-page article > section:last-child {
  margin-bottom: 0 !important;
}
.legal-page article section h2 {
  margin: 28px 0 10px !important;
  padding-top: 0;
}
.legal-page article > section:first-of-type h2 {
  margin-top: 28px !important;
}
.legal-page article p {
  margin: 0 0 12px;
}
.legal-page article ul,
.legal-page article ol {
  margin: 0 0 14px;
}
.legal-page article li {
  margin: 5px 0;
}
.legal-page .summary {
  margin-bottom: 26px;
}
@media (max-width: 900px) {
  .legal-page .layout {
    grid-template-columns: minmax(0, 1fr);
    column-gap: 0;
  }
  .legal-page .toc-side {
    display: none;
  }
  .legal-page article > section {
    margin-bottom: 24px !important;
  }
  .legal-page article section h2 {
    margin-top: 24px !important;
  }
}


/* Final legal-page behavior: stable sticky contents panel and active-section marker */
.legal-page,
.legal-page main,
.legal-page .legal-main,
.legal-page .legal-main > .container,
.legal-page .layout {
  overflow: visible !important;
}
.legal-page .layout {
  position: relative;
  align-items: start;
}
.legal-page .toc-side {
  position: sticky !important;
  top: 112px !important;
  align-self: start !important;
  height: max-content;
}
.legal-page .toc-side a.is-active {
  color: #f43f50 !important;
  border-left-color: #f43f50 !important;
  background: linear-gradient(90deg, rgba(244,63,80,.08), transparent 90%);
  font-weight: 750;
}
.legal-page .toc-m a.is-active {
  color: #f43f50 !important;
  font-weight: 800;
}
.legal-page article .caps {
  text-transform: none;
}
@media (max-width: 900px) {
  .legal-page .toc-side { display: none !important; }
  .legal-page .toc-m { display: block !important; }
}


/* Requested product-name and key-point highlighting */
.legal-page .brand-highlight {
  color: #f43f50;
  font-weight: 800;
  letter-spacing: -0.015em;
}
.legal-page article strong {
  color: #17213a;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: rgba(244, 63, 80, .35);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
  text-decoration-skip-ink: auto;
}
.legal-page .legal-copyright {
  margin: 34px 0 0;
  padding-top: 18px;
  border-top: 1px solid #e7eaf1;
  color: #77849b;
  font: 600 .9rem/1.6 var(--font-body, Inter, system-ui, sans-serif);
}
