/* ==========================================================================
   Galeria Miejska Arsenał — arkusz stylów front-endu
   --------------------------------------------------------------------------
   Wszystkie klasy mają prefiks .gm- aby nie kolidowały ze stylami motywu
   WordPress. Reset jest ograniczony do kontenera .gm-page (nie dotyka
   reszty strony/panelu admina).
   Ścieżki do fontów: ../assets/ — dostosuj do struktury motywu.
   ========================================================================== */

/* --------------------------------------------------------- 1. Fonty */
@font-face{font-family:'NowAlt';src:url('../fonts/NowAlt-Light.otf') format('opentype');font-weight:300;font-style:normal;font-display:swap;}
@font-face{font-family:'NowAlt';src:url('../fonts/NowAlt-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'NowAlt';src:url('../fonts/NowAlt-Medium.otf') format('opentype');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'NowAlt';src:url('../fonts/NowAlt-Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap;}

/* --------------------------------------------------------- 2. Zmienne */
.gm-page{
  --gm-ink:#161616;          /* podstawowy kolor tekstu i linii */
  --gm-muted:#555050;        /* podtytuły */
  --gm-soft:#8a8680;         /* metadane, przypisy */
  --gm-line:#e6e2db;         /* cienkie linie rozdzielające */
  --gm-divider:#d6d2ca;      /* pionowe separatory "|" */
  --gm-placeholder:#f3efe9;  /* tło pod zdjęciami */
  --gm-off-border:#d8d4cc;   /* obramowanie stanu nieaktywnego */
  --gm-off-text:#a3a09a;     /* tekst stanu nieaktywnego */

  --gm-tag-dzieci:#eef0fb;
  --gm-tag-spotkanie:#f2eef2;
  --gm-tag-warsztaty:#f3efe9;
  --gm-tag-koncert:#fdf0d5;
  --gm-tag-senior:#e8efe6;

  --gm-max:1440px;
  --gm-gutter:28px;
  --gm-section-gap:120px;
}

/* --------------------------------------------------------- 3. Reset lokalny
   Uwaga: reset celowo używa :where() — selektor ma zerową specyficzność,
   dzięki czemu marginesy zadeklarowane w klasach komponentów (.gm-lede,
   .gm-event__title itd.) zawsze wygrywają.
   ------------------------------------------------------------------------ */
.gm-page,
.gm-page :where(*),
.gm-page :where(*::before, *::after){box-sizing:border-box;}
.gm-page :where(h1,h2,h3,h4,h5,h6,p,dl,dd,dt,blockquote,figure){margin:0;padding:0;}
.gm-page :where(ul,ol){margin:0;padding:0;list-style:none;}
.gm-page :where(img){max-width:100%;}
.gm-page :where(button){font:inherit;}

/* Globalne wymuszenie braku underline na hover i focus dla wszystkich linków */
a:hover,
a:focus{
  text-decoration:none !important;
}

body {
  padding: 0 !important;
}

/* ==========================================================================
   Globalne wymuszenie fontu NowAlt i prawidłowych grubości dla całego serwisu
   ========================================================================== */
html,
body,
#arsenalpage,
#arsenalpage body,
#arsenalpage body *:not(.fa):not(.icon):not(i):not([class*="fa-"]):not([class*="icon-"]):not([class*="lightcase-icon"]):not([class*="dashicons"]),
body *:not(.fa):not(.icon):not(i):not([class*="fa-"]):not([class*="icon-"]):not([class*="lightcase-icon"]):not([class*="dashicons"]),
.gm-page,
.gm-page *:not(.fa):not(.icon):not(i):not([class*="fa-"]):not([class*="icon-"]):not([class*="lightcase-icon"]):not([class*="dashicons"]),
p, h1, h2, h3, h4, h5, h6, span, a, li, dt, dd, label, blockquote, figcaption, cite,
input, button, select, textarea, optgroup,
article p, article ol, article ul, article li, article strong, article em,
#single article p, #single article ol, #single article ul, #single article li,
article.content p, article.content ol, article.content ul, article.content li,
.gm-footer, .gm-footer *, .gm-newsletter, .gm-newsletter * {
  font-family: 'NowAlt', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

.gm-newsletter {
  border-top:1.5px solid var(--gm-ink);
  margin-top: 40px;
  padding-top: 40px;
}

/* Nadpisanie nieprawidłowej wagi 600 ze starych arkuszy motywu (custom.css) */
#arsenalpage h1,
#arsenalpage h2,
#arsenalpage h3,
#arsenalpage h4,
#arsenalpage h5,
#arsenalpage h6 {
  font-family: 'NowAlt', system-ui, sans-serif !important;
  font-weight: 700;
}

#arsenalpage strong,
#arsenalpage b,
strong,
b {
  font-family: 'NowAlt', system-ui, sans-serif !important;
  font-weight: 700 !important;
}

#arsenalpage .title {
  font-family: 'NowAlt', system-ui, sans-serif !important;
  font-weight: 700;
}

/* Wyjątki dla przycisków strzałek i ikon */
.gm-hero__arrow,
.gm-docs__arrow,
.gm-newsletter__submit {
  font-family: Arial, sans-serif !important;
}
.fa,
[class*="fa-"],
i.fa {
  font-family: 'FontAwesome' !important;
}
[class*="icon-"],
.icon {
  font-family: 'simple-line-icons' !important;
}
[class*="lightcase-icon-"] {
  font-family: 'lightcase' !important;
}

/* --------------------------------------------------------- 4. Kontener */
#arsenalpage .gm-page,
.gm-page{
  font-family:'NowAlt',system-ui,sans-serif;
  color:var(--gm-ink);
  background:#fff;
  width:100%;
  max-width:var(--gm-max);
  margin:0 auto;
  padding:0 var(--gm-gutter) 80px;
  -webkit-font-smoothing:antialiased;
}
#arsenalpage .gm-page a,
.gm-page a{color:var(--gm-ink);text-decoration:none;}
#arsenalpage .gm-page a:hover,
#arsenalpage .gm-page a:focus,
.gm-page a:hover,
.gm-page a:focus{color:#6b6b6b;text-decoration:none !important;}

/* Element pomocniczy: krótka pozioma kreska */
.gm-dash{display:inline-block;width:34px;height:1px;background:var(--gm-ink);flex:0 0 auto;}

/* Link z podkreśleniem (CTA tekstowe) */
.gm-link{
  display:inline-block;
  font-size:22px;font-weight:400;
  color:var(--gm-ink);text-decoration:none;
  border-bottom:1.5px solid var(--gm-ink);
  padding-bottom:3px;
}
.gm-link:hover,
.gm-link:focus{opacity:.6;color:var(--gm-ink);text-decoration:none !important;}
.gm-link--sm{font-size:20px;}

/* --------------------------------------------------------- 5. Nagłówek
   Nagłówek jest JEDEN i zostaje na miejscu także przy otwartym menu —
   leży nad nakładką (z-index) i tylko zmienia kolor na biały.
   ------------------------------------------------------------------------ */
.gm-header{display:flex;align-items:center;gap:60px;height:88px;position:relative;z-index:1001;}
.gm-logo{display:flex;align-items:center;text-decoration:none;}
.gm-logo__img{height:33px;width:auto;display:block;}
.gm-header__meta{display:flex;align-items:center;gap:56px;font-size:19px;font-weight:400;}
.gm-header__meta a{text-decoration:none;}
.gm-header__right{margin-left:auto;display:flex;align-items:center;gap:40px;}
.gm-lang{font-size:19px;letter-spacing:.5px;text-decoration:none;}

.gm-burger{
  background:none;border:none;cursor:pointer;
  display:flex;flex-direction:column;gap:6px;
  padding:4px 0;width:34px;
  position:relative;z-index:1002;
  margin:0;
  box-sizing:border-box;
}
.gm-burger__line{
  display:block;width:100%;height:2px;background:var(--gm-ink);border-radius:2px;
  transition:transform .25s ease, background-color .25s ease;
}

/* Stan otwartego menu — klasa `.is-menu-open` na `.gm-page` */
.gm-page.is-menu-open .gm-header,
.gm-page.is-menu-open .gm-header__meta,
.gm-page.is-menu-open .gm-header__meta a,
.gm-page.is-menu-open .gm-header .gm-lang{color:#fff;}
.gm-page.is-menu-open .gm-header__meta{border-bottom-color:rgba(255,255,255,.25);}
.gm-page.is-menu-open .gm-logo__img{filter:invert(1);}
.gm-page.is-menu-open .gm-burger__line{background:#fff;}
.gm-page.is-menu-open .gm-burger__line--a{transform:translateY(4px) rotate(45deg);}
.gm-page.is-menu-open .gm-burger__line--b{transform:translateY(-4px) rotate(-45deg);}

/* --------------------------------------------------------- 6. Menu pełnoekranowe
   Nakładka zawiera WYŁĄCZNIE listę pozycji — nagłówek nie jest tu powielany,
   tylko przykrywa nakładkę od góry (patrz sekcja 5).
   ------------------------------------------------------------------------ */
.gm-menu{
  display:none;
  position:fixed;inset:0;z-index:1000;
  background:var(--gm-ink);
  flex-direction:column;
  padding:88px var(--gm-gutter) 0;
}
.gm-menu.is-open{display:flex;}

.gm-menu__nav{
  width:100%;max-width:var(--gm-max);margin:0 auto;
  flex:1;display:flex;flex-direction:column;justify-content:center;
  padding:12px var(--gm-gutter) 32px;
}

@media (max-width:1498px) {
  .gm-menu__nav{
    padding:12px 0 32px;
  }
}

/* Uwaga na specyficzność: `.gm-page a` (0,1,1) bije samą klasę `.gm-menu__link`
   (0,1,0) i pomalowałoby pozycje menu na czarno. Stąd selektor z rodzicem. */
#arsenalpage .gm-menu .gm-menu__link,
.gm-menu .gm-menu__link{
  display:block;
  font-weight:500;font-size:30px;line-height:1.28;letter-spacing:-.3px;
  color:#fff;text-decoration:none;text-transform:lowercase;
}
#arsenalpage .gm-menu .gm-menu__link:hover,
.gm-menu .gm-menu__link:hover{opacity:.55;color:#fff;}

/* --------------------------------------------------------- 7. Slider hero */
.gm-hero{position:relative;width:100%;aspect-ratio:1385 / 532;overflow:hidden;}
.gm-hero__img{
  position:absolute;inset:0;
  width:100%;height:100%;object-fit:cover;display:block;
  opacity:0;transition:opacity .4s ease;pointer-events:none;
}
.gm-hero__img.is-active{opacity:1;}
.gm-hero__arrow{
  position:absolute;top:50%;transform:translateY(-50%);
  background:rgba(255,255,255,.85);border:none;cursor:pointer;
  width:48px;height:48px;border-radius:999px;
  font-size:22px;line-height:1;color:var(--gm-ink);
  display:flex;align-items:center;justify-content:center;
  padding:0;
  margin:0;
  text-indent:0;
  text-transform:none;
  letter-spacing:0;
  font-family:Arial, sans-serif !important;
  box-sizing:border-box;
}
.gm-hero__arrow:hover{background:#fff;}
.gm-hero__arrow--prev{left:20px;}
.gm-hero__arrow--next{right:20px;}
.gm-hero__dots{
  position:absolute;bottom:20px;left:50%;transform:translateX(-50%);
  display:flex;gap:10px;
}
.gm-hero__dot{
  width:10px;height:10px;border-radius:999px;border:none;padding:0;
  background:rgba(22,22,22,.3);cursor:pointer;
  margin:0;
}
.gm-hero__dot.is-active{background:var(--gm-ink);}

/* Blok tekstowy pod sliderem */
.gm-intro{margin-top:34px;}
.gm-intro__inner{max-width:920px;}
.gm-hero-text{display:none;}
.gm-hero-text.is-active{display:block;}
#arsenalpage .gm-hero-text__title,
.gm-hero-text__title{font-weight:500;font-size:34px;line-height:1.22;letter-spacing:-.2px;margin:0;}
#arsenalpage .gm-hero-text__meta,
.gm-hero-text__meta{
  display:flex;align-items:center;gap:22px;
  font-size:19px;font-weight:400;margin-top:18px;letter-spacing:.2px;
}
.gm-hero-text__cat{letter-spacing:1px;text-transform:uppercase;}
#arsenalpage .gm-lede,
.gm-lede{
  font-weight:400;font-size:33px;line-height:1.42;letter-spacing:-.1px;
  margin-top:96px;max-width:840px;text-wrap:pretty;
}
.gm-intro .gm-link{margin-top:48px;}

/* --------------------------------------------------------- 8. Sekcje */
.gm-section{margin-top:var(--gm-section-gap);}
.gm-section--ruled{border-top:1.5px solid var(--gm-ink);padding-top:44px;}
.gm-section__head{
  display:flex;align-items:baseline;gap:18px;
  border-top:1.5px solid var(--gm-ink);padding-top:18px;
}
#arsenalpage .gm-section__title,
.gm-section__title{font-weight:500;font-size:26px;letter-spacing:.3px;margin:0;}
#arsenalpage .gm-section__sub,
.gm-section__sub{font-size:19px;font-weight:400;}
#arsenalpage .gm-section__more,
.gm-section__more{
  margin-left:auto;font-size:19px;font-weight:400;
  text-decoration:none;border-bottom:1.5px solid var(--gm-ink);padding-bottom:2px;
}

/* --------------------------------------------------------- 9. Filtry (tagi) */
.gm-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.gm-chip{
  font-family:'NowAlt',sans-serif;font-size:15px;font-weight:400;line-height:1;
  letter-spacing:.3px;
  padding:9px 18px;border-radius:999px;
  border:1.5px solid var(--gm-ink);background:transparent;color:var(--gm-ink);
  cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;text-decoration:none;
}
.gm-chip:hover,
.gm-chip:focus{
  color:var(--gm-ink);text-decoration:none !important;
}
.gm-chip--lower{text-transform:lowercase;}
.gm-chip.is-active{background:var(--gm-ink);color:#fff;}

/* --------------------------------------------------------- 10. Wystawy bieżące */
.gm-exhibitions{display:grid;grid-template-columns:repeat(2,1fr);gap:48px;margin-top:44px;}
.gm-exhibition{display:flex;flex-direction:column;text-decoration:none;color:var(--gm-ink);}
.gm-exhibition:hover{color:var(--gm-ink);}
.gm-exhibition__media{width:100%;max-width:480px;overflow:hidden;background:var(--gm-placeholder);}
.gm-exhibition__media img{width:100%;height:auto;display:block;}
#arsenalpage .gm-exhibition__dates,
.gm-exhibition__dates{font-size:16px;font-weight:400;letter-spacing:.8px;margin-top:20px;}
#arsenalpage .gm-exhibition__title,
.gm-exhibition__title{
  font-weight:500;font-size:30px;line-height:1.16;letter-spacing:-.3px;
  margin-top:12px;margin-bottom:0;text-wrap:pretty;
}
#arsenalpage .gm-exhibition__subtitle,
.gm-exhibition__subtitle{
  font-weight:400;font-size:20px;line-height:1.36;margin-top:12px;
  text-wrap:pretty;word-break:normal;hyphens:none;
}
#arsenalpage .gm-exhibition__vernissage,
.gm-exhibition__vernissage{font-size:17px;font-weight:400;line-height:1.4;margin-top:20px;}

/* Wariant pojedynczej wystawy (pełna szerokość, poziomo) */
.gm-exhibitions--single{display:block;}
.gm-exhibitions--single .gm-exhibition{
  max-width:400px;
}
.gm-exhibitions--single .gm-exhibition__media{width:400px;max-width:none;aspect-ratio:400 / 535;}
.gm-exhibitions--single .gm-exhibition__media img{height:100%;object-fit:cover;}
#arsenalpage .gm-exhibitions--single .gm-exhibition__dates,
.gm-exhibitions--single .gm-exhibition__dates{margin-top:20px;font-size:17px;font-weight:400;}
#arsenalpage .gm-exhibitions--single .gm-exhibition__title,
.gm-exhibitions--single .gm-exhibition__title{font-size:34px;margin-top:14px;font-weight:500;}
#arsenalpage .gm-exhibitions--single .gm-exhibition__subtitle,
.gm-exhibitions--single .gm-exhibition__subtitle{font-size:22px;margin-top:16px;font-weight:400;}
#arsenalpage .gm-exhibitions--single .gm-exhibition__vernissage,
.gm-exhibitions--single .gm-exhibition__vernissage{font-size:18px;margin-top:28px;font-weight:400;}

/* --------------------------------------------------------- 11. Wydarzenia */
.gm-events{margin-top:18px;}
.gm-event{
  display:grid;grid-template-columns:220px 1fr auto;gap:40px;align-items:center;
  text-decoration:none;color:var(--gm-ink);
  padding:30px 0;border-top:1px solid var(--gm-line);
}
.gm-event:hover{color:var(--gm-ink);}
.gm-event:last-child{border-bottom:1px solid var(--gm-line);}
.gm-event[hidden]{display:none !important;}
.gm-event__media{width:220px;aspect-ratio:535 / 400;overflow:hidden;background:var(--gm-placeholder);display:block;}
.gm-event__media img{width:100%;height:100%;object-fit:cover;display:block;}
.gm-event__body{min-width:0;display:block;text-decoration:none;color:var(--gm-ink);}
.gm-event__body:hover{color:var(--gm-ink);text-decoration:none !important;}
.gm-event__meta{display:flex;align-items:center;gap:16px;}
#arsenalpage .gm-event__date,
.gm-event__date{font-size:16px;font-weight:400;letter-spacing:.6px;}
#arsenalpage .gm-event__title,
.gm-event__title{
  font-weight:500;font-size:27px;line-height:1.15;letter-spacing:-.3px;
  margin-top:13px;margin-bottom:0;text-wrap:pretty;
}
#arsenalpage .gm-event__subtitle,
.gm-event__subtitle{
  font-weight:400;font-size:19px;line-height:1.35;margin-top:7px;
  color:var(--gm-muted);text-wrap:pretty;
}

#arsenalpage .gm-tag,
.gm-tag{
  font-size:12px;font-weight:500;letter-spacing:1.2px;text-transform:uppercase;
  padding:5px 11px;border-radius:999px;color:var(--gm-ink);white-space:nowrap;
  background:var(--gm-placeholder);
}

#arsenalpage .gm-event__status,
.gm-event__status{
  justify-self:end;white-space:nowrap;
  font-size:16px;font-weight:400;letter-spacing:.4px;
}
.gm-event__status--open{
  padding:11px 24px;border-radius:999px;background:var(--gm-ink);color:#fff !important;
  text-decoration:none !important;display:inline-block;font-weight:400;
}
.gm-event__status--open:hover,
.gm-event__status--open:focus{
  opacity:.85;color:#fff !important;text-decoration:none !important;
}
.gm-event__status--closed{
  padding:11px 22px;border-radius:999px;
  border:1.5px solid var(--gm-off-border);color:var(--gm-off-text);
  display:inline-block;font-weight:400;
}
.gm-event__status--free{color:var(--gm-ink);display:inline-block;font-weight:400;}

/* --------------------------------------------------------- 12. Księgarnia */
.gm-books{
  display:grid;grid-template-columns:repeat(5,190px);
  justify-content:space-between;gap:36px;margin-top:48px;
}
.gm-book{width:190px;display:flex;flex-direction:column;text-decoration:none;color:var(--gm-ink);}
.gm-book:hover{color:var(--gm-ink);}
.gm-book[hidden],
[hidden]{display:none !important;}
.gm-book__media{width:190px;aspect-ratio:3 / 4;overflow:hidden;}
.gm-book__media img{width:100%;height:100%;object-fit:cover;display:block;}
#arsenalpage .gm-book__title,
.gm-book__title{
  font-weight:500;font-size:21px;line-height:1.2;letter-spacing:-.2px;
  margin-top:20px;margin-bottom:0;text-wrap:pretty;
}
#arsenalpage .gm-book__author,
.gm-book__author{font-weight:400;font-size:18px;line-height:1.3;margin-top:6px;color:var(--gm-muted);text-wrap:pretty;}
#arsenalpage .gm-book__price,
.gm-book__price{font-weight:400;font-size:18px;margin-top:16px;}

/* --------------------------------------------------------- 13. Archiwum */
.gm-archive{display:grid;grid-template-columns:repeat(4,1fr);gap:56px 40px;margin-top:48px;}
.gm-archive__item{display:flex;flex-direction:column;text-decoration:none;color:var(--gm-ink);text-align:center;}
.gm-archive__item:hover{color:var(--gm-ink);}
.gm-archive__media{width:100%;aspect-ratio:535 / 400;overflow:hidden;background:var(--gm-placeholder);}
.gm-archive__media img{width:100%;height:100%;object-fit:cover;display:block;}
#arsenalpage .gm-archive__title,
.gm-archive__title{font-weight:500;font-size:20px;line-height:1.2;letter-spacing:-.2px;margin-top:20px;margin-bottom:0;text-wrap:pretty;}
#arsenalpage .gm-archive__author,
.gm-archive__author{font-weight:400;font-size:17px;line-height:1.3;margin-top:6px;color:var(--gm-muted);text-wrap:pretty;}
#arsenalpage .gm-archive__dates,
.gm-archive__dates{font-weight:400;font-size:16px;line-height:1.35;margin-top:10px;letter-spacing:.3px;}
#arsenalpage .gm-archive__vernissage,
.gm-archive__vernissage{font-weight:400;font-size:16px;line-height:1.35;margin-top:2px;color:var(--gm-soft);}

/* --------------------------------------------------------- 14. Pas zdjęciowy */
.gm-band{width:100%;aspect-ratio:1385 / 532;overflow:hidden;margin-top:var(--gm-section-gap);}
.gm-band img{width:100%;height:100%;object-fit:cover;display:block;}

/* --------------------------------------------------------- 15. Newsletter */
.gm-newsletter{margin-top:64px;}
#arsenalpage .gm-newsletter__title,
.gm-newsletter__title{font-weight:500;font-size:34px;letter-spacing:-.3px;margin:0;}
.gm-newsletter__form{max-width:520px;margin-top:26px;}
.gm-newsletter__row{
  display:flex;align-items:center;gap:16px;
  border-bottom:1.5px solid var(--gm-ink);padding-bottom:10px;
}
#arsenalpage .gm-newsletter__input,
.gm-newsletter__input{
  flex:1;min-width:0;border:none;outline:none;background:transparent;
  font-family:'NowAlt',sans-serif;font-size:22px;font-weight:400;color:var(--gm-ink);
}
.gm-newsletter__submit{
  background:none;border:none;cursor:pointer;
  font-size:26px;line-height:1;color:var(--gm-ink);padding:0 2px;
  font-family:Arial, sans-serif !important;
}
#arsenalpage .gm-newsletter__consent,
.gm-newsletter__consent{
  display:flex;align-items:center;gap:12px;margin-top:16px;
  font-size:18px;font-weight:400;cursor:pointer;
}
.gm-newsletter__checkbox{width:17px;height:17px;accent-color:var(--gm-ink);}

/* --------------------------------------------------------- 16. Stopka */
.gm-footer{margin-top:80px;padding-top:56px;border-top:1.5px solid var(--gm-ink);}
.gm-footer__cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:56px;}
#arsenalpage .gm-footer__title,
.gm-footer__title{font-weight:500;font-size:20px;letter-spacing:-.2px;color:var(--gm-ink);margin:0;}
#arsenalpage .gm-footer__list,
.gm-footer__list{display:flex;flex-direction:column;margin-top:20px;font-size:16px;font-weight:400;line-height:1.5;color:var(--gm-ink);}
.gm-footer__list a{color:var(--gm-ink);text-decoration:none;}
.gm-footer__list a:hover{opacity:.6;color:var(--gm-ink);text-decoration:none !important;}
.gm-social{display:flex;align-items:center;gap:22px;margin-top:26px;}
.gm-social a{color:var(--gm-ink);display:flex;font-size:20px;text-decoration:none;}
.gm-social a:hover{opacity:.6;color:var(--gm-ink);text-decoration:none !important;}
.gm-social i.fa{font-size:20px;color:var(--gm-ink);display:inline-block;}
.gm-footer__ue{margin-top:26px;}
.gm-footer__ue img{height:56px;width:auto;display:block;}
#arsenalpage .gm-legal,
.gm-legal{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;
  margin-top:56px;padding-top:26px;border-top:1px solid var(--gm-line);
  font-size:14px;font-weight:400;color:var(--gm-soft);
}
.gm-legal__sep{color:var(--gm-divider);}

/* ==========================================================================
   PODSTRONA WYSTAWY
   ========================================================================== */

#arsenalpage .gm-breadcrumb,
.gm-breadcrumb{
  display:flex;align-items:center;gap:10px;
  margin-top:8px;padding-bottom:16px;border-bottom:1px solid var(--gm-line);
  font-size:16px;font-weight:400;color:var(--gm-soft);
}
.gm-breadcrumb a{color:var(--gm-soft);text-decoration:none;}
.gm-breadcrumb__current{color:var(--gm-ink);}

.gm-exh-head{margin-top:40px;}
#arsenalpage .gm-exh-head__title,
.gm-exh-head__title{font-weight:500;font-size:64px;line-height:1.02;letter-spacing:-1px;margin:0;text-wrap:pretty;}
#arsenalpage .gm-exh-head__subtitle,
.gm-exh-head__subtitle{font-weight:400;font-size:26px;line-height:1.3;margin-top:16px;color:var(--gm-muted);text-wrap:pretty;}

.gm-exh-layout{display:grid;grid-template-columns:320px 1fr;gap:64px;margin-top:48px;}

.gm-meta{display:flex;flex-direction:column;gap:24px;}
#arsenalpage .gm-meta__label,
.gm-meta__label{font-size:13px;font-weight:500;letter-spacing:1.4px;text-transform:uppercase;color:var(--gm-soft);}
#arsenalpage .gm-meta__value,
.gm-meta__value{font-size:20px;font-weight:400;margin-top:6px;line-height:1.4;}
.gm-exh-aside .gm-link{margin-top:36px;}

.gm-exh-body{max-width:760px;}
.gm-exh-body__cover{width:100%;height:auto;display:block;margin-bottom:44px;}
#arsenalpage .gm-exh-body p,
#arsenalpage .gm-exh-body :where(p),
.gm-exh-body p,
.gm-exh-body :where(p){font-weight:400;font-size:20px;line-height:1.6;margin-top:26px;text-wrap:pretty;}
.gm-exh-body p:first-of-type,
.gm-exh-body :where(p:first-of-type){margin-top:0;}
#arsenalpage .gm-exh-body__lead,
.gm-exh-body__lead{font-size:22px;line-height:1.55;font-weight:400;}
.gm-exh-body sup{font-size:13px;}
#arsenalpage .gm-pull,
.gm-pull{
  margin:44px 0;padding-left:28px;border-left:2px solid var(--gm-ink);
  font-weight:500;font-size:27px;line-height:1.34;letter-spacing:-.2px;text-wrap:pretty;
}
#arsenalpage .gm-signature,
.gm-signature{font-weight:500;font-size:20px;line-height:1.6;margin-top:32px;}
.gm-notes{
  margin-top:44px;padding-top:24px;border-top:1px solid var(--gm-line);
  display:flex;flex-direction:column;gap:12px;
  color:var(--gm-soft);text-wrap:pretty;
}
.gm-notes p,
.gm-notes :where(p){font-size:15px;line-height:1.5;margin-top:0;font-weight:400;}
.gm-notes sup{font-size:11px;}

#arsenalpage .gm-artists,
.gm-artists{columns:4;column-gap:40px;margin-top:36px;font-size:18px;font-weight:400;line-height:1.7;}
.gm-artists__item{break-inside:avoid;}

.gm-docs__head{display:flex;align-items:center;gap:18px;}
.gm-docs__nav{margin-left:auto;display:flex;gap:10px;}
.gm-docs__arrow{
  background:none;border:none;cursor:pointer;
  color:var(--gm-ink);font-size:26px;line-height:1;padding:4px 6px;
  margin:0;
  text-indent:0;
  text-transform:none;
  letter-spacing:0;
  font-family:Arial, sans-serif !important;
  box-sizing:border-box;
}
.gm-docs__arrow:hover{opacity:.5;}
.gm-docs{
  display:flex;gap:16px;margin-top:28px;
  overflow-x:auto;padding-bottom:16px;
  scroll-snap-type:x proximity;scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
}
.gm-docs__item{flex:0 0 auto;height:200px;scroll-snap-align:start;}
.gm-docs__item img{height:100%;width:auto;display:block;background:var(--gm-placeholder);}
#arsenalpage .gm-docs__credit,
.gm-docs__credit{margin-top:14px;font-size:15px;font-weight:400;color:var(--gm-soft);}

.gm-related{
  display:grid;grid-template-columns:520px 1fr;gap:48px;align-items:center;
  margin-top:36px;text-decoration:none;color:var(--gm-ink);
}
.gm-related:hover{color:var(--gm-ink);}
.gm-related__media{width:100%;overflow:hidden;background:var(--gm-placeholder);}
.gm-related__media img{width:100%;height:auto;display:block;}
.gm-related__body{min-width:0;}
#arsenalpage .gm-related__dates,
.gm-related__dates{font-size:16px;font-weight:400;letter-spacing:.8px;}
#arsenalpage .gm-related__title,
.gm-related__title{font-weight:500;font-size:40px;line-height:1.08;letter-spacing:-.5px;margin-top:14px;margin-bottom:0;text-wrap:pretty;}
#arsenalpage .gm-related__author,
.gm-related__author{font-weight:400;font-size:24px;line-height:1.34;margin-top:14px;text-wrap:pretty;}
#arsenalpage .gm-related__vernissage,
.gm-related__vernissage{font-size:18px;font-weight:400;line-height:1.4;margin-top:24px;color:var(--gm-soft);}
#arsenalpage .gm-related__link,
.gm-related__link{
  display:inline-block;margin-top:28px;font-size:20px;font-weight:400;
  border-bottom:1.5px solid var(--gm-ink);padding-bottom:3px;
}

/* ==========================================================================
   PODSTRONA WIZYTA
   ========================================================================== */

.gm-visit-hero{width:100%;aspect-ratio:1392 / 507;overflow:hidden;}
.gm-visit-hero img{width:100%;height:100%;object-fit:cover;display:block;}

.gm-visit-intro{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:48px 64px;margin-top:48px;align-items:start;
}
.gm-visit-intro > div{min-width:0;}
#arsenalpage .gm-visit-title,
.gm-visit-title{font-weight:500;font-size:46px;line-height:1.04;letter-spacing:-.8px;margin:0;}
#arsenalpage .gm-visit-lede,
.gm-visit-lede{
  font-weight:400;font-size:22px;line-height:1.5;
  margin-top:20px;max-width:520px;text-wrap:pretty;
}

.gm-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:36px 40px;}
.gm-fact{min-width:0;}
#arsenalpage .gm-fact__label,
.gm-fact__label{
  font-size:13px;font-weight:500;letter-spacing:1.4px;
  text-transform:uppercase;color:var(--gm-soft);
}
#arsenalpage .gm-fact__text,
.gm-fact__text{font-size:19px;line-height:1.45;font-weight:400;margin-top:10px;text-wrap:pretty;}
#arsenalpage .gm-fact__link,
.gm-fact__link{
  display:inline-block;margin-top:14px;font-size:17px;font-weight:400;
  text-decoration:none;border-bottom:1.5px solid var(--gm-ink);padding-bottom:2px;
}

/* Godziny: siatka auto/auto zamiast sztywnego min-width — wartości nie łamią się w środku */
#arsenalpage .gm-hours,
.gm-hours{
  display:grid;grid-template-columns:auto auto;justify-content:start;
  column-gap:18px;margin-top:10px;font-size:19px;line-height:1.45;font-weight:400;
}
.gm-hours dt{grid-column:1; font-weight:500;}
.gm-hours dd.is-muted{color:var(--gm-soft);}

/* Księgarnia / kawiarnia — jedna wyśrodkowana kolumna */
.gm-venue{max-width:760px;margin:0 auto;}
.gm-venue + .gm-venue{margin-top:88px;padding-top:56px;border-top:1px solid var(--gm-line);}
.gm-venue__media{width:100%;aspect-ratio:4 / 3;overflow:hidden;background:var(--gm-placeholder);margin-bottom:32px;}
.gm-venue__media img{width:100%;height:100%;object-fit:cover;display:block;}
#arsenalpage .gm-venue__kicker,
.gm-venue__kicker{
  font-size:13px;font-weight:500;letter-spacing:1.4px;
  text-transform:uppercase;color:var(--gm-soft);
}
#arsenalpage .gm-venue__title,
.gm-venue__title{font-weight:500;font-size:38px;line-height:1.06;letter-spacing:-.5px;margin-top:12px;margin-bottom:0;}
#arsenalpage .gm-venue__desc,
.gm-venue__desc{font-weight:400;font-size:20px;line-height:1.55;margin-top:18px;max-width:520px;text-wrap:pretty;}
#arsenalpage .gm-venue__hours,
.gm-venue__hours{
  margin-top:26px;padding-top:18px;border-top:1px solid var(--gm-line);font-size:18px;font-weight:400;
}
.gm-venue__hours dt{color:var(--gm-muted);}
.gm-venue .gm-link{margin-top:24px;}

.gm-travel{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:40px;margin-top:32px;}

/* ==========================================================================
   RESPONSYWNO\u015a\u0106 \u2014 punkty \u0142amania
   ========================================================================== */

@media (max-width:1200px){
  #arsenalpage .gm-page, .gm-page{--gm-section-gap:96px;}
  #arsenalpage .gm-books, .gm-books{grid-template-columns:repeat(4,190px);justify-content:start;}
  #arsenalpage .gm-archive, .gm-archive{grid-template-columns:repeat(3,1fr);}
  #arsenalpage .gm-artists, .gm-artists{columns:3;}
  #arsenalpage .gm-exh-head__title, .gm-exh-head__title{font-size:52px;}
  #arsenalpage .gm-visit-title, .gm-visit-title{font-size:40px;}
}

@media (max-width:1000px){
  #arsenalpage .gm-header, .gm-header{gap:28px;}
  #arsenalpage .gm-header__meta, .gm-header__meta{gap:28px;font-size:17px;}
  #arsenalpage .gm-exh-layout, .gm-exh-layout{grid-template-columns:1fr;gap:40px;}
  #arsenalpage .gm-related, .gm-related{grid-template-columns:1fr;gap:28px;}
  #arsenalpage .gm-lede, .gm-lede{font-size:27px;margin-top:64px;}
  #arsenalpage .gm-books, .gm-books{grid-template-columns:repeat(3,190px);}
  #arsenalpage .gm-artists, .gm-artists{columns:2;}
}

/* --------------------------------------------------------------------------
   ≤ 760 px — układ mobilny (odwzorowuje makiety „— mobile")
   Wszystkie cele dotykowe mają tu min. 44 × 44 px.
   -------------------------------------------------------------------------- */
@media (max-width:760px){
  #arsenalpage .gm-page, .gm-page{--gm-gutter:18px;--gm-section-gap:64px;}

  /* Nagłówek: logo + EN + hamburger w jednym rzędzie,
     godziny otwarcia i WIZYTA schodzą do osobnego paska pod spodem. */
  #arsenalpage .gm-header, .gm-header{height:auto;min-height:64px;flex-wrap:wrap;gap:0;}
  #arsenalpage .gm-logo, .gm-logo{order:1;}
  #arsenalpage .gm-logo__img, .gm-logo__img{height:26px;}
  #arsenalpage .gm-header__right, .gm-header__right{order:2;gap:8px;}
  #arsenalpage .gm-header__meta, .gm-header__meta{
    order:3;width:100%;gap:14px;font-size:14px;
    padding-bottom:12px;border-bottom:1px solid var(--gm-line);
  }
  #arsenalpage .gm-header__meta a, .gm-header__meta a{margin-left:auto;}

  /* Cele dotykowe */
  #arsenalpage .gm-burger, .gm-burger{width:44px;min-height:44px;align-items:center;justify-content:center;padding:0;}
  #arsenalpage .gm-burger__line, .gm-burger__line{width:30px;}
  #arsenalpage .gm-lang,
  #arsenalpage .gm-header__meta a,
  #arsenalpage .gm-section__more,
  #arsenalpage .gm-social a,
  #arsenalpage .gm-related__link,
  #arsenalpage .gm-breadcrumb a,
  .gm-lang,
  .gm-header__meta a,
  .gm-section__more,
  .gm-social a,
  .gm-related__link,
  .gm-breadcrumb a{
    display:inline-flex;align-items:center;min-height:44px;
  }
  #arsenalpage .gm-lang, #arsenalpage .gm-social a, .gm-lang, .gm-social a{justify-content:center;min-width:44px;}
  #arsenalpage .gm-social, .gm-social{gap:8px;margin-top:20px;}
  #arsenalpage .gm-footer__list, .gm-footer__list{gap:0;margin-top:8px;}
  #arsenalpage .gm-newsletter__submit, .gm-newsletter__submit{
    display:flex;align-items:center;justify-content:center;
    min-width:44px;min-height:44px;padding:0;
  }
  #arsenalpage .gm-chip, .gm-chip{min-height:44px;padding:0 16px;}

  /* Hero */
  #arsenalpage .gm-hero, #arsenalpage .gm-band, .gm-hero, .gm-band{aspect-ratio:4 / 3;}
  #arsenalpage .gm-hero__arrow, .gm-hero__arrow{display:none;}          /* nawigacja kropkami + swipe */
  #arsenalpage .gm-hero__dots, .gm-hero__dots{bottom:10px;gap:0;}
  #arsenalpage .gm-hero__dot, .gm-hero__dot{
    width:44px;height:44px;background:none;
    display:flex;align-items:center;justify-content:center;
  }
  .gm-hero__dot::after{
    content:"";width:9px;height:9px;border-radius:999px;
    background:rgba(255,255,255,.5);box-shadow:0 0 3px rgba(0,0,0,.45);
  }
  #arsenalpage .gm-hero__dot.is-active, .gm-hero__dot.is-active{background:none;}
  .gm-hero__dot.is-active::after{background:#fff;}

  #arsenalpage .gm-hero-text__title, .gm-hero-text__title{font-size:26px;}
  #arsenalpage .gm-hero-text__meta, .gm-hero-text__meta{gap:12px;font-size:15px;flex-wrap:wrap;}
  #arsenalpage .gm-lede, .gm-lede{font-size:21px;margin-top:44px;}
  #arsenalpage .gm-intro .gm-link, .gm-intro .gm-link{margin-top:24px;font-size:18px;}

  /* Sekcje */
  #arsenalpage .gm-section__title, .gm-section__title{font-size:21px;}
  #arsenalpage .gm-section__sub, #arsenalpage .gm-section__more, .gm-section__sub, .gm-section__more{font-size:15px;}

  /* Filtry przewijane w poziomie */
  #arsenalpage .gm-chips, .gm-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-top:18px;}

  /* Wystawy — jedna kolumna */
  #arsenalpage .gm-exhibitions, .gm-exhibitions{grid-template-columns:1fr;gap:36px;}
  #arsenalpage .gm-exhibition__media,
  #arsenalpage .gm-exhibitions--single .gm-exhibition__media,
  .gm-exhibition__media,
  .gm-exhibitions--single .gm-exhibition__media{width:100%;max-width:none;aspect-ratio:auto;}
  #arsenalpage .gm-exhibitions--single .gm-exhibition,
  .gm-exhibitions--single .gm-exhibition{max-width:none;}
  #arsenalpage .gm-exhibition__title, .gm-exhibition__title{font-size:24px;}
  #arsenalpage .gm-exhibition__subtitle, .gm-exhibition__subtitle{font-size:17px;}

  /* Wydarzenia — miniatura 96 px, status pod spodem */
  #arsenalpage .gm-event, .gm-event{grid-template-columns:96px 1fr;gap:14px;padding:20px 0;align-items:start;}
  #arsenalpage .gm-event__media, .gm-event__media{width:96px;}
  #arsenalpage .gm-event__date, .gm-event__date{font-size:13px;}
  #arsenalpage .gm-event__title, .gm-event__title{font-size:19px;margin-top:8px;}
  #arsenalpage .gm-event__subtitle, .gm-event__subtitle{font-size:15px;}
  #arsenalpage .gm-event__status, .gm-event__status{
    grid-column:1 / -1;justify-self:start;margin-top:4px;
    min-height:44px;display:inline-flex;align-items:center;
  }
  #arsenalpage .gm-event__status--open,
  #arsenalpage .gm-event__status--closed,
  .gm-event__status--open,
  .gm-event__status--closed{padding:0 22px;}

  /* Księgarnia — poziomy scroll */
  #arsenalpage .gm-books, .gm-books{
    display:flex;grid-template-columns:none;
    gap:16px;overflow-x:auto;padding-bottom:12px;
    scroll-snap-type:x proximity;justify-content:flex-start;
  }
  #arsenalpage .gm-book, .gm-book{flex:0 0 140px;width:140px;scroll-snap-align:start;}
  #arsenalpage .gm-book__media, .gm-book__media{width:140px;}
  #arsenalpage .gm-book__title, .gm-book__title{font-size:16px;margin-top:14px;}
  #arsenalpage .gm-book__author, .gm-book__author{font-size:14px;}
  #arsenalpage .gm-book__price, .gm-book__price{font-size:15px;}

  /* Archiwum — 2 kolumny */
  #arsenalpage .gm-archive, .gm-archive{grid-template-columns:repeat(2,1fr);gap:28px 14px;}
  #arsenalpage .gm-archive__title, .gm-archive__title{font-size:16px;}
  #arsenalpage .gm-archive__author, .gm-archive__author{font-size:14px;}
  #arsenalpage .gm-archive__dates, .gm-archive__dates{font-size:13px;}

  /* Podstrona wizyta */
  #arsenalpage .gm-visit-hero, .gm-visit-hero{aspect-ratio:4 / 3;}
  #arsenalpage .gm-visit-intro, .gm-visit-intro{gap:32px;margin-top:32px;}
  #arsenalpage .gm-visit-title, .gm-visit-title{font-size:30px;}
  #arsenalpage .gm-visit-lede, .gm-visit-lede{font-size:19px;margin-top:14px;}
  #arsenalpage .gm-facts, .gm-facts{gap:28px;}
  #arsenalpage .gm-fact__text,
  #arsenalpage .gm-hours,
  .gm-fact__text,
  .gm-hours{font-size:17px;}
  #arsenalpage .gm-fact__link, .gm-fact__link{min-height:44px;display:inline-flex;align-items:center;}
  #arsenalpage .gm-venue + .gm-venue, .gm-venue + .gm-venue{margin-top:56px;padding-top:36px;}
  #arsenalpage .gm-venue__media, .gm-venue__media{margin-bottom:24px;}
  #arsenalpage .gm-venue__title, .gm-venue__title{font-size:28px;}
  #arsenalpage .gm-venue__desc, .gm-venue__desc{font-size:18px;}
  #arsenalpage .gm-venue__hours, .gm-venue__hours{font-size:16px;}
  #arsenalpage .gm-travel, .gm-travel{gap:28px;margin-top:24px;}

  /* Podstrona wystawy */
  #arsenalpage .gm-exh-head__title, .gm-exh-head__title{font-size:34px;}
  #arsenalpage .gm-exh-head__subtitle, .gm-exh-head__subtitle{font-size:19px;}
  #arsenalpage .gm-exh-body__lead, .gm-exh-body__lead{font-size:19px;}
  #arsenalpage .gm-exh-body p,
  #arsenalpage .gm-exh-body :where(p),
  .gm-exh-body p,
  .gm-exh-body :where(p){font-size:17px;margin-top:20px;}
  #arsenalpage .gm-pull, .gm-pull{font-size:21px;margin:32px 0;padding-left:20px;}
  #arsenalpage .gm-artists, .gm-artists{columns:2;column-gap:18px;font-size:14px;}
  #arsenalpage .gm-docs__item, .gm-docs__item{height:150px;}
  #arsenalpage .gm-docs__arrow, .gm-docs__arrow{min-width:44px;min-height:44px;font-size:22px;padding:0;}
  #arsenalpage .gm-related, .gm-related{grid-template-columns:1fr;gap:20px;}
  #arsenalpage .gm-related__title, .gm-related__title{font-size:26px;}
  #arsenalpage .gm-related__author, .gm-related__author{font-size:18px;}

  /* Newsletter i stopka */
  #arsenalpage .gm-newsletter__title, .gm-newsletter__title{font-size:24px;}
  #arsenalpage .gm-newsletter__input, .gm-newsletter__input{font-size:18px;}
  #arsenalpage .gm-footer__cols, .gm-footer__cols{grid-template-columns:1fr;gap:32px;}
  #arsenalpage .gm-footer__ue img, .gm-footer__ue img{height:44px;}
  #arsenalpage .gm-legal, .gm-legal{flex-direction:column;align-items:flex-start;gap:5px;font-size:12px;}
  #arsenalpage .gm-legal__sep, .gm-legal__sep{display:none;}

  /* Menu */
  #arsenalpage .gm-menu, .gm-menu{padding:124px 18px 0;overflow-y:auto;}
  #arsenalpage .gm-menu__nav, .gm-menu__nav{flex:0 0 auto;justify-content:flex-start;padding:16px 0 24px;}
  #arsenalpage .gm-menu .gm-menu__link, .gm-menu .gm-menu__link{font-size:24px;line-height:1.5;}



  .sm-hidden {
    display: none !important;
  }
}

/* --------------------------------------------------------------------------
   ≤ 380 px — bardzo wąskie ekrany
   -------------------------------------------------------------------------- */
@media (max-width:380px){
  #arsenalpage .gm-page, .gm-page{--gm-gutter:14px;}
  #arsenalpage .gm-hero-text__title, .gm-hero-text__title{font-size:23px;}
  #arsenalpage .gm-lede, .gm-lede{font-size:19px;}
  #arsenalpage .gm-exh-head__title, .gm-exh-head__title{font-size:30px;}
  #arsenalpage .gm-visit-title, .gm-visit-title{font-size:26px;}
  #arsenalpage .gm-venue__title, .gm-venue__title{font-size:24px;}
  #arsenalpage .gm-archive, .gm-archive{grid-template-columns:1fr;}
  #arsenalpage .gm-artists, .gm-artists{columns:1;}
}
