:root{
  --bg:#f5f5f7;--surface:#ffffff;--surface-soft:#fbfbfd;--surface-raised:#ffffff;
  --text:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--accent:#0071e3;--accent-dark:#005bb5;
  --max:1120px;--radius:24px;--shadow:0 18px 50px rgba(0,0,0,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.55}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.shell{min-height:100vh}
.inner{max-width:var(--max);margin:0 auto;padding:0 28px 48px}
.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0;background:rgba(245,245,247,.86);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.06)}
.nav-left{display:flex;align-items:center;gap:12px;min-width:0}.brand-home{color:inherit;text-decoration:none}.brand-logo{width:42px;height:42px;flex:0 0 42px;object-fit:contain}
.brand-name{font-size:1rem;letter-spacing:.02em;font-weight:650;white-space:nowrap}.brand-sub{font-size:.78rem;color:var(--muted)}
.nav-links{display:flex;align-items:center;gap:28px;font-size:.86rem}.nav-links a{color:#424245;transition:.2s}.nav-links a:hover,.nav-links a.active{color:var(--accent)}
.hero{margin:28px 0 34px;padding:84px 56px;border:0;border-radius:32px;background:linear-gradient(145deg,#fff 0%,#f7f7fa 58%,#eef5ff 100%);box-shadow:var(--shadow);text-align:center}
.hero-eyebrow,.section-kicker,.lecture-tag,.article-category{font-size:.75rem;font-weight:650;text-transform:uppercase;letter-spacing:.18em;color:var(--accent)}
.hero-slogan,.hero-title{max-width:900px;margin:12px auto 18px;font-size:clamp(2.6rem,6vw,5rem);line-height:1.02;letter-spacing:-.055em;font-weight:700}
.hero-slogan span{display:inline}.hero-slogan-strong{display:block!important;background:none!important;color:var(--text)!important;font-size:inherit!important;font-weight:700!important}
.hero-sub,.hero-subtitle{max-width:720px;margin:0 auto 28px;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.5;color:var(--muted);text-align:center!important}
.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.hero-note{margin:18px auto 0;max-width:680px;color:var(--muted);font-size:.88rem;text-align:center!important}
.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:980px;padding:12px 22px;font:inherit;font-size:.92rem;font-weight:600;cursor:pointer;transition:.2s}
.btn-primary{border:1px solid var(--accent);background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-1px)}
.btn-secondary{border:1px solid var(--line);background:#fff;color:var(--text)}.btn-secondary:hover{border-color:#a1a1a6;transform:translateY(-1px)}
.section{margin:24px 0;padding:48px;border:0!important;border-radius:var(--radius);background:var(--surface);box-shadow:0 8px 30px rgba(0,0,0,.045)}
.section-title{margin:0 0 20px;font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.08;letter-spacing:-.035em;text-transform:none;color:var(--text)}
.section-intro,.about-me-main,.about-me-tagline,.contact-text,.article-intro,.article-excerpt,.module-text{color:var(--muted);font-size:1rem;text-align:left!important;max-width:820px}
.offer-list,.module-list{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.offer-list li,.module-list li{padding:22px!important;margin:0!important;border:1px solid #e5e5e7!important;border-radius:18px;background:var(--surface-soft);text-align:left!important}
.offer-label,.module-label{display:block;margin-bottom:6px;font-weight:650;color:var(--text)}.offer-link:hover{color:var(--accent)}
.lectures-grid,.articles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.lecture-box,.article-card,.contact-form{padding:24px;border:1px solid #e5e5e7;border-radius:20px;background:var(--surface-soft);box-shadow:none}
.lecture-title,.article-title,.form-title{font-size:1.12rem;font-weight:650;line-height:1.3;margin:0 0 8px}.article-title a:hover{color:var(--accent)}
.article-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.76rem}.article-date{font-size:.76rem}
.article-filters{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.filter-chip{border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:#fff;color:#424245;cursor:pointer}.filter-chip.is-active{background:var(--text);border-color:var(--text);color:#fff}
.breadcrumb,.meta{color:var(--muted);font-size:.82rem}.breadcrumb a{color:var(--accent)}
.article{max-width:860px;margin:0 auto;padding:48px;border:0;border-radius:var(--radius);background:#fff;box-shadow:0 8px 30px rgba(0,0,0,.045)}
.article-body h2{font-size:1.65rem;letter-spacing:-.02em;margin:38px 0 12px}.article-body h3{font-size:1.08rem;margin:22px 0 8px}.article-body p,.article-body li{font-size:1rem;color:#424245;text-align:left!important}.article-body code{background:#f0f0f2;padding:.12rem .3rem;border-radius:5px}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:32px;align-items:start}.contact-block{margin-bottom:20px}.contact-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.contact-value{font-size:1rem}.contact-value a{color:var(--accent)}
.field{margin-bottom:15px}.field label{display:block;margin-bottom:6px;font-size:.84rem;font-weight:550}.field input,.field textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);font:inherit}.field textarea{min-height:140px;resize:vertical}.field input:focus,.field textarea:focus{outline:3px solid rgba(0,113,227,.14);border-color:var(--accent)}
.field-checkbox{display:flex;gap:9px;align-items:flex-start}.field-checkbox input{margin-top:5px}.field-note,.form-subtitle{font-size:.82rem;color:var(--muted)}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.retreat-card{background:#111;color:#f5f5f7!important}.retreat-card .section-title,.retreat-card h2,.retreat-card h3,.retreat-card strong{color:#fff}.retreat-card p,.retreat-card li{color:#b9b9bf!important}.retreat-card .btn-secondary{border-color:#444;background:transparent;color:#fff}
footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:34px 4px 0;color:var(--muted);font-size:.8rem}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.inner{padding:0 18px 34px}.nav{position:static;align-items:flex-start;flex-direction:column}.nav-links{width:100%;gap:14px;overflow-x:auto;padding-bottom:4px}.brand-sub{display:none}.hero{padding:58px 24px}.section,.article{padding:30px 22px}.offer-list,.module-list,.lectures-grid,.articles-grid,.contact-layout,.contact-grid{grid-template-columns:1fr}.hero-slogan,.hero-title{font-size:clamp(2.35rem,12vw,3.8rem)}}

/* Czytelna typografia w treściach umieszczonych w ramkach */
.section p,
.section li,
.article p,
.article li,
.lecture-box p,
.article-card .article-excerpt,
.contact-form .form-subtitle,
.contact-form .field-note,
.retreat-card p,
.retreat-card li {
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}


.footer-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.footer-links a{color:var(--muted);text-decoration:none;border-bottom:1px solid transparent;transition:.2s}
.footer-links a:hover{color:var(--accent);border-bottom-color:var(--accent)}
.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}
.legal-box{padding:24px;border:1px solid #e5e5e7;border-radius:20px;background:var(--surface-soft)}
.legal-box h2,.legal-box h3{margin-top:0}.legal-box p,.legal-box li{text-align:justify!important;hyphens:auto;-webkit-hyphens:auto;color:#424245}
@media(max-width:800px){.legal-grid{grid-template-columns:1fr}.footer-links{gap:12px}}

/* Przełącznik jasny/ciemny */
:root{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark;--bg:#05070b;--surface:#0d1117;--surface-soft:#111827;--surface-raised:#151b23;--text:#f5f7fb;--muted:#a6adbb;--line:#293241;--accent:#5ab0ff;--accent-dark:#7cc2ff;--shadow:0 22px 70px rgba(0,0,0,.35)}
.theme-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);padding:8px 12px;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:.2s;white-space:nowrap}
.theme-toggle:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}
.theme-toggle-icon{font-size:.95rem;line-height:1}
:root[data-theme="dark"] body{background:radial-gradient(circle at 50% -10%,rgba(90,176,255,.13),transparent 38%),var(--bg);color:var(--text)}
:root[data-theme="dark"] .nav{background:rgba(5,7,11,.84);border-bottom-color:rgba(255,255,255,.08)}
:root[data-theme="dark"] .nav-links a{color:#c8ced8}
:root[data-theme="dark"] .nav-links a:hover,:root[data-theme="dark"] .nav-links a.active{color:var(--accent)}
:root[data-theme="dark"] .hero{background:linear-gradient(145deg,#101722 0%,#0b111b 55%,#07111e 100%);box-shadow:var(--shadow)}
:root[data-theme="dark"] .section,:root[data-theme="dark"] .article{background:var(--surface);box-shadow:0 14px 45px rgba(0,0,0,.28)}
:root[data-theme="dark"] .offer-list li,:root[data-theme="dark"] .module-list li,:root[data-theme="dark"] .lecture-box,:root[data-theme="dark"] .article-card,:root[data-theme="dark"] .contact-form,:root[data-theme="dark"] .legal-box{background:var(--surface-soft);border-color:var(--line)!important}
:root[data-theme="dark"] .btn-secondary,:root[data-theme="dark"] .filter-chip,:root[data-theme="dark"] .theme-toggle{background:var(--surface-soft);border-color:var(--line);color:var(--text)}
:root[data-theme="dark"] .filter-chip.is-active{background:var(--text);border-color:var(--text);color:#05070b}
:root[data-theme="dark"] .field input,:root[data-theme="dark"] .field textarea{background:#070b12;border-color:var(--line);color:var(--text)}
:root[data-theme="dark"] .field input:focus,:root[data-theme="dark"] .field textarea:focus{outline:3px solid rgba(90,176,255,.18);border-color:var(--accent)}
:root[data-theme="dark"] .article-body p,:root[data-theme="dark"] .article-body li,:root[data-theme="dark"] .legal-box p,:root[data-theme="dark"] .legal-box li{color:#c8ced8}
:root[data-theme="dark"] .article-body code{background:#1b2430;color:#f5f7fb}
:root[data-theme="dark"] .retreat-card{background:linear-gradient(145deg,#0a0f18,#111827)}
:root[data-theme="dark"] .retreat-card p,:root[data-theme="dark"] .retreat-card li{color:#c8ced8!important}
:root[data-theme="dark"] .footer-links a{color:var(--muted)}
:root[data-theme="dark"] .footer-links a:hover{color:var(--accent);border-bottom-color:var(--accent)}
@media(max-width:800px){.theme-toggle{padding:8px 11px}.theme-toggle [data-theme-label]{display:none}}

.skip-link{position:absolute;left:16px;top:-80px;z-index:1000;background:var(--text);color:var(--surface);padding:10px 14px;border-radius:999px;font-weight:650;transition:top .2s}
.skip-link:focus{top:12px;outline:3px solid var(--accent)}
:focus-visible{outline:3px solid rgba(0,113,227,.35);outline-offset:3px}
:root[data-theme="dark"] .skip-link{background:var(--text);color:var(--bg)}

/* Nowe logo i grafika hero */
.brand-home{min-width:0;gap:0}.brand-logo-full{display:block;width:min(330px,48vw);height:auto;max-height:58px;object-fit:contain}.brand-logo,.brand-name,.brand-sub{display:none!important}
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:34px;align-items:center;text-align:left;padding:70px 56px}.hero-copy{min-width:0}.hero-copy .hero-eyebrow,.hero-copy .hero-slogan,.hero-copy .hero-sub,.hero-copy .hero-note{margin-left:0;margin-right:0;text-align:left!important}.hero-copy .hero-actions{justify-content:flex-start}.hero-visual{margin:0;align-self:center}.hero-visual img{width:100%;height:auto;display:block;border-radius:32px;box-shadow:0 18px 60px rgba(15,23,42,.10);background:#f5f7fb}.hero-visual img{filter:saturate(.95) contrast(1.01)}
:root[data-theme="dark"] .brand-logo-full{filter:brightness(1.08) contrast(.95)}
:root[data-theme="dark"] .hero-visual img{box-shadow:0 24px 70px rgba(0,0,0,.32);background:#0d1117;opacity:.94}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding:46px 24px;text-align:center}.hero-copy .hero-eyebrow,.hero-copy .hero-slogan,.hero-copy .hero-sub,.hero-copy .hero-note{text-align:center!important;margin-left:auto;margin-right:auto}.hero-copy .hero-actions{justify-content:center}.hero-visual{max-width:520px;margin:4px auto 0}.brand-logo-full{width:min(300px,70vw)}}
@media(max-width:560px){.brand-logo-full{width:min(260px,76vw)}.hero-visual img{border-radius:22px}.hero{padding:38px 20px}}

/* Komunikat cookies */
.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:1000}.cookie-banner[hidden]{display:none}.cookie-banner-inner{max-width:980px;margin:0 auto;display:flex;gap:18px;align-items:center;justify-content:space-between;padding:16px 18px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.92);box-shadow:0 20px 70px rgba(0,0,0,.16);backdrop-filter:saturate(160%) blur(18px);-webkit-backdrop-filter:saturate(160%) blur(18px)}.cookie-banner p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.45;text-align:left!important}.cookie-banner a{color:var(--accent);text-decoration:none}.cookie-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}.cookie-more{padding:10px 16px}.cookie-banner.is-hidden{opacity:0;transform:translateY(12px);transition:.22s ease}
:root[data-theme="dark"] .cookie-banner-inner{background:rgba(13,17,23,.90);box-shadow:0 24px 80px rgba(0,0,0,.42)}
@media(max-width:760px){.cookie-banner{left:12px;right:12px;bottom:12px}.cookie-banner-inner{flex-direction:column;align-items:flex-start}.cookie-actions{width:100%;flex-wrap:wrap}.cookie-actions .btn-primary,.cookie-actions .btn-secondary{flex:1;min-width:140px}}

/* Subtelne grafiki regionalne: Katowice / Spodek */
.theme-visual-dark{display:none!important}
:root[data-theme="dark"] .theme-visual-light{display:none!important}
:root[data-theme="dark"] .theme-visual-dark{display:block!important}
.page-visual{margin:22px 0 28px;overflow:hidden;border-radius:32px;background:var(--surface);box-shadow:0 12px 42px rgba(0,0,0,.06)}
.page-visual img{width:100%;height:auto;display:block;aspect-ratio:1600/685;object-fit:cover;object-position:center center;filter:saturate(.92) contrast(1.01)}
:root[data-theme="dark"] .page-visual{background:var(--surface);box-shadow:0 18px 55px rgba(0,0,0,.30)}
:root[data-theme="dark"] .page-visual img{opacity:.96;filter:saturate(.95) contrast(1.03)}
.hero-visual img{aspect-ratio:1600/685;object-fit:cover;object-position:center center}
@media(max-width:900px){.page-visual{border-radius:24px;margin:16px 0 24px}.page-visual img{min-height:210px}}
@media(max-width:560px){.page-visual{border-radius:20px}.page-visual img{min-height:180px;object-position:center center}}


/* Final: grafika śląska jako subtelne tło całej strony */
:root{
  --surface-rgb:255,255,255;
  --page-bg-image:url('hero-silesia-light.jpg');
  --page-bg-opacity:.18;
}
:root[data-theme="dark"]{
  --surface-rgb:13,17,23;
  --page-bg-image:url('hero-silesia-dark.jpg');
  --page-bg-opacity:.24;
}
body{position:relative;isolation:isolate;background:var(--bg);}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background-image:var(--page-bg-image);
  background-size:cover;
  background-position:center top;
  background-repeat:no-repeat;
  opacity:var(--page-bg-opacity);
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(var(--surface-rgb),.60) 0%,rgba(var(--surface-rgb),.86) 42%,rgba(var(--surface-rgb),.96) 100%),
    radial-gradient(circle at 12% 0%,rgba(0,113,227,.10),transparent 34%);
}
:root[data-theme="dark"] body::after{
  background:
    linear-gradient(180deg,rgba(5,7,11,.42) 0%,rgba(5,7,11,.74) 46%,rgba(5,7,11,.94) 100%),
    radial-gradient(circle at 20% 0%,rgba(90,176,255,.13),transparent 34%);
}
.shell{position:relative;z-index:1;}
.hero{
  position:relative;
  overflow:hidden;
  grid-template-columns:minmax(0,1fr)!important;
  background:linear-gradient(145deg,rgba(var(--surface-rgb),.92),rgba(var(--surface-rgb),.78))!important;
  border:1px solid rgba(0,0,0,.05);
  backdrop-filter:saturate(150%) blur(18px);
  -webkit-backdrop-filter:saturate(150%) blur(18px);
}
:root[data-theme="dark"] .hero{border-color:rgba(255,255,255,.08)!important;}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--page-bg-image);
  background-size:cover;
  background-position:center;
  opacity:.15;
  pointer-events:none;
}
:root[data-theme="dark"] .hero::before{opacity:.20;}
.hero > *{position:relative;z-index:1;}
.hero-copy{max-width:860px;}
.section,.article{
  background:rgba(var(--surface-rgb),.90)!important;
  backdrop-filter:saturate(150%) blur(14px);
  -webkit-backdrop-filter:saturate(150%) blur(14px);
}
:root[data-theme="dark"] .section,:root[data-theme="dark"] .article{background:rgba(13,17,23,.86)!important;}
.hero-visual,.page-visual{display:none!important;}
@media(max-width:900px){.hero{padding:52px 24px}.hero-copy{max-width:100%;}}


/* FINAL FIX 2026-06-22: tło śląskie + stabilne ramki i justowanie */
:root{
  --page-bg-image:url("hero-silesia-light.jpg");
  --page-bg-opacity:.30;
  --surface-rgb:255,255,255;
  --card-border:rgba(0,0,0,.075);
}
:root[data-theme="dark"]{
  --page-bg-image:url("hero-silesia-dark.jpg");
  --page-bg-opacity:.36;
  --surface-rgb:13,17,23;
  --card-border:rgba(255,255,255,.10);
}
html,body{min-height:100%;}
body{
  position:relative;
  isolation:isolate;
  background-color:var(--bg)!important;
  background-image:
    linear-gradient(180deg,rgba(var(--surface-rgb),.62) 0%,rgba(var(--surface-rgb),.86) 42%,rgba(var(--surface-rgb),.96) 100%),
    var(--page-bg-image)!important;
  background-size:cover,cover!important;
  background-position:center top,center top!important;
  background-repeat:no-repeat,no-repeat!important;
  background-attachment:fixed,fixed!important;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background-image:var(--page-bg-image)!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:var(--page-bg-opacity)!important;
  transform:translateZ(0);
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 78% 6%,rgba(0,113,227,.10),transparent 30%),
    linear-gradient(180deg,rgba(var(--surface-rgb),.52) 0%,rgba(var(--surface-rgb),.80) 46%,rgba(var(--surface-rgb),.96) 100%)!important;
}
:root[data-theme="dark"] body::after{
  background:
    radial-gradient(circle at 80% 8%,rgba(90,176,255,.14),transparent 34%),
    linear-gradient(180deg,rgba(5,7,11,.36) 0%,rgba(5,7,11,.70) 48%,rgba(5,7,11,.94) 100%)!important;
}
.shell,.inner{position:relative;z-index:1;}
.nav{
  width:100%;
  border-radius:0 0 22px 22px;
  padding-left:2px;
  padding-right:2px;
}
.hero{
  grid-template-columns:minmax(0,1fr)!important;
  text-align:left!important;
  background:rgba(var(--surface-rgb),.80)!important;
  border:1px solid var(--card-border)!important;
  box-shadow:0 18px 56px rgba(0,0,0,.075)!important;
  backdrop-filter:saturate(155%) blur(18px);
  -webkit-backdrop-filter:saturate(155%) blur(18px);
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--page-bg-image)!important;
  background-size:cover!important;
  background-position:center!important;
  opacity:.13!important;
  pointer-events:none;
}
:root[data-theme="dark"] .hero::before{opacity:.16!important;}
.hero > *{position:relative;z-index:1;}
.hero-copy{max-width:860px;}
.hero-copy .hero-eyebrow,
.hero-copy .hero-slogan,
.hero-copy .hero-sub,
.hero-copy .hero-note{margin-left:0;margin-right:0;text-align:left!important;}
.hero-copy .hero-actions{justify-content:flex-start!important;}
.section,.article{
  background:rgba(var(--surface-rgb),.88)!important;
  border:1px solid var(--card-border)!important;
  box-shadow:0 12px 38px rgba(0,0,0,.055)!important;
  backdrop-filter:saturate(150%) blur(14px);
  -webkit-backdrop-filter:saturate(150%) blur(14px);
}
:root[data-theme="dark"] .section,
:root[data-theme="dark"] .article{box-shadow:0 14px 46px rgba(0,0,0,.36)!important;}
.offer-list,.module-list,.lectures-grid,.articles-grid{align-items:stretch;}
.offer-list li,.module-list li,.lecture-box,.article-card,.legal-box,.contact-form{
  height:100%;
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:6px;
  background:rgba(var(--surface-rgb),.72)!important;
  border-color:var(--card-border)!important;
  backdrop-filter:saturate(140%) blur(10px);
  -webkit-backdrop-filter:saturate(140%) blur(10px);
}
.offer-label,.module-label{display:block;margin-bottom:2px;}
.section p,
.section li,
.section-intro,
.about-me-main,
.about-me-tagline,
.module-text,
.article-excerpt,
.lecture-box p,
.article-body p,
.article-body li,
.legal-box p,
.legal-box li,
.contact-text,
.form-subtitle,
.field-note{
  text-align:justify!important;
  text-align-last:left;
  text-justify:inter-word;
  hyphens:auto;
  -webkit-hyphens:auto;
  overflow-wrap:break-word;
  word-break:normal;
}
.hero-sub,.hero-note,.hero-eyebrow,.contact-label,.contact-value,.footer-links,.cookie-banner p,
.btn-primary,.btn-secondary,.theme-toggle{ text-align:left!important; hyphens:none; }
.hero-visual,.page-visual{display:none!important;}
@media(max-width:900px){
  body{background-attachment:scroll,scroll!important;}
  body::before{background-attachment:scroll!important;opacity:.22!important;}
  .hero{padding:48px 24px!important;text-align:center!important;}
  .hero-copy .hero-eyebrow,.hero-copy .hero-slogan,.hero-copy .hero-sub,.hero-copy .hero-note{text-align:center!important;margin-left:auto;margin-right:auto;}
  .hero-copy .hero-actions{justify-content:center!important;}
  .section,.article{padding:30px 22px!important;}
}

/* FINAL CONTRAST/LAYOUT FIX 2026-06-22
   Cel: czytelność w jasnym i ciemnym trybie, pełnoszerokie tło, stabilne karty. */
:root{
  --bg:#f5f5f7;
  --surface:#ffffff;
  --surface-soft:#ffffff;
  --surface-rgb:255,255,255;
  --text:#141416;
  --muted:#3f3f46;
  --line:#c9c9d1;
  --card-border:rgba(20,20,22,.13);
  --card-shadow:0 18px 54px rgba(0,0,0,.08);
  --page-bg-image:url("hero-silesia-light.jpg");
  --page-bg-opacity:.28;
}
:root[data-theme="dark"]{
  --bg:#05070b;
  --surface:#0d1117;
  --surface-soft:#111827;
  --surface-rgb:13,17,23;
  --text:#f7f9fc;
  --muted:#c6ccd6;
  --line:#334155;
  --card-border:rgba(255,255,255,.16);
  --card-shadow:0 22px 64px rgba(0,0,0,.40);
  --page-bg-image:url("hero-silesia-dark.jpg");
  --page-bg-opacity:.32;
}
html,body{min-height:100%;}
body{
  color:var(--text)!important;
  background-color:var(--bg)!important;
  background-image:none!important;
  overflow-x:hidden;
}
body::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-2!important;
  pointer-events:none!important;
  background-image:var(--page-bg-image)!important;
  background-size:100vw auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:var(--page-bg-opacity)!important;
  transform:none!important;
}
body::after{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg,rgba(245,245,247,.50) 0%,rgba(245,245,247,.76) 34%,rgba(245,245,247,.95) 82%,rgba(245,245,247,.98) 100%),
    radial-gradient(circle at 82% 0%,rgba(0,113,227,.09),transparent 28%)!important;
}
:root[data-theme="dark"] body::after{
  background:
    linear-gradient(180deg,rgba(5,7,11,.48) 0%,rgba(5,7,11,.74) 40%,rgba(5,7,11,.94) 88%,rgba(5,7,11,.98) 100%),
    radial-gradient(circle at 78% 0%,rgba(90,176,255,.13),transparent 30%)!important;
}
.shell,.inner{position:relative;z-index:1;}
.inner{max-width:1120px;}
.nav{
  background:rgba(255,255,255,.92)!important;
  border-bottom:1px solid rgba(20,20,22,.10)!important;
  backdrop-filter:saturate(180%) blur(22px)!important;
  -webkit-backdrop-filter:saturate(180%) blur(22px)!important;
}
:root[data-theme="dark"] .nav{
  background:rgba(5,7,11,.88)!important;
  border-bottom-color:rgba(255,255,255,.12)!important;
}
.nav-links a{color:var(--muted)!important;}
.nav-links a:hover,.nav-links a.active{color:var(--accent)!important;}
.brand-logo-full{max-height:56px;}
.hero,
.section,
.article{
  color:var(--text)!important;
  background:rgba(var(--surface-rgb),.96)!important;
  border:1px solid var(--card-border)!important;
  box-shadow:var(--card-shadow)!important;
  backdrop-filter:saturate(150%) blur(18px)!important;
  -webkit-backdrop-filter:saturate(150%) blur(18px)!important;
}
:root[data-theme="dark"] .hero,
:root[data-theme="dark"] .section,
:root[data-theme="dark"] .article{
  background:rgba(13,17,23,.93)!important;
}
.hero::before{
  background-image:var(--page-bg-image)!important;
  background-size:100% auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:.10!important;
}
:root[data-theme="dark"] .hero::before{opacity:.12!important;}
.hero-copy{max-width:900px!important;}
.hero-slogan,.hero-title,.section-title,.lecture-title,.article-title,.form-title,.offer-label,.module-label{
  color:var(--text)!important;
}
.hero-sub,.hero-subtitle,.hero-note,.section-intro,.about-me-main,.about-me-tagline,.contact-text,.article-intro,.article-excerpt,.module-text,.lecture-box p,.form-subtitle,.field-note,.meta,.breadcrumb,footer{
  color:var(--muted)!important;
}
.offer-list,.module-list,.lectures-grid,.articles-grid,.legal-grid,.contact-grid{
  align-items:stretch!important;
}
.offer-list li,
.module-list li,
.lecture-box,
.article-card,
.legal-box,
.contact-form,
.contact-block{
  min-width:0!important;
  color:var(--text)!important;
  background:rgba(var(--surface-rgb),.98)!important;
  border:1px solid var(--card-border)!important;
  border-radius:20px!important;
  box-shadow:0 10px 28px rgba(0,0,0,.045)!important;
  overflow:hidden!important;
  text-wrap:pretty;
}
:root[data-theme="dark"] .offer-list li,
:root[data-theme="dark"] .module-list li,
:root[data-theme="dark"] .lecture-box,
:root[data-theme="dark"] .article-card,
:root[data-theme="dark"] .legal-box,
:root[data-theme="dark"] .contact-form,
:root[data-theme="dark"] .contact-block{
  background:rgba(17,24,39,.96)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.28)!important;
}
.offer-list li,
.module-list li{
  display:block!important;
  height:auto!important;
  padding:24px!important;
  line-height:1.56;
}
.offer-list li br{display:none!important;}
.offer-label,.module-label{display:block!important;margin:0 0 8px!important;line-height:1.28;}
.offer-link{color:var(--text)!important;}
.offer-link:hover{color:var(--accent)!important;}
.lecture-box,.article-card,.legal-box,.contact-form{display:block!important;height:auto!important;}
.contact-grid .contact-block{padding:20px!important;margin:0!important;}
.contact-label{color:#5f636b!important;}
:root[data-theme="dark"] .contact-label{color:#aeb6c5!important;}
.contact-value,.contact-value a{color:var(--text)!important;}
.contact-value a:hover{color:var(--accent)!important;}
.article-body p,.article-body li,.legal-box p,.legal-box li{color:var(--muted)!important;}
.field input,.field textarea{
  background:#fff!important;
  color:#141416!important;
  border-color:#bfc2cc!important;
}
.field input::placeholder,.field textarea::placeholder{color:#666b76!important;}
:root[data-theme="dark"] .field input,
:root[data-theme="dark"] .field textarea{
  background:#070b12!important;
  color:#f7f9fc!important;
  border-color:#3b4758!important;
}
:root[data-theme="dark"] .field input::placeholder,
:root[data-theme="dark"] .field textarea::placeholder{color:#9ba5b5!important;}
.btn-secondary,.filter-chip,.theme-toggle{
  background:rgba(var(--surface-rgb),.98)!important;
  border-color:var(--card-border)!important;
  color:var(--text)!important;
}
.btn-secondary:hover,.filter-chip:hover,.theme-toggle:hover{border-color:var(--accent)!important;color:var(--accent)!important;}
.filter-chip.is-active{background:var(--text)!important;border-color:var(--text)!important;color:var(--surface)!important;}
.retreat-card{
  background:linear-gradient(145deg,rgba(17,24,39,.97),rgba(15,23,42,.94))!important;
  color:#f8fafc!important;
  border-color:rgba(255,255,255,.14)!important;
}
.retreat-card .section-title,.retreat-card h2,.retreat-card h3,.retreat-card strong{color:#ffffff!important;}
.retreat-card p,.retreat-card li,.retreat-card .section-intro{color:#d8dee9!important;}
.retreat-card .btn-secondary{background:transparent!important;color:#ffffff!important;border-color:rgba(255,255,255,.38)!important;}
.retreat-card .btn-secondary:hover{border-color:#7cc2ff!important;color:#7cc2ff!important;}
.footer-links a{color:var(--muted)!important;}
.footer-links a:hover{color:var(--accent)!important;}
.cookie-banner-inner{background:rgba(var(--surface-rgb),.97)!important;border-color:var(--card-border)!important;color:var(--text)!important;}
.cookie-banner p{color:var(--muted)!important;}
/* Justowanie tylko dla dłuższych treści, bez psucia nagłówków i przycisków. */
.section p,
.section li,
.article p,
.article li,
.lecture-box p,
.article-card .article-excerpt,
.legal-box p,
.legal-box li,
.contact-form .form-subtitle,
.contact-form .field-note,
.contact-text,
.about-me-main,
.about-me-tagline,
.module-text{
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:inter-word;
  hyphens:auto;
  -webkit-hyphens:auto;
  overflow-wrap:break-word;
  word-break:normal;
}
.hero-sub,.hero-note,.hero-eyebrow,.section-kicker,.lecture-tag,.article-category,.contact-label,.contact-value,.btn-primary,.btn-secondary,.theme-toggle,.nav-links a,.brand-home,footer,.footer-links,.cookie-banner p{
  text-align:left!important;
  hyphens:none!important;
}
@media(max-width:900px){
  body::before{background-size:auto 52vh!important;background-position:center top!important;opacity:.20!important;}
  body::after{background:linear-gradient(180deg,rgba(245,245,247,.70) 0%,rgba(245,245,247,.92) 42%,rgba(245,245,247,.98) 100%)!important;}
  :root[data-theme="dark"] body::after{background:linear-gradient(180deg,rgba(5,7,11,.62) 0%,rgba(5,7,11,.86) 46%,rgba(5,7,11,.98) 100%)!important;}
  .hero{padding:44px 22px!important;}
  .section,.article{padding:28px 20px!important;}
}


/* FINAL CONTACT + BACKGROUND FIX 2026-06-22
   Poprawki po kontroli live: kontakt, czytelność, tło i justowanie. */
:root{
  --page-bg-opacity:.46;
  --bg-overlay-top:.28;
  --bg-overlay-mid:.58;
  --bg-overlay-bottom:.90;
  --contact-min:240px;
}
:root[data-theme="dark"]{
  --page-bg-opacity:.44;
  --bg-overlay-top:.34;
  --bg-overlay-mid:.62;
  --bg-overlay-bottom:.92;
}
html{background:var(--bg)!important;}
body{
  background-color:var(--bg)!important;
}
body::before{
  background-image:var(--page-bg-image)!important;
  background-size:100vw auto!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:var(--page-bg-opacity)!important;
  filter:saturate(1.08) contrast(1.08)!important;
}
body::after{
  background:
    linear-gradient(180deg,
      rgba(245,245,247,var(--bg-overlay-top)) 0%,
      rgba(245,245,247,var(--bg-overlay-mid)) 34%,
      rgba(245,245,247,var(--bg-overlay-bottom)) 78%,
      rgba(245,245,247,.98) 100%),
    radial-gradient(circle at 78% 0%,rgba(0,113,227,.08),transparent 28%)!important;
}
:root[data-theme="dark"] body::after{
  background:
    linear-gradient(180deg,
      rgba(5,7,11,var(--bg-overlay-top)) 0%,
      rgba(5,7,11,var(--bg-overlay-mid)) 40%,
      rgba(5,7,11,var(--bg-overlay-bottom)) 82%,
      rgba(5,7,11,.98) 100%),
    radial-gradient(circle at 78% 0%,rgba(90,176,255,.14),transparent 30%)!important;
}
.hero{
  background:rgba(var(--surface-rgb),.90)!important;
}
.section,.article{
  background:rgba(var(--surface-rgb),.94)!important;
}
:root[data-theme="dark"] .hero{background:rgba(13,17,23,.90)!important;}
:root[data-theme="dark"] .section,
:root[data-theme="dark"] .article{background:rgba(13,17,23,.91)!important;}
.offer-list li,
.module-list li,
.lecture-box,
.article-card,
.legal-box,
.contact-form,
.contact-block{
  background:rgba(var(--surface-rgb),.96)!important;
}
:root[data-theme="dark"] .offer-list li,
:root[data-theme="dark"] .module-list li,
:root[data-theme="dark"] .lecture-box,
:root[data-theme="dark"] .article-card,
:root[data-theme="dark"] .legal-box,
:root[data-theme="dark"] .contact-form,
:root[data-theme="dark"] .contact-block{
  background:rgba(17,24,39,.94)!important;
}
/* Kontakt: dane nie mogą wypadać poza ramki. */
.contact-layout{
  grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr)!important;
  gap:28px!important;
}
.contact-layout > div{min-width:0!important;}
.contact-grid{
  grid-template-columns:repeat(auto-fit,minmax(var(--contact-min),1fr))!important;
  gap:16px!important;
}
.contact-block{
  padding:20px!important;
  overflow:visible!important;
  min-width:0!important;
}
.contact-value,
.contact-value a{
  display:block!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.42!important;
  text-align:left!important;
  hyphens:none!important;
}
.contact-label{
  margin-bottom:7px!important;
  line-height:1.25!important;
  text-align:left!important;
  hyphens:none!important;
}
.contact-text{
  margin-top:18px!important;
  max-width:100%!important;
}
/* Formularz i checkbox: stabilny układ także przy wąskiej kolumnie. */
.contact-form{min-width:0!important;}
.field{min-width:0!important;}
.field input,.field textarea{min-width:0!important;}
.field-checkbox{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:start!important;}
.field-checkbox label{min-width:0!important;line-height:1.45!important;}
/* Justowanie: długie akapity tak, elementy interfejsu nie. */
.section p,
.section li,
.article p,
.article li,
.lecture-box p,
.article-card .article-excerpt,
.legal-box p,
.legal-box li,
.contact-form .form-subtitle,
.contact-form .field-note,
.contact-text,
.about-me-main,
.about-me-tagline,
.module-text{
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:inter-word!important;
  hyphens:auto!important;
  -webkit-hyphens:auto!important;
  overflow-wrap:break-word!important;
}
.hero-sub,.hero-note,.hero-eyebrow,.section-kicker,.lecture-tag,.article-category,
.contact-label,.contact-value,.contact-value a,.field label,.btn-primary,.btn-secondary,
.theme-toggle,.nav-links a,.brand-home,footer,.footer-links,.cookie-banner p{
  text-align:left!important;
  text-align-last:auto!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}
@media(max-width:980px){
  .contact-layout{grid-template-columns:1fr!important;}
}
@media(max-width:900px){
  body::before{
    background-size:auto 58vh!important;
    background-position:center top!important;
    opacity:.34!important;
  }
  :root[data-theme="dark"] body::before{opacity:.36!important;}
  body::after{
    background:linear-gradient(180deg,rgba(245,245,247,.56) 0%,rgba(245,245,247,.88) 46%,rgba(245,245,247,.98) 100%)!important;
  }
  :root[data-theme="dark"] body::after{
    background:linear-gradient(180deg,rgba(5,7,11,.54) 0%,rgba(5,7,11,.84) 48%,rgba(5,7,11,.98) 100%)!important;
  }
}
@media(max-width:560px){
  :root{--contact-min:100%;}
  .contact-block{padding:18px!important;}
  .contact-value{font-size:.96rem!important;}
}

/* FINAL RETREAT + BACKGROUND VISIBILITY FIX 2026-06-22
   Cel: widoczna sekcja wyjazdów, wyraźniejsze tło Spodka i stabilne justowanie. */
:root{
  --page-bg-opacity:.64;
  --bg-overlay-top:.14;
  --bg-overlay-mid:.42;
  --bg-overlay-bottom:.84;
}
:root[data-theme="dark"]{
  --page-bg-opacity:.58;
  --bg-overlay-top:.22;
  --bg-overlay-mid:.50;
  --bg-overlay-bottom:.88;
}
body::before{
  background-image:var(--page-bg-image)!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  opacity:var(--page-bg-opacity)!important;
  filter:saturate(1.18) contrast(1.14)!important;
}
body::after{
  background:
    linear-gradient(180deg,
      rgba(245,245,247,var(--bg-overlay-top)) 0%,
      rgba(245,245,247,var(--bg-overlay-mid)) 36%,
      rgba(245,245,247,var(--bg-overlay-bottom)) 78%,
      rgba(245,245,247,.96) 100%),
    radial-gradient(circle at 82% 0%,rgba(0,113,227,.07),transparent 30%)!important;
}
:root[data-theme="dark"] body::after{
  background:
    linear-gradient(180deg,
      rgba(5,7,11,var(--bg-overlay-top)) 0%,
      rgba(5,7,11,var(--bg-overlay-mid)) 40%,
      rgba(5,7,11,var(--bg-overlay-bottom)) 82%,
      rgba(5,7,11,.97) 100%),
    radial-gradient(circle at 82% 0%,rgba(90,176,255,.15),transparent 32%)!important;
}
.hero,
.section,
.article{
  background:rgba(var(--surface-rgb),.92)!important;
}
:root[data-theme="dark"] .hero,
:root[data-theme="dark"] .section,
:root[data-theme="dark"] .article{
  background:rgba(13,17,23,.90)!important;
}
.offer-list li,
.module-list li,
.lecture-box,
.article-card,
.legal-box,
.contact-form,
.contact-block{
  background:rgba(var(--surface-rgb),.94)!important;
}
:root[data-theme="dark"] .offer-list li,
:root[data-theme="dark"] .module-list li,
:root[data-theme="dark"] .lecture-box,
:root[data-theme="dark"] .article-card,
:root[data-theme="dark"] .legal-box,
:root[data-theme="dark"] .contact-form,
:root[data-theme="dark"] .contact-block{
  background:rgba(17,24,39,.93)!important;
}
/* Sekcja wyjazdów — poprzednio jej tło było nadpisywane przez .section,
   przez co biały tekst w trybie jasnym robił się niewidoczny. */
.section.retreat-card{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(8,13,24,.98) 0%,rgba(15,23,42,.96) 54%,rgba(0,71,112,.92) 100%)!important;
  color:#f8fafc!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 24px 70px rgba(2,6,23,.26)!important;
}
.section.retreat-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  background:
    radial-gradient(circle at 82% 18%,rgba(90,176,255,.28),transparent 30%),
    radial-gradient(circle at 8% 0%,rgba(255,255,255,.08),transparent 28%);
  pointer-events:none;
}
.section.retreat-card > *{
  position:relative;
  z-index:1;
}
.section.retreat-card .section-kicker{
  color:#7dd3fc!important;
}
.section.retreat-card .section-title,
.section.retreat-card h2,
.section.retreat-card h3,
.section.retreat-card strong{
  color:#ffffff!important;
}
.section.retreat-card p,
.section.retreat-card li,
.section.retreat-card .section-intro{
  color:#e5edf7!important;
  max-width:900px!important;
}
.section.retreat-card .btn-secondary{
  margin-top:8px;
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.42)!important;
  color:#ffffff!important;
}
.section.retreat-card .btn-secondary:hover{
  background:rgba(255,255,255,.16)!important;
  border-color:#7dd3fc!important;
  color:#ffffff!important;
}
/* Korekta justowania: akapity czytelne, bez rozciągania krótkich etykiet i linków. */
.section.retreat-card .section-intro,
.section.retreat-card p{
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:inter-word!important;
  hyphens:auto!important;
  -webkit-hyphens:auto!important;
}
.section.retreat-card .section-kicker,
.section.retreat-card .section-title,
.section.retreat-card .btn-secondary{
  text-align:left!important;
  hyphens:none!important;
}
@media(max-width:900px){
  body::before{
    background-size:auto 64vh!important;
    background-position:center top!important;
    opacity:.44!important;
  }
  :root[data-theme="dark"] body::before{opacity:.42!important;}
  body::after{
    background:linear-gradient(180deg,rgba(245,245,247,.36) 0%,rgba(245,245,247,.82) 46%,rgba(245,245,247,.97) 100%)!important;
  }
  :root[data-theme="dark"] body::after{
    background:linear-gradient(180deg,rgba(5,7,11,.44) 0%,rgba(5,7,11,.78) 48%,rgba(5,7,11,.97) 100%)!important;
  }
}
@media(max-width:560px){
  .section.retreat-card .btn-secondary{width:100%;}
}


/* FINAL LOGO + CONSISTENCY FIX 2026-06-22
   Wariant logo dopasowany do trybu jasnego i ciemnego oraz drobne poprawki całej strony. */
.brand-home{
  display:flex!important;
  align-items:center!important;
  flex:0 1 auto!important;
  min-width:0!important;
}
.brand-logo-full{
  width:min(330px,46vw)!important;
  max-width:100%!important;
  max-height:58px!important;
  height:auto!important;
  object-fit:contain!important;
  filter:none!important;
}
.brand-logo-light{display:block!important;}
.brand-logo-dark{display:none!important;}
:root[data-theme="dark"] .brand-logo-light{display:none!important;}
:root[data-theme="dark"] .brand-logo-dark{display:block!important;}
:root[data-theme="dark"] .brand-logo-full{filter:none!important;}

/* Nav i logo: stabilizacja przy średnich szerokościach. */
.nav{min-width:0!important;}
.nav-left{min-width:0!important;}
.nav-links{min-width:0!important;}
@media(max-width:980px){
  .brand-logo-full{width:min(300px,62vw)!important;max-height:54px!important;}
  .nav{gap:16px!important;}
  .nav-links{gap:16px!important;}
}
@media(max-width:560px){
  .brand-logo-full{width:min(260px,78vw)!important;max-height:50px!important;}
}

/* Czytelność i spójność kart po ostatniej kontroli. */
.offer-list li,
.module-list li,
.lecture-box,
.article-card,
.legal-box,
.contact-form,
.contact-block{
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
.offer-label,
.module-label,
.lecture-title,
.article-title,
.contact-label,
.contact-value{
  text-wrap:balance;
}
.section p,
.section li,
.article p,
.article li,
.lecture-box p,
.article-card .article-excerpt,
.legal-box p,
.legal-box li,
.contact-form .form-subtitle,
.contact-form .field-note,
.contact-text,
.about-me-main,
.about-me-tagline,
.module-text{
  text-align:justify!important;
  text-align-last:left!important;
  text-justify:inter-word!important;
  hyphens:auto!important;
  -webkit-hyphens:auto!important;
}

/* Tło: lekko mocniejsze, ale nie kosztem czytelności tekstu. */
:root{
  --page-bg-opacity:.68;
  --bg-overlay-top:.12;
  --bg-overlay-mid:.40;
  --bg-overlay-bottom:.84;
}
:root[data-theme="dark"]{
  --page-bg-opacity:.60;
  --bg-overlay-top:.24;
  --bg-overlay-mid:.52;
  --bg-overlay-bottom:.88;
}
body::before{
  background-size:cover!important;
  background-position:center top!important;
  filter:saturate(1.20) contrast(1.16)!important;
}


/* Ransomware article series */
.ransomware-article .article-body {
    max-width: 860px;
}
.analyst-note,
.nask-guidelines,
.article-sources {
    border: 1px solid var(--border-subtle);
    border-radius: 24px;
    padding: 20px 22px;
    background: var(--surface-strong);
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.08);
    margin: 24px 0;
}
.analyst-note {
    font-size: 0.96rem;
    color: var(--text-muted);
}
.nask-guidelines h2,
.article-sources h2 {
    margin-top: 0;
}
.nask-guidelines ul,
.article-sources ol {
    margin-bottom: 0;
}
.nask-guidelines li,
.article-sources li {
    margin-bottom: 8px;
    text-align: justify;
    text-justify: inter-word;
}
.article-sources a {
    color: var(--accent);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    overflow-wrap: anywhere;
}
.ransomware-card .article-category {
    color: var(--accent);
}
@media (max-width: 720px) {
    .analyst-note,
    .nask-guidelines,
    .article-sources {
        border-radius: 18px;
        padding: 16px;
    }
    .nask-guidelines li,
    .article-sources li {
        text-align: left;
    }
}


/* SEO/CTR audit refinements */
.cookie-banner[data-nosnippet] { contain: layout style; }
.faq-section .section-title { margin-bottom: 18px; }
.faq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.faq-item { border: 1px solid var(--line); border-radius: 18px; background: rgba(var(--surface-rgb), .82); padding: 16px 18px; box-shadow: 0 8px 24px rgba(15,23,42,.05); }
.faq-item summary { cursor: pointer; font-weight: 680; color: var(--text); line-height: 1.35; text-align: left !important; }
.faq-item p { margin: 10px 0 0; color: var(--muted); text-align: justify !important; hyphens: auto; -webkit-hyphens: auto; }
.latest-article-list li { min-height: auto; }
.article-card .btn-secondary, .article-card a.btn-secondary { margin-top: auto; }
.brand-logo-dark[aria-hidden="true"] { pointer-events: none; }
:root[data-theme="dark"] .faq-item { background: rgba(17,24,39,.82); border-color: var(--line); box-shadow: 0 10px 28px rgba(0,0,0,.24); }
:root[data-theme="dark"] .faq-item summary { color: var(--text); }
:root[data-theme="dark"] .faq-item p { color: #c8ced8; }
@media (max-width: 760px) { .faq-grid { grid-template-columns: 1fr; } }
