/* =========================================================
   P.U. FRESH - myjnia ręczna Kielce
   Motyw: głębia, grawerunek, chrom i mięta
   Realizacja: jkondraciuk.pl
   ========================================================= */

:root{
  --abyss:#070A0C;
  --deep:#0C1116;
  --slate:#141B21;
  --raise:#1B242C;
  --chrome:#E8EEF2;
  --muted:#93A2AC;
  --dim:#778691;
  --line:rgba(214,226,234,.13);
  --line-2:rgba(214,226,234,.07);
  --mint:#5FE3C0;
  --tide:#3FA9D6;
  --warn:#E9B44C;
  --bad:#E86A6A;

  --f-display:"Oswald",Impact,"Arial Narrow",sans-serif;
  --f-body:"Space Grotesk","Segoe UI",system-ui,sans-serif;

  --wrap:1220px;
  --gap:clamp(1rem,2.4vw,1.75rem);
  --sec:clamp(4.5rem,9vw,8rem);
  --r:14px;
  --r-lg:22px;
  --sheen:linear-gradient(135deg,rgba(232,238,242,.09),rgba(232,238,242,0) 42%,rgba(232,238,242,.05) 100%);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--abyss);color:var(--chrome);
  font-family:var(--f-body);font-size:clamp(1rem,.96rem + .2vw,1.075rem);
  line-height:1.68;overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--mint);text-decoration:none}
a:hover{text-decoration:underline}
button{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--f-display);font-weight:600;line-height:1.05;letter-spacing:.005em;margin:0}
p{margin:0 0 1em}
ul{margin:0;padding:0;list-style:none}
address{font-style:normal}
:focus-visible{outline:2px solid var(--mint);outline-offset:3px;border-radius:4px}

.wrap{width:min(100% - 2.4rem,var(--wrap));margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;z-index:200;background:var(--mint);color:#04120E;padding:.7rem 1.2rem;font-weight:700}
.skip:focus{left:1rem;top:1rem}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- TŁO: pole macek ---------- */
.kraken{position:fixed;inset:0;z-index:-2;pointer-events:none;overflow:hidden;
  background:
    radial-gradient(120% 80% at 50% -10%, rgba(63,169,214,.10), transparent 60%),
    radial-gradient(90% 60% at 90% 100%, rgba(95,227,192,.07), transparent 65%),
    var(--abyss);
}
.kraken__veil{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(7,10,12,.35),rgba(7,10,12,.86) 55%,rgba(7,10,12,.95));
  z-index:2;
}
.kraken__arm{position:absolute;opacity:.5;filter:blur(.2px);will-change:transform;transform:translate3d(0,0,0)}
.kraken__arm--1{top:-6vh;left:-14vw;width:min(62vw,760px);opacity:.34;transform:rotate(-12deg)}
.kraken__arm--2{top:26vh;right:-18vw;width:min(56vw,700px);opacity:.28;transform:rotate(150deg)}
.kraken__arm--3{top:104vh;left:-10vw;width:min(48vw,620px);opacity:.24;transform:rotate(38deg)}
.kraken__arm--4{top:168vh;right:-8vw;width:min(40vw,520px);opacity:.22;transform:rotate(-140deg)}
.kraken__arm--5{top:190vh;left:6vw;width:min(78vw,1000px);opacity:.17}
.kraken__grain{position:absolute;inset:-50%;z-index:4;opacity:.16;
  background-image:radial-gradient(rgba(232,238,242,.55) .5px,transparent .5px);
  background-size:3px 3px;mix-blend-mode:overlay}

/* kotwice: sekcja nie może wpaść pod przyklejony pasek górny */
:target,[id]{scroll-margin-top:96px}
@media (max-width:900px){[id]{scroll-margin-top:84px}}

/* ---------- PASEK GÓRNY ---------- */
.topbar{position:sticky;top:0;z-index:60;background:rgba(7,10,12,.72);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line-2);transition:background .25s,border-color .25s}
.topbar.is-stuck{background:rgba(7,10,12,.93);border-bottom-color:var(--line)}
.topbar__inner{display:flex;align-items:center;gap:1rem;min-height:74px}
.brand{display:flex;align-items:center;gap:.7rem;color:var(--chrome);text-decoration:none;margin-right:auto}
.brand:hover{text-decoration:none}
.brand img{width:44px;height:auto;filter:drop-shadow(0 0 10px rgba(95,227,192,.18))}
.brand__txt{display:flex;flex-direction:column;line-height:1}
.brand__txt strong{font-family:var(--f-display);font-size:clamp(1rem,2.3vw,1.24rem);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.brand__txt small{font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--mint);margin-top:.28rem}

.nav{display:flex;align-items:center;gap:1.55rem}
.nav a{color:var(--muted);font-size:.85rem;letter-spacing:.09em;text-transform:uppercase;font-weight:500;text-decoration:none;transition:color .2s}
.nav a:hover,.nav a[aria-current]{color:var(--chrome);text-decoration:none}
.nav a.is-active{color:var(--mint)}
.nav__tel{color:var(--chrome) !important;font-family:var(--f-display);font-size:1rem !important;letter-spacing:.06em !important}
.nav__cta{color:#04120E !important}

.burger{display:none;width:44px;height:44px;background:none;border:1px solid var(--line);border-radius:10px;cursor:pointer;padding:0;position:relative}
.burger span{position:absolute;left:12px;right:12px;height:2px;background:var(--chrome);transition:.25s}
.burger span:nth-child(1){top:15px}
.burger span:nth-child(2){top:21px}
.burger span:nth-child(3){top:27px}
.burger[aria-expanded="true"] span:nth-child(1){top:21px;transform:rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){top:21px;transform:rotate(-45deg)}

/* ---------- PRZYCISKI ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  padding:.92rem 1.6rem;border-radius:999px;border:1px solid transparent;cursor:pointer;
  font-family:var(--f-display);font-size:.95rem;letter-spacing:.11em;text-transform:uppercase;font-weight:500;
  text-decoration:none;transition:transform .18s,box-shadow .25s,background .25s,color .25s}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn--mint{background:linear-gradient(140deg,var(--mint),#39c9a8);color:#04120E;
  box-shadow:0 10px 30px -12px rgba(95,227,192,.75)}
.btn--mint:hover{box-shadow:0 16px 40px -14px rgba(95,227,192,.9)}
.btn--ghost{border-color:var(--line);color:var(--chrome);background:rgba(232,238,242,.03)}
.btn--ghost:hover{border-color:var(--mint);color:var(--mint)}
.btn--big{padding:1.1rem 2rem;font-size:1.05rem}
.btn[disabled]{opacity:.45;pointer-events:none}

/* ---------- SEKCJE ---------- */
.section{padding-block:var(--sec);position:relative}
.section--tight{padding-block:calc(var(--sec) * .62)}
.eyebrow{font-family:var(--f-display);font-size:.78rem;letter-spacing:.32em;text-transform:uppercase;color:var(--mint);margin:0 0 1rem}
.section__head{max-width:60ch;margin-bottom:clamp(2.2rem,4vw,3.4rem)}
.section__head h2{font-size:clamp(2.1rem,4.4vw,3.5rem);text-transform:uppercase}
.section__head p{color:var(--muted);margin-top:1rem;font-size:1.05rem}
.rule{height:1px;background:linear-gradient(90deg,var(--mint),rgba(95,227,192,0) 70%);margin:1.1rem 0 0;width:180px}

/* ---------- HERO ---------- */
.hero{position:relative;padding-block:clamp(3rem,7vw,6rem) clamp(4rem,8vw,7rem);text-align:center}
.hero__logo{width:min(92%,760px);margin:0 auto clamp(1.4rem,3vw,2.4rem);
  filter:drop-shadow(0 0 34px rgba(95,227,192,.16)) drop-shadow(0 14px 40px rgba(0,0,0,.6))}
.hero__eyebrow{display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.4rem;
  padding:.42rem 1.05rem;border:1px solid var(--line);border-radius:999px;
  font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);background:rgba(232,238,242,.03)}
.hero__eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 10px var(--mint)}
.hero h1{font-size:clamp(2.4rem,6.6vw,5.1rem);text-transform:uppercase;letter-spacing:.01em}
.hero h1 em{font-style:normal;display:block;color:var(--mint)}
.hero__lead{max-width:62ch;margin:1.5rem auto 2.3rem;color:var(--muted);font-size:clamp(1rem,1.6vw,1.16rem)}
.hero__cta{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center}
.hero__meta{display:flex;flex-wrap:wrap;gap:.5rem 2rem;justify-content:center;margin-top:2.6rem;
  font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.hero__meta strong{color:var(--chrome);font-weight:500}
.scroller{margin-top:3.2rem;display:inline-flex;flex-direction:column;align-items:center;gap:.55rem;
  color:var(--dim);font-size:.68rem;letter-spacing:.28em;text-transform:uppercase}
.scroller::after{content:"";width:1px;height:52px;background:linear-gradient(180deg,var(--mint),transparent);animation:drop 2.4s infinite}
@keyframes drop{0%{transform:scaleY(.2);transform-origin:top;opacity:0}40%{opacity:1}100%{transform:scaleY(1);transform-origin:top;opacity:0}}

/* ---------- PASEK ATUTÓW ---------- */
.usp{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-2);
  border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden}
.usp__item{background:linear-gradient(180deg,rgba(20,27,33,.9),rgba(12,17,22,.9));padding:1.7rem 1.5rem}
.usp__item h3{font-size:1.02rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}
.usp__item p{color:var(--muted);font-size:.9rem;margin:0;line-height:1.6}
.usp__item h3::before{content:"";display:block;width:26px;height:2px;background:var(--mint);margin-bottom:1rem;border-radius:2px}

/* ---------- O NAS ---------- */
.about{display:grid;grid-template-columns:1fr .92fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.about__body p{color:var(--muted)}
.about__body p:first-of-type{color:var(--chrome);font-size:1.14rem}
.badge-card{background:linear-gradient(180deg,rgba(27,36,44,.85),rgba(12,17,22,.9));
  border:1px solid var(--line);border-radius:var(--r-lg);padding:2rem;position:relative;overflow:hidden}
.badge-card::before{content:"";position:absolute;inset:0;background:var(--sheen);pointer-events:none}
.badge-card img{width:120px;margin:0 auto 1.4rem;opacity:.95}
.badge-card h3{font-size:1.15rem;text-transform:uppercase;letter-spacing:.08em;text-align:center;margin-bottom:1.3rem}
.factlist li{display:flex;justify-content:space-between;gap:1rem;padding:.72rem 0;border-bottom:1px solid var(--line-2);font-size:.92rem}
.factlist li:last-child{border-bottom:0}
.factlist span:first-child{color:var(--dim)}
.factlist span:last-child{color:var(--chrome);text-align:right;font-weight:500}

/* ---------- POKRĘTŁO SEGMENTU (element sygnaturowy) ---------- */
.dial{border:1px solid var(--line);border-radius:var(--r-lg);padding:1.15rem;
  background:linear-gradient(180deg,rgba(27,36,44,.92),rgba(10,14,18,.92));margin-bottom:2.4rem;
  box-shadow:inset 0 1px 0 rgba(232,238,242,.07)}
.dial__label{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--dim);margin:0 0 .9rem;padding-inline:.3rem}
.dial__track{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;position:relative}
.dial__btn{background:transparent;border:1px solid transparent;border-radius:12px;padding:.85rem .8rem;
  cursor:pointer;text-align:left;transition:.22s;color:var(--muted)}
.dial__btn strong{display:block;font-family:var(--f-display);font-size:1rem;letter-spacing:.05em;text-transform:uppercase;color:inherit}
.dial__btn small{display:block;font-size:.74rem;color:var(--dim);margin-top:.22rem;line-height:1.35}
.dial__btn:hover{background:rgba(232,238,242,.04);color:var(--chrome)}
.dial__btn[aria-pressed="true"]{color:#04120E;background:linear-gradient(140deg,var(--mint),#3ec9a9);
  box-shadow:0 8px 28px -12px rgba(95,227,192,.8)}
.dial__btn[aria-pressed="true"] small{color:rgba(4,18,14,.72)}

/* ---------- PAKIETY ---------- */
.pkgs{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.pkg{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:1.9rem 1.5rem 1.6rem;background:linear-gradient(180deg,rgba(20,27,33,.92),rgba(10,14,18,.95));
  overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}
.pkg::before{content:"";position:absolute;top:0;left:12%;right:12%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(232,238,242,.5),transparent)}
.pkg:hover{transform:translateY(-6px);border-color:rgba(95,227,192,.4);box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}
.pkg--star{border-color:rgba(95,227,192,.42)}
.pkg--star::before{background:linear-gradient(90deg,transparent,var(--mint),transparent)}
.pkg__badge--ghost{visibility:hidden}
.pkg__badge{align-self:flex-start;margin-bottom:1rem;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;
  color:#04120E;background:var(--mint);padding:.28rem .6rem;border-radius:999px;font-weight:700}
.pkg__name{font-size:1.85rem;text-transform:uppercase;letter-spacing:.09em;
  background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.pkg--srebro .pkg__name{background-image:linear-gradient(115deg,#8f9ba4 0%,#e6eef3 34%,#ffffff 47%,#b9c6ce 62%,#7d8a93 100%)}
.pkg--zloto  .pkg__name{background-image:linear-gradient(115deg,#8a6516 0%,#e0b445 32%,#fff0c2 47%,#d8a832 62%,#8a6516 100%)}
.pkg--platyna .pkg__name{background-image:linear-gradient(115deg,#7d8d96 0%,#cfe0e8 30%,#ffffff 45%,#a9bcc6 60%,#6f7f88 100%)}
.pkg--diament .pkg__name{background-image:linear-gradient(115deg,#4f8fa8 0%,#bfe9f7 28%,#ffffff 44%,#9fd7ec 60%,#5aa3bd 100%)}
.price__pkgname{background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.price__pkg--srebro .price__pkgname{background-image:linear-gradient(115deg,#8f9ba4 0%,#e6eef3 34%,#ffffff 47%,#b9c6ce 62%,#7d8a93 100%)}
.price__pkg--zloto .price__pkgname{background-image:linear-gradient(115deg,#8a6516 0%,#e0b445 32%,#fff0c2 47%,#d8a832 62%,#8a6516 100%)}
.price__pkg--platyna .price__pkgname{background-image:linear-gradient(115deg,#7d8d96 0%,#cfe0e8 30%,#ffffff 45%,#a9bcc6 60%,#6f7f88 100%)}
.price__pkg--diament .price__pkgname{background-image:linear-gradient(115deg,#4f8fa8 0%,#bfe9f7 28%,#ffffff 44%,#9fd7ec 60%,#5aa3bd 100%)}
@supports not (background-clip:text){.pkg__name,.price__pkgname{color:var(--chrome);-webkit-text-fill-color:currentColor}}
.pkg__tag{color:var(--mint);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;margin:.5rem 0 1.15rem}
.pkg__price{display:flex;align-items:baseline;gap:.35rem;font-family:var(--f-display);
  border-block:1px solid var(--line-2);padding-block:1rem;margin-bottom:1.15rem}
.pkg__amount{font-size:2.9rem;line-height:1;font-weight:600;font-variant-numeric:tabular-nums}
.pkg__cur{font-size:1.05rem;color:var(--muted);letter-spacing:.08em}
.pkg__note{font-size:.74rem;color:var(--dim);margin:-.7rem 0 1.1rem;line-height:1.45;min-height:1em}
.pkg__desc{color:var(--muted);font-size:.9rem}
.pkg__feats{margin:0 0 1.5rem;display:grid;gap:.5rem}
.pkg__feats li{position:relative;padding-left:1.5rem;font-size:.89rem;color:var(--chrome)}
.pkg__feats li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:2px;
  background:var(--mint);transform:rotate(45deg);opacity:.85}
.pkg .btn{margin-top:auto;width:100%}

/* ---------- USŁUGI ---------- */
.svcs{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line-2);
  border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden}
.svc{background:linear-gradient(180deg,rgba(18,24,30,.94),rgba(10,14,18,.94));padding:1.6rem;
  display:grid;grid-template-columns:1fr auto;gap:.4rem 1.5rem;align-items:start;transition:background .25s}
.svc:hover{background:rgba(27,36,44,.95)}
.svc__title{font-size:1.05rem;text-transform:uppercase;letter-spacing:.04em;grid-column:1}
.svc__price{grid-column:2;grid-row:1/span 2;font-family:var(--f-display);font-size:1.05rem;color:var(--mint);
  text-align:right;max-width:15ch;line-height:1.35}
.svc__desc{grid-column:1;color:var(--muted);font-size:.88rem;margin:0}

/* ---------- TABELA CENNIKA ---------- */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);
  background:linear-gradient(180deg,rgba(20,27,33,.9),rgba(10,14,18,.94))}
table.price{width:100%;border-collapse:collapse;min-width:680px}
table.price th,table.price td{padding:1rem 1.15rem;text-align:left;border-bottom:1px solid var(--line-2)}
table.price thead th{font-family:var(--f-display);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--mint);background:rgba(7,10,12,.5);position:sticky;top:0}
table.price tbody th{font-family:var(--f-display);font-size:1.15rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}
table.price td{font-family:var(--f-display);font-size:1.2rem;font-variant-numeric:tabular-nums;color:var(--chrome)}
table.price tbody tr:hover{background:rgba(95,227,192,.05)}
table.price tbody tr:last-child th,table.price tbody tr:last-child td{border-bottom:0}
.price__sub{display:block;font-family:var(--f-body);font-size:.72rem;letter-spacing:0;text-transform:none;color:var(--dim);margin-top:.25rem;font-weight:400}

/* ---------- REZERWACJA ---------- */
.book{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,4vw,3rem);align-items:stretch}
.panel{border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.4rem,3vw,2.2rem);
  background:linear-gradient(180deg,rgba(22,29,36,.94),rgba(10,14,18,.96));position:relative;overflow:hidden}
.panel::before{content:"";position:absolute;inset:0;background:var(--sheen);pointer-events:none}
.panel>*{position:relative}
.field{margin-bottom:1.15rem}
.field label{display:block;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}
.field .req{color:var(--mint)}
input[type=text],input[type=tel],input[type=email],input[type=date],input[type=password],select,textarea{
  width:100%;padding:.85rem 1rem;border-radius:12px;border:1px solid var(--line);
  background:rgba(7,10,12,.65);color:var(--chrome);font:inherit;transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{border-color:var(--mint);box-shadow:0 0 0 3px rgba(95,227,192,.15);outline:none}
textarea{min-height:110px;resize:vertical}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--mint) 50%),linear-gradient(135deg,var(--mint) 50%,transparent 50%);
  background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:2.6rem}
.field--row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.hp{position:absolute;left:-9999px}

.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.5rem;margin-top:.2rem}
.slot{border:1px solid var(--line);background:rgba(7,10,12,.6);border-radius:10px;padding:.72rem .4rem;
  font-family:var(--f-display);font-size:1rem;letter-spacing:.06em;cursor:pointer;transition:.2s;color:var(--chrome)}
.slot:hover{border-color:var(--mint);color:var(--mint)}
.slot[aria-pressed="true"]{background:var(--mint);color:#04120E;border-color:var(--mint);font-weight:600}
.slots__empty{grid-column:1/-1;color:var(--mint);font-size:.9rem;padding:.9rem 0;margin:0;line-height:1.5}

.consent{display:flex;gap:.75rem;align-items:flex-start;font-size:.82rem;color:var(--muted);line-height:1.55;margin-bottom:1.3rem}
.consent input{margin-top:.28rem;width:18px;height:18px;accent-color:var(--mint);flex:0 0 auto}

.alert{border-radius:12px;padding:1rem 1.2rem;margin-bottom:1.4rem;font-size:.94rem;border:1px solid}
.alert--ok{background:rgba(95,227,192,.1);border-color:rgba(95,227,192,.45);color:#BFF6E7}
.alert--err{background:rgba(232,106,106,.1);border-color:rgba(232,106,106,.45);color:#F7C9C9}
.alert strong{display:block;font-family:var(--f-display);font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.3rem}
.alert ul{margin-top:.4rem;padding-left:1.1rem;list-style:disc}

.steps{list-style:none;padding-left:0;counter-reset:step;display:grid;gap:1.1rem;margin-bottom:1.8rem}
.steps li{counter-increment:step;position:relative;padding-left:3rem;color:var(--muted);font-size:.94rem}
.steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:-.1rem;
  font-family:var(--f-display);font-size:1.05rem;color:var(--mint);letter-spacing:.06em}
.steps strong{display:block;color:var(--chrome);font-weight:500;margin-bottom:.15rem}

/* ---------- GALERIA ---------- */
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem}
.gal figure{margin:0;border-radius:var(--r);overflow:hidden;border:1px solid var(--line-2);position:relative;aspect-ratio:4/3;cursor:zoom-in}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gal figure:hover img{transform:scale(1.06)}
.lightbox{position:fixed;inset:0;z-index:120;background:rgba(4,6,8,.94);display:grid;place-items:center;padding:2rem}
.lightbox img{max-width:min(94vw,1200px);max-height:86vh;border-radius:var(--r);object-fit:contain}
.lightbox__close{position:absolute;top:1.2rem;right:1.4rem;background:none;border:1px solid var(--line);
  border-radius:50%;width:46px;height:46px;font-size:1.4rem;cursor:pointer}
.lightbox figcaption{color:var(--muted);text-align:center;margin-top:1rem;font-size:.9rem}

/* ---------- OPINIE ---------- */
.revs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.1rem}
.rev{border:1px solid var(--line);border-radius:var(--r-lg);padding:1.7rem;
  background:linear-gradient(180deg,rgba(20,27,33,.9),rgba(10,14,18,.94))}
.rev__stars{color:var(--mint);letter-spacing:.22em;font-size:.95rem;margin-bottom:.9rem}
.rev__txt{color:var(--chrome);font-size:.98rem;margin-bottom:1rem}
.rev__who{color:var(--dim);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}

/* ---------- FAQ ---------- */
.faq{border-top:1px solid var(--line-2)}
.faq details{border-bottom:1px solid var(--line-2)}
.faq summary{cursor:pointer;list-style:none;padding:1.35rem 3rem 1.35rem 0;position:relative;
  font-family:var(--f-display);font-size:clamp(1.02rem,1.7vw,1.25rem);letter-spacing:.02em;color:var(--chrome);transition:color .2s}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--mint)}
.faq summary::after{content:"";position:absolute;right:.6rem;top:50%;width:12px;height:12px;
  border-right:2px solid var(--mint);border-bottom:2px solid var(--mint);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq .faq__a{color:var(--muted);padding:0 3rem 1.5rem 0;margin:0;max-width:82ch}

/* ---------- KONTAKT ---------- */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.contact__list li{display:grid;grid-template-columns:5.5rem 1fr;gap:.4rem 1.4rem;align-items:start;padding:1.1rem 0;border-bottom:1px solid var(--line-2)}
.contact__k{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);grid-column:1;padding-top:.28rem}
.contact__v{grid-column:2;font-size:1.05rem}
.contact__v a{color:var(--chrome)}
.contact__v a:hover{color:var(--mint)}
.hourlist li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--line-2);font-size:.94rem}
.hourlist li:last-child{border-bottom:0}
.hourlist .closed{color:var(--dim)}
.hourlist .today{color:var(--mint)}
.map{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:rgba(10,14,18,.9);aspect-ratio:16/11;
  display:grid;place-items:center;text-align:center;padding:2rem;position:relative}
.map iframe{width:100%;height:100%;border:0;display:block}
.map__ph p{color:var(--muted);font-size:.92rem;max-width:38ch;margin-inline:auto}

/* ---------- CTA PAS ---------- */
.strip{border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(2rem,4vw,3.2rem);text-align:center;
  background:linear-gradient(140deg,rgba(95,227,192,.12),rgba(63,169,214,.07) 45%,rgba(10,14,18,.9));position:relative;overflow:hidden}
.strip h2{font-size:clamp(1.8rem,3.6vw,2.8rem);text-transform:uppercase}
.strip p{color:var(--muted);max-width:56ch;margin:1rem auto 2rem}
.strip__btns{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap}

/* ---------- STOPKA ---------- */
.foot{border-top:1px solid var(--line);background:rgba(5,8,10,.86);padding-top:clamp(3rem,6vw,4.5rem);margin-top:var(--sec)}
.foot__top{display:flex;align-items:center;justify-content:space-between;gap:2.5rem;flex-wrap:wrap;
  padding-bottom:2.4rem;margin-bottom:2.8rem;border-bottom:1px solid var(--line-2)}
.foot__id{display:flex;align-items:center;gap:1.2rem;min-width:0}
.foot__id img{width:50px;height:auto;flex:none;opacity:.9;margin:0}
.foot__lead{color:var(--muted);font-size:.94rem;line-height:1.65;max-width:56ch;margin:0}
.foot__lead strong{color:var(--chrome)}
.foot__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem}
.foot__h{font-size:.82rem;letter-spacing:.24em;text-transform:uppercase;color:var(--mint);margin-bottom:1.1rem}
.foot__addr{color:var(--muted);font-size:.92rem;line-height:1.9}
.foot__addr a{color:var(--chrome)}
.foot__hours li{display:flex;justify-content:space-between;gap:.8rem;font-size:.86rem;color:var(--muted);padding:.26rem 0;border-bottom:1px solid rgba(255,255,255,.035)}
.foot__hours li:last-child{border-bottom:0}
.foot__hours .closed{color:var(--dim)}
.foot__links li{padding:.28rem 0}
.foot__links a{color:var(--muted);font-size:.92rem}
.foot__links a:hover{color:var(--mint)}
.social{display:flex;flex-wrap:wrap;gap:.55rem;margin:0;padding:0;list-style:none;flex:none}
.social a{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(95,227,192,.3);border-radius:14px;
  color:var(--mint);background:rgba(95,227,192,.07);text-decoration:none;
  box-shadow:0 0 16px -8px rgba(95,227,192,.5);
  transition:color .2s,border-color .2s,transform .2s,background .2s,box-shadow .3s}
.social a:hover{color:var(--abyss);background:var(--mint);border-color:var(--mint);transform:translateY(-3px);
  box-shadow:0 10px 26px -8px rgba(95,227,192,.7);text-decoration:none}
.social a:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.social svg{width:23px;height:23px;fill:currentColor;display:block}
.foot__bar{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;
  border-top:1px solid var(--line-2);margin-top:3rem;padding-block:1.5rem;font-size:.8rem;color:var(--dim)}
.foot__bar p{margin:0}
.credit a{color:var(--muted)}
.credit a:hover{color:var(--mint)}

/* ---------- PASEK TELEFONU (mobile) ---------- */
.callbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:70;
  background:linear-gradient(140deg,var(--mint),#37c5a5);color:#04120E;text-decoration:none;
  padding:.85rem 1rem;text-align:center;font-family:var(--f-display);letter-spacing:.1em;text-transform:uppercase}
.callbar span{font-size:.7rem;opacity:.75;display:block}
.callbar strong{font-size:clamp(.98rem,4.2vw,1.15rem);white-space:nowrap}

/* ---------- COOKIES ---------- */
.cookies[hidden]{display:none !important}
.cookies{position:fixed;left:0;right:0;bottom:0;z-index:130;padding:1rem;display:flex;justify-content:center}
.cookies__box{max-width:820px;width:100%;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;
  background:rgba(12,17,22,.97);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:1.2rem 1.4rem;box-shadow:0 30px 70px -30px rgba(0,0,0,.95);backdrop-filter:blur(10px)}
.cookies__txt{margin:0;flex:1 1 340px;font-size:.86rem;color:var(--muted);line-height:1.6}
.cookies__btns{display:flex;gap:.6rem;flex-wrap:wrap}
.cookies__btns .btn{padding:.7rem 1.25rem;font-size:.8rem}

/* ---------- 404 ---------- */
.err{min-height:70vh;display:grid;place-items:center;text-align:center;padding-block:5rem}
.err__code{font-family:var(--f-display);font-size:clamp(6rem,20vw,14rem);line-height:.85;color:var(--mint);opacity:.22}
.err h1{font-size:clamp(1.8rem,4vw,2.8rem);text-transform:uppercase;margin-top:-1.5rem}

/* ---------- DOKUMENTY ---------- */
.doc{max-width:78ch}
.doc h2{font-size:clamp(1.3rem,2.4vw,1.65rem);text-transform:uppercase;letter-spacing:.04em;margin:2.4rem 0 .9rem;color:var(--chrome)}
.doc h2:first-child{margin-top:0}
.doc p,.doc li{color:var(--muted)}
.doc ul,.doc ol{padding-left:1.3rem;margin:0 0 1.2rem;display:grid;gap:.5rem}
.doc ul{list-style:disc}
.doc ol{list-style:decimal}
.doc strong{color:var(--chrome)}

/* ---------- ANIMACJE WEJŚCIA ---------- */
.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.8,.28,1)}
.js .reveal.in{opacity:1;transform:none}

/* ---------- RESPONSYWNOŚĆ ---------- */
/* pasek górny robi się ciasny po dołożeniu pozycji - najpierw zwężamy odstępy,
   potem chowamy numer telefonu (jest w hero, w stopce i w pasku mobilnym) */
@media (max-width:1280px){
  .nav{gap:1.15rem}
  .nav a{font-size:.8rem}
}
@media (max-width:1140px){
  .nav{gap:.85rem}
  .nav__tel{display:none}
}
@media (max-width:1080px){
  .pkgs{grid-template-columns:repeat(2,1fr)}
  .usp{grid-template-columns:repeat(2,1fr)}
  .foot__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
  .foot__top{gap:1.6rem}
}
@media (max-width:900px){
  .about,.book,.contact{grid-template-columns:1fr}
  .svcs{grid-template-columns:1fr}
  .dial__track{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
  .burger{display:block;order:3}
  .nav{position:fixed;inset:74px 0 auto;flex-direction:column;align-items:stretch;gap:0;
    background:rgba(7,10,12,.985);border-bottom:1px solid var(--line);padding:1rem 1.2rem 1.8rem;
    transform:translateY(-130%);transition:transform .32s cubic-bezier(.3,.9,.3,1);max-height:calc(100dvh - 74px);overflow:auto}
  .nav.is-open{transform:none}
  .nav a{padding:1rem .2rem;border-bottom:1px solid var(--line-2);font-size:1rem}
  .nav .btn{margin-top:1.1rem;border-bottom:0}
  .callbar{display:block}
  body{padding-bottom:60px}
  .cookies{bottom:60px}
  .hero{padding-top:2rem}
  .contact__list li{grid-template-columns:1fr}
  .contact__v{grid-column:1}
}
@media (max-width:560px){
  .pkgs,.usp,.foot__grid{grid-template-columns:1fr}
  .foot__top{flex-direction:column;align-items:flex-start;gap:1.4rem;padding-bottom:1.8rem;margin-bottom:2rem}
  .foot__id{align-items:flex-start}
  .field--row{grid-template-columns:1fr}
  .dial__track{grid-template-columns:1fr}
  .cookies__box{padding:1rem}
  .cookies__btns{width:100%}
  .cookies__btns .btn{flex:1}
  .foot__bar{flex-direction:column}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  html{scroll-behavior:auto}
  .js .reveal{opacity:1;transform:none}
  .kraken__arm{transition:none}
}

@media print{
  .kraken,.topbar,.callbar,.cookies,.strip,.btn{display:none !important}
  body{background:#fff;color:#000}
}

/* ============ PODSTRONY USŁUGOWE ============ */
.crumbs{display:flex;gap:.55rem;align-items:center;font-size:.78rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--dim);margin-bottom:2rem}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--mint)}
.crumbs span[aria-current]{color:var(--chrome)}

.pagegrid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:3rem;align-items:start;margin-top:2.5rem}
.panel--sticky{position:sticky;top:96px}

.sidebox__price{font-family:var(--f-display);font-size:2.1rem;color:var(--mint);margin:0 0 1.4rem;line-height:1}
.sidebox__h{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--chrome);margin:0 0 .9rem}
.sidebox__cta{margin-top:1.6rem;padding-top:1.5rem;border-top:1px solid var(--line-2)}
.sidebox__note{color:var(--dim);font-size:.8rem;line-height:1.6;margin:.9rem 0 0}
.sidebox__link{margin:1.2rem 0 0;font-size:.86rem}
.sidebox__link a{color:var(--muted)}
.sidebox__link a:hover{color:var(--mint)}

.ticks{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}
.ticks li{position:relative;padding-left:1.5rem;color:var(--muted);font-size:.9rem;line-height:1.55}
.ticks li::before{content:"";position:absolute;left:0;top:.52em;width:7px;height:7px;
  border-radius:2px;background:var(--mint);transform:rotate(45deg)}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.card{display:flex;flex-direction:column;gap:.55rem;padding:1.5rem;text-decoration:none;
  border:1px solid var(--line);border-radius:var(--r-lg);
  background:linear-gradient(180deg,rgba(20,27,33,.85),rgba(12,17,22,.85));
  transition:border-color .25s,transform .25s,background .25s}
.card:hover{border-color:var(--mint);transform:translateY(-3px);text-decoration:none;
  background:linear-gradient(180deg,rgba(26,36,43,.95),rgba(14,20,26,.95))}
.card h3,.card h4{font-family:var(--f-display);font-size:1.06rem;text-transform:uppercase;
  letter-spacing:.06em;color:var(--chrome);margin:0}
.card p{color:var(--muted);font-size:.87rem;line-height:1.6;margin:0;flex:1}
.card__go{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mint)}

.subnav{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--line-2)}
.subnav__h{font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);margin:0 0 1.3rem}

.lead{font-size:1.08rem;color:var(--muted);max-width:64ch;line-height:1.75}

/* rozwijane menu w navbarze */
.nav__drop{position:relative}
.nav__menu{position:absolute;top:calc(100% + .9rem);left:-1rem;min-width:230px;padding:.5rem;
  background:var(--slate);border:1px solid var(--line);border-radius:var(--r-md);
  box-shadow:0 24px 48px rgba(0,0,0,.55);display:none;flex-direction:column;gap:.1rem;z-index:60}
.nav__drop:hover .nav__menu,.nav__drop:focus-within .nav__menu{display:flex}
.nav__menu a{padding:.62rem .8rem;border-radius:8px;font-size:.8rem;letter-spacing:.06em}
.nav__menu a:hover,.nav__menu a[aria-current]{background:rgba(95,227,192,.1);color:var(--mint)}
.nav__drop::after{content:"";position:absolute;left:0;right:0;top:100%;height:1rem}

@media (max-width:1080px){
  .pagegrid{grid-template-columns:1fr;gap:2.2rem}
  .panel--sticky{position:static}
}
@media (max-width:900px){
  .nav__drop{width:100%}
  .nav__menu{position:static;display:flex;min-width:0;padding:0 0 0 .8rem;margin-top:.5rem;
    background:none;border:none;box-shadow:none;border-left:1px solid var(--line-2)}
  .nav__menu a{padding:.5rem .4rem}
}

/* ============ BLOK Z LOGO PRZY REZERWACJI ============ */
.book__side{display:flex;flex-direction:column}
.markbox{flex:1;display:flex;flex-direction:column;margin-top:1.5rem;padding:2.6rem 2rem 2.2rem;border:1px solid var(--line);border-radius:var(--r-lg);
  background:
    radial-gradient(120% 80% at 50% 0%,rgba(95,227,192,.09),transparent 62%),
    linear-gradient(180deg,rgba(20,27,33,.88),rgba(10,14,18,.92));
  text-align:center;position:relative;overflow:hidden}
.markbox::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(65% 50% at 50% 42%,rgba(63,169,214,.1),transparent 70%)}
.markbox__logo{position:relative;width:min(100%,420px);height:auto;margin:0 auto;display:block;
  filter:drop-shadow(0 0 26px rgba(95,227,192,.14))}
.markbox__claim{position:relative;color:var(--muted);font-size:.92rem;line-height:1.65;
  max-width:38ch;margin:1.6rem auto 0}
.markbox__body{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center}
.markbox__meta{position:relative;list-style:none;padding:1.6rem 0 0;margin:1.6rem 0 0;
  border-top:1px solid var(--line-2);display:grid;gap:.7rem}
.markbox__meta li{display:flex;justify-content:space-between;gap:1rem;font-size:.85rem;text-align:left}
.markbox__meta li span:first-child{color:var(--dim);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;padding-top:.15rem}
.markbox__meta li span:last-child{color:var(--chrome);text-align:right}
.markbox__meta a{color:var(--chrome)}
.markbox__meta a:hover{color:var(--mint)}
@media (max-width:560px){
  .markbox{padding:2rem 1.3rem 1.8rem}
  .markbox__meta li{flex-direction:column;gap:.15rem}
  .markbox__meta li span:last-child{text-align:left}
}

/* ============ USŁUGI DODATKOWE - informacja ============ */
.addons{display:flex;align-items:flex-start;gap:.9rem;margin:2rem 0 0;padding:1.05rem 1.3rem;
  color:var(--mint);font-size:.95rem;line-height:1.6;
  border:1px solid rgba(95,227,192,.32);border-left:3px solid var(--mint);
  border-radius:var(--r-md);background:rgba(95,227,192,.06)}
.addons__mark{flex:none;display:grid;place-items:center;width:24px;height:24px;margin-top:.05rem;
  border-radius:50%;background:var(--mint);color:var(--abyss);
  font-family:var(--f-display);font-size:1rem;line-height:1}
.addons a{color:var(--mint);text-decoration:underline;text-underline-offset:3px}
.addons a:hover{color:var(--chrome)}
@media (max-width:560px){.addons{padding:.95rem 1rem;font-size:.9rem;gap:.7rem}}

/* ============ ŻYWE TŁO: POŚWIATY I PĘCHERZYKI ============ */
.glow{position:absolute;z-index:3;border-radius:50%;pointer-events:none;
  filter:blur(70px);will-change:transform,opacity}
.glow--a{width:min(62vw,760px);height:min(62vw,760px);top:-16vh;left:-12vw;
  background:radial-gradient(circle,rgba(95,227,192,.15),rgba(95,227,192,0) 68%);
  animation:drift-a 34s ease-in-out infinite}
.glow--b{width:min(52vw,640px);height:min(52vw,640px);top:34vh;right:-14vw;
  background:radial-gradient(circle,rgba(63,169,214,.13),rgba(63,169,214,0) 68%);
  animation:drift-b 46s ease-in-out infinite}
.glow--c{width:min(44vw,520px);height:min(44vw,520px);bottom:-14vh;left:38vw;
  background:radial-gradient(circle,rgba(95,227,192,.10),rgba(95,227,192,0) 70%);
  animation:drift-c 58s ease-in-out infinite}

@keyframes drift-a{
  0%,100%{transform:translate3d(0,0,0) scale(1);opacity:.75}
  33%    {transform:translate3d(7vw,9vh,0) scale(1.13);opacity:1}
  66%    {transform:translate3d(-3vw,15vh,0) scale(.94);opacity:.6}
}
@keyframes drift-b{
  0%,100%{transform:translate3d(0,0,0) scale(1.04);opacity:.6}
  40%    {transform:translate3d(-9vw,-11vh,0) scale(.9);opacity:.95}
  70%    {transform:translate3d(-4vw,8vh,0) scale(1.16);opacity:.72}
}
@keyframes drift-c{
  0%,100%{transform:translate3d(0,0,0) scale(.96);opacity:.5}
  50%    {transform:translate3d(-12vw,-9vh,0) scale(1.2);opacity:.85}
}

.foam{position:absolute;inset:0;z-index:3;overflow:hidden;pointer-events:none}
.bubble{position:absolute;left:var(--x);bottom:-12vh;width:var(--sz);height:var(--sz);
  border-radius:50%;opacity:0;will-change:transform,opacity;
  border:1px solid rgba(95,227,192,.4);
  background:
    radial-gradient(circle at 32% 28%, rgba(232,238,242,.5), rgba(232,238,242,.08) 42%, transparent 58%),
    radial-gradient(circle at 50% 50%, rgba(95,227,192,.1), transparent 72%);
  box-shadow:0 0 14px rgba(95,227,192,.16), inset 0 0 10px rgba(95,227,192,.1);
  animation:rise var(--dur) linear var(--delay) infinite}

@keyframes rise{
  0%  {transform:translate3d(0,0,0) scale(.65);opacity:0}
  8%  {opacity:.75}
  25% {transform:translate3d(24px,-28vh,0) scale(1)}
  50% {transform:translate3d(-16px,-56vh,0) scale(1.05)}
  75% {transform:translate3d(20px,-84vh,0) scale(1)}
  92% {opacity:.5}
  100%{transform:translate3d(-8px,-118vh,0) scale(1.1);opacity:0}
}

/* akcenty poświaty w sekcjach */
.hero::after{content:"";position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);
  width:min(88vw,900px);height:min(52vh,460px);pointer-events:none;z-index:-1;
  background:radial-gradient(ellipse,rgba(95,227,192,.13),transparent 66%);filter:blur(42px)}
.dial{position:relative}
.dial::before{content:"";position:absolute;inset:-14% -6%;pointer-events:none;z-index:-1;
  background:radial-gradient(ellipse at 50% 50%,rgba(95,227,192,.1),transparent 68%);filter:blur(34px)}
.pkg--star{box-shadow:0 0 0 1px rgba(95,227,192,.14), 0 18px 60px -28px rgba(95,227,192,.55)}
.strip__inner{position:relative;z-index:1}
.strip::before{content:"";position:absolute;left:-10%;top:-60%;width:60%;height:220%;pointer-events:none;
  background:radial-gradient(ellipse,rgba(95,227,192,.11),transparent 68%);filter:blur(52px);
  animation:drift-c 44s ease-in-out infinite}

@media (prefers-reduced-motion:reduce){
  .glow,.bubble,.strip::before{animation:none !important}
  .foam{display:none}
}
@media (max-width:820px){
  /* na telefonach mniej warstw - bateria i płynność ważniejsze niż efekt */
  .glow--c{display:none}
  .bubble:nth-child(n+9){display:none}
  .glow{filter:blur(52px)}
}

/* ============ LISTA USŁUG DODATKOWYCH ============ */
.addonlist{list-style:none;padding:0;margin:0;display:grid;gap:0;
  border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.addonlist li{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;
  padding:1.05rem 1.4rem;background:rgba(20,27,33,.5);border-bottom:1px solid var(--line-2)}
.addonlist li:nth-child(odd){background:rgba(12,17,22,.5)}
.addonlist li:last-child{border-bottom:none}
.addonlist__name{color:var(--chrome);font-size:.98rem;line-height:1.45}
.addonlist__name small{display:block;color:var(--dim);font-size:.82rem;margin-top:.18rem;line-height:1.5}
.addonlist__price{flex:none;font-family:var(--f-display);font-size:1.02rem;color:var(--mint);
  text-align:right;max-width:16ch;line-height:1.35}
@media (max-width:560px){
  .addonlist li{flex-direction:column;gap:.35rem}
  .addonlist__price{text-align:left;max-width:none}
}

/* ============ PORADNIK ============ */
.posts{display:grid;gap:1rem;margin-top:2.5rem}
.post{padding:1.8rem 1.9rem;border:1px solid var(--line);border-radius:var(--r-lg);
  background:linear-gradient(180deg,rgba(20,27,33,.82),rgba(12,17,22,.86));
  transition:border-color .25s,transform .25s}
.post:hover{border-color:rgba(95,227,192,.42);transform:translateY(-2px)}
.post--lead{background:
  radial-gradient(90% 120% at 12% 0%,rgba(95,227,192,.09),transparent 62%),
  linear-gradient(180deg,rgba(22,30,37,.9),rgba(12,17,22,.9))}
.post__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:0 0 .7rem;
  font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.post__title{font-size:clamp(1.25rem,2.5vw,1.7rem);text-transform:none;letter-spacing:.01em;margin:0 0 .6rem;line-height:1.25}
.post--lead .post__title{font-size:clamp(1.5rem,3.2vw,2.1rem)}
.post__title a{color:var(--chrome);text-decoration:none}
.post__title a:hover{color:var(--mint)}
.post__lead{color:var(--muted);font-size:.96rem;line-height:1.7;margin:0;max-width:70ch}
.post__go{display:inline-block;margin-top:1rem;font-size:.75rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--mint);text-decoration:none}
.post__go:hover{color:var(--chrome);text-decoration:none}

.postcta{margin-top:2.6rem;padding:1.6rem 1.7rem;border-radius:var(--r-lg);
  border:1px solid rgba(95,227,192,.28);background:rgba(95,227,192,.05)}
.postcta p{margin:0 0 1.1rem;color:var(--muted);font-size:.95rem;line-height:1.65}
.postcta strong{color:var(--chrome)}
.postcta__btns{display:flex;flex-wrap:wrap;gap:.7rem}
.panel--sticky .ticks li a{color:var(--muted);text-decoration:none}
.panel--sticky .ticks li a:hover{color:var(--mint)}
@media (max-width:560px){
  .post{padding:1.4rem 1.3rem}
  .postcta{padding:1.3rem 1.2rem}
  .postcta__btns .btn{width:100%}
}

/* ============ BANER SOCIAL MEDIA ============ */
.badge-card--social{text-align:center}
.badge-card--social h3{margin-bottom:.8rem}
.badge-card__txt{color:var(--muted);font-size:.93rem;line-height:1.65;margin:0 auto 1.8rem;max-width:34ch}

/* duże, dobrze widoczne odnośniki - klientowi zależy na ruchu z social mediów */
.social--big{display:grid;grid-template-columns:1fr;gap:.7rem;margin:0}
.social--big a{position:relative;display:flex;align-items:center;justify-content:center;gap:.85rem;
  width:100%;height:auto;min-height:56px;padding:.9rem 1.2rem;border-radius:14px;
  border:1px solid rgba(95,227,192,.34);background:rgba(95,227,192,.07);color:var(--chrome);
  font-family:var(--f-display);font-size:.95rem;letter-spacing:.1em;text-transform:uppercase;
  box-shadow:0 0 0 rgba(95,227,192,0);
  transition:background .25s,border-color .25s,box-shadow .3s,transform .25s,color .25s}
.social--big svg{width:24px;height:24px;fill:currentColor;flex:none}
.social--big a::after{content:"";position:absolute;inset:-2px;border-radius:16px;pointer-events:none;
  background:radial-gradient(60% 120% at 50% 50%,rgba(95,227,192,.28),transparent 70%);
  opacity:0;transition:opacity .3s;filter:blur(10px);z-index:-1}
.social--big a:hover{background:rgba(95,227,192,.14);border-color:var(--mint);color:var(--mint);
  transform:translateY(-2px);box-shadow:0 10px 30px -10px rgba(95,227,192,.5),0 0 22px -6px rgba(95,227,192,.45)}
.social--big a:hover::after{opacity:1}
.social--big a:focus-visible{outline:2px solid var(--mint);outline-offset:3px}

/* delikatne pulsowanie poświaty, żeby blok przyciągał wzrok bez krzyku */
@media (prefers-reduced-motion:no-preference){
  .social--big a{animation:socialGlow 4.5s ease-in-out infinite}
  .social--big li:nth-child(2) a{animation-delay:.5s}
  .social--big li:nth-child(3) a{animation-delay:1s}
}
@keyframes socialGlow{
  0%,100%{box-shadow:0 0 0 0 rgba(95,227,192,0)}
  50%    {box-shadow:0 0 20px -6px rgba(95,227,192,.34)}
}

/* poświata pod całym banerem */
.badge-card--social{position:relative;overflow:visible}
.badge-card--social::after{content:"";position:absolute;inset:-8%;pointer-events:none;z-index:-1;
  background:radial-gradient(ellipse at 50% 60%,rgba(95,227,192,.12),transparent 68%);filter:blur(30px)}

@media (min-width:520px) and (max-width:900px){
  .social--big{grid-template-columns:repeat(3,1fr)}
  .social--big a{flex-direction:column;gap:.5rem;padding:1rem .6rem;font-size:.76rem;letter-spacing:.06em}
}

.field__note{color:var(--dim);font-size:.8rem;line-height:1.55;margin:0 0 .7rem;max-width:54ch}

/* ============ DOPŁATA ZA MOCNE ZABRUDZENIE ============ */
.addons--warn{color:#F0C070;border-color:rgba(240,180,80,.34);border-left-color:#F0C070;
  background:rgba(240,180,80,.06)}
.addons--warn .addons__mark{background:#F0C070;color:var(--abyss)}

/* ============ POWŁOKA CERAMICZNA ============ */
.ceramic{position:relative;margin-top:2rem;padding:2.2rem 2.2rem;border-radius:var(--r-lg);
  border:1px solid rgba(63,169,214,.32);overflow:hidden;
  background:
    radial-gradient(90% 130% at 12% 0%,rgba(63,169,214,.14),transparent 62%),
    linear-gradient(180deg,rgba(20,29,37,.9),rgba(11,16,21,.92))}
.ceramic::after{content:"";position:absolute;right:-8%;top:-40%;width:46%;height:180%;pointer-events:none;
  background:radial-gradient(ellipse,rgba(63,169,214,.16),transparent 66%);filter:blur(38px)}
.ceramic__body{position:relative;max-width:74ch}
.ceramic h3{font-size:clamp(1.25rem,2.6vw,1.7rem);text-transform:uppercase;letter-spacing:.06em;margin:.2rem 0 .9rem}
.ceramic p{color:var(--muted);font-size:.96rem;line-height:1.7;margin:0}
.ceramic .eyebrow{color:var(--tide)}
.ceramic__btns{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}
.ceramic__btns .btn{border-color:rgba(63,169,214,.4)}
.ceramic__btns .btn:hover{border-color:var(--tide);color:var(--tide)}
@media (max-width:560px){
  .ceramic{padding:1.6rem 1.3rem}
  .ceramic__btns .btn{width:100%}
}
