/* Policies page only. The shared light-page + .policy-head rules moved to
   app.css because /work/ needs them too. */
.policy-meta{font-size:.74rem;letter-spacing:.05em;color:var(--ink-soft);margin-top:1.5rem}
.legal-note{font-size:.82rem;color:var(--ink-soft);border-left:2px solid var(--clay);padding-left:1rem;margin-bottom:2.6rem;max-width:760px;line-height:1.65}
.tabs{display:flex;gap:clamp(1.4rem,3vw,2.8rem);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{flex:0 0 auto;background:none;border:0;cursor:pointer;font-family:inherit;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--ink-soft);padding:0 0 1.1rem;position:relative;white-space:nowrap;transition:color .4s var(--ease)}
.tab::after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.tab[aria-selected="true"]{color:var(--ink)}
.tab[aria-selected="true"]::after{transform:scaleX(1)}
.panels{padding:clamp(2.6rem,5vw,4rem) 0 0}
.panel{display:none;max-width:820px}
.panel.active{display:block;animation:panelIn .7s var(--ease)}
@keyframes panelIn{from{opacity:0;transform:translateY(14px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
.panel h3{font-size:clamp(1.35rem,2.1vw,1.8rem);font-weight:400;margin:2.6rem 0 1rem;color:var(--ink)}
.panel h3:first-child{margin-top:0}
.panel p,.panel li{color:var(--ink-soft);font-weight:300;line-height:1.85;font-size:1rem}
.panel p{margin-bottom:1.1rem}
.panel strong{color:var(--ink);font-weight:500}
.panel ul{list-style:none;margin:0 0 1.4rem;padding:0}
.panel li{position:relative;padding-left:1.4rem;margin-bottom:.7rem}
.panel li::before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;background:var(--clay)}
.panel a{color:var(--clay);border-bottom:1px solid var(--line)}
@media(max-width:600px){.panel h3{margin-top:2rem}}
