/* Start custom CSS *//* ============================================================
   SJO — Wpis powrót po wakacjach — CSS
   Wklej do: WordPress → Wygląd → Personalizuj → Dodatkowy CSS
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&family=Lora:wght@600&display=swap');

.sjo-wr *, .sjo-wr *::before, .sjo-wr *::after { box-sizing: border-box; }

.sjo-wr {
  --teal: #1D9E75; --teal-light: #E1F5EE; --teal-dark: #0F6E56;
  --sun: #F7A833; --sun-light: #FEF3DC;
  --navy: #1A2C4E; --navy-light: #E8EDF5;
  --coral: #D85A30; --coral-light: #FAECE7;
  --text: #2C2C2A; --muted: #5F5E5A;
  --bg: #FFFDF8; --white: #fff; --border: #F0EDE4; --radius: 16px;
  font-family: 'Nunito', sans-serif !important;
  color: var(--text); width: 100%;
}

/* ── HERO ── */
.sjo-wr .sjo-hero {
  background: linear-gradient(135deg, #0F6E56 0%, #1D9E75 60%, #F7A833 100%) !important;
  padding: 2.5rem 3rem !important; border-radius: var(--radius) !important;
  margin-bottom: 1.5rem !important; position: relative !important; overflow: hidden !important;
}
.sjo-wr .sjo-hero::before {
  content: '🏫' !important; position: absolute !important;
  font-size: 10rem !important; opacity: .07 !important;
  right: -10px !important; top: -10px !important;
}
.sjo-wr .sjo-hero-inner {
  display: flex !important; align-items: center !important; gap: 2rem !important;
  position: relative !important;
}
.sjo-wr .sjo-hero-smok { flex-shrink: 0; width: 160px; }
.sjo-wr .sjo-hero-smok img {
  width: 160px !important; height: 160px !important;
  object-fit: contain !important; display: block !important;
  filter: drop-shadow(0 8px 20px rgba(0,0,0,.2)) !important;
}
.sjo-wr .sjo-hero-text { flex: 1; }
.sjo-wr .sjo-badge {
  display: inline-block !important; background: var(--sun) !important;
  color: var(--navy) !important; font-size: 13px !important; font-weight: 800 !important;
  padding: 6px 18px !important; border-radius: 50px !important;
  margin-bottom: 1rem !important; font-family: 'Nunito', sans-serif !important;
  white-space: nowrap !important;
}
.sjo-wr .sjo-hero h1 {
  font-family: 'Lora', serif !important; font-size: 2rem !important;
  font-weight: 600 !important; color: #fff !important;
  line-height: 1.25 !important; margin: 0 0 .75rem !important;
}
.sjo-wr .sjo-hero h1 em { color: var(--sun) !important; font-style: normal !important; }
.sjo-wr .sjo-hero-lead {
  font-size: 15px !important; color: rgba(255,255,255,.88) !important;
  line-height: 1.6 !important; margin: 0 !important;
  font-family: 'Nunito', sans-serif !important;
}

/* ── GODZINY ── */
.sjo-wr .sjo-hours {
  background: var(--sun-light) !important; border-radius: var(--radius) !important;
  padding: 1.5rem 2rem !important; margin-bottom: 1.5rem !important;
  border: 2px solid #FAC775 !important;
  display: flex !important; align-items: center !important; gap: 1.25rem !important;
}
.sjo-wr .sjo-hours-icon { font-size: 2.5rem !important; flex-shrink: 0 !important; }
.sjo-wr .sjo-hours-text h3 {
  font-family: 'Nunito', sans-serif !important; font-size: 15px !important;
  font-weight: 800 !important; color: #854F0B !important; margin: 0 0 .3rem !important;
}
.sjo-wr .sjo-hours-text p {
  font-size: 14px !important; color: var(--muted) !important;
  line-height: 1.5 !important; margin: 0 !important;
  font-family: 'Nunito', sans-serif !important;
}
.sjo-wr .sjo-hours-text strong { color: var(--text) !important; }

/* ── ZAPISY CTA ── */
.sjo-wr .sjo-zapisy {
  background: linear-gradient(135deg, var(--navy), #2756A8) !important;
  border-radius: var(--radius) !important; padding: 2.5rem 2rem !important;
  text-align: center !important; margin-bottom: 1.5rem !important;
  position: relative !important; overflow: hidden !important;
}
.sjo-wr .sjo-zapisy::before {
  content: '📢' !important; position: absolute !important;
  font-size: 10rem !important; opacity: .06 !important;
  left: -20px !important; bottom: -20px !important;
}
.sjo-wr .sjo-zapisy h2 {
  font-family: 'Lora', serif !important; font-size: 1.6rem !important;
  font-weight: 600 !important; color: #fff !important;
  margin: 0 0 .75rem !important; position: relative !important;
}
.sjo-wr .sjo-zapisy p {
  font-size: 15px !important; color: rgba(255,255,255,.85) !important;
  line-height: 1.6 !important; margin: 0 0 1.75rem !important;
  font-family: 'Nunito', sans-serif !important; position: relative !important;
  max-width: 520px; margin-left: auto !important; margin-right: auto !important;
}
.sjo-wr .sjo-steps {
  display: flex !important; gap: 10px !important; justify-content: center !important;
  margin-bottom: 1.75rem !important; flex-wrap: wrap !important; position: relative !important;
}
.sjo-wr .sjo-step {
  background: rgba(255,255,255,.12) !important; border-radius: 50px !important;
  padding: 8px 16px !important; font-size: 13px !important; font-weight: 700 !important;
  color: #fff !important; border: 1.5px solid rgba(255,255,255,.2) !important;
  font-family: 'Nunito', sans-serif !important;
}
.sjo-wr .sjo-btn-big {
  display: inline-flex !important; align-items: center !important; gap: 10px !important;
  background: var(--sun) !important; color: var(--navy) !important;
  border-radius: 50px !important; padding: 16px 40px !important;
  font-family: 'Nunito', sans-serif !important; font-size: 18px !important;
  font-weight: 800 !important; text-decoration: none !important;
  transition: all .2s !important; position: relative !important;
  box-shadow: 0 4px 20px rgba(247,168,51,.4) !important;
}
.sjo-wr .sjo-btn-big:hover { background: #e09520 !important; transform: translateY(-2px) !important; color: var(--navy) !important; }
.sjo-wr .sjo-url-badge {
  display: block !important; margin-top: 1rem !important;
  font-size: 13px !important; color: rgba(255,255,255,.55) !important;
  font-family: 'Nunito', sans-serif !important; position: relative !important;
}

/* ── KONTAKT ── */
.sjo-wr .sjo-kontakt {
  background: var(--teal-light) !important; border-radius: var(--radius) !important;
  padding: 1.75rem 2rem !important; border: 1.5px solid #9FE1CB !important;
  display: flex !important; align-items: center !important;
  gap: 1.5rem !important; flex-wrap: wrap !important;
}
.sjo-wr .sjo-kontakt-text { flex: 1; min-width: 200px; }
.sjo-wr .sjo-kontakt-text h3 {
  font-family: 'Nunito', sans-serif !important; font-size: 15px !important;
  font-weight: 800 !important; color: var(--teal-dark) !important; margin: 0 0 .35rem !important;
}
.sjo-wr .sjo-kontakt-text p {
  font-size: 13px !important; color: var(--muted) !important;
  margin: 0 !important; font-family: 'Nunito', sans-serif !important;
}
.sjo-wr .sjo-kontakt-chips {
  display: flex !important; gap: 10px !important; flex-wrap: wrap !important;
}
.sjo-wr .sjo-chip {
  display: flex !important; align-items: center !important; gap: 6px !important;
  background: var(--white) !important; border: 1.5px solid #9FE1CB !important;
  border-radius: 50px !important; padding: 8px 16px !important; font-size: 14px !important;
  font-weight: 700 !important; color: var(--teal-dark) !important;
  text-decoration: none !important; transition: all .2s !important;
  font-family: 'Nunito', sans-serif !important;
}
.sjo-wr .sjo-chip:hover { background: var(--teal) !important; color: #fff !important; border-color: var(--teal) !important; }

/* ── RESPONSYWNOŚĆ ── */
@media (max-width: 700px) {
  .sjo-wr .sjo-hero { padding: 2rem 1.5rem !important; }
  .sjo-wr .sjo-hero-inner { flex-direction: column !important; text-align: center !important; }
  .sjo-wr .sjo-hero-smok { width: 120px !important; }
  .sjo-wr .sjo-hero-smok img { width: 120px !important; height: 120px !important; }
  .sjo-wr .sjo-hero h1 { font-size: 1.6rem !important; }
  .sjo-wr .sjo-hours { flex-direction: column !important; text-align: center !important; }
  .sjo-wr .sjo-kontakt { flex-direction: column !important; text-align: center !important; }
  .sjo-wr .sjo-kontakt-chips { justify-content: center !important; }
}/* End custom CSS */