/* Service terms page (/service-terms/): extra styles for the numbered legal text.
   New file in strykia-site/static/. Loaded only by that page, after assets/site.css, and reuses its colour variables. */
.doc.st{max-width:76ch}
.st .meta{margin-top:.9rem}

.st-short{margin-top:2rem;padding:1.15rem 1.4rem 1.3rem;background:var(--field);border:1px solid var(--pad-edge);border-left:6px solid var(--blade);box-shadow:0 18px 40px -30px rgba(20,20,20,.45)}
.st-short h2{margin:0;font-size:1.7rem}
.st-short ul{margin:.7rem 0 0;padding-left:1.2rem}
.st-short p{margin-top:.8rem;font-size:.95rem}

.st-toc{margin-top:2rem}
.st-toc h2{margin:0;font-size:1.5rem}
.st-toc ol,.st-toc ul{list-style:none;margin:.7rem 0 0;padding:0}
.st-toc ol{columns:2;column-gap:2rem}
.st-toc li{margin-top:.1rem;break-inside:avoid}
.st-toc ul{margin-top:.7rem;padding-top:.6rem;border-top:1px solid var(--pad-edge)}
.st-toc a{display:inline-block;min-height:1.75rem;padding:.12rem 0}

.st h2[id]{scroll-margin-top:5rem}
.st h2.st-schedule{margin-top:3.5rem;padding-top:1.3rem;border-top:6px solid var(--blade)}

.st-c{display:grid;grid-template-columns:3.4rem minmax(0,1fr);margin-top:1rem;scroll-margin-top:5rem}
.st-n{font-family:var(--display);font-weight:800;font-size:1.15rem;line-height:1.5}
.st-b > p:first-child{margin-top:0}
.st-b p{margin:.7rem 0 0}
.st-c:target .st-n{background:var(--blade);align-self:start;justify-self:start;padding:0 .3rem;margin-left:-.3rem}
.st-subs{margin:.7rem 0 0;padding-left:1.5rem;list-style:lower-alpha}
.st-subs li{margin-top:.4rem}

.st-scroll{margin-top:.9rem;overflow-x:auto;border:1px solid var(--pad-edge);background:var(--field)}
.st-table{width:100%;min-width:30rem;border-collapse:collapse;font-size:.95rem}
.st-table th,.st-table td{padding:.6rem .8rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--pad-edge)}
.st-table thead th{background:#F6F1D6;font-family:var(--display);font-weight:800;font-size:1.05rem;letter-spacing:.02em}
.st-table tbody tr:last-child > *{border-bottom:0}

.st-box{margin-top:1.4rem;padding:1rem 1.25rem 1.1rem;background:var(--field);border:2px solid var(--ink);border-left:8px solid var(--blade)}
.st-box h3{font-size:1.35rem;letter-spacing:.02em;text-transform:uppercase}
.st-box p{margin-top:.65rem}

@media (max-width:560px){
  .st-c{grid-template-columns:2.7rem minmax(0,1fr)}
  .st-toc ol{columns:1}
  /* tables stack as cards, like the price tables elsewhere on the site */
  .st-table{min-width:0}
  .st-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .st-table tr{display:block;padding:.5rem 0;border-bottom:1px solid var(--pad-edge)}
  .st-table tbody tr:last-child{border-bottom:0}
  .st-table th,.st-table td{display:block;border:0;padding:.2rem .8rem}
  .st-table td::before{content:attr(data-label);display:block;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#4A4E47}
}
@media print{
  header.bar,footer,.skip,.stape{display:none}
  .st-short,.st-box{box-shadow:none}
  .st h2.st-schedule{break-before:page}
  .st-c{break-inside:avoid}
}
