.policy-layout .policy-columns{align-items:flex-start;gap:2rem;padding-block:3rem}
.policy-toc{background:var(--sand-100);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;position:sticky;top:6rem}
.policy-toc ol{list-style:decimal;margin:.75rem 0 0 1.1rem;padding:0}
.policy-toc .level-3{margin-left:1rem}
.policy-body{max-width:var(--reading)}
.policy-layout--plain .policy-columns{align-items:flex-start;gap:2rem;padding-block:4.25rem 3rem}
.policy-layout--plain .policy-body{font-size:1.02rem;line-height:1.7}
.policy-layout--plain .policy-body h2{font-family:var(--font-body);font-size:clamp(1.65rem,2.5vw,2.25rem);font-weight:750;letter-spacing:-.025em;line-height:1.15;margin:2.5rem 0 .85rem;text-wrap:balance}
.policy-layout--plain .policy-body h2:first-child{margin-top:0}
.policy-layout--plain .policy-body h3{font-family:var(--font-body);font-size:clamp(1.25rem,2vw,1.5rem);font-weight:750;line-height:1.25;margin:2rem 0 .65rem}
.policy-layout--plain .policy-body p,.policy-layout--plain .policy-body li{max-width:42rem}
.seasonal-table{display:grid;gap:.75rem}
.seasonal-row{border-bottom:1px solid var(--border);display:grid;gap:.5rem;grid-template-columns:minmax(8rem,14rem) 1fr;padding:.75rem 0}
.swt-pullquote{border-left:4px solid var(--ochre-600);font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2rem);margin:2rem auto;max-width:var(--reading);padding-left:1.25rem}
.swt-notice{background:var(--sand-100);border-radius:var(--radius);margin:1.5rem auto;max-width:var(--reading);padding:1rem 1.25rem}
.destination-hero{position:relative}
@media (max-width:780px){
  .policy-toc{position:static}
  .seasonal-row{grid-template-columns:1fr}
}
