/* Official pages share the main site's header, footer and design tokens. */
.official-page .page-hero { padding-bottom:clamp(2rem,4vw,3.5rem); }
.official-page .page-hero__title { max-width:1000px; font-size:clamp(2rem,4vw,3.25rem); overflow-wrap:break-word; }
.official-page .page-hero__lead { max-width:46rem; }
.official-layout { display:grid; grid-template-columns:270px minmax(0,1fr); gap:clamp(1.5rem,4vw,3rem); align-items:start; }
.official-nav { padding:1.5rem; background:var(--creme-50); border:1px solid var(--line); border-radius:var(--radius-lg); }
.official-nav__label { font-size:.75rem; font-weight:600; text-transform:uppercase; letter-spacing:.1em; color:var(--text-subtle); margin-bottom:1rem; }
.official-nav ul { list-style:none; padding:0; margin:0; display:grid; gap:.35rem; }
.official-nav a { display:block; padding:.65rem .8rem; border-radius:var(--radius-sm); font-size:.875rem; line-height:1.5; color:var(--text-muted); }
.official-nav a:hover,.official-nav a[aria-current] { background:var(--cognac-100); color:var(--cognac-700); }
.official-nav a[aria-current] { font-weight:600; }
.official-content { padding:clamp(1.5rem,4vw,3rem); background:var(--white); border:1px solid var(--line); border-radius:var(--radius-xl); box-shadow:var(--shadow-sm); min-width:0; }
.official-content .prose { max-width:none; }
.official-content h2 { font-size:clamp(1.35rem,2.2vw,1.8rem); line-height:1.3; margin-top:2rem; padding-top:1.75rem; border-top:1px solid var(--line); }
.official-content h2:first-child { margin-top:0; padding-top:0; border-top:0; }
.official-content p,.official-content li { overflow-wrap:anywhere; }
.official-content li { margin-bottom:.6rem; }
.official-content .notice { padding:1.25rem 1.5rem; background:var(--creme-50); border-left:3px solid var(--caramel-500); border-radius:0 var(--radius-md) var(--radius-md) 0; }
.official-content .details { display:grid; grid-template-columns:minmax(9rem,.6fr) 1fr; margin:0; }
.official-content .details dt,.official-content .details dd { padding:.85rem 0; margin:0; border-bottom:1px solid var(--line); }
.official-content .details dt { color:var(--text-muted); padding-right:1rem; }
.official-content .details dd { font-weight:500; overflow-wrap:anywhere; }
.official-content .document-list { list-style:none; padding:0; display:grid; gap:.75rem; }
.official-content .document-list li { margin:0; }
.official-content .document-list a { display:block; padding:1rem 1.25rem; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--creme-50); text-decoration:none; line-height:1.55; transition:background .2s,border-color .2s; }
.official-content .document-list a:hover { border-color:var(--cognac-300); background:var(--cognac-100); }
.official-back { display:inline-flex; gap:.5rem; margin-top:2rem; font-size:.9rem; }
@media(max-width:960px) { .official-layout { grid-template-columns:1fr; } .official-nav ul { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:540px) { .official-nav ul { grid-template-columns:1fr; } .official-content .details { grid-template-columns:1fr; } .official-content .details dt { border-bottom:0; padding-bottom:.1rem; } .official-content .details dd { padding-top:.1rem; } }
@media print { .official-nav,.official-back { display:none; } .official-layout { display:block; } .official-content { border:0; box-shadow:none; padding:0; } }
