/* Generated from the approved EMF Protection designs. Edit the source designs, then rerun build/split_css.py. */
.legal-layout{max-width: 1100px; margin: 0 auto; padding: 3.5rem 1.5rem 5rem; display: grid; grid-template-columns: 240px 1fr; gap: 3rem; align-items: start;}
.legal-toc{position: sticky; top: 88px; display: flex; flex-direction: column; gap: 0.25rem;}
.legal-toc-h{font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-light); margin-bottom: 0.5rem;}
.legal-toc a{font-size: 0.875rem; color: var(--ink-mid); padding: 0.4rem 0; border-left: 2px solid transparent; padding-left: 0.75rem;}
.legal-toc a:hover{color: var(--action); border-left-color: var(--action);}
.legal-content{background: var(--white); border: 1px solid var(--border); border-radius: var(--r-xl); padding: 2.5rem; box-shadow: var(--sh); max-width: 720px;}
.legal-content h2{font-size: 1.25rem; font-weight: 800; color: var(--ink); margin: 2rem 0 0.875rem; letter-spacing: -0.01em;}
.legal-content h2:first-child{margin-top: 0;}
.legal-content p{font-size: 0.9375rem; color: var(--ink-mid); line-height: 1.75; margin-bottom: 1rem;}
.legal-content ul{margin: 0 0 1rem 1.25rem;}
.legal-content li{font-size: 0.9375rem; color: var(--ink-mid); line-height: 1.75; margin-bottom: 0.375rem;}
.legal-updated{font-size: 0.8125rem; color: var(--ink-light); margin-bottom: 1.75rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--border);}
.cookie-table{width: 100%; border-collapse: collapse; margin-bottom: 1rem;}
.cookie-table th{text-align: left; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; color: var(--ink-light); padding: 0 0 0.625rem; border-bottom: 1px solid var(--border);}
.cookie-table td{font-size: 0.875rem; color: var(--ink-mid); padding: 0.75rem 0.75rem 0.75rem 0; border-bottom: 1px solid var(--surface); vertical-align: top;}
.cookie-table td:first-child{font-weight: 700; color: var(--ink); white-space: nowrap;}
.toggle-row{display: flex; align-items: center; justify-content: space-between; padding: 0.875rem 0; border-bottom: 1px solid var(--surface);}
.toggle-row:last-child{border-bottom: none;}
.toggle-label{font-size: 0.9375rem; font-weight: 700; color: var(--ink);}
.toggle-desc{font-size: 0.8125rem; color: var(--ink-light); margin-top: 0.125rem;}
.switch{width: 42px; height: 24px; border-radius: 100px; background: var(--border); position: relative; flex-shrink: 0;}
.switch.on{background: var(--action);}
.switch::after{content: ''; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; background: var(--white); border-radius: 50%; transition: left 150ms; box-shadow: var(--sh);}
.switch.on::after{left: 21px;}
.switch.disabled{opacity: 0.6;}
.cookie-prefs-panel{background: var(--surface); border-radius: var(--r-lg); padding: 1.5rem; margin-bottom: 1.5rem;}
.save-prefs-btn{margin-top: 1rem; padding: 0.75rem 1.5rem; background: var(--action); color: var(--white); font-size: 0.875rem; font-weight: 700; border-radius: var(--r);}
.save-prefs-btn:hover{background: var(--action-dark);}
footer{background: #070f18; padding: 4rem 1.5rem 2rem;}
.fc{background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.09); border-radius: 4px; padding: 0.25rem 0.5rem; font-size: 0.6875rem; font-weight: 600; color: rgba(255,255,255,0.35);}
.payment-row{display: flex; gap: 0.5rem;}
.pay{display: inline-flex; border-radius: 4px; overflow: hidden; line-height: 0;}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr}
.legal-toc{position:static;flex-direction:row;flex-wrap:wrap;gap:0.75rem}
.legal-toc a{border-left:none;padding-left:0}}
@media(max-width:640px){.legal-layout{padding:2.5rem 1.25rem 3.5rem}
.legal-content{padding:1.5rem}
.cookie-table{display:block;overflow-x:auto}}
@media(max-width:640px){.legal-layout{padding:2.5rem 1.25rem 3.5rem}
.legal-content{padding:1.5rem}}
.guarantee-strip{background: var(--white); border-bottom: 1px solid var(--border);}
.guarantee-inner{max-width: 1100px; margin: 0 auto; padding: 2.5rem 1.5rem; display: flex; align-items: center; gap: 1.5rem;}
.guarantee-icon{width: 56px; height: 56px; background: var(--action-pale); border-radius: var(--r-lg); display: flex; align-items: center; justify-content: center; color: var(--action); flex-shrink: 0;}
.guarantee-text h2{font-size: 1.25rem; font-weight: 800; color: var(--ink); margin-bottom: 0.375rem;}
.guarantee-text p{font-size: 0.9375rem; color: var(--ink-mid);}
.steps{display: flex; flex-direction: column; gap: 0; margin-bottom: 1rem;}
.step-row{display: grid; grid-template-columns: 36px 1fr; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--surface);}
.step-row:last-child{border-bottom: none;}
.step-num{width: 32px; height: 32px; background: var(--action); color: var(--white); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 0.875rem;}
.step-title{font-size: 0.9375rem; font-weight: 700; color: var(--ink); margin-bottom: 0.25rem;}
.step-desc{font-size: 0.875rem; color: var(--ink-mid); line-height: 1.65;}
@media(max-width:640px){.legal-layout{padding:2.5rem 1.25rem 3.5rem}
.legal-content{padding:1.5rem}
.guarantee-inner{flex-direction:column;text-align:center}}
