/*
Theme Name: Jagoda & Oliwka (3.1)
Author: Kajetan Kozłowski
Description: Stabilny motyw 2.9 z hover menu, A/A+/A++, rozbudowaną stopką i galerią wydarzeń (TPL + ?pg=). Bez helperów.
Version: 3.1
Text Domain: jagoda-oliwka
dodane sztywno Jadlospisy-sprawdz-tutaj, dodane szablony do stron, poprawiona wersja mobilna
*/
:root{--jagoda:#7A4DA3;--jagoda-100:#EEE6FA;--oliwka:#A8B77D;--oliwka-100:#EFF3E3;--accent:#F7E48B;--text:#2d2d2d;--bg:#F7F8F1;--card:#fff;--shadow:0 10px 30px rgba(0,0,0,.06);--header-h:84px;--fs:100%}
*{box-sizing:border-box}html,body{margin:0;padding:0}html{font-size:var(--fs)}
body{font-family:Nunito,system-ui,Segoe UI,Roboto,Helvetica,Arial;background:var(--bg);color:var(--text)}
.container{max-width:1200px;margin:0 auto;padding:0 16px}
a{color:inherit;text-decoration:none}
/* Header */
header.site{background:linear-gradient(90deg,var(--jagoda) 0%, var(--oliwka) 100%);color:#fff}
.site .row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:var(--header-h);padding:8px 0}
.contacts{display:flex;gap:12px;align-items:center;white-space:nowrap}.contacts.right{justify-content:flex-end}
.brand{display:flex;align-items:center;justify-content:center;height:var(--header-h)}
.brand img{height:100%;max-height:100px;width:auto;display:block}
/* Navbar */
.navbar{background:var(--jagoda-100);border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06);position:relative;z-index:1000}
.navbar .bar{display:flex;justify-content:space-between;align-items:center;padding:8px 0;gap:12px}
.group{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.btn{display:inline-block;padding:10px 14px;border-radius:12px;font-weight:800}
.btn-zapisy{background:var(--accent);box-shadow:var(--shadow)}
.btn-font{background:#fff;border:1px solid rgba(0,0,0,.12);box-shadow:var(--shadow)}
/* Dropdown hover */
.dd{position:relative}
.dd .dd-toggle{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:10px 14px;font-weight:800;box-shadow:var(--shadow);cursor:pointer}
.dd nav{display:none;position:absolute;left:0;top:100%;min-width:230px;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.12);padding:8px;z-index:2000}
.dd:hover nav,.dd nav:hover{display:block}
.navbar .dd nav a{display:block;padding:10px 12px;border-radius:10px;white-space:nowrap}
.navbar .dd nav a:hover{background:var(--oliwka-100)}
/* Sections */
.section{padding:28px 0}.card{background:var(--card);border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:16px;box-shadow:var(--shadow);margin-bottom:16px}
.badges{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:8px 0 0}
.badges .chip{background:#fff;border:1px solid rgba(0,0,0,.08);padding:6px 10px;border-radius:999px;box-shadow:var(--shadow);font-weight:700}
/* Slider */
.slider{position:relative;z-index:1;overflow:hidden;border-radius:20px;margin:18px 0;background:#ddd;height:min(60vh,520px);box-shadow:var(--shadow)}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;background-position:center;background-size:cover}.slide.active{opacity:1}
.slider .ctrl{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.9);border:none;border-radius:999px;width:44px;height:44px;display:grid;place-items:center;font-size:20px;cursor:pointer;box-shadow:var(--shadow)}.slider .ctrl.prev{left:14px}.slider .ctrl.next{right:14px}
.hero-title{text-align:center;margin:10px 0 6px;color:#3d335f;font-weight:900;font-size:clamp(20px,2vw,28px)}
/* Cards grid */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:900px){.cards3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.cards3{grid-template-columns:1fr}}
/* Form */
form.form input, form.form select, form.form textarea{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.12);border-radius:10px}
form.form label{display:block;margin:10px 0 6px;font-weight:700}
form.form button{padding:12px 16px;border-radius:12px;font-weight:900;background:var(--accent);border:none}
/* Footer columns */
footer.site{background:#222;color:#fff;margin-top:24px;padding:28px 0}
.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.footer-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:16px}
.footer-card h4{margin:0 0 8px}
.footer-card a{color:#fff;text-decoration:underline}
.footer-mini{margin-top:14px;opacity:.85}
.fb-link{display:inline-flex;align-items:center;gap:8px;background:#1877f2;color:#fff;padding:8px 12px;border-radius:10px;text-decoration:none}
.fb-link svg{width:18px;height:18px;display:block}
.footer-map iframe{width:100%;height:220px;border:0;border-radius:12px}
.phone a{color:inherit;text-decoration:underline}
@media (max-width:800px){.footer-grid{grid-template-columns:1fr}}
/* === Galeria wydarzeń === */
.events-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;position:relative;z-index:2}
@media (max-width:1200px){.events-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:900px){.events-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.events-grid{grid-template-columns:repeat(2,1fr)}}
.event-card{cursor:pointer;transition:box-shadow .2s ease;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.event-thumb{aspect-ratio:4/3;background:#eee;overflow:hidden}
.event-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.event-card:hover .event-thumb img{transform:scale(1.04)}
.event-meta{padding:10px 12px}
.event-meta h4{margin:0 0 4px;font-size:1.05rem}font-size:13px}
.pager{display:flex;gap:8px;justify-content:center;margin:18px 0}
.pager a,.pager span{display:inline-block;padding:8px 10px;border-radius:8px;background:transparent;border:none}
.pager .current{font-weight:800;text-decoration:underline;background:transparent}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);display:none;align-items:center;justify-content:center;z-index:9999}
.lightbox.active{display:flex}
.lb-inner{position:relative;max-width:92vw;max-height:92vh}
.lb-img{max-width:92vw;max-height:82vh;display:block;margin:0 auto;border-radius:12px}
.lb-bar{display:flex;justify-content:space-between;align-items:center;margin-top:8px;color:#fff}
.lb-btn{background:#fff;border:none;border-radius:10px;padding:8px 12px;cursor:pointer}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);display:flex;width:100%;justify-content:space-between}
.lb-nav button{background:rgba(255,255,255,.85);border:none;width:46px;height:46px;border-radius:999px;cursor:pointer}

.event-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.10)}

.event-card{pointer-events:auto}

.hp-field{position:absolute;left:-9999px;top:auto;opacity:0;height:0;width:0;}


/* Consent checkbox row */
.consent-row{display:flex;align-items:center;gap:10px;margin-top:8px}
.consent-row input[type=checkbox]{width:18px;height:18px}
/* Badges allow wrapping nicely */
.badges{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:8px 0 0}
.badges .chip{background:#fff;border:1px solid rgba(0,0,0,.08);padding:6px 10px;border-radius:999px;box-shadow:var(--shadow);font-weight:700}


/* Alerts for form status */
.alert{padding:12px 14px;border-radius:12px;margin:12px 0;font-weight:700;box-shadow:var(--shadow)}
.alert-success{background:#eefce8;border:1px solid #a7d49b;color:#205b2a}
.alert-warn{background:#fff6e5;border:1px solid #f0c36d;color:#7d4e00}
.alert-error{background:#ffe9e9;border:1px solid #f1a8a8;color:#7d1e1e}
/* Footer social icon */
.footer .fb-link{display:inline-flex;align-items:center;gap:8px;font-weight:800}
.footer .fb-link svg{width:18px;height:18px;fill:#1877f2;filter: drop-shadow(0 1px 0 rgba(0,0,0,.15));}
.footer .map-embed iframe{border:0;border-radius:12px;width:100%;height:200px}

.hero-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:16px 0 24px}
.tile{display:block;padding:16px;border-radius:16px;background:#fff;box-shadow:var(--shadow);text-decoration:none;color:inherit;border:1px solid rgba(0,0,0,.06)}
.tile:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.1)}
.tile h4{margin:0 0 6px;font-size:1.05rem}
.tile p{margin:0;font-size:.95rem;opacity:.9}
/* === JAGODA & OLIWKA – MOBILE HEADER ONLY (dla v2.9.6) === */
/* Desktop bez zmian; tylko widok mobilny ≤768px. */
@media (max-width: 768px) {

  /* Logo nad kontaktami – wyśrodkowane */
  .site-header .custom-logo,
  header.site .brand img,
  .header .brand img,
  .logo img {
    display: block;
    margin: 6px auto 8px auto;
    max-width: 120px;   /* możesz zmienić np. na 100–140px */
    height: auto;
  }

  /* Kontakty: 2 linie jedna pod drugą, wyśrodkowane */
  .header-contacts {           /* kontener kontaktów (zostaw klasę jak masz u siebie) */
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;                  /* odstęp między pierwszą a drugą linią */
    width: 100%;
    margin: 0 auto 6px auto;
  }

  /* Pojedyncza linia (Przedszkole / Żłobek) */
  .header-contacts .contact-row,
  .contacts.left,              /* zgodnie z v2.9.6: jeśli masz .contacts left/right */
  .contacts.right {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 10px;
    line-height: 1.35;
    font-size: 14px;
    white-space: normal;
    text-align: center;
  }

  .header-contacts .contact-row strong,
  .contacts.left strong,
  .contacts.right strong {
    font-weight: 700;
    margin-right: 4px;
  }

  /* Siatka nagłówka w 1 kolumnę – jeśli w desktopie masz 3 kolumny (.row) */
  header.site .row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    justify-items: center;
  }

  /* Bez poziomego przewijania */
  html, body { max-width: 100%; overflow-x: hidden; }
}
/* --- Fix: ujednolicenie wielkości nagłówków kontaktowych --- */
.contacts strong,
.contacts.right strong {
  font-size: 14px !important;   /* albo 16px jeśli chcesz trochę większe */
  font-weight: 600;
  line-height: 1.4;
}