
:root{
 --paper:#efe8d7;
 --paper2:#f8f3e8;
 --ink:#24211e;
 --wine:#7d3232;
 --navy:#2d3d4c;
 --green:#5c725e;
 --gold:#c79c4c;
 --line:#cbbfa9;
 --muted:#746c61;
 --dark:#1f262d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;
 color:var(--ink);
 font-family:Arial,Helvetica,sans-serif;
 line-height:1.6;
 background:
  repeating-linear-gradient(0deg,rgba(45,61,76,.025) 0,rgba(45,61,76,.025) 1px,transparent 1px,transparent 28px),
  var(--paper);
}
a{color:inherit}
.wrap{width:min(1180px,calc(100% - 40px));margin:auto}
.archive-header{background:#d8ccb5;border-bottom:1px solid #b9aa8f}
.header-grid{min-height:84px;display:flex;align-items:center;justify-content:space-between}
.archive-mark{text-decoration:none;display:flex;align-items:center;gap:15px}
.archive-no{display:grid;place-items:center;width:46px;height:46px;border:2px solid var(--wine);color:var(--wine);font-family:Georgia,serif;font-size:22px;font-weight:700}
.archive-title{font-size:13px;font-weight:900;letter-spacing:.13em}
.revision-box{text-align:right;font-family:Consolas,monospace}
.revision-box span{display:block;font-size:9px;letter-spacing:.14em;color:var(--muted)}
.revision-box strong{font-size:14px}
.cover{display:grid;grid-template-columns:1.25fr .65fr;gap:50px;padding:72px 0 54px}
.eyebrow,.section-code,.micro{font-size:10px;font-weight:900;letter-spacing:.17em;text-transform:uppercase;color:var(--wine)}
h1,h2,h3{line-height:1.08;margin-top:0}
h1{font-family:Georgia,serif;font-size:clamp(50px,7vw,84px);letter-spacing:-.045em;margin:15px 0 24px}
h2{font-family:Georgia,serif;font-size:clamp(32px,4vw,50px);letter-spacing:-.03em}
h3{font-size:22px}
.lead{font-size:22px;max-width:820px}
.direct-answer{margin-top:28px;background:var(--paper2);border-left:6px solid var(--wine);padding:22px 24px}
.direct-answer span{font-size:10px;font-weight:900;letter-spacing:.14em;color:var(--wine)}
.direct-answer p{font-size:18px;margin:7px 0 0}
.file-card{align-self:start;background:#f8f1e1;border:1px solid #bcae95;box-shadow:12px 12px 0 rgba(125,50,50,.08)}
.file-tab{background:var(--wine);color:#fff;padding:12px 16px;font-size:10px;font-weight:900;letter-spacing:.14em}
.file-card dl{margin:0;padding:18px}
.file-card dl div{border-bottom:1px solid var(--line);padding:11px 0}
.file-card dl div:last-child{border-bottom:0}
.file-card dt{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.file-card dd{margin:3px 0 0;font-weight:800}
.index-band{background:var(--navy);color:#fff}
.index-grid{display:grid;grid-template-columns:repeat(6,1fr)}
.index-grid a{text-decoration:none;padding:14px 10px;border-left:1px solid #52616e;font-size:11px;font-weight:800}
.index-grid a:last-child{border-right:1px solid #52616e}
.index-grid span{display:block;color:#d1ad67;font-family:Georgia,serif;font-size:17px}
.section{padding:64px 0}
.section-head{display:grid;grid-template-columns:170px 1fr;gap:24px;margin-bottom:34px}
.section-head h2{margin:0}
.timeline{border-top:2px solid var(--ink)}
.timeline article{display:grid;grid-template-columns:130px 1fr;border-bottom:1px solid var(--line);padding:26px 0}
.year{font-family:Georgia,serif;font-size:42px;color:var(--wine)}
.timeline-body .type{font-size:9px;font-weight:900;letter-spacing:.14em;color:var(--green)}
.timeline-body h3{font-family:Georgia,serif;font-size:30px;margin:8px 0}
.timeline-body p{max-width:900px}
.timeline-body a{font-size:12px;font-weight:800;color:var(--wine)}
.timeline article.featured{background:rgba(199,156,76,.12);padding-left:14px;padding-right:14px}
.timeline article.latest{background:rgba(92,114,94,.12);padding-left:14px;padding-right:14px}
.legal-grid-section{background:var(--dark);color:#fff;padding:64px 0}
.inverse .section-code{color:#d1ad67}
.legal-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.legal-grid article{background:#2a333b;padding:20px;border-top:4px solid #d1ad67;min-height:300px}
.legal-ref{font-family:Consolas,monospace;font-size:10px;color:#d1ad67}
.legal-grid h3{margin:15px 0 9px}
.legal-grid ul{padding-left:18px;color:#cbd1d5;font-size:13px}
.legal-grid li{margin-bottom:7px}
.intro-copy,.intro-dark{font-size:17px;max-width:930px}
.annex-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.annex-grid article{background:var(--paper2);border:1px solid var(--line);padding:20px;min-height:200px}
.annex-grid span{font-family:Georgia,serif;font-size:32px;color:var(--wine)}
.annex-grid h3{margin:12px 0 7px}
.annex-grid p{font-size:14px;color:var(--muted)}
.annex-note{margin-top:20px;background:#e5ddca;border-left:5px solid var(--gold);padding:20px}
.annex-note p{margin:5px 0 0}
.derogated-section{background:#31292a;color:#fff;padding:64px 0}
.derogated-section .intro-dark{color:#d6cacc}
.derogated-list{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.derogated-list>div{border:1px solid #5a494b;padding:18px;min-height:125px}
.derogated-list span{display:block;font-size:9px;font-weight:900;letter-spacing:.14em;color:#e48b84}
.derogated-list strong{display:block;margin-top:12px}
.warning-box{margin-top:20px;border:1px solid #7b6668;padding:20px;background:#3b3031}
.warning-box strong{color:#e8b36e}
.warning-box p{margin:5px 0 0;color:#ded1d2}
.reading-order{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.reading-order>div{background:var(--paper2);border:1px solid var(--line);padding:20px;min-height:190px}
.reading-order span{font-family:Georgia,serif;font-size:34px;color:var(--green)}
.reading-order h3{margin:10px 0 7px}
.reading-order p{font-size:14px;color:var(--muted)}
.rule{margin-top:20px;background:var(--navy);color:#fff;padding:22px}
.rule span{font-size:10px;font-weight:900;letter-spacing:.14em;color:#d1ad67}
.rule p{margin:6px 0 0;font-size:17px}
.status-section{background:var(--green);color:#fff;padding:64px 0}
.latest-change{display:grid;grid-template-columns:220px 1fr;gap:34px;align-items:center}
.latest-date{font-family:Georgia,serif;font-size:52px;color:#e8dcae}
.change-label{font-size:9px;font-weight:900;letter-spacing:.13em;color:#dce7dd}
.latest-change h3{font-family:Georgia,serif;font-size:32px;margin:8px 0}
.latest-change p{font-size:18px}
.faq details{border-top:1px solid var(--line);padding:18px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{font-family:Georgia,serif;font-size:20px;font-weight:700;cursor:pointer}
.faq p{max-width:900px}
.source-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.source-list a{text-decoration:none;background:var(--paper2);border:1px solid var(--line);padding:16px;display:grid;grid-template-columns:100px 1fr auto;gap:12px;align-items:center}
.source-list span{font-size:9px;font-weight:900;letter-spacing:.12em;color:var(--wine)}
.source-list strong{font-size:15px}
.source-list em{font-size:12px;color:var(--muted);font-style:normal}
.updated{font-size:12px;color:var(--muted)}
.hub{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;background:var(--navy);color:#fff;padding:34px;margin-bottom:42px}
.hub .micro{color:#d1ad67}
.hub h2{font-size:35px;margin:8px 0}
.hub p{color:#d3dbe0}
.hub-actions{display:flex;flex-direction:column;justify-content:center;gap:10px}
.btn{text-decoration:none;padding:13px 15px;font-weight:800;text-align:center}
.btn.primary{background:#d1ad67;color:#20272d}
.btn.secondary{border:1px solid #83909a;color:#fff}
.editorial{padding:0 0 48px;font-size:13px;color:var(--muted)}
footer{background:#1b2025;color:#aeb5ba}
.footer{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;min-height:86px;font-size:11px;font-weight:800;letter-spacing:.08em}
.footer a{color:#fff}
@media(max-width:1000px){
 .cover,.hub{grid-template-columns:1fr}
 .legal-grid{grid-template-columns:1fr 1fr}
 .annex-grid{grid-template-columns:1fr 1fr}
 .derogated-list{grid-template-columns:1fr 1fr}
 .reading-order{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
 .wrap{width:min(100% - 24px,1180px)}
 .revision-box{display:none}
 .cover{padding-top:42px}
 h1{font-size:48px}
 .index-grid{grid-template-columns:1fr 1fr}
 .section-head{grid-template-columns:1fr}
 .timeline article{grid-template-columns:1fr}
 .legal-grid,.annex-grid,.derogated-list,.reading-order,.source-list{grid-template-columns:1fr}
 .latest-change{grid-template-columns:1fr}
 .source-list a{grid-template-columns:1fr}
 .footer{grid-template-columns:1fr;padding:20px 0}
}
