/*
Theme Name: Empatia Editorial
Theme URI: https://psychologlublin.org/
Author: Michał Pyter / OpenAI
Description: Minimalistyczny motyw blokowy dla gabinetu psychologicznego i psychoterapeutycznego. Zaprojektowany pod czytelność, lokalne SEO, dostępność i spokojny styl editorial.
Version: 1.7.0
Requires at least: 6.5
Tested up to: 6.9
Requires PHP: 7.4
Text Domain: empatia-editorial
Tags: block-patterns, full-site-editing, accessibility-ready, blog, one-column, custom-colors, custom-logo, editor-style
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root{
 --ee-shadow-sm:0 8px 22px rgba(23,55,43,.055);
 --ee-shadow-md:0 14px 36px rgba(23,55,43,.075);
 --ee-shadow-lg:0 24px 58px rgba(23,55,43,.12);
 --ee-border:rgba(35,76,60,.14);
 --ee-border-strong:rgba(35,76,60,.24);
 --ee-radius:24px;
 --ee-pill:999px;
 --ee-transition:180ms cubic-bezier(.2,.7,.3,1);
}
html{scroll-behavior:smooth;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{background:linear-gradient(180deg,#fbf9f5 0%,#fff 35%,#fbf9f5 100%)}
::selection{color:#fff;background:#234c3c}
a{text-decoration-thickness:1px;text-underline-offset:.18em;transition:color var(--ee-transition),opacity var(--ee-transition)}
a:hover{color:#9f5334}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid rgba(185,104,67,.34);outline-offset:3px}

.empatia-header{position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--ee-border);background:rgba(251,249,245,.94);box-shadow:0 5px 22px rgba(23,55,43,.035);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
body.admin-bar .empatia-header{top:32px}
.empatia-header__inner{min-height:86px}
.empatia-brand{min-width:0}
.empatia-brand .wp-block-site-logo img{max-height:58px;width:auto}
.wp-block-navigation-item__content{position:relative;padding-block:.65rem}
.wp-block-navigation-item__content::after{content:"";position:absolute;right:0;bottom:.25rem;left:0;height:1px;background:#b96843;transform:scaleX(0);transform-origin:right center;transition:transform var(--ee-transition)}
.wp-block-navigation-item__content:hover::after,.current-menu-item>.wp-block-navigation-item__content::after{transform:scaleX(1);transform-origin:left center}
.wp-block-navigation__submenu-container{min-width:240px!important;padding:.6rem!important;border:1px solid var(--ee-border)!important;border-radius:18px!important;background:rgba(255,255,255,.98)!important;box-shadow:var(--ee-shadow-lg)!important}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:.75rem .85rem!important;border-radius:11px}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:#f2f6f2}
.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{padding:.55rem;border:1px solid var(--ee-border);border-radius:12px;background:#fff;color:#17372b;box-shadow:var(--ee-shadow-sm)}
.wp-block-navigation__responsive-container.is-menu-open{padding:1.5rem;background:rgba(247,243,236,.99)}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:3.5rem}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-family:Georgia,"Times New Roman",serif;font-size:16px;font-weight:500}

.empatia-main{min-height:55vh}
.empatia-page-shell{padding-top:clamp(3.5rem,8vw,7rem);padding-bottom:clamp(4rem,9vw,8rem)}
.empatia-page-header,.empatia-article-header,.empatia-archive-header{max-width:920px;margin-inline:auto;text-align:center}
.empatia-eyebrow{color:#b96843;font-size:.75rem;font-weight:750;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.empatia-article-meta{color:#65736b;font-size:.82rem}
.empatia-article-meta a{color:inherit;text-decoration:none}
.empatia-reading>*{max-width:760px;margin-inline:auto}
.empatia-reading>.alignwide{max-width:1180px}
.empatia-reading>.alignfull{max-width:none}
.empatia-reading h2{margin-top:clamp(3rem,7vw,5rem)}
.empatia-reading h3{margin-top:2.4rem}
.empatia-reading p,.empatia-reading li{color:#39463f}
.empatia-reading li{margin-bottom:.7rem}
.empatia-reading li::marker{color:#b96843;font-weight:700}
.wp-block-post-featured-image img,.empatia-reading figure img{box-shadow:var(--ee-shadow-md)}

.wp-block-button__link{box-shadow:0 13px 29px rgba(35,76,60,.20);transition:transform var(--ee-transition),background-color var(--ee-transition),box-shadow var(--ee-transition)}
.wp-block-button__link:hover{background:#17372b!important;color:#fff!important;box-shadow:0 17px 38px rgba(35,76,60,.27);transform:translateY(-2px)}
.wp-block-button.is-style-outline .wp-block-button__link{color:#17372b;border-color:var(--ee-border-strong);background:rgba(255,255,255,.74);box-shadow:var(--ee-shadow-sm)}
.wp-block-button.is-style-outline .wp-block-button__link:hover{color:#17372b!important;background:#fff!important}

.empatia-card,.empatia-post-card{overflow:hidden;border:1px solid var(--ee-border);border-radius:var(--ee-radius);background:rgba(255,255,255,.84);box-shadow:var(--ee-shadow-md);transition:transform var(--ee-transition),border-color var(--ee-transition),box-shadow var(--ee-transition)}
.empatia-card:hover,.empatia-post-card:hover{border-color:var(--ee-border-strong);box-shadow:var(--ee-shadow-lg);transform:translateY(-3px)}
.empatia-post-card .wp-block-post-featured-image{margin:0}
.empatia-post-card .wp-block-post-featured-image img{border-radius:0;box-shadow:none;aspect-ratio:16/10;object-fit:cover}
.empatia-post-card__body{padding:clamp(1.25rem,3vw,2rem)}
.empatia-post-card .wp-block-post-title a{color:#17372b;text-decoration:none}
.empatia-post-card .wp-block-post-title a:hover{color:#9f5334}
.wp-block-post-excerpt__more-link{display:inline-flex;align-items:center;color:#234c3c;font-size:.9rem;font-weight:700;text-decoration:none}
.wp-block-post-excerpt__more-link::after{content:"→";margin-left:.45rem;transition:transform var(--ee-transition)}
.wp-block-post-excerpt__more-link:hover::after{transform:translateX(.25rem)}

.empatia-author-box{margin-top:clamp(3rem,7vw,5rem);padding:clamp(1.4rem,3vw,2.2rem);border:1px solid var(--ee-border);border-radius:var(--ee-radius);background:#f2f6f2}
.empatia-footer{margin-top:clamp(4rem,9vw,8rem);color:rgba(255,255,255,.82);background:radial-gradient(circle at 12% 10%,rgba(185,104,67,.20),transparent 28%),linear-gradient(145deg,#17372b 0%,#142d24 100%)}
.empatia-footer h2,.empatia-footer h3,.empatia-footer .wp-block-site-title,.empatia-footer .wp-block-site-title a{color:#fff}
.empatia-footer p,.empatia-footer .wp-block-site-tagline{color:rgba(255,255,255,.72)}
.empatia-footer a{color:rgba(255,255,255,.88);text-decoration:none}
.empatia-footer a:hover{color:#f0c4ab}
.empatia-footer .wp-block-separator{background:rgba(255,255,255,.14)}

input[type=text],input[type=email],input[type=tel],input[type=url],input[type=search],input[type=number],input[type=date],select,textarea{width:100%;min-height:50px;padding:.8rem .95rem;border:1px solid var(--ee-border-strong);border-radius:13px;color:#28332e;background:rgba(255,255,255,.92);box-shadow:inset 0 1px 2px rgba(23,55,43,.03);font:inherit;transition:border-color var(--ee-transition),box-shadow var(--ee-transition),background-color var(--ee-transition)}
textarea{min-height:160px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:#356654;background:#fff;box-shadow:0 0 0 4px rgba(35,76,60,.09);outline:none}
label{display:inline-block;margin-bottom:.45rem;color:#17372b;font-weight:700}

details{overflow:hidden;margin-bottom:.8rem;border:1px solid var(--ee-border);border-radius:18px;background:rgba(255,255,255,.84);box-shadow:var(--ee-shadow-sm)}
details summary{position:relative;padding:1.1rem 3.2rem 1.1rem 1.25rem;color:#17372b;font-weight:700;cursor:pointer;list-style:none}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"+";position:absolute;top:50%;right:1.25rem;color:#b96843;font-size:1.45rem;transform:translateY(-50%)}
details[open] summary::after{content:"−"}
details>*:not(summary){padding-inline:1.25rem}
details>*:last-child{padding-bottom:1.25rem}

/* zgodność z obecnymi sekcjami Custom HTML */
.ios2-hero,.ios2-about,.ios2-benefits,.reviews-section{width:min(1220px,calc(100% - 28px));margin:clamp(1rem,3vw,2.2rem) auto 0;border:1px solid rgba(35,76,60,.08);box-shadow:0 18px 50px rgba(23,55,43,.075)}
.empatia-pattern-section{position:relative;overflow:hidden;border:1px solid rgba(35,76,60,.08);border-radius:30px;box-shadow:0 18px 50px rgba(23,55,43,.075)}
.empatia-pattern-kicker{color:#b96843;font-size:.75rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase}
.empatia-pattern-card{height:100%;border:1px solid var(--ee-border);border-radius:22px;background:rgba(255,255,255,.78);box-shadow:var(--ee-shadow-sm)}

@media(max-width:782px){
 body.admin-bar .empatia-header{top:46px}
 .empatia-header__inner{min-height:72px}
 .empatia-brand .wp-block-site-tagline{display:none}
 .empatia-page-shell{padding-top:3.5rem}
 .ios2-hero,.ios2-about,.ios2-benefits,.reviews-section{width:calc(100% - 16px);margin-top:.75rem;border-radius:22px}
}
@media(max-width:600px){
 .wp-block-button,.wp-block-button__link{width:100%}
 .empatia-reading{overflow-wrap:break-word}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}



/* =========================================================
   EMPATIA EDITORIAL 1.1 — dopracowanie premium
   ========================================================= */

body { overflow-x: hidden; }

.empatia-main-nav { gap: clamp(.35rem,1vw,1rem); }
.empatia-main-nav .wp-block-navigation-item__content { white-space: nowrap; }
.empatia-nav-cta .wp-block-navigation-item__content {
  padding: .78rem 1.05rem !important;
  border-radius: 999px;
  color: #fff !important;
  background: #234c3c;
  box-shadow: 0 11px 26px rgba(35,76,60,.2);
}
.empatia-nav-cta .wp-block-navigation-item__content::after { display: none; }
.empatia-nav-cta .wp-block-navigation-item__content:hover {
  color: #fff !important;
  background: #17372b;
  transform: translateY(-1px);
}

.empatia-footer-links { margin: 0; padding: 0; list-style: none; }
.empatia-footer-links li { margin: 0 0 .55rem; }
.empatia-footer .wp-block-social-links { margin-top: 1.25rem; }

.empatia-section {
  width: min(1180px,calc(100% - 28px));
  margin: clamp(1rem,3vw,2.25rem) auto 0;
  border: 1px solid rgba(35,76,60,.08);
  border-radius: 30px;
  box-shadow: 0 18px 50px rgba(23,55,43,.075);
}

.empatia-home-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 13% 16%,rgba(35,76,60,.15),transparent 34%),
    radial-gradient(circle at 88% 82%,rgba(185,104,67,.12),transparent 31%),
    linear-gradient(145deg,#fbf8f2 0%,#f1f5ef 52%,#f8f1e8 100%);
}
.empatia-home-hero::after {
  content: "";
  position: absolute;
  right: -9rem;
  bottom: -11rem;
  width: 26rem;
  aspect-ratio: 1;
  border: 1px solid rgba(185,104,67,.18);
  border-radius: 50%;
  pointer-events: none;
}
.empatia-home-hero__content { position: relative; z-index: 2; }
.empatia-home-hero .wp-block-image img {
  aspect-ratio: 1;
  object-fit: cover;
  filter: grayscale(100%) contrast(1.03);
  border-radius: 999px;
  box-shadow: 0 28px 64px rgba(23,55,43,.17);
}
.empatia-kicker {
  color: #b96843;
  font-size: .75rem;
  font-weight: 760;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.empatia-hero-lead { max-width: 720px; color: #39463f; }
.empatia-trust-row { gap: .55rem !important; }
.empatia-trust-pill {
  padding: .55rem .82rem;
  border: 1px solid rgba(35,76,60,.14);
  border-radius: 999px;
  color: #17372b;
  background: rgba(255,255,255,.72);
  box-shadow: 0 8px 20px rgba(23,55,43,.045);
  font-size: .74rem;
  font-weight: 720;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.empatia-metric {
  height: 100%;
  padding: clamp(1.25rem,2.6vw,2rem);
  border: 1px solid rgba(35,76,60,.12);
  border-radius: 20px;
  background: rgba(255,255,255,.76);
  text-align: center;
}
.empatia-metric strong {
  display: block;
  color: #17372b;
  font-family: Georgia,"Times New Roman",serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
}
.empatia-metric span { display: block; margin-top: .55rem; color: #65736b; font-size: .86rem; }

.empatia-service-card,
.empatia-step-card,
.empatia-review-card,
.empatia-contact-card,
.empatia-price-card,
.empatia-value-card {
  height: 100%;
  padding: clamp(1.35rem,3vw,2rem);
  border: 1px solid rgba(35,76,60,.14);
  border-radius: 22px;
  background: rgba(255,255,255,.79);
  box-shadow: 0 12px 30px rgba(23,55,43,.06);
  transition: transform var(--ee-transition),box-shadow var(--ee-transition),border-color var(--ee-transition);
}
.empatia-service-card:hover,
.empatia-step-card:hover,
.empatia-review-card:hover,
.empatia-contact-card:hover,
.empatia-price-card:hover,
.empatia-value-card:hover {
  transform: translateY(-3px);
  border-color: rgba(35,76,60,.25);
  box-shadow: 0 20px 46px rgba(23,55,43,.11);
}
.empatia-service-card h3,
.empatia-step-card h3,
.empatia-contact-card h3,
.empatia-price-card h3,
.empatia-value-card h3 { margin-top: 0; }
.empatia-card-number {
  display: block;
  margin-bottom: 1rem;
  color: #b96843;
  font-family: Georgia,"Times New Roman",serif;
  font-size: .88rem;
  font-weight: 700;
  letter-spacing: .08em;
}
.empatia-review-stars { color: #b96843; letter-spacing: .18em; }
.empatia-review-card blockquote {
  margin: 1rem 0 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.empatia-review-card blockquote p {
  color: #39463f;
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.75;
}
.empatia-review-author {
  padding-top: 1rem;
  border-top: 1px solid rgba(35,76,60,.12);
  color: #234c3c;
  font-size: .86rem;
  font-weight: 720;
}

.empatia-soft-panel {
  border: 1px solid rgba(35,76,60,.1);
  border-radius: 26px;
  background: #f2f6f2;
}
.empatia-terracotta-panel {
  border: 1px solid rgba(185,104,67,.16);
  border-radius: 26px;
  background: #f7eee8;
}
.empatia-dark-cta {
  overflow: hidden;
  border-radius: 30px;
  color: #fff;
  background:
    radial-gradient(circle at 10% 10%,rgba(185,104,67,.25),transparent 30%),
    linear-gradient(145deg,#17372b 0%,#142d24 100%);
  box-shadow: 0 22px 56px rgba(23,55,43,.18);
}
.empatia-dark-cta h2,.empatia-dark-cta p { color: #fff; }
.empatia-dark-cta p { opacity: .82; }

.empatia-timeline { position: relative; }
.empatia-timeline::before {
  content: "";
  position: absolute;
  top: 1rem;
  bottom: 1rem;
  left: 1rem;
  width: 1px;
  background: rgba(35,76,60,.18);
}
.empatia-timeline-item { position: relative; padding-left: 3rem; }
.empatia-timeline-item::before {
  content: "";
  position: absolute;
  top: .52rem;
  left: .66rem;
  width: .72rem;
  aspect-ratio: 1;
  border: 3px solid #f7f3ec;
  border-radius: 50%;
  background: #b96843;
  box-shadow: 0 0 0 1px rgba(185,104,67,.25);
}
.empatia-timeline-item + .empatia-timeline-item { margin-top: 1.8rem; }

.empatia-price { color: #17372b; font-family: Georgia,"Times New Roman",serif; font-size: 32px; line-height: 1; }
.empatia-price-note { color: #65736b; font-size: .86rem; }

.empatia-contact-card a { text-decoration: none; }
.empatia-contact-label { color: #b96843; font-size: .72rem; font-weight: 750; letter-spacing: .14em; text-transform: uppercase; }

.empatia-reading > .ios2-hero,
.empatia-reading > .ios2-about,
.empatia-reading > .ios2-benefits,
.empatia-reading > .reviews-section { max-width: 1220px; }

@media (max-width: 1080px) {
  .empatia-main-nav { font-size: .82rem; }
  .empatia-nav-cta .wp-block-navigation-item__content { padding: .68rem .85rem !important; }
}
@media (max-width: 900px) {
  .empatia-header__inner { min-height: 76px; }
  .empatia-main-nav { flex-shrink: 0; }
}
@media (max-width: 782px) {
  .empatia-nav-cta .wp-block-navigation-item__content {
    display: inline-flex;
    width: 100%;
    justify-content: center;
    margin-top: 1rem;
    padding: .95rem 1.25rem !important;
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif !important;
    font-size: 1rem !important;
  }
  .empatia-home-hero .wp-block-columns { flex-direction: column-reverse; }
  .empatia-home-hero .wp-block-image { max-width: 280px; margin-inline: auto; }
  .empatia-section { width: calc(100% - 16px); border-radius: 22px; }
}
@media (max-width: 600px) {
  .empatia-trust-row { align-items: stretch !important; }
  .empatia-trust-pill { width: 100%; text-align: center; }
  .empatia-service-card,.empatia-step-card,.empatia-review-card,.empatia-contact-card,.empatia-price-card,.empatia-value-card { padding: 1.3rem; border-radius: 19px; }
}


/* =========================================================
   EMPATIA EDITORIAL 1.2
   Typografia Avenir + naprawa panelu metryk
   ========================================================= */

:root {
  --ee-font-body:
    "Avenir",
    "Avenir Next",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Helvetica,
    Arial,
    sans-serif;

  --ee-font-heading:
    "Avenir Next",
    "Avenir",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Helvetica,
    Arial,
    sans-serif;
}

/* Typografia całej witryny */
html,
body,
button,
input,
textarea,
select {
  font-family: var(--ee-font-body) !important;
}

body {
  font-size: 15.5px !important;
  line-height: 1.68 !important;
}

p,
.wp-block-paragraph,
.wp-block-post-content p,
.empatia-reading p {
  font-family: var(--ee-font-body) !important;
  font-size: 15px !important;
  line-height: 1.68 !important;
  letter-spacing: 0 !important;
}

.single-post .wp-block-post-content p,
.single-post .empatia-reading p {
  font-size: 15.5px !important;
  line-height: 1.72 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-heading,
.wp-block-post-title,
.wp-block-site-title,
.wp-block-site-title a {
  font-family: var(--ee-font-heading) !important;
  font-style: normal !important;
}

h1,
.wp-block-post-title {
  font-weight: 600 !important;
}

h2,
h3,
h4,
h5,
h6 {
  font-weight: 600 !important;
}

.wp-block-navigation,
.wp-block-navigation-item__content,
.wp-block-button__link,
.wp-element-button {
  font-family: var(--ee-font-heading) !important;
}

/* Panel 12+ / 50 min / Lublin / Online */
.empatia-soft-panel:has(.empatia-metric) {
  width: min(1180px, calc(100% - 28px)) !important;
}

.empatia-soft-panel:has(.empatia-metric) > .wp-block-columns {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: clamp(14px, 2vw, 24px) !important;
  width: 100% !important;
  margin: 0 !important;
}

.empatia-soft-panel:has(.empatia-metric)
> .wp-block-columns
> .wp-block-column {
  display: block !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  flex-basis: auto !important;
  margin: 0 !important;
}

.empatia-soft-panel:has(.empatia-metric) .empatia-metric {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 150px !important;
  height: 100% !important;
  padding: 22px 14px !important;
  text-align: center !important;
}

.empatia-soft-panel:has(.empatia-metric) .empatia-metric strong {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  color: #17372b !important;
  font-family: var(--ee-font-heading) !important;
  font-size: 30px !important;
  font-weight: 600 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.025em !important;
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

.empatia-soft-panel:has(.empatia-metric) .empatia-metric span {
  display: block !important;
  width: 100% !important;
  max-width: 18ch !important;
  margin: 10px auto 0 !important;
  color: #65736b !important;
  font-family: var(--ee-font-body) !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

@media (max-width: 900px) {
  .empatia-soft-panel:has(.empatia-metric) > .wp-block-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .empatia-soft-panel:has(.empatia-metric) .empatia-metric {
    min-height: 135px !important;
  }
}

@media (max-width: 520px) {
  body {
    font-size: 15px !important;
  }

  p,
  .wp-block-paragraph,
  .wp-block-post-content p,
  .empatia-reading p {
    font-size: 14.5px !important;
    line-height: 1.66 !important;
  }

  .empatia-soft-panel:has(.empatia-metric) > .wp-block-columns {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .empatia-soft-panel:has(.empatia-metric) .empatia-metric {
    min-height: 112px !important;
    padding: 18px 16px !important;
  }

  .empatia-soft-panel:has(.empatia-metric) .empatia-metric strong {
    font-size: 28px !important;
  }

  .empatia-soft-panel:has(.empatia-metric) .empatia-metric span {
    max-width: none !important;
  }
}


/* =========================================================
   EMPATIA EDITORIAL 1.3
   Precyzyjne centrowanie panelu metryk
   ========================================================= */

.empatia-soft-panel:has(.empatia-metric) {
  width: min(860px, calc(100% - 32px)) !important;
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: clamp(28px, 3vw, 38px) !important;
  box-sizing: border-box !important;
}

.empatia-soft-panel:has(.empatia-metric) > .wp-block-columns {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(16px, 2vw, 24px) !important;

  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  margin: 0 auto !important;
  padding: 0 !important;

  box-sizing: border-box !important;
  transform: none !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
}

.empatia-soft-panel:has(.empatia-metric)
> .wp-block-columns
> .wp-block-column {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;

  flex: none !important;
  flex-basis: auto !important;
  box-sizing: border-box !important;
}

.empatia-soft-panel:has(.empatia-metric) .empatia-metric {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 900px) {
  .empatia-soft-panel:has(.empatia-metric) {
    width: min(680px, calc(100% - 24px)) !important;
    padding: 24px !important;
  }

  .empatia-soft-panel:has(.empatia-metric) > .wp-block-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  .empatia-soft-panel:has(.empatia-metric) {
    width: calc(100% - 16px) !important;
    padding: 16px !important;
  }

  .empatia-soft-panel:has(.empatia-metric) > .wp-block-columns {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   EMPATIA EDITORIAL 1.7
   Spójne odstępy, lżejsze menu, mniejsza typografia
   ========================================================= */

:root {
  --ee-font-body:
    "Avenir",
    "Avenir Next",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Helvetica,
    Arial,
    sans-serif;

  --ee-font-heading:
    "Avenir Next",
    "Avenir",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Helvetica,
    Arial,
    sans-serif;

  --wp--preset--font-size--xs: 12px !important;
  --wp--preset--font-size--sm: 13px !important;
  --wp--preset--font-size--md: 14.5px !important;
  --wp--preset--font-size--lg: 16px !important;
  --wp--preset--font-size--xl: 19px !important;
  --wp--preset--font-size--xxl: 27px !important;
  --wp--preset--font-size--hero: 34px !important;
}

html {
  font-size: 16px !important;
}

body {
  overflow-x: hidden;
  font-family: var(--ee-font-body) !important;
  font-size: 14.5px !important;
  line-height: 1.7 !important;
}

/* ------------------------------
   TYPOGRAFIA
   ------------------------------ */

p,
li,
.wp-block-paragraph,
.wp-block-post-content p,
.wp-block-post-content li,
.empatia-reading p,
.empatia-reading li {
  font-family: var(--ee-font-body) !important;
  font-size: 14.5px !important;
  line-height: 1.7 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-heading,
.wp-block-post-title,
.wp-block-site-title,
.wp-block-site-title a {
  font-family: var(--ee-font-heading) !important;
  font-style: normal !important;
  font-weight: 600 !important;
  text-wrap: pretty;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: auto;
}

h1,
.wp-block-heading:is(h1),
.wp-block-post-title:is(h1),
.entry-title,
.empatia-home-hero h1,
.has-hero-font-size {
  font-size: 34px !important;
  line-height: 1.12 !important;
  letter-spacing: -0.027em !important;
}

h2,
.wp-block-heading:is(h2),
.empatia-reading h2 {
  font-size: 27px !important;
  line-height: 1.2 !important;
  letter-spacing: -0.022em !important;
}

h3,
.wp-block-heading:is(h3),
.empatia-reading h3 {
  font-size: 19px !important;
  line-height: 1.3 !important;
  letter-spacing: -0.012em !important;
}

h4,
.wp-block-heading:is(h4) {
  font-size: 17px !important;
  line-height: 1.38 !important;
}

.has-lg-font-size,
.empatia-hero-lead,
.ios2-lead,
.ios2-text,
.ios2-about__lead,
.ios2-benefits__intro,
.reviews-section__intro {
  font-size: 16px !important;
  line-height: 1.65 !important;
}

/* Długie nagłówki wewnątrz węższych kart */
.empatia-post-card .wp-block-post-title,
.empatia-price-card h2,
.empatia-service-card h3,
.empatia-step-card h3,
.empatia-contact-card h3,
.empatia-value-card h3 {
  font-size: 18px !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
  overflow-wrap: normal;
  hyphens: auto;
}

/* Justowanie treści, z wyłączeniem elementów technicznych i wycentrowanych */
.empatia-main p:not(.has-text-align-center):not(.has-text-align-right):not(.empatia-eyebrow):not(.empatia-kicker):not(.empatia-trust-pill):not(.empatia-price):not(.empatia-price-note):not(.empatia-contact-label):not(.empatia-review-stars):not(.empatia-review-author),
.empatia-reading li,
.empatia-service-card p,
.empatia-step-card p,
.empatia-review-card blockquote p,
.empatia-contact-card p,
.empatia-price-card p:not(.empatia-price):not(.empatia-price-note),
.empatia-value-card p,
.empatia-post-card .wp-block-post-excerpt__excerpt {
  text-align: justify !important;
  text-align-last: left !important;
  text-justify: inter-word;
  hyphens: auto;
}

/* ------------------------------
   RÓWNE ODSTĘPY WEWNĄTRZ RAMEK
   ------------------------------ */

.empatia-section,
.empatia-pattern-section,
.ios2-hero,
.ios2-about,
.ios2-benefits,
.reviews-section {
  box-sizing: border-box !important;
  padding: 36px !important;
}

.empatia-home-hero {
  padding: 44px !important;
}

.empatia-soft-panel,
.empatia-terracotta-panel,
.empatia-dark-cta,
.empatia-author-box,
.empatia-archive-header,
.empatia-article-header {
  box-sizing: border-box !important;
  padding: 30px !important;
}

.empatia-archive-header,
.empatia-article-header,
.empatia-author-box {
  border: 1px solid rgba(35, 76, 60, 0.1);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 12px 32px rgba(23, 55, 43, 0.055);
}

/* Karty usług, cen, opinii i kontaktu */
.empatia-service-card,
.empatia-step-card,
.empatia-review-card,
.empatia-contact-card,
.empatia-price-card,
.empatia-value-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 10px !important;
  height: 100% !important;
  box-sizing: border-box !important;
  padding: 26px !important;
}

.empatia-service-card > *,
.empatia-step-card > *,
.empatia-review-card > *,
.empatia-contact-card > *,
.empatia-price-card > *,
.empatia-value-card > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.empatia-card-number {
  margin-bottom: 4px !important;
}

.empatia-review-card blockquote {
  flex: 1 1 auto;
}

/* Równe kolumny i pionowe ustawienie treści */
.empatia-main .wp-block-columns {
  align-items: stretch !important;
}

.empatia-main .wp-block-column {
  min-width: 0;
}

.empatia-main .wp-block-column > .wp-block-group[class*="empatia-"] {
  width: 100%;
}

/* ------------------------------
   KARTY ARTYKUŁÓW
   ------------------------------ */

.wp-block-post-template {
  row-gap: 24px !important;
}

.empatia-post-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  box-sizing: border-box !important;
  padding: 10px !important;

  overflow: hidden;
  border: 1px solid rgba(35, 76, 60, 0.13);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 12px 30px rgba(23, 55, 43, 0.06);
}

.empatia-post-card > .wp-block-post-featured-image {
  width: 100% !important;
  margin: 0 !important;
}

.empatia-post-card .wp-block-post-featured-image a {
  display: block;
}

.empatia-post-card .wp-block-post-featured-image img {
  display: block;
  width: 100% !important;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: 15px !important;
}

.empatia-post-card__body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 10px !important;
  box-sizing: border-box !important;
  padding: 18px 12px 14px !important;
}

.empatia-post-card__body > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.empatia-post-card .wp-block-post-title {
  min-height: 2.6em;
}

.empatia-post-card .wp-block-post-title a {
  color: #17372b !important;
  text-decoration: none !important;
}

.empatia-post-card .wp-block-post-excerpt {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
}

.empatia-post-card .wp-block-post-excerpt__more-text {
  margin-top: auto !important;
  padding-top: 12px;
  text-align: left !important;
}

/* Pojedynczy artykuł */
.single-post .wp-block-post-featured-image.alignwide {
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid rgba(35, 76, 60, 0.12);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 14px 36px rgba(23, 55, 43, 0.065);
}

.single-post .wp-block-post-featured-image.alignwide img {
  display: block;
  border-radius: 16px;
}

.empatia-reading {
  box-sizing: border-box;
  width: min(820px, calc(100% - 24px)) !important;
  padding-inline: 28px !important;
}

.empatia-reading > .wp-block-group.has-background,
.empatia-reading > .empatia-soft-panel,
.empatia-reading > .empatia-terracotta-panel,
.empatia-reading > [class*="-card"] {
  box-sizing: border-box;
  padding: 26px !important;
}

/* ------------------------------
   CENY
   ------------------------------ */

.empatia-price {
  color: #17372b !important;
  font-family: var(--ee-font-heading) !important;
  font-size: 29px !important;
  font-weight: 600 !important;
  line-height: 1.05 !important;
  text-align: left !important;
}

.empatia-price-note {
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  text-align: left !important;
}

/* ------------------------------
   NAGŁÓWEK DESKTOPOWY
   ------------------------------ */

.ee-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  width: 100%;
  padding: 9px 12px 0;
  background: rgba(251, 249, 245, 0.92);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

body.admin-bar .ee-header {
  top: 32px;
}

.ee-header__shell {
  width: min(1240px, 100%) !important;
  min-height: 68px;
  box-sizing: border-box;
  margin: 0 auto !important;
  padding: 8px 10px 8px 12px;

  border: 1px solid rgba(35, 76, 60, 0.12);
  border-radius: 18px;

  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 8px 24px rgba(23, 55, 43, 0.065);
}

.ee-brand {
  flex: 0 0 auto;
  min-width: 0;
  gap: 9px !important;
}

.ee-brand .wp-block-site-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 46px !important;
  height: 46px !important;
  flex: 0 0 46px !important;

  box-sizing: border-box;
  margin: 0 !important;
  padding: 4px !important;

  overflow: hidden;
  border: 1px solid rgba(35, 76, 60, 0.12);
  border-radius: 12px !important;
  background: #fff;
}

.ee-brand .wp-block-site-logo a {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  align-items: center !important;
  justify-content: center !important;
}

.ee-brand .wp-block-site-logo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  border: 0 !important;
  border-radius: 7px !important;
  box-shadow: none !important;
}

.ee-brand__text .wp-block-site-title {
  margin: 0 !important;
  line-height: 1.05;
}

.ee-brand__text .wp-block-site-title a {
  color: #17372b !important;
  font-size: 16.5px !important;
  font-weight: 600 !important;
  letter-spacing: -0.018em !important;
  text-decoration: none !important;
  white-space: nowrap;
}

.ee-brand__text .wp-block-site-tagline {
  margin: 4px 0 0 !important;
  color: #6c7972 !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.065em !important;
  text-transform: uppercase;
  white-space: nowrap;
}

.ee-nav {
  flex: 1 1 auto;
  min-width: 0;
  margin-left: 16px;
}

.ee-nav .wp-block-navigation__container {
  gap: 2px !important;
}

.ee-nav .wp-block-navigation-item__content {
  padding: 9px 9px !important;
  border-radius: 999px;

  color: #35443d !important;
  background: transparent;

  font-family: var(--ee-font-heading) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  white-space: nowrap;

  transition:
    color 160ms ease,
    background-color 160ms ease;
}

.ee-nav .wp-block-navigation-item__content::after {
  display: none !important;
}

.ee-nav .wp-block-navigation-item__content:hover,
.ee-nav .current-menu-item > .wp-block-navigation-item__content {
  color: #17372b !important;
  background: #edf3ee;
}

/* Ikony kontaktowe zamiast przycisku */
.ee-social-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 5px;
  margin-left: 9px;
}

.ee-social-action {
  display: inline-flex;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(35, 76, 60, 0.13);
  border-radius: 11px;

  color: #234c3c !important;
  background: rgba(248, 250, 248, 0.94);
  text-decoration: none !important;

  transition:
    color 160ms ease,
    border-color 160ms ease,
    background-color 160ms ease,
    transform 160ms ease;
}

.ee-social-action:hover {
  color: #17372b !important;
  border-color: rgba(35, 76, 60, 0.24);
  background: #e8efe9;
  transform: translateY(-1px);
}

.ee-social-action svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ee-social-action--facebook svg {
  fill: currentColor;
  stroke: none;
}

/* Przycisk menu */
.ee-nav .wp-block-navigation__responsive-container-open,
.ee-nav .wp-block-navigation__responsive-container-close {
  display: none;
  align-items: center;
  justify-content: center;

  width: 40px;
  height: 40px;
  padding: 0 !important;

  border: 1px solid rgba(35, 76, 60, 0.13) !important;
  border-radius: 11px !important;

  color: #17372b !important;
  background: #f8faf8 !important;
  box-shadow: none !important;
}

/* ------------------------------
   LEKKIE MENU MOBILNE
   ------------------------------ */

@media (max-width: 980px) {
  .ee-header__shell {
    min-height: 64px;
  }

  .ee-brand__text .wp-block-site-tagline {
    display: none;
  }

  .ee-nav {
    flex: 0 0 auto;
    margin-left: auto;
    order: 3;
  }

  .ee-social-actions {
    order: 2;
    margin-left: auto;
  }

  .ee-nav .wp-block-navigation__responsive-container-open {
    display: inline-flex !important;
  }

  .ee-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none !important;
  }

  .ee-nav .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed !important;
    inset: 78px 10px auto 10px !important;
    z-index: 100000 !important;

    display: block !important;
    width: auto !important;
    height: auto !important;
    max-height: calc(100dvh - 90px) !important;
    padding: 0 !important;

    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.admin-bar
  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open {
    top: 110px !important;
  }

  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-dialog {
    position: relative !important;

    width: min(430px, 100%) !important;
    max-height: calc(100dvh - 96px) !important;
    box-sizing: border-box;
    margin-left: auto !important;
    padding: 12px 14px 14px !important;

    overflow: auto;

    border: 1px solid rgba(35, 76, 60, 0.13) !important;
    border-radius: 17px !important;

    background: rgba(255, 255, 255, 0.97) !important;
    box-shadow: 0 14px 38px rgba(23, 55, 43, 0.13) !important;

    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
  }

  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-close {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 4 !important;
    display: inline-flex !important;
  }

  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content {
    width: 100% !important;
    padding: 42px 0 0 !important;
  }

  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container {
    display: flex !important;
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item {
    width: 100% !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(35, 76, 60, 0.09);
  }

  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item:last-child {
    border-bottom: 0;
  }

  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item__content {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box;
    padding: 13px 8px !important;

    border: 0 !important;
    border-radius: 8px !important;

    color: #263a31 !important;
    background: transparent !important;

    font-size: 15px !important;
    font-weight: 550 !important;
    line-height: 1.25 !important;
    text-align: left !important;

    transform: none !important;
  }

  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item__content:hover,
  .ee-nav
  .wp-block-navigation__responsive-container.is-menu-open
  .current-menu-item
  > .wp-block-navigation-item__content {
    color: #17372b !important;
    background: #edf3ee !important;
  }
}

@media (max-width: 700px) {
  .ee-header {
    padding: 7px 7px 0;
  }

  .ee-header__shell {
    padding: 7px 8px 7px 9px;
    border-radius: 15px;
  }

  .ee-brand {
    gap: 7px !important;
  }

  .ee-brand .wp-block-site-logo {
    width: 42px !important;
    height: 42px !important;
    flex-basis: 42px !important;
    padding: 3px !important;
    border-radius: 11px !important;
  }

  .ee-brand__text .wp-block-site-title a {
    font-size: 15px !important;
  }

  .ee-social-action {
    width: 33px;
    height: 33px;
    border-radius: 10px;
  }

  .ee-social-action svg {
    width: 16px;
    height: 16px;
  }

  .ee-nav .wp-block-navigation__responsive-container-open,
  .ee-nav .wp-block-navigation__responsive-container-close {
    width: 38px;
    height: 38px;
  }

  .ee-nav .wp-block-navigation__responsive-container.is-menu-open {
    inset-inline: 7px !important;
  }

  /* Na bardzo wąskim ekranie pozostają najpraktyczniejsze skróty */
  .ee-social-action--instagram,
  .ee-social-action--facebook {
    display: none;
  }

  .empatia-section,
  .empatia-pattern-section,
  .ios2-hero,
  .ios2-about,
  .ios2-benefits,
  .reviews-section,
  .empatia-soft-panel,
  .empatia-terracotta-panel,
  .empatia-dark-cta,
  .empatia-author-box,
  .empatia-archive-header,
  .empatia-article-header {
    padding: 22px !important;
  }

  .empatia-home-hero {
    padding: 26px 22px !important;
  }

  .empatia-service-card,
  .empatia-step-card,
  .empatia-review-card,
  .empatia-contact-card,
  .empatia-price-card,
  .empatia-value-card {
    padding: 21px !important;
  }

  .empatia-reading {
    width: calc(100% - 12px) !important;
    padding-inline: 12px !important;
  }

  h1,
  .wp-block-heading:is(h1),
  .wp-block-post-title:is(h1),
  .entry-title,
  .empatia-home-hero h1,
  .has-hero-font-size {
    font-size: 31px !important;
  }

  h2,
  .wp-block-heading:is(h2),
  .empatia-reading h2 {
    font-size: 24px !important;
  }

  h3,
  .wp-block-heading:is(h3),
  .empatia-reading h3 {
    font-size: 18px !important;
  }
}

@media (max-width: 380px) {
  .ee-brand__text {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ee-social-action,
  .ee-nav .wp-block-navigation-item__content {
    transition: none !important;
  }
}
