/*
Theme Name: GlamVo Landing
Theme URI: https://glamvo.pl
Author: GlamVo
Author URI: https://glamvo.pl
Description: Profesjonalny landing page dla salonów beauty – GlamVo. Edycja przez ACF.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: Proprietary
Text Domain: glamvo
*/

:root {
  --pink:        #E91E8C;
  --pink-light:  #FF4DB5;
  --pink-dark:   #C4156F;
  --pink-bg:     #FFF0F8;
  --pink-soft:   #FFD6EE;
  --gold:        #D4A843;
  --gold-light:  #F5C842;
  --white:       #FFFFFF;
  --gray-50:     #F8F8FB;
  --gray-100:    #F1F1F6;
  --gray-200:    #E4E4EE;
  --gray-400:    #A0A0B8;
  --gray-600:    #6B6B85;
  --dark:        #1A1A2E;
  --dark-soft:   #2E2E45;
  --font-display: 'Playfair Display', Georgia, serif;
  --font-body:    'DM Sans', sans-serif;
  --shadow-sm: 0 2px 8px rgba(26,26,46,0.06);
  --shadow-md: 0 8px 30px rgba(26,26,46,0.1);
  --shadow-lg: 0 20px 60px rgba(26,26,46,0.12);
  --shadow-pink: 0 8px 30px rgba(233,30,140,0.25);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  background: var(--white);
  color: var(--dark);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  overflow-x: hidden;
}

/* ── NAV ── */
.glamvo-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  display: flex; align-items: center; justify-content: space-between;
  padding: 1.1rem 5rem;
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--gray-200);
  transition: all 0.3s ease;
}
.glamvo-nav.scrolled { box-shadow: 0 2px 20px rgba(26,26,46,0.1); }
.nav-logo { font-family: var(--font-display); font-size: 1.8rem; font-weight: 700; color: var(--dark); text-decoration: none; }
.nav-logo span { color: var(--pink); }
.nav-links { display: flex; gap: 2.5rem; list-style: none; }
.nav-links a { color: var(--gray-600); text-decoration: none; font-size: 0.9rem; font-weight: 500; transition: color 0.2s; }
.nav-links a:hover { color: var(--dark); }
.nav-links .nav-link--active { color: var(--pink); font-weight: 600; }
.nav-cta {
  background: var(--pink); color: white;
  padding: 0.65rem 1.75rem; border-radius: 50px;
  font-family: var(--font-body); font-size: 0.9rem; font-weight: 600;
  text-decoration: none; border: none; cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 4px 16px rgba(233,30,140,0.3);
}
.nav-cta:hover { background: var(--pink-dark); transform: translateY(-1px); box-shadow: var(--shadow-pink); }

/* ── HERO ── */
.hero {
  min-height: 100vh;
  display: flex; align-items: center;
  position: relative;
  padding: 9rem 5rem 5rem;
  overflow: hidden;
  background: var(--white);
}
.hero-blob { position: absolute; border-radius: 50%; filter: blur(80px); pointer-events: none; }
.hero-blob-1 { width: 600px; height: 600px; background: rgba(233,30,140,0.08); top: -100px; right: -100px; }
.hero-blob-2 { width: 400px; height: 400px; background: rgba(212,168,67,0.07); bottom: -50px; left: 30%; }
.hero-blob-3 { width: 300px; height: 300px; background: rgba(233,30,140,0.05); top: 30%; left: -80px; }
.hero-content { position: relative; z-index: 2; max-width: 580px; }

.hero-badge {
  display: inline-flex; align-items: center; gap: 0.5rem;
  background: var(--pink-bg); border: 1px solid var(--pink-soft);
  color: var(--pink-dark);
  padding: 0.4rem 1rem; border-radius: 50px;
  font-size: 0.78rem; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase;
  margin-bottom: 2rem;
  animation: fadeUp 0.6s ease both;
}
.hero-badge-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--pink); animation: pulse 2s ease infinite; }

@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(.6)} }

.hero h1 {
  font-family: var(--font-display);
  font-size: clamp(2.8rem, 4.5vw, 4rem);
  font-weight: 900; line-height: 1.1;
  letter-spacing: -0.025em; color: var(--dark);
  margin-bottom: 1.5rem;
  animation: fadeUp 0.6s 0.1s ease both;
}
.hero h1 em { font-style: normal; color: var(--pink); }
.hero-sub {
  font-size: 1.1rem; color: var(--gray-600);
  font-weight: 400; line-height: 1.75;
  margin-bottom: 2.5rem; max-width: 500px;
  animation: fadeUp 0.6s 0.2s ease both;
}
.hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; animation: fadeUp 0.6s 0.3s ease both; margin-bottom: 3rem; }

.btn-primary {
  display: inline-flex; align-items: center; gap: 0.5rem;
  background: var(--pink); color: white;
  padding: 1rem 2rem; border-radius: 50px;
  font-weight: 700; font-size: 1rem;
  text-decoration: none; border: none; cursor: pointer;
  font-family: var(--font-body); transition: all 0.25s ease;
  box-shadow: 0 4px 20px rgba(233,30,140,0.35);
}
.btn-primary:hover { background: var(--pink-dark); transform: translateY(-2px); box-shadow: 0 10px 40px rgba(233,30,140,0.4); }

.btn-ghost {
  display: inline-flex; align-items: center; gap: 0.6rem;
  background: transparent; color: var(--dark);
  padding: 1rem 1.75rem; border-radius: 50px;
  font-weight: 600; font-size: 1rem;
  text-decoration: none; border: 2px solid var(--gray-200);
  cursor: pointer; font-family: var(--font-body); transition: all 0.25s ease;
}
.btn-ghost:hover { border-color: var(--pink); color: var(--pink); transform: translateY(-2px); }

.hero-trust { display: flex; align-items: center; gap: 1.5rem; animation: fadeUp 0.6s 0.4s ease both; }
.hero-avatars { display: flex; }
.hero-avatar {
  width: 32px; height: 32px; border-radius: 50%;
  border: 2px solid white;
  background: linear-gradient(135deg, var(--pink) 0%, var(--gold) 100%);
  display: flex; align-items: center; justify-content: center;
  font-size: 0.65rem; font-weight: 700; color: white;
  margin-left: -8px;
}
.hero-avatar:first-child { margin-left: 0; }
.hero-trust-text { font-size: 0.82rem; color: var(--gray-600); }
.hero-trust-text strong { color: var(--dark); }

/* ── HERO VISUAL / DASHBOARD ── */
.hero-visual {
  position: absolute; right: 3rem; top: 50%; transform: translateY(-50%);
  width: 52%; max-width: 700px; z-index: 2;
  animation: floatIn 0.8s 0.4s ease both;
}
@keyframes floatIn { from{opacity:0;transform:translateY(calc(-50% + 40px))} to{opacity:1;transform:translateY(-50%)} }
.dashboard-wrap { position: relative; }
.float-card {
  position: absolute; background: white; border-radius: 16px;
  padding: 0.85rem 1.1rem; box-shadow: var(--shadow-lg);
  border: 1px solid var(--gray-200);
  display: flex; align-items: center; gap: 0.6rem; z-index: 10;
}
.float-card-icon { font-size: 1.3rem; }
.float-card-label { font-size: 0.72rem; color: var(--gray-600); font-weight: 500; }
.float-card-value { font-size: 1rem; font-weight: 700; color: var(--dark); }
.float-card-up { color: #16A34A; font-size: 0.7rem; font-weight: 600; }
.float-c1 { top: -20px; left: -30px; animation: bob 4s ease-in-out infinite; }
.float-c2 { bottom: 40px; right: -25px; animation: bob 4s 1.5s ease-in-out infinite; }
@keyframes bob { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }

.dash-card {
  background: white; border: 1px solid var(--gray-200);
  border-radius: 20px; padding: 1.5rem;
  box-shadow: var(--shadow-lg);
  overflow: hidden; position: relative;
}
.dash-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background: linear-gradient(90deg, var(--pink) 0%, var(--gold) 100%); }
.dash-topbar { display:flex; align-items:center; justify-content:space-between; margin-bottom:1.25rem; }
.dash-dots { display:flex; gap:5px; }
.dash-dot { width:9px; height:9px; border-radius:50%; }
.dash-dot:nth-child(1){background:#FF5F57} .dash-dot:nth-child(2){background:#FEBC2E} .dash-dot:nth-child(3){background:#28C840}
.dash-title { font-size:0.72rem; color:var(--gray-400); font-weight:500; }
.dash-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:.6rem; margin-bottom:1rem; }
.dash-stat { background:var(--gray-50); border:1px solid var(--gray-200); border-radius:12px; padding:.75rem; }
.ds-label { font-size:.6rem; color:var(--gray-400); text-transform:uppercase; letter-spacing:.06em; margin-bottom:.25rem; }
.ds-val { font-size:1.15rem; font-weight:800; color:var(--dark); }
.ds-delta { font-size:.6rem; color:#16A34A; margin-top:.1rem; font-weight:600; }
.dash-row { display:grid; grid-template-columns:3fr 2fr; gap:.6rem; margin-bottom:.6rem; }
.dash-chart { background:var(--gray-50); border:1px solid var(--gray-200); border-radius:12px; padding:.85rem; }
.dc-title { font-size:.65rem; color:var(--gray-600); font-weight:600; margin-bottom:.6rem; }
.chart-bars { display:flex; align-items:flex-end; gap:4px; height:54px; }
.chart-bar { flex:1; border-radius:3px 3px 0 0; background:var(--pink-soft); }
.chart-bar.hi { background:var(--pink); }
.chart-bar.top { background:linear-gradient(180deg,var(--gold-light) 0%,var(--gold) 100%); }
.chart-bar:nth-child(1){height:38%} .chart-bar:nth-child(2){height:56%} .chart-bar:nth-child(3){height:42%}
.chart-bar:nth-child(4){height:70%} .chart-bar:nth-child(5){height:52%} .chart-bar:nth-child(6){height:82%} .chart-bar:nth-child(7){height:100%}
.dash-cal { background:var(--gray-50); border:1px solid var(--gray-200); border-radius:12px; padding:.85rem; }
.cal-slot { display:flex; align-items:center; gap:.45rem; padding:.35rem .45rem; border-radius:7px; margin-bottom:.3rem; font-size:.63rem; }
.cal-slot.s1{background:var(--pink-bg);border:1px solid var(--pink-soft)}
.cal-slot.s2{background:#FEF9E7;border:1px solid #FDE68A}
.cal-slot.s3{background:#F0FDF4;border:1px solid #A7F3D0}
.slot-t{color:var(--gray-400);width:30px;flex-shrink:0;font-weight:600}
.slot-n{color:var(--dark);font-weight:600}
.slot-s{color:var(--gray-400);margin-left:auto}
.dash-clients { background:var(--gray-50); border:1px solid var(--gray-200); border-radius:12px; padding:.85rem; }
.dc2-title { font-size:.65rem; color:var(--gray-600); font-weight:600; text-transform:uppercase; letter-spacing:.06em; margin-bottom:.6rem; }
.cl-row { display:flex; align-items:center; gap:.5rem; padding:.3rem 0; border-bottom:1px solid var(--gray-200); font-size:.68rem; }
.cl-row:last-child{border-bottom:none}
.cl-av { width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--pink) 0%,var(--gold) 100%);display:flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:700;color:white;flex-shrink:0; }
.cl-name{color:var(--dark);font-weight:600;flex:1}
.cl-info{color:var(--gray-400)}
.cl-badge{background:var(--pink-bg);color:var(--pink-dark);font-size:.55rem;font-weight:700;padding:.15rem .4rem;border-radius:4px}

/* ── MARQUEE ── */
.marquee-section { padding:1.25rem 0; background:var(--gray-50); border-top:1px solid var(--gray-200); border-bottom:1px solid var(--gray-200); overflow:hidden; }
.marquee-track { display:flex; gap:2.5rem; white-space:nowrap; animation:marquee 28s linear infinite; }
.marquee-item { display:flex; align-items:center; gap:.5rem; color:var(--gray-600); font-size:.8rem; font-weight:500; letter-spacing:.04em; text-transform:uppercase; flex-shrink:0; }
.marquee-item span{color:var(--pink)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── STATS ── */
.stats-strip { background:white; padding:4rem 5rem; display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; border-bottom:1px solid var(--gray-200); }
.stat-item{text-align:center;padding:2rem 1rem}
.stat-num { font-family:var(--font-display); font-size:3rem; font-weight:900; color:var(--pink); line-height:1; }
.stat-label{color:var(--gray-600);font-size:.88rem;margin-top:.5rem}

/* ── SHARED SECTION STYLES ── */
.glamvo-section { padding: 6rem 5rem; }
.section-tag { display:inline-block; background:var(--pink-bg); border:1px solid var(--pink-soft); color:var(--pink-dark); font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; padding:.35rem .85rem; border-radius:50px; margin-bottom:1.25rem; }
.section-h2 { font-family:var(--font-display); font-size:clamp(2rem,3vw,2.8rem); font-weight:800; line-height:1.2; letter-spacing:-.02em; color:var(--dark); margin-bottom:1rem; }
.section-sub{color:var(--gray-600);font-size:1.05rem;line-height:1.75;max-width:540px}
.center{text-align:center}
.center .section-sub{margin:0 auto}

/* ── FEATURES ── */
.features-section{background:var(--gray-50)}
.features-intro{margin-bottom:4rem}
.features-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; }
.feature-card { background:white; border:1px solid var(--gray-200); border-radius:20px; padding:2rem; transition:all .3s ease; position:relative; overflow:hidden; }
.feature-card:hover { border-color:var(--pink-soft); transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.feature-card.span2{grid-column:span 2}
.feature-card.hero-card { background:linear-gradient(135deg,var(--pink-bg) 0%,#FFF8FF 100%); border-color:var(--pink-soft); }
.feature-icon-wrap { width:50px;height:50px;border-radius:14px;background:var(--pink-bg);border:1px solid var(--pink-soft);display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:1.25rem; }
.feature-title { font-family:var(--font-display); font-size:1.2rem; font-weight:700; color:var(--dark); margin-bottom:.6rem; }
.feature-desc{color:var(--gray-600);font-size:.9rem;line-height:1.7}
.feature-tag { display:inline-block; margin-top:.85rem; background:#FEF9EC; border:1px solid #FDE68A; color:#92700A; font-size:.68rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; padding:.2rem .55rem; border-radius:4px; }
.feature-list{list-style:none;margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}
.feature-list li{display:flex;align-items:center;gap:.6rem;font-size:.875rem;color:var(--dark)}
.check{width:18px;height:18px;border-radius:50%;background:var(--pink);display:flex;align-items:center;justify-content:center;color:white;font-size:.6rem;flex-shrink:0}

/* ── ROI ── */
.roi-section{background:white}
.roi-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}
.roi-metrics{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.roi-card { background:var(--gray-50); border:1px solid var(--gray-200); border-radius:16px; padding:1.5rem; text-align:center; transition:all .3s ease; }
.roi-card:hover{border-color:var(--pink-soft);transform:scale(1.02);box-shadow:var(--shadow-md)}
.roi-card.big { grid-column:span 2; background:linear-gradient(135deg,var(--pink-bg) 0%,#FFF8FF 100%); border-color:var(--pink-soft); }
.roi-num{font-family:var(--font-display);font-size:2.6rem;font-weight:900;color:var(--pink);line-height:1}
.roi-card.big .roi-num{font-size:3.5rem}
.roi-label{color:var(--gray-600);font-size:.82rem;margin-top:.35rem;line-height:1.45}

/* ── PRICING ── */
.pricing-section{background:var(--gray-50)}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3.5rem;align-items:start}
.price-card{background:white;border:1px solid var(--gray-200);border-radius:24px;padding:2.25rem;transition:all .3s ease;position:relative;overflow:hidden}
.price-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.price-card.featured{border-color:var(--pink);box-shadow:0 0 0 2px rgba(233,30,140,.12),var(--shadow-lg);transform:scale(1.03)}
.price-card.featured::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--pink) 0%,var(--gold) 100%)}
.price-badge{position:absolute;top:1.5rem;right:1.5rem;background:var(--pink);color:white;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.28rem .65rem;border-radius:50px}
.price-name{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gray-400);margin-bottom:.75rem}
.price-val{font-family:var(--font-display);font-size:3.2rem;font-weight:900;color:var(--dark);line-height:1;margin-bottom:.35rem}
.price-val sup{font-size:1.4rem}
.price-val .period-unit{font-size:1rem;font-weight:400;color:var(--gray-400)}
.price-val.custom{font-size:2rem;line-height:1.3}
.price-period{color:var(--gray-400);font-size:.8rem;margin-bottom:1.75rem}
.price-divider{border:none;border-top:1px solid var(--gray-200);margin-bottom:1.5rem}
.price-features{list-style:none;display:flex;flex-direction:column;gap:.7rem;margin-bottom:2rem}
.price-features li{display:flex;align-items:flex-start;gap:.6rem;font-size:.875rem;color:var(--dark)}
.price-features li.no{color:var(--gray-400)}
.check-sm{width:16px;height:16px;border-radius:50%;flex-shrink:0;background:var(--pink);display:flex;align-items:center;justify-content:center;color:white;font-size:.55rem;margin-top:.1rem}
.price-features li.no .check-sm{background:var(--gray-200);color:var(--gray-400)}
.btn-price{width:100%;padding:.9rem;border-radius:12px;font-family:var(--font-body);font-weight:700;font-size:.95rem;cursor:pointer;border:none;text-align:center;display:block;text-decoration:none;transition:all .25s ease}
.btn-price-primary{background:var(--pink);color:white;box-shadow:0 4px 16px rgba(233,30,140,.3)}
.btn-price-primary:hover{background:var(--pink-dark);transform:translateY(-1px);box-shadow:var(--shadow-pink)}
.btn-price-outline{background:transparent;color:var(--dark);border:2px solid var(--gray-200)}
.btn-price-outline:hover{border-color:var(--pink);color:var(--pink);transform:translateY(-1px)}

/* ── TESTIMONIALS ── */
.testimonials-section{background:white}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:3.5rem}
.testimonial-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:20px;padding:1.75rem;transition:all .3s ease}
.testimonial-card:hover{border-color:var(--pink-soft);transform:translateY(-3px);box-shadow:var(--shadow-md)}
.stars{color:var(--gold);font-size:.85rem;margin-bottom:1rem;letter-spacing:2px}
.testimonial-text{font-size:.92rem;line-height:1.75;color:var(--gray-600);font-style:italic;margin-bottom:1.5rem}
.t-author{display:flex;align-items:center;gap:.75rem}
.t-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--pink) 0%,var(--gold) 100%);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem;color:white}
.t-name{font-weight:700;font-size:.88rem;color:var(--dark)}
.t-role{color:var(--gray-400);font-size:.76rem}

/* ── CTA ── */
.cta-section{background:var(--dark);padding:7rem 5rem;text-align:center;position:relative;overflow:hidden}
.cta-blob{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none}
.cta-blob-1{width:500px;height:500px;background:rgba(233,30,140,.15);top:-100px;left:50%;transform:translateX(-50%)}
.cta-blob-2{width:300px;height:300px;background:rgba(212,168,67,.08);bottom:-50px;right:10%}
.cta-section .section-tag{background:rgba(233,30,140,.15);border-color:rgba(233,30,140,.3);color:var(--pink-light)}
.cta-section .section-h2{color:white}
.cta-section .section-sub{color:rgba(255,255,255,.6);margin:0 auto 2.5rem}
.cta-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.btn-white{display:inline-flex;align-items:center;gap:.5rem;background:white;color:var(--dark);padding:1rem 2rem;border-radius:50px;font-weight:700;font-size:1rem;text-decoration:none;border:none;cursor:pointer;font-family:var(--font-body);transition:all .25s ease;box-shadow:0 4px 20px rgba(0,0,0,.2)}
.btn-white:hover{transform:translateY(-2px);box-shadow:0 10px 40px rgba(0,0,0,.3)}
.btn-ghost-white{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:white;padding:1rem 2rem;border-radius:50px;font-weight:600;font-size:1rem;text-decoration:none;border:2px solid rgba(255,255,255,.25);cursor:pointer;font-family:var(--font-body);transition:all .25s ease}
.btn-ghost-white:hover{border-color:white;transform:translateY(-2px)}
.cta-note{color:rgba(255,255,255,.3);font-size:.8rem;margin-top:1.5rem}

/* ── FOOTER ── */
.glamvo-footer{background:var(--dark-soft);padding:3.5rem 5rem 2.5rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.footer-logo{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:white;margin-bottom:.75rem}
.footer-logo span{color:var(--pink)}
.footer-tagline{color:rgba(255,255,255,.4);font-size:.85rem;line-height:1.65;max-width:220px}
.footer-col h4{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:1rem}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.65rem}
.footer-col a{color:rgba(255,255,255,.7);text-decoration:none;font-size:.875rem;transition:color .2s}
.footer-col a:hover{color:white}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:1.75rem;display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:rgba(255,255,255,.2)}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .hero-visual{display:none}
  .hero-content{max-width:100%}
  .glamvo-nav,.glamvo-section,.stats-strip,.cta-section,.glamvo-footer{padding-left:2rem;padding-right:2rem}
  .hero{padding-left:2rem;padding-right:2rem}
  .features-grid,.pricing-grid,.testimonials-grid{grid-template-columns:1fr}
  .feature-card.span2{grid-column:span 1}
  .roi-grid{grid-template-columns:1fr;gap:3rem}
  .stats-strip{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .glamvo-nav .nav-links{display:none}
  .hero{padding:7rem 1.5rem 3rem}
  .glamvo-section,.cta-section{padding:3.5rem 1.5rem}
  .stats-strip{padding:2rem 1.5rem}
  .glamvo-footer{padding:2.5rem 1.5rem}
  .roi-metrics{grid-template-columns:1fr}
  .roi-card.big{grid-column:span 1}
  .footer-grid{grid-template-columns:1fr}
  .price-card.featured{transform:scale(1)}
}


/* ═══════════════════════════════════════════════════════════════
   GLAMVO BLOG – KOMPLETNY DESIGN
   Spójny, magazynowy styl dla wszystkich podstron bloga
   Pokrywa: /blog, /kategoria, /wpis, /strona, komentarze
═══════════════════════════════════════════════════════════════ */

/* ────────────────────────────────────────────────────────────
   0. WORDPRESS RESETS & GLOBAL FIXES
──────────────────────────────────────────────────────────── */
body.single,
body.archive,
body.blog,
body.search,
body.page { overflow-x: hidden; }

body { margin: 0 !important; }

.glamvo-nav { top: 0; }
.admin-bar .glamvo-nav { top: 32px; }
@media screen and (max-width: 782px) { .admin-bar .glamvo-nav { top: 46px; } }
#wpadminbar { position: fixed !important; }

/* Usuń domyślne WP wrappery które psują layout */
.site-header, .site-footer,
.entry-header .entry-title,
h1.page-title { display: none; }

#page, #content, #primary, #main,
.site-content, .content-area {
  padding: 0 !important; margin: 0 !important;
  max-width: none !important; width: 100% !important;
}

/* ────────────────────────────────────────────────────────────
   1. SHELL – wspólny wrapper i zmienne bloga
──────────────────────────────────────────────────────────── */
.b-shell {
  background: #FAFAFA;
  padding-top: 80px;
  min-height: 100vh;
  width: 100%;
  box-sizing: border-box;
}
.admin-bar .b-shell { padding-top: 112px; }
@media screen and (max-width: 782px) { .admin-bar .b-shell { padding-top: 126px; } }

/* Max-width containers */
.b-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2.5rem;
  box-sizing: border-box;
}
.b-container--narrow {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 2.5rem;
  box-sizing: border-box;
}

/* ────────────────────────────────────────────────────────────
   2. BREADCRUMB
──────────────────────────────────────────────────────────── */
.b-breadcrumb {
  display: flex; align-items: center; gap: 0.5rem;
  font-size: 0.78rem; color: var(--gray-400);
  padding: 1.5rem 0 0;
}
.b-breadcrumb a {
  color: var(--gray-400); text-decoration: none;
  transition: color .18s;
}
.b-breadcrumb a:hover { color: var(--pink); }
.b-breadcrumb__sep { opacity: .4; font-size: .7rem; }
.b-breadcrumb__current { color: var(--gray-600); font-weight: 500; }

/* ────────────────────────────────────────────────────────────
   3. KATEGORIA BADGE & META SHARED
──────────────────────────────────────────────────────────── */
.b-cat {
  display: inline-flex; align-items: center;
  background: var(--pink-bg); color: var(--pink-dark);
  border: 1px solid var(--pink-soft);
  font-size: 0.68rem; font-weight: 800;
  letter-spacing: 0.09em; text-transform: uppercase;
  padding: 0.25rem 0.75rem; border-radius: 50px;
  text-decoration: none; transition: all .2s ease;
  white-space: nowrap;
}
.b-cat:hover { background: var(--pink); color: white; border-color: var(--pink); }
.b-cat--lg   { font-size: 0.74rem; padding: 0.35rem 0.9rem; }

.b-meta {
  display: flex; align-items: center; gap: 0.6rem;
  flex-wrap: wrap;
}
.b-meta__date,
.b-meta__read {
  font-size: 0.77rem; color: var(--gray-400); font-weight: 400;
}
.b-meta__sep { color: var(--gray-200); font-size: .6rem; }

/* ────────────────────────────────────────────────────────────
   4. HOME.PHP – /blog strona główna bloga
──────────────────────────────────────────────────────────── */

/* ── 4a. Hero ── */
.bh-hero {
  background: white;
  border-bottom: 1px solid var(--gray-200);
  padding-bottom: 3rem;
  position: relative; overflow: hidden;
}
.bh-hero__glow {
  position: absolute; border-radius: 50%;
  filter: blur(80px); pointer-events: none;
}
.bh-hero__glow--1 {
  width: 500px; height: 500px;
  background: rgba(233,30,140,0.07);
  top: -120px; right: -80px;
}
.bh-hero__glow--2 {
  width: 300px; height: 300px;
  background: rgba(212,168,67,0.06);
  bottom: -60px; left: 5%;
}
.bh-hero__inner {
  position: relative; z-index: 1;
  padding-top: 3.5rem; padding-bottom: 0.5rem;
}
.bh-hero__eyebrow {
  display: inline-flex; align-items: center; gap: 0.5rem;
  font-size: 0.72rem; font-weight: 800; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--pink-dark);
  background: var(--pink-bg); border: 1px solid var(--pink-soft);
  padding: 0.3rem 0.85rem; border-radius: 50px;
  margin-bottom: 1.25rem;
}
.bh-hero__eyebrow-dot {
  width: 5px; height: 5px; border-radius: 50%;
  background: var(--pink); animation: pulse 2s infinite;
}
.bh-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 5vw, 3.8rem);
  font-weight: 900; line-height: 1.1;
  letter-spacing: -0.03em; color: var(--dark);
  margin: 0 0 1rem;
}
.bh-hero__title em { font-style: normal; color: var(--pink); }
.bh-hero__sub {
  color: var(--gray-600); font-size: 1.05rem;
  line-height: 1.72; max-width: 520px; margin: 0;
}

/* ── 4b. Kategorie kafelki ── */
.bh-cats {
  background: white;
  border-bottom: 2px solid var(--gray-100);
  padding: 2rem 0;
}
.bh-cats__label {
  font-size: 0.7rem; font-weight: 800; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--gray-400);
  margin-bottom: 1rem;
}
.bh-cats__grid {
  display: flex; gap: 0.6rem; flex-wrap: wrap;
}
.bh-cat-pill {
  display: inline-flex; align-items: center; gap: 0.5rem;
  background: var(--gray-50); color: var(--gray-600);
  border: 1.5px solid var(--gray-200);
  font-size: 0.82rem; font-weight: 600;
  padding: 0.5rem 1rem; border-radius: 50px;
  text-decoration: none; transition: all .22s ease;
}
.bh-cat-pill__emoji { font-size: 1rem; line-height: 1; }
.bh-cat-pill__count {
  background: var(--gray-100); color: var(--gray-400);
  font-size: 0.65rem; font-weight: 700;
  padding: 0.1rem 0.4rem; border-radius: 50px;
  margin-left: 0.1rem;
}
.bh-cat-pill:hover {
  background: var(--pink-bg); color: var(--pink-dark);
  border-color: var(--pink-soft);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(233,30,140,0.12);
}
.bh-cat-pill.is-active {
  background: var(--pink); color: white;
  border-color: var(--pink);
  box-shadow: 0 4px 16px rgba(233,30,140,0.3);
}
.bh-cat-pill.is-active .bh-cat-pill__count { background: rgba(255,255,255,.2); color: white; }

/* ── 4c. Featured post (wyróżniony) ── */
.bh-featured {
  display: grid; grid-template-columns: 1.1fr 0.9fr;
  background: white; border-radius: 24px;
  border: 1px solid var(--gray-200);
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(26,26,46,0.08);
  margin: 3rem 0 2.5rem;
  transition: all .3s ease;
  text-decoration: none; color: inherit;
}
.bh-featured:hover {
  border-color: var(--pink-soft);
  box-shadow: 0 12px 48px rgba(233,30,140,0.12);
  transform: translateY(-3px);
}
.bh-featured__img {
  aspect-ratio: 4/3; overflow: hidden;
  position: relative;
}
.bh-featured__img img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .6s ease;
}
.bh-featured:hover .bh-featured__img img { transform: scale(1.05); }
.bh-featured__img-placeholder {
  background: linear-gradient(135deg, var(--pink-bg) 0%, #FFF8FF 100%);
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
  font-size: 4rem;
}
.bh-featured__badge {
  position: absolute; top: 1.25rem; left: 1.25rem;
  background: var(--pink); color: white;
  font-size: 0.65rem; font-weight: 800; letter-spacing: 0.1em;
  text-transform: uppercase; padding: 0.3rem 0.75rem;
  border-radius: 50px;
  box-shadow: 0 2px 8px rgba(233,30,140,0.4);
}
.bh-featured__body {
  padding: 2.75rem 2.5rem;
  display: flex; flex-direction: column; justify-content: center;
  gap: 0;
}
.bh-featured__meta { margin-bottom: 1rem; }
.bh-featured__title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 2.5vw, 2rem);
  font-weight: 800; line-height: 1.25;
  letter-spacing: -0.02em; color: var(--dark);
  margin: 0.75rem 0 1rem;
  transition: color .2s;
}
.bh-featured:hover .bh-featured__title { color: var(--pink); }
.bh-featured__excerpt {
  color: var(--gray-600); font-size: 0.95rem;
  line-height: 1.72; margin-bottom: 1.75rem;
  display: -webkit-box; -webkit-line-clamp: 3;
  -webkit-box-orient: vertical; overflow: hidden;
}
.bh-featured__cta {
  display: inline-flex; align-items: center; gap: 0.5rem;
  color: var(--pink); font-weight: 700; font-size: 0.88rem;
  margin-top: auto;
}
.bh-featured__cta-arrow { transition: transform .2s ease; }
.bh-featured:hover .bh-featured__cta-arrow { transform: translateX(4px); }

/* ── 4d. Sekcja tytuł ── */
.bh-section-head {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 1.75rem; gap: 1rem;
}
.bh-section-title {
  font-family: var(--font-display);
  font-size: 1.3rem; font-weight: 800; color: var(--dark);
}

/* ────────────────────────────────────────────────────────────
   5. ARCHIVE.PHP – lista wpisów (kategoria / tag / autor)
──────────────────────────────────────────────────────────── */
.ba-hero {
  background: white;
  border-bottom: 1px solid var(--gray-200);
  padding-bottom: 2.5rem;
  position: relative; overflow: hidden;
}
.ba-hero::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--pink) 0%, var(--gold) 60%, transparent 100%);
}
.ba-hero__inner { padding-top: 3rem; }
.ba-hero__eyebrow {
  font-size: 0.68rem; font-weight: 800; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--gray-400);
  margin-bottom: 0.6rem;
}
.ba-hero__title {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 900; line-height: 1.15;
  letter-spacing: -0.025em; color: var(--dark);
  margin: 0 0 0.75rem;
}
.ba-hero__title span { color: var(--pink); }
.ba-hero__desc {
  color: var(--gray-600); font-size: 1rem;
  line-height: 1.7; max-width: 560px; margin: 0;
}
.ba-hero__stats {
  display: flex; align-items: center; gap: 1.5rem;
  margin-top: 1.25rem;
}
.ba-hero__stat {
  display: flex; align-items: center; gap: 0.4rem;
  font-size: 0.8rem; color: var(--gray-400);
}
.ba-hero__stat strong { color: var(--dark); font-weight: 700; }

/* Filtry archiwum */
.ba-filters {
  background: white; border-bottom: 1px solid var(--gray-200);
  padding: 1rem 0; position: sticky; top: 80px; z-index: 10;
}
.admin-bar .ba-filters { top: 112px; }
.ba-filters__inner {
  display: flex; align-items: center; gap: 0.5rem;
  overflow-x: auto; padding-bottom: 2px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.ba-filters__inner::-webkit-scrollbar { display: none; }

/* ────────────────────────────────────────────────────────────
   6. CARD GRID – wspólny dla home & archive
──────────────────────────────────────────────────────────── */
.b-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
.b-grid--2 { grid-template-columns: repeat(2, 1fr); }

.b-card {
  background: white;
  border: 1px solid var(--gray-200);
  border-radius: 20px; overflow: hidden;
  display: flex; flex-direction: column;
  transition: all .3s ease;
  position: relative;
}
.b-card::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--pink), var(--gold));
  transform: scaleX(0); transform-origin: left;
  transition: transform .3s ease;
}
.b-card:hover {
  border-color: var(--pink-soft);
  transform: translateY(-5px);
  box-shadow: 0 16px 48px rgba(233,30,140,0.1);
}
.b-card:hover::after { transform: scaleX(1); }

.b-card__thumb {
  display: block; overflow: hidden;
  aspect-ratio: 16/9; position: relative;
}
.b-card__thumb img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .55s ease;
}
.b-card:hover .b-card__thumb img { transform: scale(1.07); }

.b-card__thumb-placeholder {
  background: linear-gradient(135deg, var(--pink-bg), #FFF8FF);
  aspect-ratio: 16/9;
  display: flex; align-items: center; justify-content: center;
  font-size: 2.5rem;
}

.b-card__body {
  padding: 1.4rem 1.5rem 1.5rem;
  flex: 1; display: flex; flex-direction: column; gap: 0;
}
.b-card__meta { margin-bottom: 0.65rem; }
.b-card__title {
  font-family: var(--font-display);
  font-size: 1.08rem; font-weight: 700; line-height: 1.4;
  color: var(--dark); margin: 0 0 0.6rem;
  display: -webkit-box; -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; overflow: hidden;
}
.b-card__title a {
  text-decoration: none; color: inherit;
  transition: color .18s;
}
.b-card__title a:hover { color: var(--pink); }
.b-card__excerpt {
  color: var(--gray-600); font-size: 0.858rem;
  line-height: 1.68; margin-bottom: 1.2rem;
  display: -webkit-box; -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; overflow: hidden;
  flex: 1;
}
.b-card__footer {
  display: flex; align-items: center; justify-content: space-between;
  padding-top: 1rem; border-top: 1px solid var(--gray-100);
  margin-top: auto;
}
.b-card__author {
  display: flex; align-items: center; gap: 0.45rem;
  font-size: 0.76rem; color: var(--gray-600); font-weight: 500;
}
.b-card__author img {
  width: 24px !important; height: 24px !important;
  border-radius: 50% !important; flex-shrink: 0;
}
.b-card__read { font-size: 0.74rem; color: var(--gray-400); }

/* Paginacja */
.b-pagination {
  display: flex; justify-content: center;
  padding: 3rem 0 4rem;
}
.b-pagination .page-numbers {
  display: flex; gap: .5rem; list-style: none; flex-wrap: wrap;
}
.b-pagination .page-numbers li a,
.b-pagination .page-numbers li span {
  display: flex; align-items: center; justify-content: center;
  min-width: 42px; height: 42px; padding: 0 0.5rem;
  border-radius: 12px; font-size: .875rem; font-weight: 600;
  text-decoration: none; border: 1.5px solid var(--gray-200);
  color: var(--gray-600); transition: all .2s; background: white;
}
.b-pagination .page-numbers li a:hover {
  border-color: var(--pink); color: var(--pink); background: var(--pink-bg);
}
.b-pagination .page-numbers li .current {
  background: var(--pink); color: white; border-color: var(--pink);
}
.b-pagination .page-numbers li .prev,
.b-pagination .page-numbers li .next { padding: 0 1.1rem; }

/* Brak wpisów */
.b-empty {
  text-align: center; padding: 5rem 2rem; color: var(--dark);
}
.b-empty__icon { font-size: 4rem; margin-bottom: 1.5rem; opacity: .6; }
.b-empty__title {
  font-family: var(--font-display); font-size: 1.7rem;
  font-weight: 800; margin-bottom: .75rem;
}
.b-empty__sub { color: var(--gray-600); font-size: .95rem; margin-bottom: 2rem; }

/* ────────────────────────────────────────────────────────────
   7. SINGLE.PHP – pojedynczy wpis
──────────────────────────────────────────────────────────── */
.bs-wrap {
  background: white;
}

/* ── 7a. Hero artykułu ── */
.bs-hero {
  background: white;
  padding-bottom: 0;
  border-bottom: 1px solid var(--gray-100);
}
.bs-hero__inner { padding-top: 2.5rem; padding-bottom: 2.5rem; }

.bs-hero__title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 3.2rem);
  font-weight: 900; line-height: 1.15;
  letter-spacing: -0.028em; color: var(--dark);
  margin: 1rem 0 1.5rem;
}

/* ── 7b. Authline ── */
.bs-authline {
  display: flex; align-items: center;
  justify-content: space-between; flex-wrap: wrap;
  gap: 1rem;
  padding: 1.25rem 0;
  border-top: 1px solid var(--gray-200);
  border-bottom: 1px solid var(--gray-200);
}
.bs-authline__left {
  display: flex; align-items: center; gap: .85rem;
}
.bs-authline__avatar {
  width: 44px !important; height: 44px !important;
  border-radius: 50% !important; flex-shrink: 0;
  border: 2px solid var(--pink-soft);
}
.bs-authline__name {
  font-weight: 700; font-size: .9rem; color: var(--dark);
  margin-bottom: .1rem;
}
.bs-authline__byline {
  font-size: .76rem; color: var(--gray-400);
  display: flex; align-items: center; gap: .4rem;
}
.bs-authline__byline-sep { opacity: .4; }

/* Share */
.bs-share {
  display: flex; align-items: center; gap: .4rem;
}
.bs-share__label {
  font-size: .74rem; color: var(--gray-400); margin-right: .2rem;
}
.bs-share__btn {
  width: 34px; height: 34px; border-radius: 9px;
  display: flex; align-items: center; justify-content: center;
  border: 1.5px solid var(--gray-200); background: white;
  cursor: pointer; font-size: .82rem; text-decoration: none;
  color: var(--gray-500); transition: all .2s;
  font-family: inherit;
}
.bs-share__btn:hover { border-color: var(--pink); color: var(--pink); background: var(--pink-bg); }
.bs-share__btn--fb:hover { background: #1877F2; border-color: #1877F2; color: white; }
.bs-share__btn--tw:hover { background: #000; border-color: #000; color: white; }

/* ── 7c. Cover image ── */
.bs-cover {
  margin: 0;
  background: var(--gray-100);
  max-height: 520px; overflow: hidden;
}
.bs-cover img {
  width: 100%; max-height: 520px;
  object-fit: cover; display: block;
}

/* ── 7d. Layout dvoukolumnový (content + sidebar) ── */
.bs-layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 4rem;
  align-items: start;
  padding: 3rem 0 5rem;
}

/* ── 7e. TOC sidebar ── */
.bs-toc {
  position: sticky; top: 110px;
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-left: 3px solid var(--pink);
  border-radius: 14px;
  overflow: hidden;
}
.bs-toc__head {
  padding: 1rem 1.1rem 0.75rem;
  font-size: 0.72rem; font-weight: 800;
  letter-spacing: 0.09em; text-transform: uppercase;
  color: var(--gray-400);
  border-bottom: 1px solid var(--gray-200);
  display: flex; align-items: center; gap: 0.5rem;
}
.bs-toc__list {
  list-style: none;
  padding: 0.75rem 0;
  margin: 0;
  max-height: 480px;
  overflow-y: auto;
}
.bs-toc__item { margin: 0; }
.bs-toc__item a {
  display: block;
  padding: 0.35rem 1.1rem;
  font-size: 0.8rem; color: var(--gray-600);
  text-decoration: none; line-height: 1.45;
  transition: all .18s;
  border-left: 2px solid transparent;
}
.bs-toc__item a:hover {
  color: var(--pink); background: var(--pink-bg);
  border-left-color: var(--pink);
}
.bs-toc__item--3 a { padding-left: 1.85rem; font-size: 0.75rem; color: var(--gray-400); }
.bs-toc__item--3 a:hover { color: var(--pink); }

/* ── 7f. Treść posta ── */
.bs-content {
  min-width: 0;
  font-size: 1.05rem; line-height: 1.85;
  color: var(--dark);
}

/* Typografia */
.bs-content h2,
.bs-content h3,
.bs-content h4 {
  font-family: var(--font-display);
  font-weight: 800; color: var(--dark);
  scroll-margin-top: 120px; line-height: 1.25;
}
.bs-content h2 {
  font-size: 1.75rem; letter-spacing: -.02em;
  margin: 2.75rem 0 1.1rem;
  padding-bottom: 0.75rem;
  border-bottom: 2px solid var(--gray-100);
}
.bs-content h3 { font-size: 1.35rem; margin: 2rem 0 .85rem; }
.bs-content h4 { font-size: 1.1rem; margin: 1.5rem 0 .6rem; }

.bs-content p { margin-bottom: 1.6rem; }
.bs-content p:first-child { font-size: 1.12rem; color: var(--gray-600); }

.bs-content a {
  color: var(--pink); font-weight: 500;
  text-decoration-color: var(--pink-soft);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
  transition: text-decoration-color .2s;
}
.bs-content a:hover { text-decoration-color: var(--pink); }

.bs-content ul,
.bs-content ol {
  padding-left: 0; margin-bottom: 1.6rem;
  display: flex; flex-direction: column; gap: .5rem;
  list-style: none;
}
.bs-content ul li,
.bs-content ol li {
  padding-left: 1.6rem; position: relative; line-height: 1.7;
}
.bs-content ul li::before {
  content: '';
  position: absolute; left: 0; top: .65em;
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--pink);
}
.bs-content ol { counter-reset: ol-counter; }
.bs-content ol li::before {
  counter-increment: ol-counter;
  content: counter(ol-counter) '.';
  position: absolute; left: 0;
  color: var(--pink); font-weight: 700; font-size: .88em;
}

.bs-content blockquote {
  margin: 2.5rem 0;
  padding: 1.5rem 1.75rem;
  background: var(--pink-bg);
  border-left: 4px solid var(--pink);
  border-radius: 0 16px 16px 0;
  position: relative;
}
.bs-content blockquote::before {
  content: '"';
  position: absolute; top: -0.25rem; left: 1.25rem;
  font-size: 4rem; line-height: 1; color: var(--pink-soft);
  font-family: var(--font-display);
}
.bs-content blockquote p {
  font-size: 1.08rem; font-style: italic;
  color: var(--dark); margin-bottom: 0;
  position: relative; z-index: 1;
}
.bs-content blockquote cite {
  display: block; font-size: .8rem; color: var(--gray-400);
  font-style: normal; margin-top: .5rem; font-weight: 500;
}

.bs-content code {
  background: var(--gray-100); border: 1px solid var(--gray-200);
  border-radius: 5px; padding: .15rem .45rem;
  font-size: .87em; font-family: 'Courier New', monospace;
  color: var(--pink-dark);
}
.bs-content pre {
  background: var(--dark); color: #CBD5E1;
  border-radius: 16px; padding: 1.75rem;
  overflow-x: auto; margin: 2rem 0;
  box-shadow: 0 8px 32px rgba(0,0,0,.2);
}
.bs-content pre code {
  background: none; border: none; color: inherit;
  padding: 0; font-size: .9rem;
}

.bs-content img {
  max-width: 100%; height: auto; border-radius: 14px;
  margin: 2rem 0; display: block;
  box-shadow: 0 4px 20px rgba(0,0,0,.08);
}
.bs-content figure { margin: 2rem 0; }
.bs-content figcaption {
  text-align: center; font-size: .78rem;
  color: var(--gray-400); margin-top: .6rem; font-style: italic;
}

.bs-content table {
  width: 100%; border-collapse: collapse; margin: 2rem 0;
  font-size: .9rem; border-radius: 12px; overflow: hidden;
  border: 1px solid var(--gray-200);
}
.bs-content th {
  background: var(--gray-50); color: var(--dark);
  font-weight: 700; text-align: left;
  padding: .85rem 1rem; font-size: .82rem;
  letter-spacing: .04em; text-transform: uppercase;
  border-bottom: 2px solid var(--gray-200);
}
.bs-content td {
  padding: .75rem 1rem; border-bottom: 1px solid var(--gray-100);
  vertical-align: top;
}
.bs-content tr:last-child td { border-bottom: none; }
.bs-content tr:hover td { background: var(--gray-50); }

.bs-content hr {
  border: none; height: 1px;
  background: linear-gradient(90deg, transparent, var(--gray-200), transparent);
  margin: 3rem 0;
}

/* Callout box (wp-block-pullquote) */
.bs-content .callout,
.bs-content .wp-block-pullquote {
  background: linear-gradient(135deg, var(--pink-bg), #FFF8FF);
  border: 1px solid var(--pink-soft); border-radius: 16px;
  padding: 1.5rem 1.75rem; margin: 2rem 0;
  text-align: left;
}

/* ── 7g. Tagi ── */
.bs-tags {
  display: flex; align-items: center; gap: .6rem;
  flex-wrap: wrap; padding: 2rem 0;
  border-top: 1px solid var(--gray-200);
  margin-top: 1rem;
}
.bs-tags__label {
  font-size: .72rem; font-weight: 800; letter-spacing: .09em;
  text-transform: uppercase; color: var(--gray-400);
}
.bs-tag {
  background: var(--gray-100); color: var(--gray-600);
  border: 1.5px solid var(--gray-200);
  font-size: .76rem; font-weight: 600;
  padding: .3rem .8rem; border-radius: 50px;
  text-decoration: none; transition: all .2s;
}
.bs-tag:hover {
  background: var(--pink-bg); color: var(--pink-dark);
  border-color: var(--pink-soft);
}

/* ── 7h. Autor bio ── */
.bs-author {
  display: flex; align-items: flex-start; gap: 1.25rem;
  background: var(--gray-50); border: 1px solid var(--gray-200);
  border-radius: 20px; padding: 1.75rem 2rem;
  margin: 2.5rem 0;
}
.bs-author__avatar {
  width: 72px !important; height: 72px !important;
  border-radius: 50% !important; flex-shrink: 0;
  border: 3px solid var(--pink-soft);
}
.bs-author__head {
  display: flex; align-items: center; gap: .6rem; margin-bottom: .4rem;
}
.bs-author__name { font-weight: 800; font-size: .95rem; color: var(--dark); }
.bs-author__role {
  font-size: .62rem; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: var(--pink-dark);
  background: var(--pink-bg); border: 1px solid var(--pink-soft);
  padding: .18rem .55rem; border-radius: 50px;
}
.bs-author__desc { color: var(--gray-600); font-size: .875rem; line-height: 1.65; margin: 0; }

/* ── 7i. Nawigacja prev/next ── */
.bs-nav {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 1rem; margin: 2rem 0;
}
.bs-nav__link {
  background: white; border: 1.5px solid var(--gray-200);
  border-radius: 16px; padding: 1.25rem 1.4rem;
  text-decoration: none; transition: all .28s ease;
  display: flex; flex-direction: column; gap: .4rem;
  overflow: hidden; position: relative;
}
.bs-nav__link::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(135deg, var(--pink-bg), transparent);
  opacity: 0; transition: opacity .28s;
}
.bs-nav__link:hover {
  border-color: var(--pink);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(233,30,140,.1);
}
.bs-nav__link:hover::before { opacity: 1; }
.bs-nav__link--next { text-align: right; }
.bs-nav__dir {
  font-size: .7rem; font-weight: 800; letter-spacing: .1em;
  text-transform: uppercase; color: var(--pink);
  position: relative;
}
.bs-nav__title {
  font-family: var(--font-display); font-size: .95rem;
  font-weight: 700; color: var(--dark); line-height: 1.35;
  display: -webkit-box; -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; overflow: hidden;
  position: relative;
}

/* ── 7j. Podobne artykuły ── */
.bs-related { margin-top: 3rem; }
.bs-related__title {
  font-family: var(--font-display); font-size: 1.5rem;
  font-weight: 800; color: var(--dark); margin-bottom: 1.5rem;
  display: flex; align-items: center; gap: .6rem;
}
.bs-related__title::after {
  content: '';
  flex: 1; height: 1px; background: var(--gray-200);
}

/* ────────────────────────────────────────────────────────────
   8. PAGE.PHP – statyczna strona
──────────────────────────────────────────────────────────── */
.bp-wrap { background: white; }
.bp-hero {
  padding: 3.5rem 0 2.5rem;
  border-bottom: 1px solid var(--gray-100);
}
.bp-title {
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 4vw, 2.9rem);
  font-weight: 900; line-height: 1.2;
  letter-spacing: -.025em; color: var(--dark);
  margin: .75rem 0 0;
}
.bp-content {
  padding: 3rem 0 6rem;
  font-size: 1.05rem; line-height: 1.82; color: var(--dark);
}

/* Dziedziczy typografię z .bs-content */
.bp-content h1, .bp-content h2, .bp-content h3, .bp-content h4,
.bp-content p, .bp-content ul, .bp-content ol, .bp-content li,
.bp-content a, .bp-content blockquote, .bp-content code,
.bp-content pre, .bp-content img, .bp-content table, .bp-content hr {
  /* Extend bs-content rules */
}
.bp-content h2 {
  font-family: var(--font-display); font-size: 1.7rem; font-weight: 800;
  color: var(--dark); margin: 2.5rem 0 1rem;
  padding-bottom: .6rem; border-bottom: 2px solid var(--gray-100);
}
.bp-content h3 {
  font-family: var(--font-display); font-size: 1.3rem; font-weight: 700;
  color: var(--dark); margin: 2rem 0 .75rem;
}
.bp-content p { margin-bottom: 1.5rem; }
.bp-content a { color: var(--pink); }
.bp-content ul, .bp-content ol { padding-left: 1.5rem; margin-bottom: 1.5rem; }
.bp-content li { margin-bottom: .4rem; }
.bp-content ul li::marker { color: var(--pink); }

/* ────────────────────────────────────────────────────────────
   9. COMMENTS.PHP
──────────────────────────────────────────────────────────── */
.bc-wrap {
  padding: 3rem 0 4rem;
  border-top: 2px solid var(--gray-100);
  margin-top: 3rem;
}
.bc-title {
  font-family: var(--font-display);
  font-size: 1.45rem; font-weight: 800;
  color: var(--dark); margin-bottom: 2rem;
  display: flex; align-items: center; gap: .6rem;
}
.bc-title__count {
  background: var(--pink); color: white;
  font-size: .7rem; font-weight: 800; font-family: var(--font-body);
  padding: .2rem .55rem; border-radius: 50px; vertical-align: middle;
}

.bc-list { list-style: none; display: flex; flex-direction: column; gap: 1.25rem; }
.bc-list .children {
  list-style: none; margin-top: 1.1rem; padding-left: 2.5rem;
  border-left: 2px solid var(--pink-soft);
  display: flex; flex-direction: column; gap: 1rem;
}

.bc-comment {
  background: var(--gray-50);
  border: 1.5px solid var(--gray-200);
  border-radius: 18px; padding: 1.5rem;
  transition: border-color .2s;
}
.bc-comment:hover { border-color: var(--pink-soft); }

.bc-comment__head {
  display: flex; align-items: center;
  justify-content: space-between; gap: 1rem;
  margin-bottom: 1rem;
}
.bc-comment__author {
  display: flex; align-items: center; gap: .75rem;
}
.bc-comment__avatar {
  width: 42px !important; height: 42px !important;
  border-radius: 50% !important; flex-shrink: 0;
}
.bc-comment__name {
  font-weight: 700; font-size: .9rem; color: var(--dark);
}
.bc-comment__date {
  font-size: .73rem; color: var(--gray-400); margin-top: .1rem;
}
.bc-comment__body {
  font-size: .9rem; line-height: 1.72; color: var(--dark);
}
.bc-comment__body p { margin-bottom: .5rem; }
.bc-comment__body p:last-child { margin-bottom: 0; }
.bc-comment__moderation {
  background: #FEF9EC; border: 1px solid #FDE68A;
  border-radius: 8px; padding: .45rem .75rem;
  font-size: .76rem; color: #92700A; margin-bottom: .75rem;
}
.bc-comment__reply {
  margin-top: .85rem;
  display: flex; align-items: center; gap: .75rem;
}
.bc-comment__reply-link,
.bc-comment__edit {
  font-size: .75rem; font-weight: 700;
  color: var(--gray-400); text-decoration: none;
  transition: color .18s;
}
.bc-comment__reply-link:hover { color: var(--pink); }
.bc-comment__edit:hover { color: var(--dark); }

/* Formularz */
.bc-form-wrap { margin-top: 3rem; }
.bc-form-wrap h3 {
  font-family: var(--font-display); font-size: 1.35rem;
  font-weight: 800; color: var(--dark); margin-bottom: 1.5rem;
}
.comment-form { display: flex; flex-direction: column; gap: 0; }
.bc-row { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
.bc-field { display: flex; flex-direction: column; gap: .4rem; margin-bottom: .75rem; }
.bc-field label {
  font-size: .72rem; font-weight: 800; letter-spacing: .09em;
  text-transform: uppercase; color: var(--gray-400);
}
.bc-field label span, .bc-field label .required { color: var(--pink); }
.bc-field input[type="text"],
.bc-field input[type="email"],
.bc-field input[type="url"],
.bc-field textarea,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form textarea {
  padding: .85rem 1.1rem;
  border: 1.5px solid var(--gray-200); border-radius: 12px;
  font-size: .9rem; font-family: var(--font-body); color: var(--dark);
  background: white; outline: none; transition: border-color .2s;
  resize: vertical; width: 100%; box-sizing: border-box;
}
.bc-field input:focus,
.bc-field textarea:focus,
.comment-form input:focus,
.comment-form textarea:focus { border-color: var(--pink); }
.comment-form-comment { margin-bottom: .75rem; }
.comment-form-comment textarea { min-height: 140px; }
.form-submit { margin-top: .5rem; }
.comment-form .submit,
.bc-submit {
  background: var(--pink); color: white; border: none;
  padding: .9rem 2.25rem; border-radius: 50px;
  font-family: var(--font-body); font-weight: 700; font-size: .95rem;
  cursor: pointer; transition: all .25s ease;
  box-shadow: 0 4px 16px rgba(233,30,140,.3);
}
.comment-form .submit:hover,
.bc-submit:hover { background: var(--pink-dark); transform: translateY(-1px); }

.comment-form p.logged-in-as {
  font-size: .8rem; color: var(--gray-400); margin-bottom: 1rem;
}
.comment-form p.logged-in-as a { color: var(--pink); }

/* Cancel reply */
#cancel-comment-reply-link {
  font-size: .78rem; color: var(--gray-400); text-decoration: none;
  margin-left: .5rem;
}
#cancel-comment-reply-link:hover { color: var(--dark); }

/* ────────────────────────────────────────────────────────────
   10. RESPONSIVE
──────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .bs-layout { grid-template-columns: 1fr; gap: 0; }
  .bs-toc { position: static; margin-bottom: 2rem; }
  .b-grid { grid-template-columns: repeat(2, 1fr); }
  .bh-featured { grid-template-columns: 1fr; }
  .bh-featured__img { aspect-ratio: 16/9; }
  .bh-featured__body { padding: 2rem; }
}

@media (max-width: 768px) {
  .b-container, .b-container--narrow { padding: 0 1.25rem; }
  .bh-hero__inner { padding-top: 2.5rem; }
  .ba-hero__inner { padding-top: 2rem; }
  .bs-hero__inner { padding-top: 2rem; padding-bottom: 1.5rem; }
  .b-grid { grid-template-columns: 1fr; }
  .bs-nav { grid-template-columns: 1fr; }
  .bs-authline { flex-direction: column; align-items: flex-start; }
  .bc-row { grid-template-columns: 1fr; }
  .bs-author { flex-direction: column; gap: 1rem; }
  .ba-filters { top: 80px; }
  .admin-bar .ba-filters { top: 112px; }
  .bh-cats__grid { gap: 0.5rem; }
  .bh-cat-pill { font-size: 0.78rem; padding: 0.45rem 0.85rem; }
  .bs-related .b-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .b-container, .b-container--narrow { padding: 0 1rem; }
  .bs-hero__title { font-size: 1.7rem; }
  .bs-content h2 { font-size: 1.4rem; }
  .bh-hero__title { font-size: 2rem; }
  .bh-featured__body { padding: 1.5rem; }
  .bs-author { padding: 1.25rem; }
  .bc-list .children { padding-left: 1rem; }
}
