@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap");

:root { --font-display:"Cormorant Garamond"; --font-sans:"Manrope"; --green:#103b35; --green-2:#174d45; --petrol:#0c4a54; --gold:#c5a05a; --gold-light:#e3cf9f; --ivory:#f7f2e8; --paper:#fffdf8; --ink:#18302e; --muted:#657672; --line:#d8ddd7; --red:#9b3b35; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-sans),sans-serif; line-height:1.65; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; }
button,input,select,textarea { font:inherit; }
:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.shell { width:min(1180px,calc(100% - 40px)); margin-inline:auto; }
.skip-link { position:fixed; left:16px; top:-60px; z-index:100; background:#fff; padding:12px 18px; border:2px solid var(--green); }
.skip-link:focus { top:12px; }
.utility-bar { background:var(--green); color:#e9ede9; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; }
.utility-inner { min-height:34px; display:flex; justify-content:space-between; align-items:center; }
.utility-inner a { color:var(--gold-light); }
.site-header { position:sticky; top:0; z-index:50; background:rgba(255,253,248,.96); border-bottom:1px solid rgba(16,59,53,.13); backdrop-filter:blur(14px); }
.header-inner { min-height:92px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:flex; align-items:center; gap:12px; max-width:390px; }
.brand img { width:58px; height:62px; object-fit:contain; }
.brand span { display:flex; flex-direction:column; line-height:1.18; }
.brand strong { font-family:var(--font-display),serif; font-size:1.7rem; letter-spacing:.08em; color:var(--green); }
.brand small { color:var(--muted); font-size:.58rem; max-width:270px; }
.desktop-nav { display:flex; align-items:center; gap:19px; font-size:.77rem; font-weight:600; }
.desktop-nav>a:not(.minister-button) { padding:34px 0; border-bottom:2px solid transparent; }
.desktop-nav>a:hover { color:var(--petrol); border-color:var(--gold); }
.minister-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 18px; background:var(--green); color:#fff; border:1px solid var(--green); font-size:.74rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.minister-button:hover { background:var(--petrol); }
.mobile-menu { display:none; }

.eyebrow,.chapter { margin:0 0 18px; color:var(--gold); font-size:.72rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.home-hero { position:relative; overflow:hidden; background:linear-gradient(125deg,#f9f5ec 0%,#fffdf8 58%,#eef4f1 100%); border-bottom:1px solid var(--line); }
.home-hero:before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 81% 39%,rgba(197,160,90,.18),transparent 31%); }
.hero-grid { position:relative; min-height:670px; display:grid; grid-template-columns:1.12fr .88fr; align-items:center; gap:48px; }
.hero-copy h1 { max-width:680px; margin:0 0 24px; font-family:var(--font-display),serif; font-size:clamp(4rem,7vw,6.7rem); line-height:.85; font-weight:600; letter-spacing:-.045em; color:var(--green); }
.hero-copy h1 em { display:block; color:var(--petrol); font-weight:500; }
.hero-copy>p:not(.eyebrow) { max-width:610px; font-size:1.08rem; color:#52645f; }
.hero-actions { display:flex; align-items:center; gap:24px; margin-top:34px; flex-wrap:wrap; }
.primary-button,.light-button { display:inline-flex; min-height:50px; align-items:center; justify-content:center; padding:0 24px; border:1px solid var(--green); background:var(--green); color:#fff; font-size:.78rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.primary-button:hover { background:var(--petrol); border-color:var(--petrol); }
.text-button { font-size:.82rem; font-weight:700; color:var(--green); }
.text-button span { margin-left:12px; color:var(--gold); }
.hero-signature { display:flex; gap:15px; align-items:center; margin-top:48px; color:var(--green); font-family:var(--font-display),serif; font-size:1.15rem; }
.hero-signature i { color:var(--gold); }
.hero-mark { position:relative; min-height:560px; display:grid; place-items:center; }
.hero-mark img { position:relative; z-index:2; width:min(460px,95%); height:auto; object-fit:contain; filter:drop-shadow(0 28px 34px rgba(21,53,49,.18)); }
.mark-halo { position:absolute; width:450px; aspect-ratio:1; border:1px solid rgba(197,160,90,.45); border-radius:50%; }
.mark-halo:before,.mark-halo:after { content:""; position:absolute; border:1px solid rgba(12,74,84,.11); border-radius:50%; }
.mark-halo:before { inset:24px; }.mark-halo:after { inset:-38px; }

.intro-section { padding-block:112px; }
.chapter { color:var(--petrol); border-bottom:1px solid var(--line); padding-bottom:16px; }
.intro-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:10%; align-items:start; }
.intro-grid h2,.section-heading h2,.network-section h2,.cta-section h2 { font-family:var(--font-display),serif; font-weight:600; letter-spacing:-.025em; }
.intro-grid h2 { margin:0; max-width:650px; font-size:clamp(2.8rem,5vw,4.6rem); line-height:.98; color:var(--green); }
.intro-grid>div>p { font-size:1.05rem; color:var(--muted); }
.arrow-link { display:inline-flex; gap:22px; align-items:center; margin-top:18px; color:var(--green); font-weight:700; font-size:.82rem; border-bottom:1px solid var(--gold); padding-bottom:6px; }
.arrow-link span { color:var(--gold); }
.purpose-section { padding:110px 0; background:var(--green); color:#f4f0e7; }
.section-heading { max-width:740px; margin-bottom:52px; }
.section-heading h2 { margin:0; font-size:clamp(2.5rem,4.8vw,4.2rem); line-height:1; }
.section-heading>p:last-child { color:inherit; opacity:.7; }
.purpose-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.22); }
.purpose-grid article { min-height:315px; padding:34px 36px 20px 0; border-right:1px solid rgba(255,255,255,.18); }
.purpose-grid article+article { padding-left:36px; }
.purpose-grid article:last-child { border:0; }
.purpose-grid span { color:var(--gold-light); font-size:.74rem; }
.purpose-grid h3 { margin:50px 0 12px; font-family:var(--font-display),serif; font-size:2.3rem; }
.purpose-grid p { color:#c6d2cd; font-size:.88rem; }
.purpose-grid .arrow-link { color:#fff; }

.president-section { display:grid; grid-template-columns:.82fr 1.18fr; gap:9%; align-items:center; padding-block:120px; }
.president-photo,.leadership-photo { position:relative; overflow:hidden; background:#e4e7e1; }
.president-photo { min-height:620px; }
.president-photo img,.leadership-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center top; }
.president-copy blockquote { margin:0 0 28px; color:var(--green); font-family:var(--font-display),serif; font-size:clamp(2.3rem,4vw,3.8rem); line-height:1.02; }
.president-copy>p:not(.chapter,.president-name) { color:var(--muted); }
.president-name { display:flex; flex-direction:column; margin:28px 0; }
.president-name strong { color:var(--green); font-size:.82rem; }.president-name span { color:var(--muted); font-size:.78rem; }

.agenda-section { padding:105px 0; background:var(--ivory); }
.agenda-grid { display:grid; grid-template-columns:1.25fr .75fr; border-top:1px solid #cfc9bb; }
.agenda-grid article { padding:42px 44px 35px 0; }.agenda-grid article+article { padding-left:44px; border-left:1px solid #cfc9bb; }
.demo-label { color:var(--red); font-size:.65rem; font-weight:700; letter-spacing:.15em; }
.date-tile { display:flex; align-items:center; gap:14px; margin:35px 0 25px; }.date-tile b { font-family:var(--font-display),serif; font-size:3rem; color:var(--green); }.date-tile small { max-width:110px; font-size:.62rem; font-weight:700; }
.agenda-grid h3 { font-family:var(--font-display),serif; color:var(--green); font-size:2.25rem; line-height:1.05; }.agenda-grid p { color:var(--muted); }
.home-event-list,.home-news-list { margin:28px 0 30px; }
.home-event-item { display:grid; grid-template-columns:72px 1fr; gap:20px; padding:23px 0; border-top:1px solid #d8d2c6; }
.home-event-item>span { align-self:start; color:var(--green); font-family:var(--font-display),serif; font-size:1.5rem; font-weight:700; }
.home-event-item small,.home-news-item small { color:var(--red); font-size:.6rem; font-weight:700; letter-spacing:.13em; }
.home-event-item h3,.home-news-item h3 { margin:5px 0 7px; font-size:1.65rem; }
.home-event-item p,.home-news-item p { margin:0; font-size:.8rem; }
.home-event-item.is-next { margin-top:4px; padding-inline:18px; background:#e8e2d3; border-top-color:var(--gold); }
.home-news-item { padding:22px 0; border-top:1px solid #d8d2c6; }
.home-news-item:first-child { border-top-color:var(--gold); }
.network-section { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:9%; min-height:620px; padding-block:90px; }
.network-section h2 { margin:0; font-size:4rem; line-height:.98; color:var(--green); }
.network-section>div>p:not(.chapter) { color:var(--muted); max-width:630px; }
.network-map { position:relative; height:400px; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle,rgba(197,160,90,.23),transparent 60%); }
.network-map:before,.network-map:after { content:""; position:absolute; border:1px solid rgba(12,74,84,.25); border-radius:50%; }.network-map:before{inset:18%;}.network-map:after{inset:6%;}
.network-map span { z-index:1; width:130px; height:130px; display:grid; place-items:center; border-radius:50%; background:var(--green); color:var(--gold-light); font-family:var(--font-display),serif; font-size:2.8rem; }.network-map i { position:absolute; width:82%; border-top:1px solid var(--gold); transform:rotate(-28deg); }.network-map b { position:absolute; right:14%; top:12%; color:var(--red); font-size:2rem; }
.cta-section { padding:90px 0; background:var(--petrol); color:#fff; }.cta-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:10%; align-items:end; }.cta-section h2 { margin:0; font-size:4rem; line-height:.95; }.cta-section p { color:#d3e1df; }.light-button { margin-top:18px; background:var(--gold-light); border-color:var(--gold-light); color:var(--green); }.text-button.light { color:#fff; }

.page-hero { padding:92px 0 75px; background:linear-gradient(120deg,var(--ivory),#fff); border-bottom:1px solid var(--line); }
.page-hero h1 { max-width:850px; margin:0; font-family:var(--font-display),serif; color:var(--green); font-size:clamp(3.4rem,7vw,6rem); line-height:.92; letter-spacing:-.04em; }
.page-hero .lede { max-width:760px; margin:25px 0 0; color:var(--muted); font-size:1.05rem; }
.content-layout { display:grid; grid-template-columns:1fr 280px; gap:8%; padding-block:90px; }
.prose-grid { border-top:1px solid var(--line); }.prose-card { display:grid; grid-template-columns:70px 1fr; gap:24px; padding:40px 0; border-bottom:1px solid var(--line); }.section-number { color:var(--gold); font-size:.72rem; }.prose-card h2 { margin:0 0 12px; font-family:var(--font-display),serif; color:var(--green); font-size:2.4rem; }.prose-card p { color:var(--muted); }.placeholder { color:var(--red)!important; font-size:.75rem; font-weight:700; letter-spacing:.08em; }
.pillar-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:28px; }
.pillar-grid article { padding:18px; background:var(--ivory); border-left:2px solid var(--gold); }
.pillar-grid strong,.pillar-grid span { display:block; }
.pillar-grid strong { margin-bottom:6px; color:var(--green); font-family:var(--font-display),serif; font-size:1.22rem; }
.pillar-grid span { color:var(--muted); font-size:.77rem; line-height:1.55; }
.history-timeline .prose-card { position:relative; }
.history-timeline .section-number { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:var(--green); color:var(--gold-light); }
.history-timeline .prose-card:not(:last-child):before { content:""; position:absolute; left:18px; top:78px; bottom:-1px; border-left:1px solid var(--gold); }
.doctrine-callout { margin:34px 0 0; padding:30px; background:var(--green); color:#fff; border-top:4px solid var(--gold); }
.doctrine-callout strong { font-family:var(--font-display),serif; color:var(--gold-light); font-size:1.8rem; }
.doctrine-callout p { margin-bottom:0; color:#d1ded9; }
.statute-topics { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:22px; }
.statute-topics span { padding:14px 16px; background:var(--ivory); color:var(--green); font-size:.78rem; font-weight:700; }
.prose-card .document-download { margin-top:18px; }
.file-note { display:block; margin-top:10px; color:var(--muted); }
.statute-note { margin-bottom:35px; }
.side-nav { align-self:start; position:sticky; top:130px; display:flex; flex-direction:column; padding:24px; border:1px solid var(--line); }.side-nav h2 { margin:0 0 13px; font-family:var(--font-display),serif; }.side-nav a { padding:8px 0; font-size:.78rem; border-bottom:1px solid #edf0eb; }.side-nav a:hover { color:var(--petrol); }
.pending-note { margin-top:30px; padding:20px 22px; border-left:3px solid var(--gold); background:var(--ivory); }.pending-note strong { color:var(--green); }.pending-note p { margin:4px 0 0; color:var(--muted); font-size:.82rem; }
.leadership-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:8%; padding-block:90px; }.leadership-photo { min-height:700px; }.leadership-copy h2 { font-family:var(--font-display),serif; color:var(--green); font-size:3.5rem; line-height:1; }.leadership-copy h3 { font-family:var(--font-display),serif; font-size:2rem; }.leadership-copy hr { margin:40px 0; border:0; border-top:1px solid var(--line); }
.directory,.listing-section { padding-block:80px; }.filter-bar { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-bottom:28px; }.filter-bar label { color:var(--muted); font-size:.75rem; font-weight:700; }.filter-bar select,.news-tools input { width:100%; display:block; margin-top:8px; padding:13px; border:1px solid var(--line); background:#f6f6f2; color:#87918f; }.empty-state { margin-top:50px; padding:65px; text-align:center; border:1px dashed #bac5c1; background:#faf9f5; }.empty-state span,.document-row span { color:var(--gold); font-size:.68rem; font-weight:700; letter-spacing:.15em; }.empty-state h2 { margin:12px 0; font-family:var(--font-display),serif; color:var(--green); font-size:3rem; }.empty-state p { max-width:680px; margin-inline:auto; color:var(--muted); }
.event-card { display:grid; grid-template-columns:160px 1fr; gap:40px; margin-bottom:85px; padding:40px; border:1px solid var(--line); }.event-card h2,.document-row h2 { margin:0; font-family:var(--font-display),serif; color:var(--green); font-size:2.3rem; }
.event-card-upcoming { background:var(--ivory); border-top:3px solid var(--gold); }
.news-tools { max-width:700px; margin-bottom:45px; }.news-tools>label { font-weight:700; }.news-tools>div { display:grid; grid-template-columns:1fr 130px; margin-top:8px; }.news-tools input { margin:0; }.news-tools button { border:0; background:var(--green); color:#fff; }.news-tools p { color:var(--muted); font-size:.75rem; }
.document-row { display:flex; justify-content:space-between; gap:30px; align-items:center; padding:34px 0; border-bottom:1px solid var(--line); }.document-row p { margin:4px 0; color:var(--muted); }.document-row button { padding:12px 16px; border:1px solid var(--line); background:#f3f3ee; color:#87918f; }
.document-row>div { max-width:760px; }
.document-download { display:inline-flex; flex:0 0 auto; min-height:46px; align-items:center; justify-content:center; padding:0 18px; border:1px solid var(--green); background:var(--green); color:#fff; font-size:.72rem; font-weight:700; letter-spacing:.05em; }
.document-download:hover { background:var(--petrol); border-color:var(--petrol); color:#fff; }
.featured-document { margin-top:10px; padding-inline:24px; background:var(--ivory); border-top:2px solid var(--gold); }
.affiliation { display:grid; grid-template-columns:1fr 320px; gap:8%; padding-block:80px; }.steps { border-top:1px solid var(--line); }.steps article { display:grid; grid-template-columns:65px 1fr; padding:32px 0; border-bottom:1px solid var(--line); }.steps span { color:var(--gold); font-size:.72rem; }.steps h2 { margin:0; font-family:var(--font-display),serif; color:var(--green); font-size:2rem; }.affiliation>aside { align-self:start; padding:28px; background:var(--green); color:#fff; }.affiliation>aside h2 { font-family:var(--font-display),serif; font-size:2rem; }.affiliation>aside .arrow-link { color:#fff; }
.contact-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:8%; padding-block:80px; }.contact-grid h2 { font-family:var(--font-display),serif; color:var(--green); font-size:2.4rem; }.contact-grid dl { margin:30px 0; }.contact-grid dt { margin-top:18px; color:var(--gold); font-size:.68rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }.contact-grid dd { margin:4px 0; color:var(--muted); }.legal-small { font-size:.72rem; color:var(--muted); }.legal-small a { text-decoration:underline; }
.contact-form { padding:36px; background:var(--ivory); }.field-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.contact-form label { display:block; margin-bottom:18px; color:var(--green); font-size:.75rem; font-weight:700; }.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea { width:100%; margin-top:7px; padding:13px; border:1px solid #c9cec8; background:#fff; }.contact-form textarea { resize:vertical; }.consent { display:flex!important; gap:10px; align-items:flex-start; color:var(--muted)!important; font-weight:400!important; }.consent input { margin-top:5px; }.honeypot { position:absolute; left:-10000px; }.form-notice { margin-top:18px; padding:15px; background:#e5eee8; color:var(--green); font-size:.8rem; }
.minister-page { background:var(--green); color:#fff; }.minister-hero { min-height:760px; padding-block:110px; }.minister-hero h1 { margin:0; font-family:var(--font-display),serif; color:var(--gold-light); font-size:clamp(4rem,9vw,8rem); line-height:.9; }.minister-hero>p:not(.eyebrow) { max-width:720px; font-size:1.1rem; color:#c9d8d2; }.future-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:55px; border-top:1px solid rgba(255,255,255,.2); }.future-grid div { padding:27px 22px 27px 0; border-bottom:1px solid rgba(255,255,255,.2); font-size:.85rem; }.future-grid div:nth-child(3n+2),.future-grid div:nth-child(3n+3) { padding-left:22px; border-left:1px solid rgba(255,255,255,.2); }
.not-found { padding-block:70px; }

.site-footer { padding:70px 0 24px; background:#0b2e2a; color:#dce7e2; }.footer-grid { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:55px; }.footer-brand { display:flex; gap:16px; align-items:flex-start; }.footer-brand img { width:72px; height:auto; }.footer-brand strong { color:var(--gold-light); font-family:var(--font-display),serif; font-size:2rem; letter-spacing:.08em; }.footer-brand p { max-width:270px; margin:4px 0; color:#9bb0a8; font-size:.7rem; }.footer-grid>div:not(.footer-brand) { display:flex; flex-direction:column; }.footer-grid h2 { margin:0 0 12px; color:var(--gold-light); font-family:var(--font-display),serif; font-size:1.4rem; }.footer-grid a,.footer-grid p { margin:4px 0; color:#aabbb5; font-size:.72rem; }.footer-grid a:hover { color:#fff; }.footer-bottom { display:flex; justify-content:space-between; margin-top:50px; padding-top:20px; border-top:1px solid rgba(255,255,255,.14); color:#829b92; font-size:.65rem; }.footer-bottom span:last-child { display:flex; gap:18px; }

@media (max-width:1050px) { .desktop-nav>a:nth-child(n+5):not(.minister-button){display:none}.hero-grid{grid-template-columns:1.05fr .95fr}.hero-copy h1{font-size:5.3rem}.footer-grid{grid-template-columns:1.3fr repeat(2,1fr)}.footer-grid>div:last-child{display:none} }
@media (max-width:800px) { .shell{width:min(100% - 30px,680px)}.utility-bar{display:none}.site-header{position:relative}.header-inner{min-height:82px}.brand small{display:none}.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{list-style:none;padding:10px 14px;border:1px solid var(--green);font-size:.75rem;font-weight:700}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:50px;z-index:30;width:min(330px,85vw);display:flex;flex-direction:column;padding:18px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 35px rgba(15,48,44,.16)}.mobile-menu nav a{padding:9px 6px}.mobile-menu .minister-button{margin-top:10px}.hero-grid{min-height:auto;grid-template-columns:1fr;padding:75px 0 50px}.hero-copy h1{font-size:clamp(3.8rem,14vw,5.5rem)}.hero-mark{min-height:390px}.hero-mark img{width:340px}.mark-halo{width:330px}.intro-grid,.president-section,.network-section,.cta-grid,.leadership-grid,.contact-grid,.affiliation{grid-template-columns:1fr}.intro-section,.president-section{padding-block:75px}.purpose-grid{grid-template-columns:1fr}.purpose-grid article,.purpose-grid article+article{min-height:auto;padding:26px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.purpose-grid h3{margin:24px 0 7px}.president-photo{min-height:550px}.agenda-grid{grid-template-columns:1fr}.agenda-grid article,.agenda-grid article+article{padding:30px 0;border-left:0;border-bottom:1px solid #cfc9bb}.network-section{min-height:auto}.network-section h2,.cta-section h2{font-size:3.2rem}.network-map{height:330px}.content-layout{grid-template-columns:1fr;padding-block:55px}.side-nav{position:static}.leadership-photo{min-height:600px}.filter-bar{grid-template-columns:1fr}.affiliation>aside{order:-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.future-grid{grid-template-columns:1fr 1fr}.future-grid div:nth-child(3n+2),.future-grid div:nth-child(3n+3){padding-left:0;border-left:0}.future-grid div:nth-child(even){padding-left:18px;border-left:1px solid rgba(255,255,255,.2)} }
@media (max-width:520px) { .shell{width:calc(100% - 24px)}.brand img{width:50px;height:54px}.brand strong{font-size:1.45rem}.hero-grid{padding-top:58px}.hero-copy h1{font-size:3.7rem}.hero-mark{min-height:330px}.hero-mark img{width:280px}.mark-halo{width:270px}.hero-signature{margin-top:34px}.page-hero{padding:65px 0 55px}.page-hero h1{font-size:3.55rem}.prose-card{grid-template-columns:38px 1fr}.president-photo,.leadership-photo{min-height:500px}.event-card{grid-template-columns:1fr;padding:24px}.empty-state{padding:38px 20px}.empty-state h2{font-size:2.3rem}.document-row{align-items:flex-start;flex-direction:column}.field-row{grid-template-columns:1fr}.contact-form{padding:22px}.future-grid{grid-template-columns:1fr}.future-grid div:nth-child(even){padding-left:0;border-left:0}.footer-grid{grid-template-columns:1fr}.footer-bottom{align-items:flex-start;flex-direction:column;gap:14px} }
@media (max-width:700px) { .pillar-grid,.statute-topics{grid-template-columns:1fr}.history-timeline .prose-card:not(:last-child):before{display:none}.doctrine-callout{padding:23px}.featured-document{padding-inline:16px} }
@media (max-width:520px) { .home-event-item{grid-template-columns:56px 1fr;gap:12px}.home-event-item.is-next{padding-inline:12px}.home-event-item h3,.home-news-item h3{font-size:1.45rem} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important} }

.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}.alert{padding:14px 16px;margin-bottom:22px;border-left:3px solid var(--gold);background:#fff}.alert.success{border-color:#377d56;background:#edf7f0}.alert.error{border-color:var(--red);background:#faeeee}.login-card{max-width:560px;margin:0 auto;padding:38px;background:var(--paper);color:var(--ink);border:1px solid rgba(255,255,255,.2)}.login-card h2{font-family:var(--font-display),serif;color:var(--green);font-size:2.4rem;margin-top:0}.login-card label{display:block;margin:15px 0;color:var(--green);font-size:.78rem;font-weight:700}.login-card input{width:100%;padding:13px;margin-top:6px;border:1px solid var(--line)}.dashboard-section{padding-block:70px}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.dashboard-card{padding:25px;border:1px solid var(--line);background:#fff}.dashboard-card h2{font-family:var(--font-display),serif;color:var(--green)}.inline-form{display:inline}.logout-button{border:1px solid var(--gold);padding:10px 15px;background:transparent;color:inherit;cursor:pointer}@media(max-width:800px){.dashboard-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
