/*
Theme Name:   ALUFORMA Child
Theme URI:    https://aluforma.pro
Description:  Motyw potomny GeneratePress dla ALUFORMA.PRO — stolarka aluminiowa, fasady i osłony premium.
Author:       ALUFORMA.PRO
Author URI:   https://aluforma.pro
Template:     generatepress
Version:      1.1.0
Text Domain:  aluforma-child
*/

/* ============================================================
   ALUFORMA.PRO — WSPÓLNY SYSTEM PROJEKTOWY (design system)
   Zmienne, reset, typografia, przyciski, nagłówek, stopka,
   siatka sekcji — używane na wszystkich stronach ALUFORMA.PRO
   opartych o page-templates/template-*.php.
   Style specyficzne dla konkretnej strony znajdują się w
   assets/css/home.css oraz assets/css/kontakt.css i są
   ładowane PO tym pliku (mogą nadpisywać wartości domyślne,
   np. padding sekcji).
   ============================================================ */

html{scroll-behavior:smooth;}

.aluf{
  --graphite:#111318;
  --graphite-2:#1A1D22;
  --antracyt:#1F242B;
  --alu-light:#D7DCE2;
  --bg-warm:#F4F3EF;
  --bg-warm-2:#EDEBE3;
  --white:#FFFFFF;
  --brass:#B88A44;
  --brass-dark:#9C7538;
  --brass-tint:rgba(184,138,68,0.10);
  --silver-1:#EDEFF2;
  --silver-2:#C7CDD6;
  --text-dark:#1F242B;
  --text-muted-dark:#6B6F73;
  --text-muted-light:#9AA0A8;
  --border-dark: rgba(215,220,226,0.14);
  --border-light: rgba(31,36,43,0.12);
  --ok:#3F8F5F;
  font-family:'Inter',-apple-system,'Segoe UI',sans-serif;
  color:var(--text-dark);
  background:var(--white);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  max-width:100vw;
}
html.aluf-page{overflow-x:hidden;max-width:100vw;}
.aluf *{box-sizing:border-box;}
.aluf p:empty{display:none !important;}
.aluf img{max-width:100%;display:block;}
.aluf a{color:inherit;text-decoration:none;}
.aluf ul{list-style:none;margin:0;padding:0;}
.aluf svg{flex-shrink:0;}
.aluf .wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
.aluf .kicker{font-size:13.5px;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:12px;font-weight:700;}
.aluf .kicker--dark{color:var(--text-muted-light);}
.aluf .kicker--light{color:var(--text-muted-dark);}
.aluf .rule{width:36px;height:1px;background:var(--brass);margin-bottom:26px;}
.aluf h1,.aluf h2,.aluf h3,.aluf h4{font-weight:500;margin:0;}
.aluf .eyebrow-block{margin-bottom:30px;}

/* Przyciski */
.aluf .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-size:12px;letter-spacing:1.2px;text-transform:uppercase;
  padding:15px 26px;border-radius:2px;font-weight:600;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .12s ease;
  cursor:pointer;border:1px solid transparent;white-space:nowrap;flex-shrink:0;line-height:1;
}
.aluf .btn:active{transform:translateY(1px);}
.aluf .btn:disabled{opacity:0.45;cursor:not-allowed;}
.aluf .btn--brass{background:var(--brass);color:var(--graphite);}
.aluf .btn--brass:hover{background:var(--brass-dark);}
.aluf .btn--ghost-dark{border-color:rgba(215,220,226,0.35);color:var(--alu-light);}
.aluf .btn--ghost-dark:hover{border-color:var(--brass);color:var(--brass);}
.aluf .btn--ghost-light{border-color:rgba(31,36,43,0.25);color:var(--text-dark);}
.aluf .btn--ghost-light:hover{border-color:var(--brass);color:var(--brass-dark);}
.aluf .btn svg{width:14px;height:14px;transition:transform .18s ease;flex-shrink:0;}
.aluf .btn:hover svg{transform:translateX(3px);}

/* Logo */
.aluf img.logo-mark{display:block;flex-shrink:0;width:215px;height:auto;filter:invert(90%) brightness(1.05);}
.aluf .foot-brand img.logo-mark{width:225px;height:auto;margin-bottom:16px;}
.aluf .brand{display:flex;align-items:center;flex-shrink:0;}

/* Nagłówek */
.aluf header.site{
  position:sticky;top:0;z-index:40;
  background:rgba(17,19,24,0.94);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--border-dark);
}
.aluf header.site .bar{display:flex;align-items:center;justify-content:space-between;padding:0 24px;max-width:1180px;margin:0 auto;gap:14px;}
.aluf nav.main{display:flex;}
.aluf .nav-toggle{display:none;background:none;border:0;color:var(--white);padding:6px;cursor:pointer;flex-shrink:0;}
.aluf .nav-toggle svg{width:22px;height:22px;}

/* Menu główne — OFERTA (mega-menu) | Realizacje | Poradnik | O nas
   Uwaga: ani .bar, ani <li>, celowo NIE mają position:relative — panel
   mega-menu musi się pozycjonować względem header.site (position:sticky,
   pełna szerokość ekranu), a nie względem wąskiego <li> "Oferta".
   Inaczej dropdown zwężyłby się do szerokości samego przycisku. */
.aluf .nav-groups{display:flex;align-items:stretch;gap:34px;list-style:none;margin:0;padding:0;}
.aluf .nav-groups > li{display:flex;align-items:center;}
.aluf .nav-groups > li > a,
.aluf .nav-groups > li > button.mega-trigger{
  display:inline-flex;align-items:center;gap:6px;
  padding:24px 0;font-family:inherit;background:none;border:0;cursor:pointer;
  font-size:10.5px;letter-spacing:0.4px;text-transform:uppercase;color:var(--text-muted-light);
  transition:color .15s ease;white-space:nowrap;font-weight:500;
}
.aluf .nav-groups > li > a:hover,
.aluf .nav-groups > li > button.mega-trigger:hover{color:var(--white);}
.aluf .chev{width:9px;height:9px;transition:transform .18s ease;margin-top:1px;}

/* Panel mega-menu (desktop) — rozwijany na hover/focus, czysty CSS */
.aluf .mega-panel{
  position:absolute;top:100%;left:0;right:0;width:100%;
  opacity:0;visibility:hidden;transform:translateY(-6px);pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,visibility .18s;
  background:#0D0E12;border-top:1px solid var(--border-dark);
  box-shadow:0 28px 48px -20px rgba(0,0,0,0.55);
}
.aluf li.has-mega:hover .mega-panel,
.aluf li.has-mega:focus-within .mega-panel{
  opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;
}
.aluf li.has-mega:hover .chev,
.aluf li.has-mega:focus-within .chev{transform:rotate(180deg);}
.aluf .mega-inner{max-width:1180px;margin:0 auto;padding:38px 24px 36px;display:grid;grid-template-columns:1fr 1fr 1fr 0.92fr;gap:36px;}
.aluf .mega-col-head{display:block;font-size:12.5px;font-weight:600;letter-spacing:0.2px;color:var(--white);margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border-dark);text-transform:none;}
.aluf .mega-col-head:hover{color:var(--brass);}
.aluf .mega-col ul{display:flex;flex-direction:column;gap:1px;}
.aluf .mega-col ul a{display:block;padding:7px 0;font-size:13px;color:var(--text-muted-light);text-transform:none;letter-spacing:0;font-weight:400;transition:color .15s ease,padding-left .15s ease;}
.aluf .mega-col ul a:hover{color:var(--white);padding-left:4px;}
.aluf .mega-highlight{background:rgba(184,138,68,0.08);border:1px solid rgba(184,138,68,0.25);border-radius:6px;padding:22px;display:flex;flex-direction:column;gap:12px;align-self:start;}
.aluf .mega-highlight-kicker{font-size:13.5px;font-weight:600;color:var(--white);line-height:1.4;}
.aluf .mega-highlight p{font-size:12px;color:var(--text-muted-light);line-height:1.65;margin:0;}
.aluf .mega-highlight .btn{width:100%;font-size:10.5px;padding:13px 16px;margin-top:2px;}

.aluf .btn--cta-header{flex-shrink:0;}

/* Sekcja generyczna (wartości domyślne — mogą być nadpisane per strona) */
.aluf section{padding:80px 0;}
.aluf section.dark{background:var(--graphite);color:var(--alu-light);}
.aluf section.warm{background:var(--bg-warm);color:var(--text-dark);}
.aluf section.white{background:var(--white);color:var(--text-dark);}
.aluf .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:40px;flex-wrap:wrap;}
.aluf .section-head h2{font-size:clamp(22px,2.6vw,30px);}
.aluf section.dark .section-head h2{color:var(--white);}

/* Stopka */
.aluf footer.site{background:#0B0C0F;color:var(--text-muted-light);padding:60px 0 28px;}
.aluf .foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;margin-bottom:44px;}
.aluf .foot-brand p{font-size:12.5px;max-width:260px;color:var(--text-muted-light);}
.aluf .foot-brand .foot-email{margin-top:14px;}
.aluf .foot-brand .foot-email a{font-size:12.5px;color:var(--brass);transition:color .15s ease;}
.aluf .foot-brand .foot-email a:hover{color:var(--white);}
.aluf .foot-col h4{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--white);margin-bottom:18px;font-weight:600;}
.aluf .foot-col ul{display:flex;flex-direction:column;gap:11px;}
.aluf .foot-col a{font-size:12.5px;transition:color .15s ease;}
.aluf .foot-col a:hover{color:var(--brass);}
.aluf .foot-bottom{border-top:1px solid var(--border-dark);padding-top:22px;display:flex;justify-content:space-between;font-size:11.5px;flex-wrap:wrap;gap:10px;color:#6B7075;}

/* Responsywność wspólna (nawigacja mobilna, logo, sekcje) */
.aluf .nav-toggle{display:none;}

@media (max-width: 960px){
  .aluf header.site .bar{padding:0 20px;}
  .aluf nav.main{display:none;}
  .aluf .nav-toggle{display:flex;align-items:center;justify-content:center;}

  .aluf nav.main.is-open{
    display:flex !important;position:absolute;top:100%;left:0;right:0;
    flex-direction:column;align-items:stretch;
    background:#0D0E12;padding:6px 20px 20px;
    border-top:1px solid var(--border-dark);
    box-shadow:0 24px 40px -16px rgba(0,0,0,0.5);
    max-height:calc(100vh - 64px);overflow-y:auto;
  }
  .aluf nav.main.is-open .nav-groups{flex-direction:column;align-items:stretch;gap:0;width:100%;}
  .aluf nav.main.is-open .nav-groups > li{width:100%;display:block;}
  .aluf nav.main.is-open .nav-groups > li > a,
  .aluf nav.main.is-open .nav-groups > li > button.mega-trigger{
    width:100%;justify-content:space-between;padding:15px 0;font-size:12.5px;letter-spacing:0.6px;
    border-bottom:1px solid rgba(255,255,255,0.06);
  }

  /* Oferta jako accordion na mobile: tap rozwija/zwija podgrupy */
  .aluf .mega-panel{
    position:static;opacity:1;visibility:visible;pointer-events:auto;transform:none;
    background:transparent;border:0;box-shadow:none;
    max-height:0;overflow:hidden;transition:max-height .28s ease;
  }
  .aluf li.has-mega.is-open .mega-panel{max-height:1200px;}
  .aluf li.has-mega.is-open > button.mega-trigger .chev{transform:rotate(180deg);}
  .aluf .mega-inner{display:flex;flex-direction:column;max-width:none;padding:4px 0 16px 10px;gap:22px;}
  .aluf .mega-col-head{font-size:11.5px;border-bottom:0;padding-bottom:2px;color:var(--brass);}
  .aluf .mega-col ul a{padding:8px 0;font-size:12.5px;}
  .aluf .mega-highlight{display:none;}

  .aluf .foot-top{grid-template-columns:1fr 1fr;}
}
@media (max-width: 640px){
  .aluf header.site .bar{padding:0 16px;height:60px;}
  .aluf img.logo-mark{width:clamp(190px,64vw,270px);}
  .aluf header.site .btn--cta-header{display:none;}
}
@media (max-width: 600px){
  .aluf section{padding:56px 0;}
  .aluf .foot-top{grid-template-columns:1fr;}
}

/* Reset marginesów motywu nadrzędnego na w pełni custom szablonach ALUFORMA */
body.aluf-page{margin:0;}
body.aluf-page #page,
body.aluf-page #content,
body.aluf-page .site-content{margin:0;padding:0;max-width:none;width:100%;}
