/* Policy pages share the v2 typography, palette and navigation. */
.policy-head{max-width:1120px;padding-bottom:64px}
.policy-head h1{max-width:19ch}
.policy-head .lede{margin-top:26px;max-width:58ch}
.policy-layout{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2.2fr);gap:clamp(40px,7vw,120px);padding-bottom:96px;align-items:start}
.policy-index{position:sticky;top:calc(var(--header-h) + 28px);border-top:1px solid var(--line-strong);padding-top:24px}
.policy-index nav{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.policy-index nav a{font-size:15px;text-decoration:none;line-height:1.4;padding:3px 0}
.policy-index nav a:hover{text-decoration:underline;text-underline-offset:4px}
.policy-copy{max-width:780px;min-width:0}
.policy-copy>section{border-top:1px solid var(--line);padding:34px 0 18px;scroll-margin-top:110px}
.policy-copy h2{font-size:clamp(17px,1.6vw,23px);letter-spacing:.1em;margin-bottom:24px;line-height:1.4}
.policy-copy .num{display:block;font-size:11px;letter-spacing:.2em;margin-bottom:10px;color:var(--muted)}
.policy-copy p,.policy-copy li{text-transform:none;line-height:1.7}
.policy-copy ul{padding-left:22px;margin-bottom:28px}
.policy-copy li+li{margin-top:8px}
.policy-copy b{font-weight:500}
.policy-copy a{text-underline-offset:4px}
.policy-copy .callout,.policy-copy .contact-card{background:var(--shell);padding:24px;margin:24px 0}
.policy-copy .contact-card h3{font-size:17px;margin-bottom:16px}
.policy-updated{margin-bottom:32px}
.policy-question{border-bottom:1px solid var(--line)}
.policy-question summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:baseline;gap:24px;font-size:20px;line-height:1.4;padding:22px 0}
.policy-question summary::-webkit-details-marker{display:none}
.policy-question summary::after{content:'+';font-size:24px;font-weight:300;flex-shrink:0}
.policy-question[open] summary::after{content:'−'}
.policy-answer{max-width:64ch;padding:0 28px 24px 0;line-height:1.7}
.policy-contact{background:var(--shell);padding-top:56px;padding-bottom:56px}
.policy-contact h2{margin-bottom:20px}
.policy-contact p{max-width:54ch}
@media(max-width:760px){.policy-head{padding-bottom:40px}.policy-layout{grid-template-columns:1fr;gap:32px;padding-bottom:56px}.policy-index{position:static}.policy-index nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px 18px}.policy-index nav a{font-size:14px}.policy-question summary{font-size:18px}.policy-copy>section{padding-top:26px}.policy-contact{padding-top:40px;padding-bottom:40px}}

/* v2.12 no visible scrollbars; scrolling still works */
html,body,*{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{display:none;width:0;height:0}

/* 2026-10-20 back-page refinement: lighter, roomier headlines that always fit */
.policy-head{padding-top:clamp(48px,7vw,112px)}
.policy-head h1{font-size:clamp(30px,4.6vw,66px);font-weight:300;letter-spacing:.1em;line-height:1.06;overflow-wrap:break-word;hyphens:auto}
.policy-copy h2{overflow-wrap:break-word}
.policy-copy .btn{margin:6px 0 12px}
@media(max-width:560px){.policy-head h1{letter-spacing:.05em;font-size:clamp(28px,8vw,38px)}.policy-copy h2{letter-spacing:.06em}}
