/* ======= Liberty4U Web Solutions — Neon Plasma Theme ======= */
:root{
  --bg:#0a0f1f; --panel:#11162b; --text:#e6ecff; --muted:#9aa7cc;
  --primary:#7c3aed; --accent:#06b6d4; --hot:#f43f5e;
  --radius:16px; --shadow:0 10px 30px rgba(3,10,38,.6);
  --glow-primary:0 0 24px rgba(124,58,237,.55);
  --glow-accent:0 0 24px rgba(6,182,212,.55);
  --nav-h:64px;
}
:where([hidden]){display:none!important;pointer-events:none!important}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;font:500 16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu;
  color:var(--text);
  background:
    radial-gradient(1200px 800px at 110% -10%, rgba(124,58,237,.15), transparent 60%),
    radial-gradient(900px 700px at -10% 120%, rgba(6,182,212,.12), transparent 55%),
    var(--bg);
  background-attachment:fixed;overflow-x:hidden;
}
.container{max-width:min(1200px,94vw);margin:0 auto;padding:0 clamp(14px,3.2vw,24px)}
a{color:var(--text)}
.container-about {text-align:center;max-width:min(100vw);margin:0 auto;}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;gap:.6rem;justify-content:center;
  padding:.78rem 1rem;border-radius:12px;text-decoration:none;border:none;cursor:pointer;
  color:#0a0f1f;background:linear-gradient(90deg,var(--accent),var(--primary));
  box-shadow:var(--glow-accent);transition:transform .18s, box-shadow .18s, filter .18s;
  font-weight:700;letter-spacing:.2px;white-space:nowrap;
}
.btn:hover{transform:translateY(-1px);box-shadow:var(--glow-primary)}
.btn--ghost{background:transparent;color:var(--text);border:1px solid rgba(230,236,255,.18);box-shadow:none}
.btn--xs{padding:.5rem .7rem;font-size:.85rem}
.btn--sm { padding: .55rem .95rem; font-size: .95rem; }
.btn--outline { background: transparent; border: 1px solid rgba(255,255,255,.6); color: #fff; }
.btn--link { color: #9ec7ff; text-decoration: underline; background: none; border: 0; }
.btn--primary { background: #2b6cff; color: #fff; border: 1px solid #1f56cc; }

/* Badge */
.badge{
  display:inline-block;padding:.35rem .6rem;border-radius:999px;
  background:linear-gradient(90deg,rgba(124,58,237,.25),rgba(6,182,212,.25));
  border:1px solid rgba(255,255,255,.12);color:var(--text);font-size:.75rem;white-space:nowrap;
}
.pricing-card { position: relative; }
.badge--rush{
  position:absolute;top:10px;right:10px;background:linear-gradient(135deg,#00c853,#00b0ff);
}
.badge--most{
  position:absolute;top:10px;right:10px;background:linear-gradient(135deg,#ff8f00,#ff4081);
}

/* ===== Header / Navbar ===== */
header{position:sticky;top:0;z-index:50;background:rgba(10,15,31,.7);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.06)}
.navbar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0}
.nav-center{
  display:grid;grid-template-columns:1fr auto 1fr;grid-template-areas:"left logo right";
  align-items:center;gap:.8rem;width:100%;
}
/* Większy font tylko w navbarze na desktopie */
@media (min-width: 881px){
  .navbar { font-size: 1.4rem; } /* spróbuj 1.08–1.14rem */
}
.nav-left{grid-area:left;justify-self:start;display:flex;gap:1rem;list-style:none;padding:0;margin:0;align-items:center}
.nav-right{grid-area:right;justify-self:end;display:flex;gap:1rem;list-style:none;padding:0;margin:0;align-items:center}
.logo{grid-area:logo;justify-self:center;display:flex;align-items:center}
.logo img{height:114px;width:auto;display:block;filter:drop-shadow(0 0 6px rgba(124,58,237,.6))}
.hamburger{display:none;background:transparent;color:var(--text);border:1px solid rgba(255,255,255,.15);padding:.45rem .7rem;border-radius:10px}

/* Promo strip */
.promo-badge{display:flex;justify-content:center;align-items:center;padding:.45rem 0;border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);background:rgba(10,15,31,.55)}
.promo-badge a{display:flex;gap:.6rem;align-items:center;color:var(--text);text-decoration:none}
.promo-badge .sep{opacity:.5}
.promo-link{font-weight:700}

.hide-mobile{display:block}

@media (max-width:880px){
  .nav-left,.nav-right{display:none}
  .hide-mobile{display:none}
  .hamburger{display:inline-flex;grid-area:right;justify-self:end}
  .logo{justify-self:center}
  .navbar{min-height:var(--nav-h)}
}

/* NAV drawer */
.container.navbar{position:relative}
.nav-drawer{
  display:flex;flex-direction:column;gap:.4rem;padding:12px;border-radius:14px;
  background:rgba(10,15,31,.97);border:1px solid rgba(255,255,255,.08);
  position:absolute;left:0;right:0;top:64px;max-width:min(620px,94vw);margin:0 auto;z-index:70
}
.nav-drawer a{color:var(--text);text-decoration:none;padding:.7rem .9rem;border-radius:10px}
.nav-drawer a:hover{background:rgba(255,255,255,.06)}
@media (max-width:880px){
  .nav-drawer{
    position:fixed;left:0;right:0;top:var(--nav-h);max-width:none;margin:0;border-left:none;border-right:none;border-radius:0 0 14px 14px;
    padding:12px clamp(14px,4vw,22px);background:rgba(10,15,31,.98);box-shadow:0 12px 30px rgba(0,0,0,.55)
  }
  .nav-drawer:not([hidden]){animation:navDrop .16s ease-out both}
  @keyframes navDrop{from{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}
  .container.navbar:has(#hamburger[aria-expanded="true"]) .mobile-header-slogan{display:none}
  body:has(#hamburger[aria-expanded="true"]) .mobile-bottom-badge{display:none}
  body:has(#hamburger[aria-expanded="true"]){overflow:hidden}
}

/* Hamburger subtle animation */
.hamburger{transition:transform .2s, box-shadow .2s, border-color .2s}
.hamburger:hover{transform:translateY(-1px);box-shadow:var(--glow-accent);border-color:rgba(124,58,237,.45)}
.hamburger[aria-expanded="true"]{animation:pulseGlow 2.2s ease-in-out infinite;transform:rotate(2deg)}
@keyframes pulseGlow{0%{box-shadow:0 0 0 0 rgba(124,58,237,.35)}70%{box-shadow:0 0 0 10px rgba(124,58,237,0)}100%{box-shadow:0 0 0 0 rgba(124,58,237,0)}}
@media (prefers-reduced-motion:reduce){.hamburger[aria-expanded="true"]{animation:none}}

/* Mobile header slogan + bottom badge */
.mobile-header-slogan{display:none}
.mobile-header-slogan .slogan{margin:.35rem 0 0;font-weight:700;text-align:center;letter-spacing:.2px}
@media (max-width:880px){
  .mobile-header-slogan{display:block;padding:.25rem 0 .5rem}
  .mobile-header-slogan .slogan{font-size:clamp(1rem,4.5vw,1.15rem);color:var(--text);opacity:.92}
  .promo-badge{display:none}
}
.mobile-bottom-badge{display:none;position:fixed;left:50%;transform:translateX(-50%);bottom:12px;z-index:61;pointer-events:none}
.mobile-bottom-badge .badge{pointer-events:auto}
@media (max-width:880px){.mobile-bottom-badge{display:flex}}
@supports(selector(body:has(#cookie-banner:not([hidden])))){
  @media (max-width:880px){body:has(#cookie-banner:not([hidden])) .mobile-bottom-badge{bottom:96px}}
}

/* Header link treatments */
.nav-center a{ text-decoration: none; }
.nav-center a.promo-link{
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 2px;
}
.nav-center a:hover{ filter: brightness(1.08); }

/* ===== Hero (global) ===== */
.hero{
  position:relative;isolation:isolate;min-height:36vh;
  display:grid;place-items:center;text-align:center;
  overflow:hidden;border-bottom:1px solid rgba(255,255,255,.06)
}
.hero__wave{
  position:absolute;inset:auto 0 0 0;height:55%;
  background:
    radial-gradient(60% 50% at 40% 60%, rgba(124,58,237,.35), transparent 60%),
    radial-gradient(50% 40% at 60% 70%, rgba(6,182,212,.32), transparent 60%);
  filter:blur(40px);opacity:.9;z-index:-1;animation:float 9s ease-in-out infinite alternate
}
@keyframes float{from{transform:translateY(6%)}to{transform:translateY(-6%)}}
@media (prefers-reduced-motion:reduce){.hero__wave{animation:none}}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.1;margin:0 0 .8rem 0;text-shadow:0 0 18px rgba(124,58,237,.35)}
.hero p{max-width:840px;margin:.3rem auto 1.2rem;color:var(--muted)}
.hero .cta{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;padding-bottom:10px}
@media (max-width:520px){.hero .btn{width:100%}}

/* ===== About HERO (clean) ===== */
.hero.hero--about{
  display:grid;place-items:center;min-height:clamp(52vh,62vh,76vh);
  border-bottom:1px solid rgba(255,255,255,.06);overflow:hidden;isolation:isolate
}
/* Mobile / tablet: background as pseudo-element */
@media (max-width:880px){
  .hero--about::before{
    content:"";position:absolute;inset:0;
    background:url("/assets/img/about-background.jpg") center 40% / cover no-repeat;
    opacity:.8;z-index:0;pointer-events:none
  }
  .hero__frame{display:none}
}
/* Desktop: framed image */
@media (min-width:881px){
  .hero--about::before{content:none}
  .hero__frame{
    display:block;height:clamp(360px,78vh,560px);
    margin:clamp(8px,6vh,32px) auto;border-radius:24px;overflow:hidden;
    border:1px solid rgba(255,255,255,.10);
    background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03));
    box-shadow:var(--shadow);position:relative;z-index:1;opacity:.8;
  }
  .hero__frame img{
    width:100%;height:100%;object-fit:cover;transform:translateZ(0);
    image-rendering:auto;filter:contrast(1.02) saturate(1.02)
  }
}

/* ===== Sections, cards, forms, footer, etc. ===== */
.section{padding:clamp(42px,6vw,64px) 0;border-top:1px solid rgba(255,255,255,.06)}
.grid{display:grid;gap:22px}
.grid--3{grid-template-columns:repeat(3,1fr)}
@media (max-width:980px){.grid--3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.grid--3{grid-template-columns:1fr}}
.card{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);border-radius:var(--radius);
  padding:clamp(16px,2.4vw,22px);box-shadow:var(--shadow)
}
.card h3{margin:0 0 .35rem;font-size:clamp(1rem,2.4vw,1.15rem)}
.card p{color:var(--muted);margin:0}
.card:hover{box-shadow:0 0 0 1px rgba(124,58,237,.3), var(--shadow)}
/* About readability */
.card p + p, .card ul{margin-top:.85rem}
.card ul.bullets{padding-left:1.1rem}
.card ul.bullets li{margin:.25rem 0;color:var(--text)}
.card ul.bullets li::marker{color:rgba(124,58,237,.8)}

form{display:grid;gap:12px}
input,textarea,select{
  width:100%;padding:.9rem;border-radius:12px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);color:var(--text)
}
input::placeholder,textarea::placeholder{color:#aab3d1}
label{font-size:.94rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:640px){.form-row{grid-template-columns:1fr}}

footer{border-top:1px solid rgba(255,255,255,.06);text-align:center;padding:clamp(18px,3.6vw,28px) 0;color:var(--muted)}
footer a{text-decoration:none}

.faq dt{font-weight:700;margin-top:1rem}
.faq dd{margin:0 0 .8rem;color:var(--muted)}

.timeline{display:grid;gap:14px;margin-top:16px}
.step{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;padding:14px;border-radius:14px;
  border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02))}
.step .dot{height:12px;width:12px;border-radius:50%;background:conic-gradient(var(--accent),var(--primary));margin-top:.3rem;box-shadow:var(--glow-accent)}

/* ===== Cookie banner & modal (ID-only) ===== */
:root{color-scheme:dark}

#cookie-banner{
  position:fixed;inset-inline:0;bottom:0;z-index:9999;
  background:#0b1020;color:#fff;padding:.9rem .75rem;
  box-shadow:0 -6px 24px rgba(0,0,0,.35);
  border-top:1px solid rgba(255,255,255,.12);
  font-size:clamp(14px,3.6vw,16px);line-height:1.45;
}
#cookie-banner .cookie-inner{
  max-width:1100px;margin:0 auto;display:grid;gap:10px;
  grid-template-columns:1fr;align-items:start;
}
#cookie-banner .cookie-text{
  margin:0;white-space:normal!important;word-break:normal;overflow-wrap:break-word;hyphens:auto;
}
#cookie-banner .cookie-actions{
  display:grid;gap:8px;grid-template-columns:1fr 1fr;
}
#cookie-banner .cookie-actions .btn{width:100%}
#cookie-banner .btn--xs{padding:12px 14px;font-size:1rem}
#cookie-banner .btn--link{
  grid-column:1 / -1;justify-self:start;padding:0;text-decoration:underline;background:none;border:0;color:#9ec7ff;
}

@media (max-width:420px){
  #cookie-banner .cookie-actions{grid-template-columns:1fr}
}
@media (min-width:540px){
  #cookie-banner .cookie-inner{grid-template-columns:1fr auto;align-items:center;gap:12px}
  #cookie-banner .cookie-actions{display:flex;flex-wrap:nowrap;gap:.5rem}
  #cookie-banner .btn--link{grid-column:auto}
}

/* Cookie modal */
.cookie-modal[hidden]{display:none!important}
.cookie-modal__backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:10000}
.cookie-modal__dialog{
  position:fixed;inset-inline:0;top:10vh;margin:0 auto;width:min(680px,92vw);background:#fff;color:#111;
  border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:80vh;overflow:hidden;z-index:10001;
  overscroll-behavior:contain;
}
.cookie-modal__header,.cookie-modal__footer{padding:1rem 1.25rem}
.cookie-modal__header{border-bottom:1px solid #e8e8ee;display:flex;justify-content:space-between;align-items:center}
.cookie-modal__content{padding:1rem 1.25rem;overflow:auto}
.cookie-group{border:1px solid #ececf3;border-radius:10px;padding:.9rem 1rem;margin-bottom:.8rem;background:#fafafe}
.cookie-group__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}
.cookie-modal__close{background:none;border:0;font-size:1.5rem;line-height:1;cursor:pointer}

/* Switch */
.switch{position:relative;display:inline-block;width:46px;height:26px}
.switch input{opacity:0;width:0;height:0}
.slider{position:absolute;cursor:pointer;inset:0;background:#c8c8d0;border-radius:999px;transition:.2s}
.slider:before{content:"";position:absolute;height:20px;width:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.switch input:checked + .slider{background:#2b6cff}
.switch input:checked + .slider:before{transform:translateX(20px)}
.switch input:disabled + .slider{background:#9aa2b2;cursor:not-allowed}

/* Mini-baner „Reopen cookies” */
.cookie-reopen{
  position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:flex-start;align-items:center;
  padding:.5rem;padding-bottom:calc(.5rem + env(safe-area-inset-bottom));z-index:1000;pointer-events:none;
}
.cookie-reopen__btn{
  pointer-events:auto;font-size:10px;line-height:.5;padding:.5rem .75rem;border-radius:9999px;
  border:1px solid rgba(255,255,255,.25);background:#0a0f1f;color:#fff;box-shadow:0 4px 16px rgba(0,0,0,.25);text-decoration:none;
}
.cookie-reopen__btn:hover{opacity:.95}
.cookie-reopen__btn:focus{outline:2px solid #fff;outline-offset:2px}

/* ===== Accessibility (native controls dark) ===== */
select{background-color:rgba(255,255,255,.06);color:var(--text);border:1px solid rgba(255,255,255,.16)}
select option,select optgroup{background-color:#0b1022;color:var(--text)}
select:focus{outline:none;border-color:rgba(124,58,237,.6);box-shadow:0 0 0 3px rgba(124,58,237,.25),var(--glow-accent)}
input[type="checkbox"],input[type="radio"]{accent-color:var(--accent)}
@supports selector(select option:hover){select option:hover{background-color:rgba(124,58,237,.25)}}

/* ===== FAQ — accordion (dark) ===== */
.faq-accordion details{
  border:1px solid #e8e8ee;border-radius:10px;background:#fafafe;margin:.5rem 0;overflow:hidden;
  background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.12)!important;
}
.faq-accordion details[open]{background:rgba(255,255,255,.06)!important}
.faq-accordion summary{
  cursor:pointer;padding:.9rem 1rem;list-style:none;position:relative;font-weight:600;outline:none;color:#e6edf3!important
}
.faq-accordion summary::-webkit-details-marker{display:none}
.faq-accordion summary::after{
  content:"▸";position:absolute;right:0rem;transform:rotate(0deg);transition:transform .2s ease;color:inherit
}
.faq-accordion details[open] > summary::after{transform:rotate(90deg)}
.faq-accordion details > div{padding:.75rem 1rem 1rem;border-top:1px solid #ececf3;color:#cbd5e1!important;border-top-color:rgba(255,255,255,.10)!important}
.faq-accordion > h3{margin-top:1.25rem;margin-bottom:.5rem;font-size:1.7rem;color:#e6edf3!important}

.faq-controls .input{
  border:1px solid #334155!important;border-radius:10px;padding:.6rem .75rem;background:#0f172a!important;color:#e2e8f0!important;
}
.faq-controls .input::placeholder{color:#94a3b8!important}
.faq-accordion a,.toc a{color:#9ec7ff!important;text-underline-offset:3px}
.faq-accordion a:hover,.toc a:hover{color:#cfe2ff!important}

/* Karta FAQ w sekcji .section (nie mylić z akordeonem) */
.section .container.card{
  background:rgba(10,15,31,.65);
  backdrop-filter:saturate(120%) blur(4px);
}

/* CTA row */
.cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.cta--center{justify-content:center}
.cta .btn{min-width:220px;text-align:center}

/* ===== Checkboxy / radio — wyrównanie ===== */
label:has(> input[type="checkbox"]){display:inline-flex;align-items:flex-start;gap:.5rem;line-height:1.3}
label > input[type="checkbox"]{
  width:18px;height:18px;margin:0;vertical-align:text-top;transform:translateY(1px);accent-color:#2b6cff;
}

/* Siblings — wariant B */
input[type="checkbox"] + label{
  display:flex;align-items:flex-start;gap:.5rem;line-height:1.3;
}
input[type="checkbox"]{
  width:18px;height:18px;margin:0;vertical-align:text-top;transform:translateY(1px);accent-color:#2b6cff;
}
@media (max-width:480px){
  label > input[type="checkbox"],
  input[type="checkbox"]{width:20px;height:20px}
}

/* ===== Project Brief only ===== */
#brief .inline{display:inline-flex;flex-wrap:wrap;align-items:flex-start;gap:10px 14px}
#brief .inline > label,
#brief label.inline{
  display:inline-flex;align-items:flex-start;gap:.55rem;line-height:1.35;cursor:pointer;margin:.15rem 0
}
#brief .inline > label > input[type="checkbox"],
#brief .inline > label > input[type="radio"],
#brief label.inline > input[type="checkbox"],
#brief label.inline > input[type="radio"]{
  width:18px;height:18px;margin:0;vertical-align:text-top;transform:translateY(1px);accent-color:#2b6cff;
}
#brief label:has(> input[type="checkbox"]),
#brief label:has(> input[type="radio"]){
  display:inline-flex;align-items:flex-start;gap:.55rem;line-height:1.35
}
#brief label > input[type="checkbox"],
#brief label > input[type="radio"]{
  width:18px;height:18px;margin:0;vertical-align:text-top;transform:translateY(1px);accent-color:#2b6cff
}
@media (max-width:480px){
  #brief .inline > label > input[type="checkbox"],
  #brief .inline > label > input[type="radio"],
  #brief label > input[type="checkbox"],
  #brief label > input[type="radio"]{width:20px;height:20px}
}

/* ===== STARTUP BRIEF ===== */
#startup-brief .inline{
  display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px 14px;
}
#startup-brief .inline > label,
#startup-brief label.inline,
#startup-brief label:has(> input[type="checkbox"]),
#startup-brief label:has(> input[type="radio"]){
  display:flex;align-items:flex-start;gap:.55rem;line-height:1.35;cursor:pointer;margin:.15rem 0
}
#startup-brief label > input[type="checkbox"],
#startup-brief label > input[type="radio"],
#startup-brief .inline > label > input[type="checkbox"],
#startup-brief .inline > label > input[type="radio"]{
  width:18px;height:18px;margin:0;vertical-align:text-top;transform:translateY(1px);accent-color:#2b6cff
}
@media (max-width:480px){
  #startup-brief label > input[type="checkbox"],
  #startup-brief label > input[type="radio"],
  #startup-brief .inline > label > input[type="checkbox"],
  #startup-brief .inline > label > input[type="radio"]{width:20px;height:20px}
}
#startup-brief input[type="checkbox"] + label,
#startup-brief input[type="radio"] + label{
  display:inline-flex;align-items:flex-start;gap:.55rem;line-height:1.35;
}

/* ===== Startup Offer components ===== */
.muted{color:var(--muted)}

/* Value strip */
.strip{
  background:rgba(255,255,255,.03);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
  padding-top:8px;padding-bottom:8px;
}
.strip .container{display:grid;gap:12px;align-items:center;grid-template-columns:1fr}
@media (min-width:900px){
  .strip .container{grid-template-columns:2fr 1fr}
  .strip .right{justify-self:end}
}
.pill{
  display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1rem;border-radius:999px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.10);color:var(--text)
}
.pill .save{
  padding:.25rem .6rem;border-radius:999px;font-weight:800;color:#0a0f1f;
  background:linear-gradient(90deg,var(--accent),var(--primary));box-shadow:var(--glow-accent)
}

/* Timeline tweak */
.timeline{margin-top:12px}

/* Comparison */
.compare{display:grid;gap:22px;margin-top:12px}
@media (min-width:900px){.compare{grid-template-columns:1fr 1fr}}
.compare .col{
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.10);border-radius:var(--radius);
  padding:clamp(16px,2.4vw,22px);box-shadow:var(--shadow)
}
.compare h4{margin:0 0 .5rem}
.list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.list li{display:flex;gap:10px;align-items:flex-start}
.list .ok,.list .no{
  flex:0 0 22px;display:grid;place-items:center;border-radius:6px;height:22px;width:22px;font-weight:900
}
.list .ok{background:rgba(16,185,129,.15);border:1px solid rgba(16,185,129,.35);color:#34d399}
.list .no{background:rgba(244,63,94,.15);border:1px solid rgba(244,63,94,.35);color:var(--hot)}
.list .ok svg{width:14px;height:14px}
.list .neutral{
  flex:0 0 22px;display:inline-grid;place-items:center;border-radius:6px;background:#f3f6ff;border:1px solid #e6e9f5;color:#8091b3
}
.list .neutral svg{width:14px;height:14px}
.tag--brand{color:#f472b6;border-color:rgba(244,114,182,.45)}

/* Pricing grid + card */
.pricing{display:grid;gap:22px;margin-top:6px}
@media (min-width:840px){.pricing{grid-template-columns:1.2fr .8fr}}
.price-card{
  position:relative;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);
  padding:clamp(18px,2.6vw,24px);box-shadow:var(--shadow);color:var(--text)
}
.price-card h3{margin:6px 0 10px}
.price{display:flex;align-items:baseline;gap:10px}
.price .now{font-size:clamp(24px,4.5vw,34px);font-weight:900}
.price .note{opacity:.9}
.price-card .ribbon,.pricing .ribbon{
  display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;font-weight:700;color:#0a0f1f;
  background:linear-gradient(90deg,var(--accent),var(--primary));box-shadow:var(--glow-primary)
}

/* Upsell box */
.upsell{
  background:rgba(255,255,255,.03);border:1px dashed rgba(255,255,255,.16);
  border-radius:var(--radius);padding:clamp(16px,2.4vw,22px);
}

/* Plain details FAQ inside .section (nie miesza z .faq-accordion) */
.section .container details{
  border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.04);padding:12px
}
.section .container details + details{margin-top:10px}
.section .container summary{cursor:pointer;font-weight:700;list-style:none;outline:none}
.section .container summary::-webkit-details-marker{display:none}
.section .container details[open]{background:rgba(255,255,255,.06)}
.section .container details > div{color:var(--muted);margin-top:6px}

/* Natywne podkreślenie zamiast faux-tilde */
.tilde{
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:.15em;
  text-decoration-skip-ink:auto;
}
.tilde::before{content:none}

/* CTA band */
.cta-band{
  border-top:1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(60% 50% at 40% 60%, rgba(124,58,237,.18), transparent 60%),
    radial-gradient(50% 40% at 60% 70%, rgba(6,182,212,.18), transparent 60%),
    rgba(10,15,31,.4);
  padding:clamp(28px,4vw,42px) 0;
}
.cta-band .inner{display:grid;gap:12px;align-items:center}
@media (min-width:900px){.cta-band .inner{grid-template-columns:1.4fr .6fr}}

/* ===== Work thumbs (portfolio) — unified, no duplicates ===== */
.work-thumb.stack{
  aspect-ratio:auto;
  background:transparent;border:0;padding:.5rem;
  display:grid;gap:.5rem;overflow:visible;border-radius:12px;
}
.work-thumb.stack .pane{
  position:relative;overflow:hidden;border-radius:10px;
  border:1px solid var(--border,#2a3144);
  aspect-ratio:var(--thumb-ratio,4/3);
}
.work-thumb.stack .pane img{
  width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in;
}
.work-thumb.stack .pane.auto{
  aspect-ratio:auto!important;border:0!important;background:transparent!important;padding:.25rem;
}
.work-thumb.stack .pane.auto img{
  width:100%;height:auto;object-fit:contain!important;background:transparent;border-radius:12px;
  box-shadow:0 6px 24px rgba(0,0,0,.35);
}
.work-thumb.portrait{
  aspect-ratio:auto;background:transparent;border:0;padding:.25rem;overflow:visible;
}
.work-thumb.portrait img{
  width:100%;height:auto;object-fit:contain!important;border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,.35);cursor:zoom-in;
}
.pane-badge{
  position:absolute;top:.5rem;left:.5rem;font-size:.78rem;padding:.25rem .5rem;border-radius:999px;
  background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.25);color:#fff;
}

/* Nie pokazuj elementów z .visually-hidden, nawet przy globalnych stylach formularzy */
.visually-hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border:0 !important;
  left:-9999px !important;
}