/* assets/css/pages/policies.css */
.pol-index{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.pol-index__card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:1.8rem;transition:border-color var(--dur-fast),transform var(--dur-mid) var(--ease-out-expo)}
.pol-index__card:hover{border-color:var(--color-rust);transform:translateY(-3px)}
.pol-index__card h2{font-size:var(--fs-500)}
.pol-index__card p{color:var(--color-ivory-soft);margin-top:.4rem}
.pol-index__go{display:inline-block;margin-top:.8rem;color:var(--color-rust-glow)}
.pol-grid{display:grid;grid-template-columns:220px minmax(0,70ch) 250px;gap:clamp(1.8rem,3.5vw,3.2rem);align-items:start;justify-content:center}
.pol-toc{position:sticky;top:90px}
.pol-toc__head{font-size:var(--fs-200);letter-spacing:.14em;text-transform:uppercase;color:var(--color-rust-glow);margin-bottom:.8rem}
.pol-toc__link{display:block;padding:.4rem .6rem;border-left:2px solid transparent;color:var(--color-ivory-soft);font-size:var(--fs-300)}
.pol-toc__link:hover,.pol-toc__link.is-active{border-left-color:var(--color-rust);color:var(--color-ivory)}
.pol-doc{max-width:none}
.pol-doc__intro{font-size:var(--fs-500);color:var(--color-ivory);line-height:1.6;margin-bottom:2rem}
.pol-section{margin-bottom:2.2rem;scroll-margin-top:90px}
.pol-section__h{font-size:var(--fs-500);margin-bottom:.8rem;display:flex;gap:.8rem;align-items:baseline}
.pol-section__h .metric{color:var(--color-rust);font-size:var(--fs-300)}
.pol-section__body p{color:var(--color-ivory-soft);margin-bottom:.9rem;line-height:1.7}
.pol-section__body strong{color:var(--color-ivory)}
.pol-section__body a{color:var(--color-rust-glow);border-bottom:1px solid var(--color-rust)}
.pol-doc__contact{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-line);color:var(--color-ivory-soft)}
.pol-doc__contact a{color:var(--color-rust-glow)}
@media (max-width:1120px){
  .pol-index{grid-template-columns:1fr}
  .pol-grid{grid-template-columns:210px minmax(0,1fr)}
  .pol-rail{grid-column:1 / -1;position:static;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem;margin-top:1rem}
}
@media (max-width:900px){
  .pol-grid{grid-template-columns:1fr}
  .pol-toc{position:static}
  .pol-rail{grid-column:auto}
}

/* ===== Policies v2 (under standardized hero) ===== */
/* hub + sitemap shared body padding */
.pol .section{padding-top:clamp(2.4rem,5vh,3.6rem)}

/* policy index / hub cards */
.pol-index__card{display:flex;flex-direction:column}
.pol-index__ico{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-rust-glow);margin-bottom:1rem;transition:border-color var(--dur-fast),background var(--dur-fast)}
.pol-index__ico svg{width:22px;height:22px}
.pol-index__card:hover .pol-index__ico{border-color:var(--color-rust);background:rgba(192,74,32,.1)}
.pol-index__card h2{font-family:var(--font-display);font-size:var(--fs-500)}
.pol-index__card p{flex:1}
.pol-index__go{margin-top:1rem;color:var(--color-rust-glow);font-weight:600}
.pol-index__go span{display:inline-block;transition:transform var(--dur-fast) var(--ease-out-expo)}
.pol-index__card:hover .pol-index__go span{transform:translateX(5px)}
.pol-index__card--alt{background:var(--color-bg-deep)}

/* policy doc: TOC meta card */
.pol-meta{margin-top:1.6rem;padding:1.2rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);display:grid;gap:.7rem}
.pol-meta__row{display:flex;justify-content:space-between;gap:.8rem;align-items:center;font-size:var(--fs-200);color:var(--color-ivory-soft)}
.pol-meta__row span{letter-spacing:.1em;text-transform:uppercase}
.pol-meta__row b{color:var(--color-ivory);font-weight:500}
.pol-meta__row a{color:var(--color-rust-glow);word-break:break-word}
.pol-meta__print{margin-top:.3rem;width:100%;padding:.6rem;background:transparent;border:1px solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-ivory-soft);font-size:var(--fs-300);cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast)}
.pol-meta__print:hover{border-color:var(--color-rust);color:var(--color-rust-glow)}

/* sitemap cards */
.sm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.4rem;align-items:start}
.sm-card{padding:1.6rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);transition:border-color var(--dur-fast)}
.sm-card:hover{border-color:var(--color-rust)}
.sm-card__h{font-family:var(--font-display);font-size:var(--fs-500);padding-bottom:.7rem;margin-bottom:.7rem;border-bottom:1px solid var(--color-line)}
.sm-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.sm-list a{color:var(--color-ivory-soft);font-size:var(--fs-300);transition:color var(--dur-fast),padding-left var(--dur-fast)}
.sm-list a:hover{color:var(--color-rust-glow);padding-left:.25rem}

@media print{
  .site-header,.site-footer,.pol-toc,.page-hero__motif,.consultation-cta{display:none!important}
  .pol-doc{max-width:none}
}

/* ===== Policy right rail ===== */
.pol-rail{position:sticky;top:90px;display:grid;gap:1.2rem}
.pol-rail__card,.pol-rail__cta{padding:1.2rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md)}
.pol-rail__h{font-size:var(--fs-200);letter-spacing:.14em;text-transform:uppercase;color:var(--color-rust-glow);margin-bottom:.7rem}
.pol-rail__nav{display:grid;gap:.55rem}
.pol-rail__nav a{display:flex;justify-content:space-between;gap:.6rem;color:var(--color-ivory-soft);font-size:var(--fs-300);transition:color var(--dur-fast)}
.pol-rail__nav a span{color:var(--color-rust-glow);transition:transform var(--dur-fast) var(--ease-out-expo)}
.pol-rail__nav a:hover{color:var(--color-ivory)}
.pol-rail__nav a:hover span{transform:translateX(4px)}
.pol-rail__cta{background:var(--color-bg-deep)}
.pol-rail__cta p{color:var(--color-ivory-soft);font-size:var(--fs-300);margin-bottom:.7rem}
.pol-rail__cta-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--color-rust-glow);font-weight:600;font-size:var(--fs-300)}
.pol-rail__cta-link span{transition:transform var(--dur-fast) var(--ease-out-expo)}
.pol-rail__cta-link:hover span{transform:translateX(4px)}
