/* Regulatory reference workbench. Uses the existing GoVisually typography and colour tokens. */
.reg-app .topbar{gap:24px}.reg-nav{display:flex;align-items:center;gap:26px;font-size:13px}.reg-nav a:hover{color:var(--accent)}.reg-saved-link{border-left:1px solid var(--line);padding-left:24px}.reg-saved-link span{margin-left:5px;font-variant-numeric:tabular-nums}.reg-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;padding:54px 0 32px}.reg-intro h1{font-size:clamp(32px,4.4vw,56px);line-height:1.08;letter-spacing:-2px;margin:18px 0}.reg-intro p{font-size:16px;line-height:1.7;color:var(--muted)}.reg-intro-note{display:flex;flex-direction:column;gap:10px;border-left:2px solid var(--accent);padding:6px 0 6px 22px;margin-bottom:12px;flex-shrink:0}.reg-intro-note strong{font-size:17px;font-weight:550}.reg-intro-note span,.reg-intro-note a{font-size:12px;color:var(--muted)}.reg-intro-note a{color:var(--accent)}.reg-search{gap:10px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:7px 7px 7px 20px;margin:10px 0 0}.js .reg-search{display:flex}.reg-search input{flex:1;min-width:0;font:inherit;font-size:15px;min-height:42px;border:0;background:transparent;color:var(--ink)}.reg-filterbar{gap:16px;align-items:flex-end;padding:20px 0 24px;border-bottom:1px solid var(--line)}.js .reg-filterbar{display:flex}.reg-filterbar label{display:flex;flex:1;min-width:0;flex-direction:column;gap:7px;font-size:11px;color:var(--muted)}.reg-filterbar select{width:100%;min-height:42px;padding:8px 10px;font:inherit;font-size:12px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink)}.reg-filterbar select:disabled{opacity:.45}.reg-workbench{display:grid;grid-template-columns:205px minmax(0,1fr);gap:48px;padding-top:30px}.reg-countries h2{font-size:12px;font-weight:600;margin:0 0 18px}.reg-countries details{border-bottom:1px solid var(--line);padding:12px 0}.reg-countries summary{cursor:pointer;font-size:13px;font-weight:550}.reg-countries details a{display:block;font-size:12px;color:var(--muted);padding:7px 0 2px 14px}.reg-countries details a:hover{color:var(--accent)}.reg-about{display:block;font-size:12px;color:var(--accent);margin-top:24px;line-height:1.6}.reg-results-head{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding-bottom:12px}.reg-tabs{gap:20px;align-items:center}.js .reg-tabs{display:flex}.reg-tabs button{background:transparent;border:0;padding:12px 0;font:inherit;font-size:13px;color:var(--muted);cursor:pointer;box-shadow:0 2px transparent}.reg-tabs button.selected{color:var(--ink);font-weight:600;box-shadow:0 2px var(--accent)}#reg-results-status{font-size:12px;color:var(--muted);margin:20px 0}.reg-scope{font-size:12px;line-height:1.6;padding-left:12px;border-left:2px solid var(--line);color:var(--muted)}.reg-row{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding:24px 0}.reg-row>div{min-width:0}.reg-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:10px;font-weight:550;letter-spacing:.25px;color:var(--muted)}.reg-meta span:first-child{color:var(--accent)}.reg-row h3{font-size:18px;line-height:1.4;margin:9px 0 8px;letter-spacing:-.25px;font-weight:550}.reg-row h3 a:hover{text-decoration:underline;text-underline-offset:4px}.reg-row h3 a span{color:var(--muted);font-size:14px}.reg-row p{font-size:13px;line-height:1.7;color:var(--muted);max-width:740px;margin:0}.reg-row-foot{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:13px;font-size:10px;color:var(--muted)}.reg-save{flex-shrink:0;align-self:flex-start;margin-top:25px;border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:4px;padding:7px 11px;font:inherit;font-size:11px;cursor:pointer}.reg-save:hover,.reg-save[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.reg-save[aria-pressed=true]{background:var(--surface)}.reg-empty{padding:60px 0}.reg-empty h2{font-size:22px}.reg-empty p{font-size:14px;color:var(--muted);line-height:1.7;margin:12px 0 24px}.reg-bottom{border-top:1px solid var(--line);padding:42px 0 10px;margin-top:64px}.reg-bottom h2{font-size:28px;letter-spacing:-.7px}.reg-bottom p{font-size:14px;line-height:1.7;color:var(--muted);max-width:620px;margin:12px 0 20px}.reg-detail{max-width:1160px}.reg-detail header{max-width:880px;padding:35px 0 42px}.reg-detail h1{font-size:clamp(30px,4vw,46px);line-height:1.16;letter-spacing:-1.4px;margin:12px 0 18px}.reg-eyebrow{font-size:11px;letter-spacing:.4px;color:var(--accent);font-weight:550}.reg-fullname{font-size:15px;color:var(--muted);margin-bottom:18px}.reg-detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.reg-detail-actions .reg-save{margin:0;padding:10px 16px;font-size:12px}.reg-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:64px;border-top:1px solid var(--line);padding-top:32px}.reg-detail article>section{margin-bottom:35px}.reg-detail h2{font-size:19px;font-weight:550;letter-spacing:-.3px;line-height:1.4;margin:0 0 14px}.reg-detail article>section>p,.reg-detail article li{font-size:14px;line-height:1.8;color:var(--muted)}.reg-detail article ul{padding-left:20px}.reg-facts{margin:0}.reg-facts>div{padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.reg-facts dt{font-size:10px;color:var(--muted);margin-bottom:7px}.reg-facts dd{font-size:13px;margin:0;line-height:1.6}.reg-facts a{color:var(--accent)}.reg-small{font-size:11px!important;line-height:1.7!important;color:var(--muted)}.reg-authority-link{display:flex;flex-direction:column;gap:5px;border-left:2px solid var(--accent);padding:8px 0 8px 16px;margin:18px 0}.reg-authority-link strong{font-size:15px}.reg-authority-link span{font-size:12px;color:var(--muted)}.reg-mark-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.reg-mark-links a{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:4px;padding:14px;font-size:12px}.reg-mark-links img{object-fit:contain;max-width:65px;height:42px}.reg-country-columns{display:grid;grid-template-columns:1fr 1.4fr;gap:50px;border-top:1px solid var(--line);padding:35px 0}.reg-country-columns h2>span{font-size:12px;font-weight:400;color:var(--muted);margin-left:8px}.reg-definitions dt{font-weight:600;margin-top:20px}.reg-definitions dd{margin:5px 0 0;color:var(--muted);font-size:14px;line-height:1.7}#reg-notice:not(:empty){position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:14px 20px;border:1px solid var(--line);border-radius:5px;background:var(--paper);box-shadow:0 3px 15px #0001;font-size:12px;max-width:90%;z-index:20}.reg-app button:focus-visible,.reg-app input:focus-visible,.reg-app select:focus-visible,.reg-app summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.reg-app .btn:disabled{opacity:.45;cursor:default}
@media(max-width:1000px){.reg-intro{gap:24px}.reg-intro-note{max-width:240px}.reg-workbench{grid-template-columns:170px minmax(0,1fr);gap:28px}.reg-detail-grid{gap:32px;grid-template-columns:minmax(0,1fr) 225px}}
@media(max-width:700px){.reg-app .topbar{align-items:flex-start;flex-wrap:wrap;padding:18px 20px}.reg-nav{gap:18px;flex-wrap:wrap;font-size:11px}.reg-saved-link{padding-left:14px}.reg-intro{display:block;padding-top:30px}.reg-intro h1{letter-spacing:-1px}.reg-intro-note{max-width:none;margin-top:22px;padding-left:14px}.reg-intro p{font-size:14px}.reg-filterbar{flex-wrap:wrap;gap:12px}.reg-filterbar label{flex:1 1 42%}.reg-workbench{display:flex;flex-direction:column;gap:22px}.reg-countries{display:flex;flex-wrap:wrap;gap:8px 20px;border-bottom:1px solid var(--line);padding-bottom:20px}.reg-countries h2{width:100%;margin-bottom:0}.reg-countries details{min-width:40%;flex:1}.reg-countries .reg-about{margin-top:10px;width:100%}.reg-results-head{align-items:flex-start;flex-wrap:wrap}.reg-tabs{gap:16px}.reg-tabs button{font-size:12px}.reg-row{gap:12px}.reg-row h3{font-size:16px}.reg-row p{font-size:12px}.reg-save{padding:6px 8px}.reg-detail-grid,.reg-country-columns{display:flex;flex-direction:column;gap:26px}.reg-detail-grid aside{order:-1}.reg-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.reg-facts>div{margin-bottom:0}.reg-mark-links{grid-template-columns:1fr}.reg-search{padding-left:12px}.reg-search input{font-size:13px}.reg-bottom h2{font-size:24px}}
@media print{.reg-app .topbar,.reg-app .footer,.reg-detail-actions,.reg-save,#reg-notice{display:none!important}.reg-detail-grid{display:block}.reg-facts{display:grid;grid-template-columns:1fr 1fr}.reg-row,.reg-related,.reg-facts>div{break-inside:avoid}.reg-detail{max-width:none}.reg-detail header{padding:10px 0}.reg-country-columns{display:block}}

.reg-print-source{display:none}@media print{.reg-print-source{display:block;font-size:11px;overflow-wrap:anywhere}}

/* Reference desk: country identities, editorial hierarchy and a restrained brand palette. */
.reg-app { background:var(--color-snow-white); }
.reg-app .topbar { max-width:none; background:var(--paper); padding-inline:max(32px, calc((100vw - 1400px) / 2)); }
.reg-app .reg-nav>a:first-child { color:var(--accent); }
.reg-main { max-width:1400px; padding-inline:32px; }
.reg-icon { flex:none; display:inline-block; vertical-align:middle; }
.reg-eyebrow { display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:10px; font-weight:650; letter-spacing:1.3px; }
.reg-intro { align-items:center; padding:44px 0 30px; gap:60px; }
.reg-intro>div { flex:1; }
.reg-intro h1 { font-size:clamp(34px,3.7vw,52px); font-weight:570; letter-spacing:-1.9px; line-height:1.12; margin:16px 0; }
.reg-intro h1 span { color:var(--accent); }
.reg-intro p { font-size:14px; line-height:1.75; }
.reg-intro p.reg-eyebrow { font-size:10px; color:var(--accent); }
.reg-coverage { margin-top:22px; display:flex; align-items:center; flex-wrap:wrap; gap:6px; font-size:11px; color:var(--muted); }
.reg-coverage strong { font-size:13px; font-weight:600; color:var(--ink); }
.reg-coverage>span { margin:0 6px; }
.reg-atlas { width:405px; flex:none; padding:20px 22px 0; background:var(--paper); border:1px solid var(--line); border-radius:8px; }
.reg-atlas-heading { display:flex; align-items:center; gap:10px; font-size:12px; font-weight:550; margin-bottom:14px; }
.reg-atlas-heading .reg-icon { color:var(--accent); width:19px; height:19px; }
.reg-atlas-links { display:grid; grid-template-columns:1fr 1fr; gap:3px 18px; }
.reg-atlas-links>a { display:flex; align-items:center; gap:10px; padding:10px 0; font-size:11px; white-space:normal; }
.reg-atlas-links>a>span:last-child { margin-left:auto; color:var(--muted); font-size:12px; }
.reg-atlas a:hover { color:var(--accent); }
.reg-atlas-all { display:flex; align-items:center; justify-content:space-between; padding:13px 0; margin-top:12px; border-top:1px solid var(--line); color:var(--accent); font-size:11px; }
.reg-flag { display:inline-block; width:24px; height:18px; flex:none; object-fit:contain; border-radius:2px; box-shadow:0 0 0 1px var(--color-clean-gray-95); }
.reg-products { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin:0 0 23px; }
.reg-product { display:flex; align-items:center; justify-content:center; gap:9px; padding:14px 10px; border:1px solid var(--line); border-radius:6px; background:var(--paper); font-size:12px; font-weight:500; white-space:normal; }
.reg-product .reg-icon { width:22px; height:22px; color:var(--accent); }
.reg-product-food-drink .reg-icon,.reg-product-packaging-waste .reg-icon { color:var(--color-success); }
.reg-product-cosmetics .reg-icon,.reg-product-supplements .reg-icon { color:var(--color-warning-border); }
.reg-product:hover { border-color:var(--accent); }
.reg-product.selected { border-color:var(--accent); background:var(--color-marker-blue-90); color:var(--accent); }
.reg-search { background:var(--paper); border-color:var(--line); margin:0; padding-left:18px; }
.reg-search>.reg-icon { width:20px; height:20px; color:var(--muted); margin-right:4px; }
.reg-search:focus-within { border-color:var(--accent); }
.reg-filterbar { padding:16px 0 22px; }
.reg-filterbar label { font-size:11px; }
.reg-workbench { gap:30px; grid-template-columns:190px minmax(0,1fr); padding-top:25px; }
.reg-countries h2 { display:flex; gap:9px; align-items:center; font-size:12px; }
.reg-countries h2 .reg-icon { width:17px; height:17px; color:var(--accent); }
.reg-countries details { padding:14px 0; }
.reg-countries summary { font-size:12px; }
.reg-countries details a { display:flex; align-items:center; gap:9px; padding:8px 0 4px 10px; font-size:11px; }
.reg-countries details a .reg-flag { width:20px; height:15px; }
.reg-countries details a .reg-icon { width:20px; height:18px; }
.reg-results-head { padding-bottom:0; min-height:48px; }
.reg-tabs { gap:24px; }
.reg-tabs button { font-size:12px; min-height:48px; }
.reg-results-head>.btn { padding:6px 12px; min-height:32px; font-size:11px; margin-bottom:6px; background:transparent; }
#reg-results-status { margin:14px 0; font-size:11px; }
.reg-row { display:grid; grid-template-columns:72px minmax(0,1fr) auto; align-items:start; gap:18px; background:var(--paper); padding:22px; margin-bottom:12px; border:1px solid var(--line); border-radius:7px; }
.reg-row:hover { border-color:var(--color-clean-gray-80); }
.reg-row-identity { padding-top:2px; }
.reg-identity { width:72px; height:62px; display:flex; align-items:center; justify-content:center; border:1px solid var(--color-clean-gray-95); border-radius:5px; background:var(--paper); padding:7px; overflow:hidden; }
.reg-identity img { width:100%; height:100%; object-fit:contain; }
.reg-initials { text-align:center; color:var(--accent); font-size:12px; letter-spacing:-.3px; line-height:1.4; font-weight:650; }
.reg-identity-dark { background:var(--ink); border-color:var(--ink); }
.reg-row h3 { font-size:17px; font-weight:580; letter-spacing:-.3px; margin:9px 0 7px; }
.reg-row p { font-size:12px; line-height:1.7; }
.reg-meta { align-items:center; gap:8px 12px; letter-spacing:0; font-weight:450; font-size:10px; }
.reg-type { border-radius:3px; padding:3px 7px; background:var(--color-clean-gray); color:var(--muted)!important; line-height:1.5; }
.reg-type-law { background:var(--color-marker-blue-90); color:var(--accent)!important; }
.reg-type-guide { background:color-mix(in srgb,var(--color-success) 9%,var(--paper)); color:var(--ink)!important; }
.reg-type-tool { background:var(--color-warning-bg); color:var(--color-warning-border)!important; }
.reg-type-framework { background:var(--color-marker-blue-100); color:var(--accent)!important; }
.reg-markets { display:inline-flex; flex-wrap:wrap; align-items:center; gap:7px 12px; }
.reg-market { display:inline-flex; align-items:center; gap:6px; letter-spacing:0; color:var(--muted); }
.reg-market .reg-flag { width:16px; height:12px; }
.reg-market .reg-icon { width:16px; height:14px; }
.reg-row-foot { margin-top:13px; gap:6px 12px; font-size:10px; }
.reg-row-foot>span+span::before { content:'·'; margin-right:12px; }
.reg-save { margin-top:0; padding:7px 10px; font-size:10px; min-height:32px; }
.reg-save[aria-pressed=true] { background:var(--color-marker-blue-90); }
.reg-bottom { padding:30px; border:1px solid var(--color-marker-blue-80); background:var(--color-marker-blue-100); border-radius:8px; margin-top:40px; }
.reg-bottom h2 { font-size:25px; font-weight:550; }
.reg-app .footer { background:var(--paper); }
.reg-detail { max-width:1240px; padding-inline:40px; }
.reg-detail .breadcrumbs { font-size:11px; padding-top:24px; flex-wrap:wrap; }
.reg-detail header.reg-profile-header { max-width:none; display:flex; align-items:flex-start; gap:32px; padding:32px 0 38px; }
.reg-profile-copy { flex:1; min-width:0; }
.reg-detail h1 { font-size:clamp(28px,3.4vw,44px); font-weight:560; letter-spacing:-1.4px; max-width:850px; }
.reg-detail .detail-lede { font-size:15px; line-height:1.8; max-width:810px; }
.reg-profile-header .reg-eyebrow { letter-spacing:.5px; }
.reg-identity-large { width:160px; height:120px; flex:none; margin-top:5px; padding:16px; border-radius:8px; }
.reg-identity-large .reg-initials { font-size:24px; }
.reg-country-emblem { width:128px; height:110px; display:flex; align-items:center; justify-content:center; flex:none; background:var(--paper); border:1px solid var(--line); border-radius:8px; margin-top:5px; }
.reg-country-emblem>.reg-flag { width:80px; height:60px; border-radius:3px; }
.reg-country-emblem>.reg-icon { color:var(--accent); width:60px; height:60px; }
.reg-detail-grid { grid-template-columns:minmax(0,1fr) 280px; gap:40px; padding-top:30px; }
.reg-detail-grid>article>section { padding:24px; background:var(--paper); border:1px solid var(--line); border-radius:7px; margin-bottom:20px; }
.reg-detail-grid>article>section:has(.reg-row) { background:none; padding:0; border:0; }
.reg-detail h2 { font-size:18px; font-weight:580; }
.reg-detail article>section>p,.reg-detail article li { font-size:13px; }
.reg-detail-grid .reg-row { grid-template-columns:60px minmax(0,1fr) auto; gap:14px; padding:18px; }
.reg-detail-grid .reg-row .reg-identity { width:60px; height:54px; }
.reg-facts { background:var(--color-marker-blue-100); border:1px solid var(--color-marker-blue-80); padding:22px; border-radius:7px; }
.reg-facts>div { padding-bottom:17px; margin-bottom:17px; border-color:var(--color-marker-blue-80); }
.reg-facts>div:last-child { border:0; padding-bottom:0; margin-bottom:0; }
.reg-facts dt { font-size:10px; font-weight:550; }
.reg-facts dd { font-size:12px; }
.reg-detail-grid aside>.reg-small { padding:15px 4px; }
.reg-country-link { display:inline-flex; align-items:center; gap:8px; margin:4px 10px 4px 0; }
.reg-country-link .reg-flag { width:22px; height:16px; }
.reg-authority-link { display:grid; grid-template-columns:72px 1fr; column-gap:16px; border:0; padding:0; }
.reg-authority-link>.reg-identity { grid-row:span 2; }
.reg-authority-link strong { align-self:end; }
.reg-authority-link>span:last-child { align-self:start; }
.reg-topic-list { display:flex; gap:10px; flex-wrap:wrap; list-style:none; padding:0!important; }
.reg-topic-list li { display:flex; align-items:center; gap:8px; padding:8px 12px; background:var(--color-marker-blue-100); border-radius:4px; color:var(--ink)!important; }
.reg-topic-list .reg-icon { width:17px; height:17px; color:var(--accent); }
.reg-country-columns { gap:24px; grid-template-columns:1fr 1.25fr; }
.reg-country-columns .reg-row { grid-template-columns:56px minmax(0,1fr) auto; gap:12px; padding:18px; }
.reg-country-columns .reg-identity { width:56px; height:50px; }
.reg-country-columns .reg-row h3 { font-size:16px; }
.reg-country-columns .reg-row .reg-save { grid-column:2; justify-self:start; }
.reg-app .prose { background:var(--paper); }
@media(max-width:1100px) {
 .reg-intro { gap:30px; }.reg-atlas { width:360px; }.reg-intro h1 { font-size:40px; }
 .reg-products { grid-template-columns:repeat(3,minmax(0,1fr)); }.reg-workbench { grid-template-columns:165px minmax(0,1fr); gap:22px; }
 .reg-row { grid-template-columns:58px minmax(0,1fr) auto; gap:14px; padding:18px; }.reg-row .reg-identity { width:58px; height:52px; }
 .reg-profile-header .reg-identity-large { width:130px; height:100px; }.reg-detail-grid { gap:24px; grid-template-columns:minmax(0,1fr) 250px; }
}
@media(max-width:850px) {
 .reg-intro { align-items:flex-start; gap:24px; }.reg-intro h1 { font-size:34px; letter-spacing:-1.2px; }.reg-atlas { width:310px; padding:16px 16px 0; }.reg-atlas-links { gap:2px 12px; }.reg-atlas-links>a { font-size:10px; gap:8px; }.reg-atlas-links>a>span:last-child { display:none; }.reg-desktop-break { display:none; }
 .reg-detail-grid { grid-template-columns:minmax(0,1fr) 220px; }.reg-detail { padding-inline:24px; }.reg-detail-grid>article>section { padding:18px; }
 .reg-country-columns { grid-template-columns:1fr; }.reg-country-columns .reg-row { grid-template-columns:60px minmax(0,1fr) auto; }.reg-country-columns .reg-row .reg-save { grid-column:auto; }
}
@media(max-width:700px) {
 .reg-app .topbar { padding:18px 20px; gap:15px; }.reg-nav { gap:18px; }.reg-nav a { min-height:28px; display:inline-flex; align-items:center; }.reg-main { padding-inline:20px; }
 .reg-intro { display:block; padding:30px 0 22px; }.reg-intro h1 { font-size:36px; }.reg-intro p { font-size:13px; }.reg-coverage { margin-top:16px; }
 .reg-atlas { width:auto; margin-top:24px; padding:16px 18px 0; }.reg-atlas-links>a { font-size:11px; }.reg-atlas-links>a>span:last-child { display:inline; }.reg-atlas-heading { margin-bottom:8px; }
 .reg-products { gap:8px; margin-bottom:18px; }.reg-product { flex-direction:column; text-align:center; padding:12px 5px; font-size:10px; gap:7px; }
 .reg-search>.reg-icon { display:none; }.reg-search input { font-size:12px; }.reg-search .btn { padding-inline:12px; }
 .reg-filterbar { gap:10px; }.reg-filterbar label { flex-basis:42%; }.reg-filterbar #reg-clear { min-height:32px; padding:5px 10px; font-size:11px; }
 .reg-workbench { display:flex; gap:22px; }.reg-countries { gap:4px 16px; padding:0 0 18px; }.reg-countries details { padding:9px 0; }.reg-countries details a { font-size:11px; padding:9px 0 5px; }.reg-countries details a .reg-flag { width:18px; height:14px; }.reg-countries h2 { margin-bottom:5px; }
 .reg-tabs { gap:16px; }.reg-tabs button { font-size:11px; }.reg-results-head { gap:6px; }.reg-results-head>.btn { margin-top:5px; }
 .reg-row { grid-template-columns:44px minmax(0,1fr); gap:12px; padding:16px; }.reg-row .reg-identity { width:44px; height:42px; padding:5px; }.reg-initials { font-size:10px; }
 .reg-row>.reg-save { grid-column:2; justify-self:start; }.reg-row h3 { font-size:16px; }.reg-row p { font-size:12px; }.reg-meta { gap:6px 8px; font-size:9px; }.reg-row-foot { font-size:9px; }.reg-row-foot>span+span::before { display:none; }
 .reg-detail header.reg-profile-header { gap:20px; flex-wrap:wrap; padding:20px 0 28px; }.reg-profile-header .reg-identity-large { width:100px; height:76px; padding:10px; }.reg-profile-copy { flex-basis:100%; }.reg-detail h1 { font-size:32px; letter-spacing:-1px; }.reg-detail .detail-lede { font-size:14px; }
 .reg-detail-grid { display:flex; flex-direction:column; gap:20px; }.reg-detail-grid aside { order:0; }.reg-detail-grid .reg-row { grid-template-columns:44px minmax(0,1fr); padding:16px; }.reg-detail-grid .reg-row .reg-identity { width:44px; height:42px; }
 .reg-detail-grid article { min-width:0; }.reg-detail-grid>article>section { padding:20px; }.reg-detail-grid>article>section:has(.reg-row) { padding:0; }
 .reg-country-emblem { width:98px; height:78px; }.reg-country-emblem>.reg-flag { width:60px; height:45px; }.reg-country-columns .reg-row { grid-template-columns:44px minmax(0,1fr); }.reg-country-columns .reg-row .reg-save { grid-column:2; }
 .reg-facts { padding:18px; gap:16px; }.reg-facts>div { margin:0; padding:0 0 12px; }.reg-facts dd { overflow-wrap:anywhere; }.reg-bottom { padding:24px; }.reg-bottom h2 { font-size:23px; }
 .reg-detail-actions .btn { font-size:11px; padding-inline:12px; }.reg-country-link { font-size:11px; gap:6px; }
}
@media(max-width:360px) { .reg-main,.reg-detail { padding-inline:16px; }.reg-intro h1 { font-size:32px; }.reg-nav { gap:12px; font-size:10px; }.reg-atlas-links { column-gap:10px; }.reg-atlas-links>a { font-size:10px; }.reg-row { padding:13px; gap:10px; }.reg-facts { grid-template-columns:1fr; } }
@media print { .reg-app { background:white; }.reg-atlas,.reg-products { display:none; }.reg-detail header.reg-profile-header { display:flex; padding:10px 0; }.reg-detail-grid { display:block; }.reg-row { break-inside:avoid; }.reg-detail-grid>article>section { break-inside:avoid; }.reg-identity-dark { print-color-adjust:exact; }.reg-profile-copy { flex-basis:auto; } }
/* Long official titles and source links must wrap on small screens. */
.reg-detail .text-link { white-space:normal; overflow-wrap:anywhere; }
.reg-country-header .reg-profile-copy>.btn { margin-top:20px; }
.reg-identity-dark { color:var(--paper); }
.reg-app .btn:disabled,.reg-app select:disabled { cursor:not-allowed; }
@media(max-width:700px) { .reg-countries { order:2; margin-top:12px; }.reg-results { order:1; }.reg-country-columns .reg-row h3 a { overflow-wrap:anywhere; } }
@media(prefers-reduced-motion:reduce) { .reg-app button:active,.reg-app .btn:active { transform:none; } }

/* Crawlable guides use the same visual system as the searchable directory. */
.reg-on-this-page { display:flex; gap:12px 24px; flex-wrap:wrap; margin-top:24px; font-size:12px; color:var(--accent); }
.reg-on-this-page a:hover,.reg-product-link:hover { text-decoration:underline; }
.reg-product-link { display:inline-block; margin:3px 10px 3px 0; color:var(--accent); }
.reg-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:40px; }
.reg-directory-tile { display:grid; grid-template-columns:32px minmax(0,1fr); gap:8px 12px; align-content:start; border:1px solid var(--line); background:var(--paper); padding:24px; border-radius:7px; }
.reg-directory-tile:hover { border-color:var(--accent); }
.reg-directory-tile>.reg-flag,.reg-directory-tile>.reg-icon { grid-row:span 2; margin-top:4px; }
.reg-directory-tile>.reg-icon { color:var(--accent); }
.reg-directory-tile strong { font-size:14px; font-weight:580; }
.reg-directory-tile span { font-size:12px; color:var(--muted); }
.reg-directory-region { margin-bottom:36px; }
.reg-companion { padding:24px; margin:24px 0; border:1px solid var(--line); border-radius:7px; background:var(--paper); }
.reg-companion p { font-size:12px; color:var(--muted); line-height:1.7; margin:12px 0; }
.reg-companion .btn { white-space:normal; font-size:12px; }
#markets .reg-country-link { display:flex; font-size:12px; margin:12px 0; }
@media(max-width:850px) { .reg-directory-grid { grid-template-columns:1fr 1fr; }.reg-directory-tile { padding:20px; } }
@media(max-width:500px) { .reg-directory-grid { grid-template-columns:1fr; } }
