/* =========================================================================
   ESTATIC — MEGAMENU (desktop, inline + panele „na tle")
   NOWY plik. Port mockupu megamenu-warmglass v4 do motywu estatic2024.
   System: Geist · navy #05172F · gold #B89B65 oszczędnie · PŁASKO (radius 0–2px).
   Zasada: desktop = inline nav + ciemne frosted panele; mobile = bez zmian
   (istniejący #mobile_button_burger + #noveo_mega_menu zostają jak były).
   Reuse danych: ACF Options `kolumny_menu` (każda kolumna => 1 pozycja top-level).
   ========================================================================= */
@import url('https://fonts.googleapis.com/css2?family=Geist:wght@200;300;400;500;600&display=swap');

:root{
  --mm-navy:#05172F; --mm-gold:#B89B65; --mm-gold-light:#C9AE7A; --mm-gold-deep:#7A6336;
  --mm-on:#fff; --mm-on-2:rgba(255,255,255,.74); --mm-on-3:rgba(255,255,255,.5);
  --mm-line:rgba(255,255,255,.12); --mm-fg2:#475569; --mm-fg3:#64748B;
  --mm-ease:cubic-bezier(.22,1,.36,1);
  --mm-sans:'Geist',-apple-system,'Segoe UI',sans-serif;
}

/* ---- domyślnie: nav schowany, burger działa (mobile / < 900px) ---- */
.primary-nav{ display:none; }
.pn-panels{ display:none; }

/* ========================== DESKTOP ( >= 900px ) ========================= */
@media (min-width:900px){
  /* burger znika, inline nav się pojawia */
  #banner_top #mobile_button_burger{ display:none !important; }
  #banner_top .left{ width:auto; }
  #banner_top .left .primary-nav{ display:flex; align-items:center; gap:2px; font-family:var(--mm-sans); }
  /* Logo Z LEWEJ (intuicyjniej niż wyśrodkowane): [logo][nav] ............ [social][CTA] */
  #banner_top .wrapper{ justify-content:flex-start; gap:clamp(30px,3.2vw,52px); }
  #banner_top .center{ order:0; flex:0 0 auto; }
  #banner_top .left{ order:1; }
  #banner_top .right{ order:2; margin-left:auto; }
  .pn-panels{ display:block; }

  /* --- pozycje top-level (triggery) — typografia premium, spokojna --- */
  .pn-item{ position:relative; }
  .pn-trigger{
    font-family:var(--mm-sans); font-weight:450; font-size:14.5px; letter-spacing:.012em;
    color:var(--mm-navy); background:none; border:0; cursor:pointer;
    padding:10px 15px; display:inline-flex; align-items:center; gap:7px; position:relative;
    transition:color .2s var(--mm-ease);
  }
  .pn-chev{ width:7px; height:7px; border-right:1.4px solid currentColor; border-bottom:1.4px solid currentColor;
    transform:rotate(45deg) translateY(-1px); opacity:.5; transition:transform .25s var(--mm-ease); }
  .pn-trigger::after{ content:""; position:absolute; left:15px; right:15px; bottom:-26px; height:2px;
    background:var(--mm-gold); transform:scaleX(0); transform-origin:left; transition:transform .28s var(--mm-ease); z-index:101; }
  .pn-trigger:hover{ color:var(--mm-gold-deep); }
  .pn-item.active .pn-trigger{ color:var(--mm-gold-deep); }
  .pn-item.active .pn-trigger::after{ transform:scaleX(1); }
  .pn-item.active .pn-chev{ transform:rotate(225deg) translateY(-1px); opacity:.9; }

  /* --- nad ciemnym, przezroczystym hero (front page) => biały tekst --- */
  #banner_top.fixed_banner:not(.scroll) .pn-trigger{ color:#fff; }
  #banner_top.fixed_banner:not(.scroll) .pn-item:hover .pn-trigger,
  #banner_top.fixed_banner:not(.scroll) .pn-item.active .pn-trigger{ color:var(--mm-gold-light); }

  /* --- panele: pełna szerokość, CIEMNE frosted „na tle”, płaskie --- */
  .pn-panel{
    position:fixed; left:0; right:0; top:var(--pn-top,112px); z-index:95;
    background:rgba(6,19,37,.97);
    border-bottom:1px solid rgba(184,155,101,.3); box-shadow:0 30px 50px -30px rgba(0,0,0,.7);
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .26s var(--mm-ease), visibility .26s;
  }
  .pn-panel.open{ opacity:1; visibility:visible; pointer-events:auto; }
  .pn-panel .pn-inner{ padding:30px 0 30px; }
  .pn-panel .pn-label{
    display:block; font-family:var(--mm-sans); font-size:11px; font-weight:600;
    letter-spacing:.14em; text-transform:uppercase; color:var(--mm-gold-light); margin-bottom:18px;
  }
  /* lista linków (ACF Menu => <ul class="menu"><li><a>) */
  .pn-panel .pn-menu ul{
    list-style:none; margin:0; padding:0; columns:210px; column-gap:48px; max-width:920px;
  }
  .pn-panel .pn-menu li{ break-inside:avoid; margin:0; }
  .pn-panel .pn-menu li a{
    display:block; font-family:var(--mm-sans); font-weight:450; font-size:16px; line-height:1.2;
    color:#fff; padding:11px 0; border-bottom:1px solid var(--mm-line);
    transition:color .16s var(--mm-ease), padding-left .16s var(--mm-ease);
  }
  .pn-panel .pn-menu li a:hover{ color:var(--mm-gold-light); padding-left:5px; }
  .pn-panel .pn-menu li.current-menu-item a{ color:var(--mm-gold-light); }
}

/* mniejsze ekrany desktopu — węższe kolumny */
@media (min-width:900px) and (max-width:1200px){
  .pn-panel .pn-menu ul{ columns:180px; column-gap:36px; }
}

/* ============ FAZA 2: panel 2-strefowy + featured ============ */
@media (min-width:900px){
  .pn-panel .pn-cols{ display:grid; grid-template-columns:1fr 0.95fr; gap:50px; align-items:stretch; }
  .pn-panel .pn-links{ display:flex; flex-direction:column; min-width:0; }
  .pn-cols .pn-menu ul{ columns:2; column-gap:34px; max-width:none; }

  .pn-feature{ min-width:0; border-left:1px solid var(--mm-line); padding-left:48px; }
  .pn-flabel{ display:block; font-family:var(--mm-sans); font-size:11px; font-weight:600;
    letter-spacing:.14em; text-transform:uppercase; color:var(--mm-gold-light); margin-bottom:16px; }

  /* realne karty ofert (sygnatura: wielki lekki numerał ceny) */
  .mm-offers{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
  .mm-offer{ display:block; border:1px solid var(--mm-line); background:rgba(255,255,255,.04);
    transition:border-color .2s var(--mm-ease), background .2s var(--mm-ease); }
  .mm-offer:hover{ border-color:rgba(184,155,101,.45); background:rgba(255,255,255,.07); }
  .mm-offer-ph{ display:block; aspect-ratio:16/10; background:#0d1e35 center/cover no-repeat; }
  .mm-offer-b{ display:block; padding:12px 13px 14px; }
  .mm-offer-price{ display:block; font-family:var(--mm-sans); font-weight:200; font-variant-numeric:tabular-nums;
    letter-spacing:-.02em; font-size:24px; line-height:1; color:#fff; }
  .mm-offer-price .cur{ font-size:13px; color:var(--mm-on-3); font-weight:400; letter-spacing:0; }
  .mm-offer-meta{ display:block; margin-top:7px; font-size:12px; color:var(--mm-on-2); font-weight:450; }
  .mm-offer-spec{ display:block; margin-top:3px; font-size:11px; color:var(--mm-on-3); letter-spacing:.01em; }

  /* feature: statystyki (sprzedaż) */
  .mm-stats{ display:flex; gap:36px; margin-bottom:20px; }
  .mm-n{ display:block; font-family:var(--mm-sans); font-weight:200; font-variant-numeric:tabular-nums;
    letter-spacing:-.02em; font-size:40px; line-height:1; color:#fff; }
  .mm-n .u{ font-size:15px; color:var(--mm-on-3); font-weight:400; letter-spacing:0; }
  .mm-l{ display:block; margin-top:8px; font-size:12px; color:var(--mm-on-2); font-weight:450; }

  /* feature: kontakt (estatic) */
  .mm-contact{ display:flex; flex-direction:column; gap:6px; margin-bottom:18px; }
  .mm-tel{ font-family:var(--mm-sans); font-weight:300; font-size:26px; letter-spacing:-.01em; color:#fff; }
  .mm-tel:hover{ color:var(--mm-gold-light); }
  .mm-mail{ font-size:15px; color:var(--mm-on-2); }
  .mm-mail:hover{ color:var(--mm-gold-light); }

  /* feature: BANER promo (wspólny: kariera=Estatic, sprzedaż=Usługi) — zdjęcie + overlay + perswazja, cały klikalny */
  .mm-promo{ position:relative; display:block; overflow:hidden; min-height:174px; border:1px solid var(--mm-line);
    text-decoration:none; background:var(--mm-navy); }
  .mm-promo-media{ position:absolute; inset:0; background:#05172F center 26% / cover no-repeat;
    transition:transform .6s var(--mm-ease); }
  .mm-promo:hover .mm-promo-media{ transform:scale(1.045); }
  .mm-promo::after{ content:''; position:absolute; inset:0; pointer-events:none;
    background:linear-gradient(95deg, rgba(4,16,31,.95) 0%, rgba(4,16,31,.80) 44%, rgba(4,16,31,.28) 100%); }
  .mm-promo-in{ position:relative; z-index:1; display:block; padding:20px 22px; max-width:80%; }
  .mm-promo .pn-flabel{ display:block; margin-bottom:9px; }
  .mm-promo-h{ display:block; font-family:var(--mm-sans); font-weight:400; font-size:21px; line-height:1.14;
    letter-spacing:-.015em; color:#fff; margin:0 0 9px; }
  .mm-promo-d{ display:block; font-size:12.5px; line-height:1.5; color:var(--mm-on-2); margin:0 0 14px; max-width:40ch; }
  .mm-promo-cta{ display:inline-flex; align-items:center; gap:8px; font-family:var(--mm-sans); font-weight:600;
    font-size:13px; letter-spacing:.02em; color:var(--mm-gold-light); transition:gap .2s var(--mm-ease); }
  .mm-promo:hover .mm-promo-cta{ gap:13px; }
  .mm-contact--mini{ margin-top:16px; margin-bottom:0; flex-direction:row; gap:18px; align-items:baseline; }
  .mm-contact--mini .mm-tel{ font-size:17px; }
  .mm-contact--mini .mm-mail{ font-size:13px; }

  .pn-fcta{ display:inline-flex; align-items:center; gap:8px; font-family:var(--mm-sans); font-weight:500;
    font-size:14px; color:var(--mm-gold-light); transition:gap .2s var(--mm-ease); }
  .pn-fcta:hover{ gap:13px; }
  .pn-fcta--gold{ color:#fff; }
}
@media (min-width:900px) and (max-width:1100px){
  .pn-panel .pn-cols{ grid-template-columns:1fr 0.8fr; gap:32px; }
  .pn-feature{ padding-left:32px; }
  .mm-offers{ grid-template-columns:1fr; }
}

/* ============ #1 SEARCH + CHIPY · #3 SPRZEDAJĘ · #6 TYPOGRAFIA ============ */
@media (min-width:900px){
  /* #6 — typografia bardziej premium: lżej, więcej oddechu */
  .pn-trigger{ font-weight:400; letter-spacing:.02em; }
  .pn-panel .pn-menu li a{ font-weight:400; font-size:15.5px; }
  .pn-label,.pn-flabel{ font-weight:500; letter-spacing:.18em; }
  .mm-offer-price,.mm-n{ letter-spacing:-.035em; }

  /* #1 — search w panelu „Oferty” */
  .pn-search{ display:flex; align-items:center; max-width:580px; margin:0 0 28px;
    border:1px solid var(--mm-line); background:rgba(255,255,255,.05); }
  .pn-search:focus-within{ border-color:rgba(184,155,101,.55); }
  .pn-search svg{ width:18px; height:18px; color:var(--mm-gold-light); margin:0 4px 0 16px; flex-shrink:0; }
  .pn-search input{ flex:1; min-width:0; background:transparent; border:0; color:#fff;
    font-family:var(--mm-sans); font-size:15px; font-weight:400; padding:15px 14px; }
  .pn-search input::placeholder{ color:var(--mm-on-3); }
  .pn-search input:focus{ outline:none; }
  .pn-search button{ align-self:stretch; background:var(--mm-gold); color:var(--mm-navy); border:0; cursor:pointer;
    font-family:var(--mm-sans); font-weight:600; font-size:13px; letter-spacing:.06em; text-transform:uppercase;
    padding:0 24px; transition:filter .2s var(--mm-ease); }
  .pn-search button:hover{ filter:brightness(1.07); }

  /* chipy lokalizacji (część searcha) */
  .pn-chips{ display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:24px; }
  .pn-chips-l{ font-size:11px; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--mm-on-3); margin-right:6px; }
  .pn-chips a{ border:1px solid var(--mm-line); color:#fff; font-size:13px; font-weight:400; padding:7px 14px; transition:.18s var(--mm-ease); }
  .pn-chips a:hover{ border-color:rgba(184,155,101,.5); color:var(--mm-gold-light); }

  .mm-note{ display:block; margin-top:8px; font-size:13px; color:var(--mm-on-2); font-weight:400; }

  /* #3 — trigger „Sprzedaję”: subtelna emfaza złotem (główna konwersja) */
  .pn-item--sell .pn-trigger{ color:var(--mm-gold-deep); font-weight:500; }
  #banner_top.fixed_banner:not(.scroll) .pn-item--sell .pn-trigger{ color:var(--mm-gold-light); }
  .pn-item--sell .pn-trigger:hover{ color:var(--mm-gold); }

  /* <img> oferty z fallbackiem */
  .mm-offer-ph{ overflow:hidden; }
  .mm-offer-img{ display:block; width:100%; height:100%; object-fit:cover; }

  /* trust (★ 4,9 / 549 opinii) */
  .pn-trust{ display:flex; align-items:center; gap:8px; margin:0 0 24px; font-size:13px; color:var(--mm-on-2); letter-spacing:.01em; }
  .pn-trust .pn-stars{ color:var(--mm-gold); letter-spacing:1px; font-size:12px; }
  .pn-feature .pn-trust{ margin:16px 0 0; }
  /* trust w lewej kolumnie „Oferty”: wypełnia martwą przestrzeń — wypchnięty na dół, lekko stłumiony */
  .pn-trust--col{ margin:auto 0 0; padding-top:18px; font-size:12px; opacity:.92; }

  /* „Wiedza" — najnowsze artykuły */
  .mm-posts{ display:flex; flex-direction:column; gap:14px; margin-bottom:16px; }
  .mm-post{ display:flex; gap:14px; align-items:center; }
  .mm-post-ph{ width:88px; height:62px; flex-shrink:0; overflow:hidden; background:var(--mm-navy-light); }
  .mm-post-ph img{ display:block; width:100%; height:100%; object-fit:cover; }
  .mm-post-b{ min-width:0; display:flex; flex-direction:column; gap:5px; }
  .mm-post-meta{ font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:var(--mm-gold-light); font-weight:600; }
  .mm-post-title{ font-size:14px; line-height:1.32; color:#fff; font-weight:400;
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
  .mm-post:hover .mm-post-title{ color:var(--mm-gold-light); }
}

/* =========================================================================
   MOBILE (< 900px): #noveo_mega_menu → nowy system (search + akordeony)
   Nadpisuje stare reguły z header.css. Burger (istniejący) dalej otwiera (.show).
   ========================================================================= */
@media (max-width:899px){
  #noveo_mega_menu{ display:block; height:100vh; padding:0; background:var(--mm-navy);
    color:#fff; overflow-y:auto; -webkit-overflow-scrolling:touch; }
  /* overlay (header.css) ma własny padding-top:112px na fixed header — nadpisujemy go niżej (.show),
     więc .mm-mob NIE może dokładać kolejnych 104px (był podwójny odstęp ~216px). */
  #noveo_mega_menu.show{ padding-top:60px;
    /* głębia zamiast płaskiego navy: pionowy gradient (światło od góry) + ciepły gold-glow u góry */
    background:
      radial-gradient(88% 46% at 50% 0%, rgba(184,155,101,.08), rgba(184,155,101,0) 58%),
      linear-gradient(176deg, #0A2241 0%, #05172F 42%, #030E1D 100%); }
  /* subtelny grain — tekstura/depth (frontend-design: noise overlay), zostaje przy scrollu */
  #noveo_mega_menu.show::before{ content:''; position:fixed; inset:0; z-index:0; pointer-events:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    opacity:.05; mix-blend-mode:soft-light; }
  #noveo_mega_menu .mm-mob{ position:relative; z-index:1; max-width:600px; margin:0 auto; min-height:calc(100vh - 64px); display:flex; flex-direction:column; padding:14px 22px 42px; font-family:var(--mm-sans); }

  /* intro editorialne — eyebrow (perswazja) + pytanie prowadzące */
  .mm-intro{ padding:28px 0 20px; margin-bottom:4px; border-bottom:1px solid var(--mm-line); }
  .mm-eyebrow{ display:block; font-size:11px; font-weight:600; letter-spacing:.17em; text-transform:uppercase; color:var(--mm-gold-light); }
  .mm-lead{ margin:11px 0 0; font-family:var(--mm-sans); font-weight:300; font-size:27px; line-height:1.08; letter-spacing:-.01em; color:#fff; }

  .mm-acc{ border-bottom:1px solid var(--mm-line); }
  .mm-acc-h{ width:100%; display:flex; align-items:flex-start; gap:16px; text-align:left; background:none; border:0;
    color:#fff; font-family:var(--mm-sans); padding:16px 0; cursor:pointer; }
  .mm-acc-i{ flex:0 0 auto; padding-top:5px; font-size:12px; font-weight:400; font-variant-numeric:tabular-nums;
    letter-spacing:.04em; color:var(--mm-gold); opacity:.85; }
  .mm-acc-t{ flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
  .mm-acc-l{ font-size:21px; font-weight:300; letter-spacing:.01em; line-height:1.04; }
  .mm-acc-d{ font-size:12.5px; font-weight:400; letter-spacing:.01em; color:var(--mm-on-3); }
  .mm-acc-chev{ flex:0 0 auto; margin-top:8px; width:9px; height:9px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
    transform:rotate(45deg); transition:transform .25s var(--mm-ease); opacity:.55; }
  .mm-acc.open .mm-acc-chev{ transform:rotate(225deg); }
  .mm-acc-b{ max-height:0; overflow:hidden; transition:max-height .32s var(--mm-ease); }
  .mm-acc.open .mm-acc-b{ max-height:640px; }
  .mm-acc-b ul,.mm-acc-b .menu{ list-style:none; margin:0; padding:0 0 16px; }
  .mm-acc-b li{ margin:0; }
  .mm-acc-b li a{ display:block; color:var(--mm-on-2); font-size:16px; font-weight:400; padding:11px 0; text-decoration:none; }
  .mm-acc-b li a:active,.mm-acc-b li a:hover{ color:var(--mm-gold-light); }

  /* featured oferta premium — jedyny obraz w menu, akcent + konwersja */
  .mm-mfeat{ display:flex; align-items:stretch; margin-top:26px; border:1px solid var(--mm-line);
    background:rgba(255,255,255,.04); text-decoration:none; transition:border-color .2s var(--mm-ease), background .2s var(--mm-ease); }
  .mm-mfeat:active{ border-color:rgba(184,155,101,.5); background:rgba(255,255,255,.07); }
  .mm-mfeat-img{ flex:0 0 118px; align-self:stretch; background:#0d1e35; overflow:hidden; }
  .mm-mfeat-img img{ width:100%; height:100%; min-height:106px; object-fit:cover; display:block; }
  .mm-mfeat-b{ flex:1; min-width:0; display:flex; flex-direction:column; justify-content:center; gap:5px; padding:13px 15px; }
  .mm-mfeat-el{ font-size:10px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:var(--mm-gold-light); }
  .mm-mfeat-price{ font-family:var(--mm-sans); font-weight:200; font-size:21px; letter-spacing:-.02em; color:#fff; line-height:1; }
  .mm-mfeat-meta{ font-size:12.5px; color:var(--mm-on-2); }
  .mm-mfeat-spec{ font-size:12px; color:var(--mm-on-3); letter-spacing:.01em; }
  .mm-mfeat-go{ flex:0 0 auto; align-self:center; padding:0 16px; color:var(--mm-gold-light); font-size:17px; }

  .mm-mfoot{ margin-top:auto; padding-top:28px; display:flex; flex-direction:column; gap:16px; }
  .mm-mfoot .pn-trust{ display:flex; align-items:center; gap:8px; margin:0; font-size:13px; color:var(--mm-on-2); }
  .mm-mfoot .pn-stars{ color:var(--mm-gold); letter-spacing:1px; font-size:12px; }
  .mm-mtel{ font-size:24px; font-weight:300; color:#fff; text-decoration:none; letter-spacing:-.01em; }
  .mm-mcta{ display:block; text-align:center; background:var(--mm-gold); color:var(--mm-navy); font-family:var(--mm-sans);
    font-weight:600; text-transform:uppercase; letter-spacing:.06em; font-size:14px; padding:17px; text-decoration:none; }

  /* reveal: jeden zaaranżowany moment przy otwarciu menu (frontend-design) */
  #noveo_mega_menu.show .mm-mob > *{ animation:mmRise .5s var(--mm-ease) both; }
  #noveo_mega_menu.show .mm-intro{ animation-delay:.03s; }
  #noveo_mega_menu.show .mm-acc-list{ animation-delay:.09s; }
  #noveo_mega_menu.show .mm-mfeat{ animation-delay:.15s; }
  #noveo_mega_menu.show .mm-mfoot{ animation-delay:.21s; }
  @media (prefers-reduced-motion:reduce){ #noveo_mega_menu.show .mm-mob > *{ animation:none; } }
}
@keyframes mmRise{ from{ opacity:0; transform:translateY(10px); } to{ opacity:1; transform:translateY(0); } }

/* === wyszukiwarka: selecty (desktop + mobile) — spięte z filtrem /oferty === */
.mm-srch select{ flex:1; min-width:0; background:transparent; border:0; color:#fff; font-family:'Geist',sans-serif;
  font-size:14px; padding:14px 12px; cursor:pointer; -webkit-appearance:none; -moz-appearance:none; appearance:none; }
.mm-srch select:focus{ outline:none; }
.mm-srch select option{ color:#05172F; background:#fff; }
.mm-srch .mm-loc{ border-right:1px solid rgba(255,255,255,.14); }
.mm-srch::after{ } /* placeholder */
@media (max-width:899px){ .mm-srch select{ font-size:16px; padding:15px 12px; } }

/* === Logo POZIOME + rytm headera (frontend-design: skala/oddech) === */
#banner_top .center img{ max-height:38px; width:auto; }
#banner_top.scroll .center img{ max-height:34px; }
@media (min-width:900px){
  #banner_top .wrapper{ padding-top:16px; padding-bottom:16px; }
  #banner_top.scroll .wrapper{ padding-top:11px; padding-bottom:11px; }
}
/* MOBILE: pionowe logo (poprzednie, ACF logo_podstawowe) zamiast poziomego — poziome z podpisem za drobne na telefonie */
.mm-logo-v{ display:none; }
@media (max-width:899px){
  #banner_top .center .mm-logo-h{ display:none; }                                   /* poziome (+ biały overlay) chowamy */
  #banner_top .center .mm-logo-v{ display:inline-block; max-width:64px; max-height:60px; width:auto; height:auto; }
  /* przycisk MENU/close: belki .lines były 64px → gigantyczny X przy logo. ~26px = mniejszy od znaku. */
  #banner_top #mobile_button_burger .lines{ width:26px; height:10px; margin-right:9px; }
}

/* ============ MIKROINTERAKCJE (desktop megamenu): zaaranżowane wejście + hover ============ */
@keyframes pnReveal{ from{ opacity:0; } to{ opacity:1; } }
@media (min-width:900px){
  /* po otwarciu panelu treść wjeżdża ze staggerem (lewy słup + prawy słup osobno) */
  .pn-panel.open .pn-links > *,
  .pn-panel.open .pn-feature > *{ animation:pnReveal .42s var(--mm-ease) both; backface-visibility:hidden; }
  .pn-panel.open .pn-links > :nth-child(1){ animation-delay:.05s; }
  .pn-panel.open .pn-links > :nth-child(2){ animation-delay:.10s; }
  .pn-panel.open .pn-links > :nth-child(3){ animation-delay:.15s; }
  .pn-panel.open .pn-links > :nth-child(4){ animation-delay:.20s; }
  .pn-panel.open .pn-feature > :nth-child(1){ animation-delay:.09s; }
  .pn-panel.open .pn-feature > :nth-child(2){ animation-delay:.14s; }
  .pn-panel.open .pn-feature > :nth-child(3){ animation-delay:.19s; }

  /* karty ofert: zoom zdjęcia + delikatny lift (spójnie z banerami) */
  .mm-offer{ transition:border-color .2s var(--mm-ease), background .2s var(--mm-ease); }
  .mm-offer-img{ transition:transform .55s var(--mm-ease); }
  .mm-offer:hover .mm-offer-img{ transform:scale(1.06); }

  /* chipy lokalizacji: subtelne wypełnienie na hover */
  .pn-chips a:hover{ background:rgba(184,155,101,.10); }
}
@media (prefers-reduced-motion:reduce){
  .pn-panel.open .pn-links > *, .pn-panel.open .pn-feature > *{ animation:none; }
  .mm-offer:hover{ transform:none; }
  .mm-offer:hover .mm-offer-img, .mm-promo:hover .mm-promo-media{ transform:none; }
}
