
/* WordPress/WooCommerce bridge — additions only; base v37 CSS remains untouched. */
body.admin-bar .site-header { }
.fs-wp-content { min-height: 55vh; }
.fs-woocommerce-notices { width: min(1280px,100%); margin: 0 auto; padding: 14px 24px 0; }
.woocommerce-message,.woocommerce-info,.woocommerce-error { border:1px solid var(--line,#e4e4e4); background:#fff; border-radius:8px; padding:14px 16px; margin:14px 0; list-style:none; }
.woocommerce-error { border-color:#d71920; }
.woocommerce-message a,.woocommerce-info a,.woocommerce-error a { font-weight:900; }
.fs-pagination { display:flex; justify-content:center; margin:34px 0; }
.fs-pagination .page-numbers { display:flex; gap:7px; list-style:none; padding:0; margin:0; }
.fs-pagination a,.fs-pagination span { min-width:40px; height:40px; display:grid; place-items:center; border:1px solid var(--line,#ddd); border-radius:6px; font-weight:900; text-decoration:none; }
.fs-pagination .current { background:#111; color:#fff; border-color:#111; }
.fs-wc-checkout-wrap { padding: 28px 0 60px; }
.fs-wc-checkout-wrap .woocommerce { display:block; }
.fs-wc-checkout-wrap form.checkout { display:grid; grid-template-columns:minmax(0,1fr) 390px; gap:24px; align-items:start; }
.fs-wc-checkout-wrap #customer_details { display:grid; gap:18px; }
.fs-wc-checkout-wrap .col-1,.fs-wc-checkout-wrap .col-2 { width:100%; float:none; background:#fff; border:1px solid var(--line,#e4e4e4); border-radius:8px; padding:20px; }
.fs-wc-checkout-wrap #order_review_heading { display:none; }
.fs-wc-checkout-wrap #order_review { background:#fff; border:1px solid var(--line,#e4e4e4); border-radius:8px; padding:20px; position:sticky; top:18px; }
.fs-wc-checkout-wrap .form-row { margin:0 0 12px; }
.fs-wc-checkout-wrap input.input-text,.fs-wc-checkout-wrap textarea,.fs-wc-checkout-wrap select { width:100%; border:1px solid #d8d8d8; border-radius:6px; min-height:46px; padding:10px 12px; background:#fff; }
.fs-wc-checkout-wrap #place_order { width:100%; border:0; background:var(--red,#d71920); color:#fff; border-radius:6px; padding:15px 18px; font-weight:1000; font-size:16px; cursor:pointer; }
.fs-account-wrap { padding:32px 0 70px; }
.fs-account-wrap .woocommerce-MyAccount-navigation ul { list-style:none; padding:0; margin:0 0 20px; display:flex; flex-wrap:wrap; gap:8px; }
.fs-account-wrap .woocommerce-MyAccount-navigation a { display:block; border:1px solid var(--line,#ddd); border-radius:6px; padding:10px 12px; font-weight:900; text-decoration:none; }
.fs-account-wrap .woocommerce-MyAccount-content { background:#fff; border:1px solid var(--line,#ddd); border-radius:8px; padding:20px; }
.fs-static-page { padding:38px 0 70px; }
.fs-static-page .entry-content { max-width:900px; }
.fs-no-products { grid-column:1/-1; border:1px dashed #ccc; border-radius:8px; padding:26px; text-align:center; color:#666; }
.product-quick-cart.is-loading, .cart-checkout-button.is-loading { opacity:.55; pointer-events:none; }
.product-quick-cart.is-added { border-color:var(--red,#d71920); color:var(--red,#d71920); }
.fs-wc-cart-count { position:absolute; top:-5px; right:-5px; min-width:18px; height:18px; padding:0 4px; border-radius:999px; display:grid; place-items:center; background:var(--red,#d71920); color:#fff; font-size:11px; font-weight:1000; }
.header-cart-button { position:relative; }
@media (max-width:860px){
  .fs-wc-checkout-wrap form.checkout { grid-template-columns:1fr; }
  .fs-wc-checkout-wrap #order_review { position:static; }
}

/* v46 hardening: prevent off-canvas/mobile and mega menu markup from flashing in page flow. */
@media (min-width:861px){
  .fs-mobile-drawer{display:none !important;}
}
.fs-mobile-accordion[aria-hidden="true"]{overflow:hidden;}



/* v48 final — product variants + cleaner single product UI */
.fs-variant-choice { max-width: 420px; }
.fs-variant-choice .field { text-transform:none; font-size:13px; font-weight:800; color:#333; }
.fs-variant-choice select {
  width:100%; min-height:46px; border:1px solid #cfcfcf; border-radius:4px;
  background:#fff; padding:0 38px 0 12px; color:#111; font-size:15px; font-weight:600;
  box-shadow:none !important; outline:none;
}
.fs-variant-choice select:focus { border-color:#666; box-shadow:none !important; outline:none; }
.fs-buy-row { display:flex; align-items:end; gap:10px; flex-wrap:wrap; }
.fs-buy-row .quantity-field { min-width:112px; margin:0; }
.fs-buy-row .product-page-actions { margin:0; display:flex; grid-template-columns:none; gap:10px; flex-wrap:wrap; }
.fs-buy-row .product-page-actions .cart-button { min-width:210px; }
.fs-buy-row .product-page-actions .primary-button { min-width:150px; }
/* Klient poprosił o usunięcie wiersza chipów/meta spod przycisków. */
.product-page-meta { display:none !important; }
/* Zero czerwonego glow/blur na interaktywnych polach. */
.product-page-view select:focus,
.product-page-view input:focus,
.product-page-view button:focus { box-shadow:none !important; }
@media (max-width:620px){
  .fs-buy-row { display:grid; grid-template-columns:1fr; align-items:stretch; }
  .fs-buy-row .quantity-field,
  .fs-buy-row .product-page-actions,
  .fs-buy-row .product-page-actions > button { width:100%; min-width:0; }
  .fs-buy-row .product-page-actions { display:grid; grid-template-columns:1fr; }
}


/* v52 WordPress footer */
/* The PHP footer has four columns and does not have the static site's
   .footer-col/.footer-links wrappers: apply the visual layout to its real markup. */
.site-footer .footer-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: clamp(20px, 3.2vw, 44px);
  row-gap: 24px;
}
.site-footer .footer-grid > div { min-width: 0; }
.site-footer .footer-grid > div > h4 {
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
  margin: 0 0 16px;
}
.site-footer .footer-grid > div > a {
  display: block;
  width: fit-content;
  max-width: 100%;
  font-size: 14px;
  font-weight: 400;
  color: #d5d5d5;
  line-height: 1.5;
  margin: 0 0 9px;
  text-decoration: none;
  overflow-wrap: break-word;
}
.site-footer .footer-grid > div > a:hover,
.site-footer .footer-mobile a:hover,
.site-footer .footer-bottom a:hover { color: #fff; text-decoration: underline; }
.site-footer .footer-bottom a { color: inherit; text-decoration: none; }
.site-footer .footer-mobile details { border-top: 1px solid rgba(255,255,255,.15); }
.site-footer .footer-mobile details:last-child { border-bottom: 1px solid rgba(255,255,255,.15); }
.site-footer .footer-mobile details summary {
  display: list-item;
  cursor: pointer;
  color: #fff;
  font-weight: 800;
  font-size: 15px;
  line-height: 1.4;
  padding: 16px 0;
  list-style-position: inside;
}
.site-footer .footer-mobile details a {
  display: block;
  max-width: 100%;
  color: #d5d5d5;
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 11px 15px;
  text-decoration: none;
  overflow-wrap: break-word;
}
.site-footer .footer-mobile details[open] { padding-bottom: 10px; }
@media (min-width: 861px) and (max-width: 1020px) {
  .site-footer .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .site-footer .footer-grid { display: none; }
  .site-footer .footer-mobile { display: block; }
}

/* v53 — arkusz klienta: menu 9 kategorii i trzy kolumny subkategorii. */
@media (min-width: 861px) {
  .mega-panel[data-mega-panel="categories"] .fs-menu-three-columns {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 18px !important;
    align-items: start !important;
    overflow-wrap: anywhere;
  }
  .fs-menu-subcolumn { min-width: 0; display: grid; align-content: start; }
  .fs-menu-subcolumn > a {
    display: flex; align-items: center;
    color: #222; font-size: 13px; font-weight: 750;
    line-height: 1.28; min-height: 38px;
    text-decoration: none; padding: 7px 2px;
    border-bottom: 1px solid #f0f1f2;
  }
  .fs-menu-subcolumn > a:hover { color: var(--red, #d71920); }
  .fs-desktop-category-panel .fs-desktop-category-heading { padding-bottom: 12px !important; }
  .fs-desktop-category-panel .fs-desktop-category-heading > a { font-size: 21px !important; }
}
/* v53 — krótszy nagłówek kategorii, liczba produktów z lewej, sortowanie z prawej. */
.category-page-view.fs-wp-content .category-page-hero {
  padding: 14px 0 18px !important;
  margin-bottom: 14px !important;
}
.category-page-view.fs-wp-content .category-page-title {
  font-size: clamp(25px, 2.8vw, 38px) !important;
  line-height: 1.13 !important;
  letter-spacing: -0.02em;
}
.category-page-view.fs-wp-content .category-page-description {
  margin-top: 7px !important;
  font-size: 14px;
  line-height: 1.55;
}
.category-page-view.fs-wp-content .fs-category-tools-v53 {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin: 0 0 20px !important;
}
.fs-category-count { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 5px; min-width: 0; }
.fs-category-count strong { color: #111; font-variant-numeric: tabular-nums; }
.fs-category-sort-form { width: min(220px, 55%); flex: 0 0 auto; margin-left: auto; }
.category-page-view.fs-wp-content .fs-category-sort-form .category-sort-field {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box;
}
@media (max-width: 620px) {
  .category-page-view.fs-wp-content .category-page-title {
    font-size: clamp(24px, 6vw, 30px) !important;
  }
  .category-page-view.fs-wp-content .fs-category-tools-v53 { gap: 8px !important; }
  .category-page-view.fs-wp-content .fs-category-sort-form { width: min(185px, 54%); }
  .category-page-view.fs-wp-content .fs-category-count { font-size: 12px; }
  .category-page-view.fs-wp-content .category-sort-field { padding: 6px 9px; }
}

/* ======================= FightSports v54 – właściciel ======================= */
/* Wyróżnieni producenci: dokładnie dwie linie po pięć kart na desktop. */
#homeBrandsGrid.fs-featured-brands,
.fs-producers-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0,1fr)) !important;
  gap: 15px !important;
}
.fs-brand-card {
  min-width: 0; display: flex; flex-direction: column; align-items: center;
  justify-content: flex-start; gap: 12px; padding: 16px 12px 17px;
  border: 1px solid #e5e6e9; border-radius: 12px; background: #fff;
  box-shadow: 0 6px 20px rgba(15,20,25,.04); text-decoration: none;
  color: #161616; transition: border-color .16s, box-shadow .16s, transform .16s;
}
.fs-brand-card:hover, .fs-brand-card:focus-visible { border-color: #cb1c2b; box-shadow: 0 12px 25px rgba(15,20,25,.1); transform: translateY(-2px); }
.fs-brand-card-art { display:flex; align-items:center; justify-content:center; width: 100%; height: 100px; padding: 12px; border-radius: 7px; background:#f8f9fa; }
.fs-brand-card-art img { display: block; max-width: 100%; max-height: 76px; width: auto; height: auto; object-fit: contain; }
.fs-brand-wordmark { color: #1b1b1b; font-size: clamp(14px,1.4vw,19px); font-weight: 900; letter-spacing:-.02em; text-align: center; overflow-wrap:anywhere; }
.fs-brand-card-name { display:block; text-align:center; font-size:14px; line-height:1.3; font-weight:700; }
.fs-brands-more { display:flex; justify-content:center; margin-top:25px; }
.fs-producers-page { padding:30px 0 75px; }
.fs-producers-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:32px 0; }
.fs-producers-heading h1 { font-size:clamp(30px,3.6vw,45px); line-height:1.1; margin:10px 0; }
.fs-producers-heading p { color:#61646a; margin:0; }
.fs-brand-search-label { display:block; margin-bottom:8px; font-weight:800; }
.fs-brand-search { max-width:480px; width:100%; padding:13px 16px; border:1px solid #cbd0d7; border-radius:10px; font:inherit; margin-bottom:25px; }
.fs-brand-card[hidden], .fs-catalog-subpanel[hidden], .fs-no-products[hidden] { display:none !important; }
.fs-footer-contact { border-top:1px solid #343434; padding:22px 0 24px; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px 23px; font-size:13px; color:#e0e0e0; }
.fs-footer-contact a { color:inherit; text-decoration:underline; }
.fs-footer-contact strong { color:#fff; }
/* Main desktop menu opens on hover (every page); company link is never a dropdown. */
.main-nav .nav-about-link { display:inline-flex; align-items:center; }
.fs-all-brands-link { color:var(--red,#d71920) !important; font-weight:900 !important; grid-column: 1 / -1; }
.fs-mobile-root-link { display:flex; align-items:center; min-height:58px; padding:12px 16px; color:#111; text-decoration:none; font-weight:800; }
.fs-mobile-root-link:hover { color:var(--red,#d71920); }
/* Hover-based category explorer in catalogue; use link navigation for clicks. */
.fs-catalog-explorer { margin:24px 0 30px; border:1px solid #e3e5e9; border-radius:14px; background:#fff; overflow:hidden; }
.fs-catalog-explorer > h2 { font-size:18px; margin:0; padding:18px 22px 12px; }
.fs-catalog-explorer-grid { display:grid; grid-template-columns:250px minmax(0,1fr); min-height:280px; }
.fs-catalog-major { display:flex; flex-direction:column; background:#f8f8f9; border-right:1px solid #eee; }
.fs-catalog-major-link { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:11px 15px; border-bottom:1px solid #eceef0; font-weight:700; color:#222; text-decoration:none; font-size:13px; }
.fs-catalog-major-link.active, .fs-catalog-major-link:hover, .fs-catalog-major-link:focus-visible { color:#b91927; background:#fff; }
.fs-catalog-major-link span { font-size:19px; color:#999; }
.fs-catalog-subpanels { min-width:0; padding:18px 25px; }
.fs-catalog-subheader { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:14px; border-bottom:1px solid #e8e8e8; }
.fs-catalog-subheader strong { font-size:19px; }
.fs-catalog-subheader a { color:var(--red,#d71920); font-size:13px; font-weight:800; }
.fs-catalog-subgrid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:0 15px; margin-top:10px; }
.fs-catalog-subgrid a { display:block; padding:9px 5px; border-bottom:1px solid #f0f1f2; line-height:1.4; color:#30343b; font-size:13px; text-decoration:none; }
.fs-catalog-subgrid a:hover { color:var(--red,#d71920); }
/* Basket, checkout, account: consistent spacing and clear action hierarchy. */
.cart-page-main .cart-page-line { gap:16px; }
.cart-page-main .cart-page-qty button { min-width:36px; min-height:36px; }
.cart-page-main .cart-page-remove { margin-left:8px; }
.cart-page-main .cart-summary-card { box-shadow:0 8px 28px rgba(0,0,0,.06); }
.fs-wc-checkout-wrap .woocommerce-checkout-review-order-table { width:100%; border-collapse:collapse; }
.fs-wc-checkout-wrap .woocommerce-checkout-review-order-table th,
.fs-wc-checkout-wrap .woocommerce-checkout-review-order-table td { padding:12px 8px; border-bottom:1px solid #ececef; }
.fs-wc-checkout-wrap .woocommerce-checkout-review-order-table th { text-align:left; }
.fs-wc-checkout-wrap .form-row label { display:block; font-size:13px; margin-bottom:6px; font-weight:800; }
.fs-wc-checkout-wrap .woocommerce-checkout-payment { padding:15px 0; }
.fs-wc-checkout-wrap .payment_methods { list-style:none; padding:0; }
.fs-wc-checkout-wrap .payment_methods li { padding:12px 8px; border-bottom:1px solid #eee; }
.fs-wc-checkout-wrap .woocommerce-privacy-policy-text { color:#60646b; font-size:12px; line-height:1.6; }
.fs-account-wrap .woocommerce-MyAccount-navigation a:hover,
.fs-account-wrap .woocommerce-MyAccount-navigation .is-active a { border-color:#d71920; color:#b91927; }
.fs-account-wrap .woocommerce-MyAccount-content { min-height:230px; }
.fs-account-wrap .woocommerce table { width:100%; border-collapse:collapse; }
.fs-account-wrap .woocommerce table th, .fs-account-wrap .woocommerce table td { border-bottom:1px solid #e7e7e7; padding:12px; text-align:left; }
.fs-account-settings { max-width:720px; }
.fs-account-settings h2 { margin-top:0; }
.fs-account-danger { padding:18px; border:1px solid #eebac0; border-radius:10px; margin-top:24px; background:#fffafa; }
.fs-account-danger h3 { color:#9c1722; margin:0 0 8px; }
.fs-account-danger form { display:grid; gap:10px; margin-top:20px; }
.fs-account-danger input[type=password] { max-width:350px; padding:10px; border:1px solid #cdd0d6; border-radius:7px; }
.fs-account-danger .fs-delete-check { display:flex; gap:10px; align-items:flex-start; font-size:13px; }
.fs-delete-account-button { width:max-content; max-width:100%; border:none; border-radius:8px; background:#a81c2a; color:#fff; padding:12px 17px; font-weight:800; cursor:pointer; }
.fs-delete-success { background:#eaf8ee; text-align:center; padding:10px 15px; font-weight:800; }
/* Archive mobile: ordered rows; never cram categories into microscopic columns. */
@media(max-width:1020px) {
  #homeBrandsGrid.fs-featured-brands, .fs-producers-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  .fs-catalog-explorer-grid { grid-template-columns:200px minmax(0,1fr); }
}
@media(max-width:700px) {
  #homeBrandsGrid.fs-featured-brands, .fs-producers-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:9px !important; }
  .fs-brand-card { padding:12px 8px; gap:8px; }
  .fs-brand-card-art { height:80px; }
  .fs-brand-card-art img { max-height:65px; }
  .fs-brand-wordmark { font-size:14px; }
  .fs-brand-card-name { font-size:12px; }
  .fs-producers-heading { align-items:start; flex-direction:column; }
  .fs-footer-contact { flex-direction:column; text-align:center; gap:6px; }
  .fs-catalog-explorer-grid { display:block; }
  .fs-catalog-major { flex-direction:row; gap:8px; overflow-x:auto; padding:10px; border-right:0; border-bottom:1px solid #eee; }
  .fs-catalog-major-link { white-space:nowrap; flex:0 0 auto; border:1px solid #dedede; border-radius:7px; }
  .fs-catalog-major-link span { display:none; }
  .fs-catalog-subpanels { padding:14px; }
  .fs-catalog-subheader { flex-direction:column; align-items:flex-start; }
  .fs-catalog-subgrid { grid-template-columns:1fr !important; gap:0; }
  .fs-catalog-subgrid a { padding:12px 4px; }
  .fs-wc-checkout-wrap .woocommerce-checkout-review-order-table,
  .fs-account-wrap .woocommerce table { font-size:12px; }
  .fs-account-wrap .woocommerce-MyAccount-content { padding:15px; }
  .fs-account-wrap .woocommerce-MyAccount-navigation ul { flex-wrap:nowrap; overflow-x:auto; }
  .fs-account-wrap .woocommerce-MyAccount-navigation a { white-space:nowrap; }
}

/* v57: fall back gracefully when an official-site icon cannot be loaded. */
.fs-brand-logo-fallback[hidden], .fs-brand-logo-img[hidden] { display:none !important; }

/* v65: desktop producers menu with actual image tiles (as in the supplied reference). */
.mega-panel.fs-mega-brands-panel.active {
  display: block;
  min-height: 0;
  padding: 27px 27px 29px;
}
.fs-mega-brands-heading {
  margin: 0 0 19px;
  color: #171717;
  font-size: 17px;
  line-height: 1.3;
  text-align: center;
  font-weight: 900;
  letter-spacing: .015em;
  text-transform: uppercase;
}
.fs-mega-brand-grid {
  display: grid;
  grid-template-columns: repeat(10, minmax(0,1fr));
  gap: 10px;
  align-items: stretch;
}
.fs-mega-brand-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  border-radius: 9px;
  padding: 9px 5px;
  color: #1b1b1b;
  text-decoration: none;
  transition: background .15s ease, transform .15s ease;
}
.fs-mega-brand-card:hover, .fs-mega-brand-card:focus-visible {
  color: #aa1720;
  background: #faf1f2;
  transform: translateY(-2px);
}
.fs-mega-brand-art {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 82px;
  width: 100%;
  padding: 4px 3px;
}
.fs-mega-brand-logo {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 79px;
  object-fit: contain;
}
.fs-mega-brand-wordmark, .fs-mega-brand-fallback {
  color: #1b1b1b;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 900;
  text-align: center;
  overflow-wrap: anywhere;
}
.fs-mega-brand-fallback[hidden], .fs-mega-brand-logo[hidden] { display: none !important; }
.fs-mega-brand-title {
  font-size: 12px;
  font-weight: 750;
  text-align: center;
  line-height: 1.3;
}
.fs-mega-brand-bottom { display: flex; justify-content: center; margin-top: 16px; }
.fs-mega-brands-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 39px;
  padding: 10px 21px;
  background: var(--red,#d71920);
  border-radius: 8px;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 12px;
  font-weight: 900;
}
.fs-mega-brands-all:hover, .fs-mega-brands-all:focus-visible { background: #a20f17; color: #fff; }
@media (min-width: 861px) and (max-width: 1300px) {
  .fs-mega-brand-grid { grid-template-columns: repeat(5,minmax(0,1fr)); }
}

/* v67 – wyłącznie sekcja Kontakt w stopce; inspiracja: zdjęcie referencyjne klienta. */
.site-footer .footer-grid > .fs-footer-contact-card { min-width:0; }
.site-footer .footer-grid > .fs-footer-contact-card h4,
.site-footer .fs-footer-contact-mobile h4 {
    color:#fff;
    font-size:clamp(23px,2.1vw,29px);
    font-weight:900;
    letter-spacing:.015em;
    line-height:1.15;
    margin:0 0 13px;
}
.site-footer .fs-footer-contact-rule {
    display:block;
    width:82px;
    height:5px;
    background:#f6a328;
    border-radius:1px;
    margin:0 0 20px;
}
.site-footer .fs-footer-contact-card address {
    display:flex;
    flex-direction:column;
    gap:9px;
    margin:0;
    color:#f2f2f2;
    font-size:clamp(14px,1.25vw,17px);
    font-style:normal;
    font-weight:500;
    line-height:1.4;
}
.site-footer .fs-footer-contact-card address strong { color:#fff; font-size:1.04em; }
.site-footer .fs-footer-contact-card address span { display:block; overflow-wrap:anywhere; }
.site-footer .fs-footer-contact-card address a { color:#fff; text-decoration:none; font-weight:750; }
.site-footer .fs-footer-contact-card address a:hover,
.site-footer .fs-footer-contact-card address a:focus-visible { color:#fff; text-decoration:underline; }
.site-footer .fs-footer-contact-mobile { display:none; }
@media (min-width:1021px) {
    .site-footer .footer-grid { grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.38fr); }
}
@media (max-width:860px) {
    .site-footer .fs-footer-contact-mobile { display:block; margin:4px 0 28px; padding-top:24px; border-top:1px solid rgba(255,255,255,.15); }
    .site-footer .fs-footer-contact-mobile address { font-size:15px; }
}
