/* Shared components: logo, unified cards, support links, language switch. Loaded AFTER each page's own styles. */
.logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-family:var(--f-display);color:var(--fg);flex:none}
.logo-mark{width:46px;height:46px;flex:none;border-radius:50%;border:3px solid var(--ink);background:#26262b;overflow:hidden;box-shadow:0 0 0 3px var(--lime),0 4px 0 3px var(--ink)}
.logo .logo-mark img{width:100%;height:100%;border:0;border-radius:0;object-fit:cover;object-position:center}
.logo-word{font-size:28px;font-weight:800;line-height:1;letter-spacing:-.02em;white-space:nowrap;text-shadow:0 3px 0 var(--ink)}
.logo .logo-word b{font-weight:800;color:var(--lime)}

/* one card for the whole site */
.card,.feat>.card,.summary>.card,.policy-grid>.card{--c:var(--lime);display:grid;grid-template-rows:auto auto 1fr;align-content:start;gap:10px;min-width:0;
  background:var(--slate);border:3px solid var(--ink);border-radius:var(--r);padding:22px;box-shadow:0 5px 0 var(--ink)}
.card>h3,.card>b:first-child{display:flex;align-items:center;gap:10px;margin:0;font-family:var(--f-display);font-size:21px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--c)}
.card>h3::before,.card>b:first-child::before{content:"";flex:none;width:16px;height:16px;border-radius:50%;background:var(--c);border:3px solid var(--ink)}
.card>p,.card li{margin:0;color:#d5d8e0;font-size:15px;line-height:1.7}
.card ul{margin:0;padding-left:20px;display:grid;gap:6px}
.card li::marker{color:var(--c)}
.card-actions{display:grid;gap:14px;align-self:end;margin-top:8px}
.card .btn{justify-self:start;margin-top:0;width:auto;min-width:230px;justify-content:center;font-size:17px;padding:10px 22px;white-space:nowrap}
.card .addr{font-family:var(--f-num);font-weight:700;font-size:15px;color:var(--fg);word-break:break-all;text-decoration:underline;text-underline-offset:3px}
.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:20px}
@media (max-width:700px){.contact-grid{grid-template-columns:1fr}.card .btn{justify-self:stretch;min-width:0}}
.topic{border-radius:var(--r)}

/* contact chips on the home page */
.support-link{display:inline-flex;align-items:center;gap:10px;padding:11px 18px;border:3px solid var(--ink);border-radius:999px;background:var(--slate-2);color:var(--fg);text-decoration:none;font-weight:700;font-size:15px;box-shadow:0 4px 0 var(--ink);transition:transform .15s}
.support-link svg{width:20px;height:20px;flex:none;fill:currentColor}

/* language switch */
.lang{display:inline-flex;flex:none;border:3px solid var(--ink);border-radius:999px;background:var(--slate);box-shadow:0 3px 0 var(--ink);padding:2px}
.lang button{font:700 13px/1 var(--f-num);letter-spacing:.06em;color:var(--muted);background:none;border:0;border-radius:999px;padding:7px 11px;cursor:pointer}
.lang button:hover{color:var(--fg)}
.lang button[aria-pressed="true"]{background:var(--lime);color:var(--ink)}

/* nav fit */
nav.top ul{gap:18px;font-size:14.5px}
nav.top ul a{white-space:nowrap}
@media (max-width:960px){nav.top ul{display:none}nav.top .btn{margin-left:auto}}
@media (max-width:480px){nav.top .wrap{gap:10px}nav.top .btn{padding:8px 14px}.logo-word{font-size:24px}.logo-mark{width:40px;height:40px}}
