:root{--cream:#fbf6ec;--paper:#fffdf8;--cream-deep:#f5eddd;--navy:#1b3a5c;--navy-deep:#0b2239;--brown:#6b4a2f;--ink:#2a2118;--gold:#e8a317;--line:#e4d8c2;--red:#7d2430;--blue:#2178c7;--cyan:#35c7f3;--blue-soft:#e6f6ff}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;overflow-x:hidden;background:radial-gradient(circle at 13% 4%,rgba(53,199,243,.2),transparent 24%),radial-gradient(circle at 86% 20%,rgba(53,199,243,.18),transparent 28%),linear-gradient(180deg,#f7fdff 0%,#eef9ff 34%,var(--cream) 76%);color:var(--ink);font-family:"Playfair Display",Georgia,serif;line-height:1.62;-webkit-font-smoothing:antialiased}
body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle,rgba(53,199,243,.24) 1.5px,transparent 2px) 0 0/18px 18px;mask-image:linear-gradient(180deg,rgba(0,0,0,.75),rgba(0,0,0,.12) 48%,transparent 92%);opacity:.4}
a{color:var(--navy);text-underline-offset:3px}
button,input,select{font:inherit}
.shell{width:calc(100% - 40px);max-width:1180px;margin:0 auto}
.site-chrome{position:sticky;top:0;z-index:50;background:rgba(251,246,236,.94);box-shadow:0 10px 34px rgba(11,34,57,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.topbar-inner{min-height:72px;display:flex;align-items:center;gap:14px;overflow:visible;padding-top:10px;padding-bottom:10px}
.brand{display:flex;align-items:center;gap:10px;margin-right:0;color:var(--navy);font-family:"Playfair Display",serif;font-size:16px;font-weight:500;text-decoration:none;white-space:nowrap;min-width:max-content}
.brand img{width:40px;height:40px;object-fit:contain;display:block;flex:0 0 auto}
.brand em{color:var(--gold);font-style:italic}
.main-nav{display:flex;align-items:center;justify-content:center;flex:1;flex-wrap:wrap;gap:clamp(8px,1vw,16px);min-width:0;color:var(--brown);font-size:12px}
.main-nav a{white-space:nowrap;color:var(--brown);font-weight:500;text-decoration:none}
.main-nav a:hover,.main-nav a[aria-current="page"]{color:var(--navy)}
.main-nav .consumer-link{color:var(--red);font-weight:700}
.main-nav .news-link{color:var(--blue);font-weight:800}
.lang{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--red);font-size:12px;font-weight:800;white-space:nowrap}
.lang a{padding:4px;color:inherit;text-decoration:none}
.lang a[aria-current="page"]{border-radius:999px;background:var(--navy);color:#fff}
.page-main{padding:16px 0 64px}
.breadcrumb{display:flex;align-items:center;gap:9px;margin:0 0 18px;color:#6b5b4c;font-size:13px}
.breadcrumb a{font-weight:700}
.breadcrumb [aria-current="page"]{color:var(--navy)}
.intro-card{position:relative;overflow:hidden;border:1px solid rgba(53,199,243,.3);border-radius:26px;background:radial-gradient(circle at 88% 12%,rgba(53,199,243,.25),transparent 30%),linear-gradient(135deg,#f8fcff 0%,#e9f7ff 50%,#e2f5fb 100%);padding:clamp(28px,5vw,58px);box-shadow:0 28px 76px rgba(11,34,57,.11)}
.intro-card:after{content:"";position:absolute;top:-160px;right:-120px;width:380px;height:380px;border:1px solid rgba(33,120,199,.16);border-radius:50%;box-shadow:0 0 0 30px rgba(53,199,243,.045),0 0 0 76px rgba(33,120,199,.035);pointer-events:none}
.intro-card>*{position:relative;z-index:1}
.eyebrow{margin:0;color:var(--red);font-family:Cinzel,Georgia,serif;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
h1,h2,h3{overflow-wrap:anywhere}
h1{max-width:18ch;margin:8px 0 0;color:var(--navy-deep);font-family:Cinzel,Georgia,serif;font-size:clamp(38px,6vw,68px);font-weight:500;line-height:1.04}
.intro-copy{max-width:790px;margin:18px 0 0;color:var(--brown);font-size:19px;line-height:1.55}
.window-note{display:inline-flex;flex-wrap:wrap;gap:6px;margin:22px 0 0;border:1px solid rgba(27,58,92,.17);border-radius:11px;background:rgba(255,255,255,.78);padding:10px 13px;color:var(--navy);font-size:14px;font-weight:700}
.scope-note{max-width:850px;margin:14px 0 0;color:#385a75;font-size:14px}
.intro-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border:1px solid var(--navy);border-radius:9px;background:var(--navy);color:#fff;font-size:13px;font-weight:800;text-decoration:none}
.button.secondary{background:rgba(255,255,255,.72);color:var(--navy)}
.button:hover{filter:brightness(1.08)}
.filters-card{margin-top:22px;border:1px solid rgba(53,199,243,.34);border-radius:20px;background:rgba(255,253,248,.96);padding:clamp(18px,3vw,30px);box-shadow:0 18px 46px rgba(11,34,57,.08)}
.filters-heading,.section-heading{display:flex;align-items:end;justify-content:space-between;gap:18px}
.filters-heading h2,.section-heading h2{margin:4px 0 0;color:var(--navy-deep);font-family:Cinzel,Georgia,serif;font-size:clamp(23px,3vw,34px);font-weight:500;line-height:1.18}
.filter-count,.section-count{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:#fff;padding:6px 10px;color:var(--brown);font-size:12px;font-weight:800}
.filters-grid{display:grid;grid-template-columns:minmax(200px,1.35fr) minmax(155px,.8fr) minmax(210px,1fr) minmax(220px,1fr);align-items:end;gap:12px;margin-top:21px}
.field{display:grid;gap:6px;min-width:0}
.field label{color:var(--navy);font-family:Cinzel,Georgia,serif;font-size:11px;font-weight:800;letter-spacing:.04em}
.field input,.field select{width:100%;min-width:0;min-height:44px;border:1px solid rgba(27,58,92,.25);border-radius:8px;background:#fff;color:var(--navy-deep);padding:9px 11px;font-family:"Playfair Display",Georgia,serif;font-size:14px}
.field input:focus,.field select:focus{outline:3px solid rgba(53,199,243,.3);border-color:var(--blue)}
.field select:disabled{background:#f2f1ee;color:#766f65}
.archive-toggle{display:flex;align-items:center;gap:10px;min-height:44px;border:1px solid var(--line);border-radius:9px;background:#fffaf0;padding:8px 11px;color:var(--navy)}
.archive-toggle input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--navy)}
.archive-toggle span{display:grid;gap:1px}
.archive-toggle strong{font-size:13px}
.archive-toggle small{color:#6b5b4c;font-size:11px;line-height:1.3}
.filter-help,.results-summary,.noscript-note{margin:12px 0 0;color:#385a75;font-size:13px}
.results-summary{border-top:1px solid rgba(228,216,194,.75);padding-top:12px;font-weight:700}
.results-list{display:grid;gap:24px;margin-top:28px}
.results-section{display:grid;gap:14px}
.section-heading{padding:0 2px}
.section-heading .eyebrow{max-width:56ch;font-family:"Playfair Display",Georgia,serif;font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;color:#6b5b4c}
.article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.article-card{display:flex;flex-direction:column;min-width:0;border:1px solid rgba(53,199,243,.28);border-radius:16px;background:rgba(255,253,248,.98);padding:clamp(18px,2vw,25px);box-shadow:0 16px 44px rgba(11,34,57,.075)}
.article-card h3{margin:8px 0 0;color:var(--navy-deep);font-family:Cinzel,Georgia,serif;font-size:clamp(19px,2vw,25px);font-weight:600;line-height:1.25}
.article-card h3 a{color:inherit;text-decoration:none}
.article-card h3 a:hover{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px}
.card-kicker{margin:0;color:var(--red);font-family:Cinzel,Georgia,serif;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.jurisdiction{align-self:flex-start;margin:10px 0 0;border:1px solid rgba(27,58,92,.17);border-radius:999px;background:#f5fbff;padding:5px 9px;color:var(--navy);font-size:11px;font-weight:800}
.summary{margin:14px 0 0;color:var(--brown);font-size:15px;line-height:1.56}
.card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;color:#6b5b4c;font-size:12px}
.card-meta time{font-weight:700}
.date-label{border:1px solid var(--line);border-radius:999px;background:#fff;padding:4px 8px;color:var(--navy);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px 14px;margin-top:auto;padding-top:18px}
.article-link{display:inline-flex;align-items:center;min-height:36px;border:1px solid var(--navy);border-radius:8px;background:var(--navy);padding:7px 10px;color:#fff;font-size:12px;font-weight:800;text-decoration:none}
.source-link,.video-link{font-size:12px;font-weight:700}
.video-status{flex:1 1 100%;margin:1px 0 0;color:#6b5b4c;font-size:12px}
.empty-state{border:1px dashed rgba(27,58,92,.3);border-radius:14px;background:rgba(255,255,255,.75);padding:24px;color:var(--brown)}
.source-note{max-width:850px;margin:26px auto 0;color:#6b5b4c;font-size:12px;line-height:1.5}
.ag-footer{background:#0f2439;color:rgba(251,246,236,.88);padding:52px 40px 38px}
.ag-footer-inner{max-width:1180px;margin:0 auto}
.ag-footer a{color:rgba(251,246,236,.66);text-decoration:underline;text-decoration-color:rgba(232,163,23,.45);text-underline-offset:3px}
.ag-footer a:hover{color:#fff;text-decoration-color:#e8a317}
.ag-footer a:focus-visible{outline:3px solid #35c7f3;outline-offset:3px;border-radius:2px}
.ag-footer-policy{border:1px solid rgba(232,163,23,.24);background:rgba(251,246,236,.04);border-radius:20px;padding:26px;margin-bottom:34px}
.ag-footer-policy-label{font-family:Cinzel,Georgia,serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#e8a317;margin-bottom:10px}
.ag-footer-policy h2{font-family:Cinzel,Georgia,serif;font-size:clamp(26px,3vw,36px);font-weight:400;color:#fbf6ec;margin:0 0 12px}
.ag-footer-policy-summary{font-size:14px;line-height:1.7;color:rgba(251,246,236,.72);max-width:920px;margin:0 0 18px}
.ag-footer-policy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;text-align:left}
.ag-footer-policy-card{border:1px solid rgba(228,216,194,.14);border-radius:14px;padding:16px;background:rgba(255,255,255,.03)}
.ag-footer-policy-card strong{display:block;color:#fbf6ec;font-size:13px;margin-bottom:7px}
.ag-footer-policy-card span{display:block;color:rgba(251,246,236,.62);font-size:12px;line-height:1.55}
.ag-footer-grid{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(140px,.6fr));gap:28px;align-items:start}
.ag-footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.ag-footer-brand img{width:42px;height:42px;object-fit:contain}
.ag-footer-brand strong{display:block;color:#fbf6ec;font-size:18px}
.ag-footer-brand span{display:block;color:rgba(251,246,236,.55);font-size:12px}
.ag-footer-description{font-size:14px;line-height:1.7;color:rgba(251,246,236,.64);max-width:340px;margin:0 0 14px}
.ag-footer-contact-lines,.ag-footer-link-group>div{display:flex;flex-direction:column;gap:8px}
.ag-footer-contact-lines{gap:6px}
.ag-footer-contact-lines a{color:#e8a317;font-size:13px}
.ag-footer-link-group h3{font-family:Cinzel,Georgia,serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fbf6ec;margin:0 0 12px}
.ag-footer-link-group a{font-size:13px}
.ag-footer-link-group a[hreflang="es"]{color:#e8a317}
.ag-footer-copyright{margin-top:30px;padding-top:18px;border-top:1px solid rgba(228,216,194,.14);font-size:12px;color:rgba(251,246,236,.48);text-align:center}
[hidden]{display:none!important}
@media (max-width:1024px){.ag-footer-grid{grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(120px,.7fr))!important}}
@media (max-width:767px){.ag-footer{padding:42px 18px 30px!important}.ag-footer-grid{grid-template-columns:minmax(0,1fr)!important}.ag-footer-policy{padding:20px!important}.ag-footer-policy-grid{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:1050px){.topbar-inner{align-items:flex-start;flex-wrap:wrap}.main-nav{order:3;flex-basis:100%;justify-content:flex-start}.lang{margin-left:auto}.filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.shell{width:calc(100% - 28px)}.topbar-inner{gap:8px 12px}.brand{font-size:14px}.brand img{width:34px;height:34px}.main-nav{justify-content:flex-start;gap:9px 13px;font-size:11px}.lang{min-height:30px}.intro-card{border-radius:19px;padding:28px 21px}.intro-copy{font-size:16px}.window-note{font-size:12px}.filters-heading,.section-heading{align-items:flex-start;flex-direction:column}.filters-grid{grid-template-columns:1fr}.article-grid{grid-template-columns:1fr}.article-card{padding:18px}.page-main{padding-top:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
