body { font-size: 18px; }
.str-footer-grid { grid-template-columns: minmax(240px,1.45fr) repeat(3,minmax(150px,1fr)); gap: clamp(28px,4vw,56px); }
.str-footer-grid nav strong { display:block; margin-bottom:12px; color:#f2c85b; font-size:17px; }
.str-footer-grid li { margin:8px 0; }
.str-footer-grid a { text-decoration:none; }
.str-footer-grid a:hover { text-decoration:underline; }
.str-footer-brand img { width:min(230px,100%); padding:10px; border-radius:12px; background:#fff; }
.str-footer-brand small { display:block; max-width:46ch; color:#afc4c8; }
.str-footer-bottom { display:flex; justify-content:space-between; gap:18px; margin-top:36px; padding-top:22px; border-top:1px solid rgba(255,255,255,.22); color:#dbe5e6; }
.str-cookie-settings { padding:0; border:0; background:none; color:#fff; text-decoration:underline; cursor:pointer; }
.str-cookie-panel { position:fixed; right:24px; bottom:24px; z-index:9999; width:min(520px,calc(100% - 32px)); padding:24px; border:1px solid var(--str-border); border-radius:20px; background:#fff; color:var(--str-ink); box-shadow:0 24px 70px rgba(5,38,45,.28); }
.str-cookie-panel[hidden] { display:none; }
.str-cookie-panel>div:first-child { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.str-cookie-panel strong { font-size:21px; }
.str-cookie-panel>div:first-child button { border:0; background:none; font-size:28px; cursor:pointer; }
.str-cookie-actions { display:flex; gap:10px; margin-top:18px; }
.str-cookie-actions button { min-height:48px; padding:10px 16px; border:2px solid var(--str-teal); border-radius:10px; background:#fff; color:var(--str-teal); font-weight:800; cursor:pointer; }
.str-cookie-actions button:last-child { background:var(--str-teal); color:#fff; }
.str-page-content>article>header { margin-bottom:28px; }
.str-page-content h2 { max-width:30ch; margin-top:38px; margin-bottom:14px; font-size:clamp(26px,3vw,38px); }
.str-page-content p,.str-page-content li { font-size:18px; line-height:1.7; }
@media (max-width:900px) { .str-footer-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:620px) {
  body { font-size:18px; }
  .str-footer-grid { grid-template-columns:1fr; }
  .str-footer-bottom,.str-cookie-actions { align-items:stretch; flex-direction:column; }
  .str-cookie-panel { right:16px; bottom:16px; padding:20px; }
  .str-cookie-actions button { width:100%; }
  .str-page-content { padding-top:44px; }
  .str-page-content h1 { font-size:clamp(36px,12vw,52px); }
}
