/*
Theme Name: ALFA BHP
Theme URI: https://www.bhp-doradztwo.pl
Author: ALFA Agencja Ochrony Pracy
Author URI: https://www.bhp-doradztwo.pl
Description: Lekki motyw BHP/PPOZ pod Elementor - z wbudowanym naglowkiem i stopka. Granat + zielen bezpieczenstwa, font Manrope. Naglowek i stopka dzialaja bez Elementor Pro.
Version: 1.0
Requires at least: 5.5
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: alfa-bhp
*/

:root{
  --navy:#0B2A4A; --navy-700:#123a63; --green:#16A34A; --green-600:#15803d;
  --ink:#1f2937; --muted:#5b6b7e; --bg:#f5f8fc; --line:#e5ebf2; --white:#fff;
  --radius:16px; --shadow:0 10px 30px rgba(11,42,74,.08); --max:1180px;
}
*{box-sizing:border-box}
body{margin:0;font-family:&amp;amp;#039;Manrope&amp;amp;#039;,system-ui,Segoe UI,Arial,sans-serif;color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}
.btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;padding:12px 24px;border-radius:999px;transition:.2s;border:0;font-size:.98rem;cursor:pointer}
.btn-primary{background:var(--green);color:#fff;box-shadow:0 8px 22px rgba(22,163,74,.35)}
.btn-primary:hover{background:var(--green-600);transform:translateY(-2px);color:#fff}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1.5px solid rgba(255,255,255,.35)}

/* HEADER */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-header .nav{display:flex;align-items:center;justify-content:space-between;height:74px}
.logo{display:flex;align-items:center;gap:11px;font-weight:800;color:var(--navy);font-size:1.16rem}
.logo .mark{width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,var(--navy),var(--green));display:grid;place-items:center;color:#fff;font-size:20px}
.logo small{display:block;font-size:.66rem;font-weight:600;letter-spacing:.14em;color:var(--green);text-transform:uppercase}
.logo .custom-logo{width:auto;max-height:48px}
nav.menu ul,.menu-list{display:flex;gap:28px;list-style:none;margin:0;padding:0}
nav.menu a{font-weight:600;color:var(--ink);font-size:.96rem}
nav.menu a:hover{color:var(--green)}
nav.menu .current-menu-item&amp;amp;gt;a{color:var(--green)}
.nav-cta{display:flex;align-items:center;gap:16px}
.phone{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--navy)}
.burger{display:none;font-size:26px;background:none;border:0;color:var(--navy);cursor:pointer}

/* CONTENT */
.site-main{min-height:40vh}
.basic-content{padding:60px 0}
.basic-content h1{color:var(--navy)}

/* FOOTER */
.site-footer{background:var(--navy);color:#bcccdd;padding:60px 0 28px;margin-top:0}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.site-footer h4{color:#fff;margin:0 0 16px;font-size:1.05rem}
.site-footer a{color:#bcccdd;display:block;padding:5px 0}
.site-footer a:hover{color:#fff}
.fbottom{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:22px;text-align:center;font-size:.85rem;color:#8aa0b6}

/* MOBILE STICKY CALL */
.mobile-call{display:none}

@media(max-width:900px){
  nav.menu{position:absolute;top:74px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);display:none;padding:12px 22px}
  nav.menu.open{display:block}
  nav.menu ul,.menu-list{flex-direction:column;gap:6px}
  nav.menu a{display:block;padding:10px 0}
  .nav-cta .phone{display:none}
  .burger{display:block}
  .fgrid{grid-template-columns:1fr 1fr}
    .logo{font-size:.75rem;gap:7px;max-width:55%}
  .logo .mark{width:30px;height:30px;font-size:15px;flex-shrink:0}
  .logo > span:not(.mark){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
  .logo small{display:none}
  .nav-cta .btn{font-size:.75rem;padding:8px 11px;white-space:nowrap}
}
@media(max-width:600px){
  .fgrid{grid-template-columns:1fr}
  .mobile-call{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:1100;background:var(--navy);padding:7px 10px;gap:8px;box-shadow:0 -4px 16px rgba(0,0,0,.2)}
  .mobile-call a{flex:1;justify-content:center;font-size:.82rem;padding:9px 10px}
  body{padding-bottom:52px}
}

/* ELEMENTOR COMPATIBILITY */
/* Pelna szerokosc dla sekcji Elementora */
.elementor-section.elementor-section-full_width,
.elementor-section.elementor-section-stretched {
	  max-width:100% !important;
	  width:100% !important;
}
/* Usuniecie zbednych marginesow na stronach Elementora */
.elementor-page .wrap,
.elementor-page .basic-content {
	  max-width:100%;
	  padding:0;
}
/* Zapewnienie ze .wrap nie ogranicza sekcji stretch */
.elementor-editor-active .wrap {
	  max-width:100% !important;
	  padding:0 !important;
}
}
}
}


/* ============================================================
   ROZSZERZONA KOMPATYBILNOSC Z ELEMENTOREM
   ============================================================ */

/* Szablon Canvas – brak marginesow, brak paddingu */
body.elementor-template-canvas .site-main,
body.elementor-template-canvas .elementor-canvas-main {
    min-height: 100vh;
    padding: 0;
    margin: 0;
}

/* Szablon Full Width (header/footer z Theme Buildera) */
body.elementor-template-header-footer .site-main {
    padding-top: 0;
}

/* Poprawka dla sekcji Elementora z pelna szerokoscia */
.elementor-section.elementor-section-full_width > .elementor-container {
    max-width: 100%;
}

/* Usun zbedne marginesy blokow Elementora wewnatrz .wrap */
.site-main .elementor {
    width: 100%;
}

/* Poprawka dla edytora Elementora (podglad w panelu) */
.elementor-editor-active .site-header,
.elementor-editor-active .site-footer {
    pointer-events: none;
}

/* Responsywnosc – ukryj burger menu na duzych ekranach */
@media (min-width: 769px) {
    .burger { display: none; }
    nav.menu { display: flex; }
}
@media (max-width: 768px) {
    nav.menu { display: none; }
    nav.menu.open { display: flex; flex-direction: column; position: absolute; top: 70px; left: 0; right: 0; background: var(--white); padding: 16px; box-shadow: var(--shadow); z-index: 999; }
    .burger { display: block; }
    .nav-cta .btn { display: none; }
}

/* Widgety Elementora wewnatrz stopki */
.site-footer .elementor-widget-wrap {
    color: #bcccdd;
}

/* Poprawka kontrastow dla Elementor Pro popup */
.elementor-popup-modal .dialog-message {
    color: var(--navy);
}

.nav-highlight{font-weight:700;color:var(--green);font-size:.92rem;padding:8px 16px;border:1.5px solid var(--green);border-radius:999px;transition:.2s;white-space:nowrap}
.nav-highlight:hover{background:var(--green);color:#fff}
@media(max-width:900px){
  .nav-cta .nav-highlight{display:none}
}

.mobile-only-highlight{display:none}
@media(max-width:900px){
  .mobile-only-highlight{display:list-item}
  .mobile-only-highlight a{color:var(--green);font-weight:700}
}