/* ===================== NoDrama Terms of Service ===================== */
/* Reuses main.css tokens, header + footer. */
body.nodrama-terms #nodrama-main,body.nodrama-privacy #nodrama-main{display:flex;flex-direction:column;flex:1 0 auto;overflow-x:clip;background:#fff}
.tos-wrap{max-width:1264px;margin:0 auto;padding:0 24px}

/* Header band */
.tos-head{background:#f1f1f1;padding:86px 0 88px}
.tos-head__row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.tos-head__title{margin:0;font-family:'General Sans',sans-serif;font-weight:500;font-size:64px;line-height:1.1;letter-spacing:-1px;color:#262626;max-width:340px}
.tos-head__meta{margin:0;font-family:'League Spartan','General Sans',sans-serif;font-weight:400;font-size:22px;line-height:1.24;letter-spacing:-0.36px;color:#6b6b6b;max-width:441px}
.tos-head__rule{height:1px;background:#dcdcdc;margin-top:34px}

/* Body: sticky TOC + content */
.tos-body{background:#fff;padding:56px 0 96px}
.tos-grid{display:flex;gap:82px;align-items:flex-start}
.tos-toc{flex:0 0 287px;box-sizing:border-box;padding-right:28px;position:sticky;top:92px;align-self:flex-start}
.tos-toc__label{margin:0 0 26px;font-family:'League Spartan','General Sans',sans-serif;font-weight:600;font-size:15px;line-height:1.44;letter-spacing:.6px;text-transform:uppercase;color:#2e2e2e}
.tos-toc__list{display:flex;flex-direction:column}
.tos-toc__link{display:flex;align-items:center;gap:4px;padding:8px 0;font-family:'League Spartan','General Sans',sans-serif;font-weight:500;font-size:16px;line-height:1.5;color:#2e2e2e;opacity:.44;border-top:1px solid #ededed;transition:opacity .2s ease}
.tos-toc__link:first-child{border-top:0}
.tos-toc__link:hover{opacity:.8}
.tos-toc__dot{display:none;flex:0 0 8px;width:8px;height:8px;background:#00d920}
.tos-toc__link.is-active{opacity:1}
.tos-toc__link.is-active .tos-toc__dot{display:block}

/* Content sections */
.tos-content{flex:1;min-width:0;max-width:844px;display:flex;flex-direction:column;gap:46px}
.tos-section{scroll-margin-top:92px}
.tos-section__h{margin:0 0 14px;font-family:'General Sans',sans-serif;font-weight:500;font-size:36px;line-height:1.24;letter-spacing:-0.5px;color:#262626}
.tos-h3{margin:14px 0 0;font-family:'League Spartan','General Sans',sans-serif;font-weight:700;font-size:20px;line-height:1.84;letter-spacing:.08px;color:#2e2e2e}
.tos-section__body{display:flex;flex-direction:column;gap:16px}
.tos-p{margin:0;font-family:'League Spartan','General Sans',sans-serif;font-weight:400;font-size:18px;line-height:1.84;color:#2e2e2e;max-width:846px}
.tos-p a{color:#00b91b;text-decoration:underline}
.tos-p a:hover{color:#009417}
.tos-ul{margin:0;padding-left:27px;list-style:disc}
.tos-ul li{font-family:'League Spartan','General Sans',sans-serif;font-weight:600;font-size:18px;line-height:1.84;color:#2e2e2e}

@media(max-width:980px){
 .tos-head{padding:56px 0 40px}
 .tos-head__row{flex-direction:column;align-items:flex-start;gap:14px}
 .tos-head__title{font-size:38px;line-height:1.05;max-width:none}
 .tos-head__meta{font-size:17px}
 .tos-grid{flex-direction:column;gap:28px}
 .tos-toc{position:static;flex-basis:auto;width:100%;padding-right:0}
 .tos-content{max-width:none}
 .tos-section__h{font-size:28px}
}
