/* ============================================================
   DOTYK PIĘKNA — Skarszewy
   White & gold system (krem + złoto, lotos)
   ============================================================ */
:root{
  --bg:#FAF7F0; --bg-2:#F3EBDB; --panel:#FFFFFF; --panel-2:#F7F1E4; --raise:#EAE0C9;
  --text:#2E2A24; --text-2:#524A3B; --muted:#867B65; --faint:#A89D85;
  --red:#B08D3F; --red-2:#B08D3F; --red-deep:#8C6D28; --red-ghost:rgba(176,141,63,.10);
  --steel:#D6DAE0; --amber:#F0A63C;
  --line:rgba(46,42,36,.16); --line-2:rgba(46,42,36,.09);
  --ok:#3BD17A;
  --shadow:0 22px 55px -28px rgba(46,42,36,.16);
  --shadow-lg:0 40px 90px -44px rgba(46,42,36,.22);
  --r:14px; --r-lg:20px; --r-sm:9px;
  --max:1220px; --gut:clamp(20px,5vw,64px);
  --ff-head:"Cormorant Garamond",Georgia,serif;
  --ff:"Nunito Sans",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html.cap{scroll-behavior:auto}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--ff);font-size:16.5px;line-height:1.7;
  -webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2,h3,h4{font-family:var(--ff-head);font-weight:600;line-height:1.14;margin:0}
p{margin:0 0 1rem}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
svg{flex:none}
.svg-i{width:1.15em;height:1.15em}
::selection{background:var(--red);color:#FFFFFF}

.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.sec{padding:clamp(56px,8vw,112px) 0}
.sec-sm{padding:clamp(40px,6vw,72px) 0}
.center{text-align:center}
.mx-auto{margin-inline:auto}
.eyebrow{display:inline-flex;align-items:center;gap:.6em;font-family:var(--ff);font-weight:700;font-size:.74rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--red-2)}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--red)}
.eyebrow.c::before{display:none}
.h-xl{font-size:clamp(2.6rem,7vw,5.4rem);letter-spacing:-.005em}
.h-lg{font-size:clamp(2rem,4.6vw,3.4rem)}
.h-md{font-size:clamp(1.5rem,3vw,2.2rem)}
.lead{font-size:clamp(1.05rem,1.6vw,1.24rem);color:var(--text-2);line-height:1.6;max-width:62ch;font-weight:400}
.muted{color:var(--muted)}
.red{color:var(--red-2)}
.sec-head{max-width:66ch}
.sec-head .lead{margin-top:1rem}
.sec-head.center{margin-inline:auto}.sec-head.center .lead{margin-inline:auto}

/* hazard stripe divider */
.hazard{height:8px;background:repeating-linear-gradient(-45deg,var(--red) 0 22px,#231E15 22px 44px);opacity:.9}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;font-family:var(--ff-head);font-weight:600;
  font-size:1rem;letter-spacing:.04em;text-transform:uppercase;padding:.85em 1.6em;border-radius:var(--r-sm);
  border:2px solid transparent;cursor:pointer;transition:transform .2s,background .2s,color .2s,box-shadow .2s,border-color .2s;white-space:nowrap}
.btn svg{width:1.15em;height:1.15em}
.btn-primary{background:var(--red);color:#FFFFFF;box-shadow:0 12px 26px -14px rgba(176,141,63,.45)}
.btn-primary:hover{background:var(--red-deep);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--text);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--red);color:var(--red-2);transform:translateY(-2px)}
.btn-dark{background:#fff;color:#231E15;border-color:#fff}
.btn-dark:hover{background:#e7e7e7;transform:translateY(-2px)}
.btn-lg{padding:1em 2em;font-size:1.06rem}
.btn-block{width:100%}

/* topbar */
.topbar{background:#2E2A24;color:#E6DEC8;font-size:.82rem;border-bottom:1px solid var(--line-2)}
.topbar .wrap{display:flex;gap:1.4em;align-items:center;justify-content:center;min-height:40px;flex-wrap:wrap;padding-block:6px}
.topbar a,.topbar span{display:inline-flex;align-items:center;gap:.45em}
.topbar a:hover{color:#fff}
.topbar svg{width:15px;height:15px;color:var(--red-2)}
.topbar .dot{width:4px;height:4px;border-radius:50%;background:#4A4234}
@media(max-width:700px){.topbar .hide-s,.topbar .dot{display:none}}

/* nav */
.nav{position:sticky;top:0;z-index:60;background:rgba(250,247,240,.9);backdrop-filter:blur(14px) saturate(1.2);
  border-bottom:1px solid transparent;transition:border-color .3s,box-shadow .3s}
.nav.scrolled{border-color:var(--line);box-shadow:0 10px 30px -20px rgba(46,42,36,.25)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;min-height:74px;gap:1rem}
.brand{display:flex;align-items:center;gap:.7em}
.brand .mark{width:44px;height:44px;flex:none}
.brand .bt{display:flex;flex-direction:column;line-height:1}
.brand .bt b{font-family:var(--ff-head);font-weight:700;font-size:1.4rem;letter-spacing:.06em;text-transform:uppercase}
.brand .bt span{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-top:3px}
.nav-links{display:flex;align-items:center;gap:.05rem}
.nav-links a{padding:.5em .7em;border-radius:8px;font-family:var(--ff-head);font-weight:500;font-size:.98rem;letter-spacing:.03em;
  text-transform:uppercase;color:var(--text-2);position:relative;transition:color .2s;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--red)}
.nav-links a.active::after{content:"";position:absolute;left:.7em;right:.7em;bottom:.15em;height:2px;background:var(--red)}
.nav-right{display:flex;align-items:center;gap:.8rem}
.nav-cta{display:inline-flex}
.burger{display:none;width:46px;height:46px;border:1px solid var(--line);background:var(--panel);border-radius:9px;cursor:pointer;align-items:center;justify-content:center;color:var(--text)}
.burger svg{width:22px;height:22px}

/* drawer */
.drawer{position:fixed;inset:0 0 0 auto;width:min(88vw,350px);background:var(--panel);z-index:80;transform:translateX(100%);
  transition:transform .38s cubic-bezier(.4,0,.1,1);visibility:hidden;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;padding:1.3rem 1.3rem 2rem;border-left:1px solid var(--line)}
.drawer.open{transform:translateX(0);visibility:visible}
.drawer-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.3rem}
.drawer-close{width:44px;height:44px;border:1px solid var(--line);background:var(--bg);border-radius:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text)}
.drawer-close svg{width:20px;height:20px}
.drawer a.dl{padding:.9em .3em;font-family:var(--ff-head);font-size:1.12rem;text-transform:uppercase;letter-spacing:.03em;
  border-bottom:1px solid var(--line-2);color:var(--text);display:flex;justify-content:space-between;align-items:center}
.drawer a.dl:hover{color:var(--red-2)}
.drawer a.dl svg{width:18px;height:18px;color:var(--red)}
.drawer .drawer-cta{margin-top:1.3rem;display:flex;flex-direction:column;gap:.7rem}
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:70;opacity:0;visibility:hidden;transition:opacity .3s}
.scrim.open{opacity:1;visibility:visible}

/* hero */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.hero-bg{position:absolute;inset:0;z-index:0}
.treadbg{position:absolute;inset:0;width:100%;height:100%;display:block}
.herograf{background:radial-gradient(90% 70% at 18% 30%,#F3EBDB 0%,#FAF7F0 72%)}
.grafpanel .gp-inner{position:relative;min-height:100%;height:100%;display:block;background:linear-gradient(135deg,#2A251A,#1D1912)}
.gp-icons{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:2.2rem;z-index:1}
.gp-icons span{width:104px;height:104px;border-radius:22px;background:var(--red-ghost);border:1px solid rgba(212,188,122,.25);display:flex;align-items:center;justify-content:center;color:var(--red-2)}
.gp-ic{width:52px;height:52px}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.42}
.hero-bg::after{content:"";position:absolute;inset:0;background:
  linear-gradient(100deg,var(--bg) 20%,rgba(250,247,240,.72) 52%,rgba(250,247,240,.4) 100%),
  linear-gradient(0deg,var(--bg),transparent 40%)}
.hero-inner{position:relative;z-index:2;padding-top:clamp(56px,9vw,120px);padding-bottom:clamp(56px,9vw,120px);max-width:760px}
.hero h1{margin:.6rem 0 0}
.hero h1 .r{color:#8C6D28}
.hero .lead{margin-top:1.4rem}
.hero-cta{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2.1rem}
.hero-stats{display:flex;gap:2.4rem;flex-wrap:wrap;margin-top:2.6rem;padding-top:1.8rem;border-top:1px solid var(--line)}
.hero-stats div{display:flex;flex-direction:column}
.hero-stats b{font-family:var(--ff-head);font-size:2.3rem;color:var(--text);line-height:1}
.hero-stats b .u{color:var(--red-2)}
.hero-stats span{font-size:.82rem;color:var(--muted);margin-top:.35rem;letter-spacing:.02em}

/* marki strip */
.brands{background:#1D1912;border-block:1px solid var(--line-2)}
.brands .wrap{display:flex;align-items:center;gap:clamp(1rem,3vw,2.6rem);flex-wrap:wrap;justify-content:center;padding-block:1.4rem}
.brands span{font-family:var(--ff-head);text-transform:uppercase;letter-spacing:.08em;color:#8A8271;font-size:1.05rem;transition:color .2s}
.brands span:hover{color:#C9C0A8}
.brands .lbl{color:var(--red-2);font-size:.72rem;letter-spacing:.2em;font-weight:700}

/* trust strip */
.trust .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;padding:clamp(30px,4vw,46px) var(--gut)}
.trust .t{display:flex;gap:.85rem;align-items:flex-start}
.trust .t .ic{color:var(--red-2);flex:none;margin-top:2px}
.trust .t .ic svg{width:28px;height:28px}
.trust .t b{font-family:var(--ff-head);font-size:1.3rem;display:block;color:var(--text)}
.trust .t span{font-size:.85rem;color:var(--muted);line-height:1.45}

/* grids */
.grid{display:grid;gap:clamp(14px,2vw,22px)}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.g4s{grid-template-columns:repeat(4,1fr)}
.quotes.single{grid-template-columns:1fr}
.fsocial{display:flex;gap:.7rem;margin-top:1.1rem}
.fsocial a{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:#D8CFBA}
.fsocial a:hover{color:var(--red-2);border-color:var(--red)}
.fsocial svg{width:18px;height:18px}

/* service card */
.svc{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;position:relative;
  transition:transform .3s,box-shadow .3s,border-color .3s}
.svc:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(176,141,63,.5)}
.svc-media{aspect-ratio:16/10;overflow:hidden;position:relative}
.svc-media img{width:100%;height:100%;object-fit:cover;filter:grayscale(.15) contrast(1.03);transition:transform .5s,filter .3s}
.svc:hover .svc-media img{transform:scale(1.06);filter:none}
.svc-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--panel),transparent 55%)}
.svc-media .big-ic{width:66px;height:66px;position:relative;z-index:1}
.svc-b{padding:1.4rem 1.5rem 1.6rem;position:relative}
.svc-b .ic{position:absolute;top:-26px;right:1.3rem;width:50px;height:50px;border-radius:11px;background:var(--red);
  color:#FFFFFF;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 20px -8px rgba(212,188,122,.5)}
.svc-b .ic svg{width:26px;height:26px}
.svc h3{font-size:1.4rem;margin-bottom:.5rem;letter-spacing:.02em}
.svc p{color:var(--muted);font-size:.95rem;margin:0}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}
.chip{font-size:.78rem;font-weight:600;color:var(--text-2);background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:.32em .7em}

/* plain icon card */
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.3rem,2.4vw,1.8rem);
  transition:transform .3s,box-shadow .3s,border-color .3s;height:100%}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(176,141,63,.4)}
.card .ic{width:52px;height:52px;border-radius:12px;background:var(--red-ghost);color:var(--red-2);display:flex;align-items:center;justify-content:center;margin-bottom:1.05rem}
.card .ic svg{width:27px;height:27px}
.card h3{font-size:1.28rem;margin-bottom:.5rem}
.card p{color:var(--muted);font-size:.94rem;margin:0}

/* split feature */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center}
.split.rev .split-media{order:2}
.split-media{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:5/4;border:1px solid var(--line);position:relative}
.split-media img{width:100%;height:100%;object-fit:cover}
.split-media .tagpill{position:absolute;left:16px;bottom:16px;background:rgba(46,42,36,.88);border:1px solid rgba(255,255,255,.18);
  border-radius:8px;padding:.5rem .85rem;font-family:var(--ff-head);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;color:#fff}
.split-media .tagpill b{color:var(--red-2)}
.split-body h2{margin-bottom:1rem}
.ticks{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;gap:.8rem}
.ticks li{display:flex;gap:.7rem;align-items:flex-start;color:var(--text-2)}
.ticks li svg{width:22px;height:22px;color:var(--red-2);flex:none;margin-top:3px}

/* number steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,28px);counter-reset:s}
.step{position:relative;padding:1.6rem 1.4rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--r)}
.step::before{counter-increment:s;content:"0" counter(s);font-family:var(--ff-head);font-size:2.6rem;color:var(--red);opacity:.35;display:block;line-height:1;margin-bottom:.5rem}
.step h3{font-size:1.24rem;margin-bottom:.45rem}
.step p{color:var(--muted);font-size:.94rem;margin:0}

/* stat band */
.statband{background:var(--bg-2);border-block:1px solid var(--line)}
.statband .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;padding-block:clamp(34px,5vw,54px)}
.statband .s{text-align:center}
.statband .s b{font-family:var(--ff-head);font-size:clamp(2.4rem,4vw,3.4rem);color:#fff;display:block;line-height:1}
.statband .s b .u{color:var(--red-2)}
.statband .s span{font-size:.85rem;color:var(--muted);letter-spacing:.03em}

/* testimonials */
.quotes{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(16px,2.4vw,24px)}
.quote{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.7rem;position:relative}
.quote .stars{display:flex;gap:2px;color:var(--amber);margin-bottom:.8rem}
.quote .stars svg{width:18px;height:18px}
.quote p{font-size:1.06rem;line-height:1.55;color:var(--text);margin:0 0 1.1rem;font-style:italic}
.quote .by{display:flex;align-items:center;gap:.7rem}
.quote .av{width:40px;height:40px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--ff-head);font-weight:600;font-size:1rem}
.quote .by b{font-size:.95rem;display:block;font-family:var(--ff);font-weight:700}
.quote .by span{font-size:.8rem;color:var(--faint)}

/* CTA band */
.cta-band{position:relative;overflow:hidden;border-radius:var(--r-lg);border:1px solid var(--line);
  background:linear-gradient(120deg,#B08D3F,#8C6D28);padding:clamp(2.2rem,5vw,3.6rem);text-align:center}
.cta-band .cbg{position:absolute;inset:0;z-index:0}
.cta-band .cbg img{width:100%;height:100%;object-fit:cover;opacity:.14}
.cta-band .cbg::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(46,42,36,.55),rgba(46,42,36,.15))}
.cta-band>*{position:relative;z-index:2}
.cta-band h2{color:#fff}
.cta-band p{color:#F5EEDC;max-width:52ch;margin:.9rem auto 0}
.btn-cta2{background:transparent;color:#FAF7F0;border-color:rgba(250,247,240,.55)}
.btn-cta2:hover{border-color:#FAF7F0;transform:translateY(-2px)}
.cta-band .hero-cta{justify-content:center}

/* pagehead */
.pagehead{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:var(--bg-2)}
.pagehead .pbg{position:absolute;inset:0;z-index:0}
.pagehead .pbg img{width:100%;height:100%;object-fit:cover;opacity:.2}
.pagehead .pbg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 30%,rgba(250,247,240,.6))}
.pagehead .wrap{position:relative;z-index:2;padding-block:clamp(48px,7vw,88px)}
.pagehead .crumbs{font-size:.82rem;color:var(--muted);margin-bottom:1rem;display:flex;gap:.5em;align-items:center}
.pagehead .crumbs a:hover{color:var(--red-2)}
.pagehead .crumbs svg{width:13px;height:13px;opacity:.6}
.pagehead h1{font-size:clamp(2.4rem,6vw,4rem);max-width:20ch}
.pagehead .lead{margin-top:1.1rem}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,54px);align-items:start}
.price-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.7rem 1.8rem;box-shadow:var(--shadow)}
.price-card h3{display:flex;align-items:center;gap:.6em;font-size:1.2rem;letter-spacing:.04em;margin-bottom:1rem}
.price-card h3 .svg-i{width:24px;height:24px;color:var(--red-2)}
.prow{display:flex;align-items:baseline;gap:1rem;padding:.9rem 0;border-bottom:1px dashed var(--line)}
.prow:last-child{border-bottom:0}
.prow .pl{min-width:0}
.prow .pl b{display:block;font-weight:700;font-size:.99rem}
.prow .pl small{color:var(--muted);font-size:.8rem}
.prow .pd{flex:1;border-bottom:2px dotted var(--line-2);transform:translateY(-5px);min-width:24px}
.prow .pp{font-weight:800;white-space:nowrap;color:var(--red-2);font-variant-numeric:tabular-nums}
.info-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.3rem 1.4rem;margin-bottom:1rem;display:flex;gap:1rem;align-items:flex-start}
.info-card .ic{width:46px;height:46px;border-radius:11px;background:var(--red-ghost);color:var(--red-2);display:flex;align-items:center;justify-content:center;flex:none}
.info-card .ic svg{width:22px;height:22px}
.info-card h3{font-size:1.05rem;margin-bottom:.2rem;font-family:var(--ff-head);letter-spacing:.03em}
.info-card p,.info-card a{color:var(--muted);font-size:.95rem;margin:0}
.info-card a:hover{color:var(--red-2)}
.hours{list-style:none;padding:0;margin:0}
.hours li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--line-2);font-size:.94rem}
.hours li:last-child{border-bottom:0}
.hours li span:first-child{color:var(--text-2);font-weight:600}
.hours li span:last-child{color:var(--muted)}
.hours li.closed span:last-child{color:var(--faint)}
.map-card{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:#3A3426;margin-top:1rem;position:relative;min-height:210px;display:flex;align-items:flex-end}
.map-card .mgrid{position:absolute;inset:0;background:
  linear-gradient(rgba(176,141,63,.12),rgba(46,42,36,.5)),
  repeating-linear-gradient(0deg,transparent 0 38px,rgba(255,255,255,.05) 38px 39px),
  repeating-linear-gradient(90deg,transparent 0 38px,rgba(255,255,255,.05) 38px 39px)}
.map-card .mpin{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);color:var(--red-2)}
.map-card .mpin svg{width:40px;height:40px;filter:drop-shadow(0 6px 10px rgba(0,0,0,.6))}
.map-card .mb{position:relative;padding:1.2rem 1.3rem;width:100%;background:linear-gradient(0deg,rgba(40,36,28,.96),transparent)}
.map-card .mb b{display:block;font-size:1rem;font-family:var(--ff-head);letter-spacing:.03em}
.map-card .mb span{display:block;font-size:.85rem;color:#D8CFBA}
.map-card .mb a{display:inline-flex;align-items:center;gap:.4em;margin-top:.6rem;color:var(--red-2);font-weight:700;font-size:.88rem}
.map-card .mb a svg{width:16px;height:16px}

/* form */
.form{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.4rem,3vw,2.2rem)}
.demo-banner{display:flex;align-items:center;gap:.7rem;background:var(--red-ghost);border:1px solid rgba(212,188,122,.35);color:#8C6D28;
  border-radius:10px;padding:.75rem 1rem;font-size:.85rem;font-weight:600;margin-bottom:1.4rem}
.demo-banner svg{width:20px;height:20px;flex:none;color:var(--red-2)}
.field{margin-bottom:1.05rem}
.field label{display:block;font-size:.8rem;font-weight:700;margin-bottom:.4rem;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em}
.field input,.field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--text);background:var(--bg);border:1.5px solid var(--line);
  border-radius:9px;padding:.8rem .95rem;transition:border-color .2s,box-shadow .2s}
.field input::placeholder,.field textarea::placeholder{color:var(--faint)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 4px var(--red-ghost)}
.field textarea{min-height:120px;resize:vertical}
.sel{position:relative}
.sel-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-family:inherit;font-size:1rem;color:var(--text);
  background:var(--bg);border:1.5px solid var(--line);border-radius:9px;padding:.8rem .95rem;cursor:pointer;text-align:left}
.sel-btn.ph{color:var(--faint)}
.sel-btn svg{width:18px;height:18px;color:var(--muted);transition:transform .2s}
.sel.open .sel-btn{border-color:var(--red);box-shadow:0 0 0 4px var(--red-ghost)}
.sel.open .sel-btn svg{transform:rotate(180deg)}
.sel-list{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--panel-2);border:1px solid var(--line);border-radius:9px;
  box-shadow:var(--shadow);z-index:20;padding:.4rem;max-height:250px;overflow:auto;opacity:0;visibility:hidden;transform:translateY(-6px);transition:all .2s}
.sel.open .sel-list{opacity:1;visibility:visible;transform:translateY(0)}
.sel-list button{width:100%;text-align:left;background:transparent;border:0;font-family:inherit;font-size:.95rem;color:var(--text-2);padding:.6rem .7rem;border-radius:7px;cursor:pointer}
.sel-list button:hover,.sel-list button.sel-active{background:var(--red-ghost);color:#6E5620}

/* footer */
.footer{background:#2E2A24;color:#C7BDA6;padding-top:clamp(48px,6vw,80px);border-top:0}
.footer .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:clamp(24px,3vw,48px);padding-bottom:2.4rem}
.footer .brand .bt b{color:#fff}
.footer .fabout{margin-top:1.1rem;font-size:.92rem;line-height:1.6;max-width:34ch;color:#C7BDA6}
.footer h4{color:#fff;font-family:var(--ff-head);font-size:.9rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.1rem}
.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}
.footer ul a{font-size:.93rem;color:#D8CFBA}
.footer ul a:hover{color:#D4BC7A}
.footer .fcontact li{display:flex;gap:.6rem;align-items:flex-start;font-size:.93rem;color:#D8CFBA;margin-bottom:.7rem}
.footer .fcontact svg{width:17px;height:17px;color:#D4BC7A;flex:none;margin-top:3px}
.footer .fbar{border-top:1px solid rgba(255,255,255,.14);padding:1.4rem 0;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.82rem;color:#A99E86}
.footer .fbar a:hover{color:#fff}

/* toast */
.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,120%);background:var(--panel-2);color:var(--text);border:1px solid var(--line);
  padding:1rem 1.3rem;border-radius:12px;box-shadow:var(--shadow-lg);z-index:200;display:flex;align-items:center;gap:.8rem;
  max-width:min(92vw,460px);transition:transform .45s cubic-bezier(.2,.9,.2,1);font-size:.95rem}
.toast.show{transform:translate(-50%,0)}
.toast .tc{width:34px;height:34px;border-radius:8px;background:var(--red);display:flex;align-items:center;justify-content:center;flex:none}
.toast .tc svg{width:18px;height:18px}
.toast b{display:block;font-size:.96rem}
.toast span{font-size:.83rem;color:var(--muted)}

/* reveal */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}
html:not(.js) .reveal{opacity:1;transform:none}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
html.cap .reveal{opacity:1!important;transform:none!important}
.skip{position:absolute;left:-999px;top:0;background:var(--red);color:#fff;padding:.7em 1.1em;z-index:300}
.skip:focus{left:0}

/* responsive */
@media(max-width:1000px){
  .trust .wrap{grid-template-columns:repeat(2,1fr);gap:1.6rem}
  .g4{grid-template-columns:repeat(2,1fr)}
  .g4s{grid-template-columns:repeat(2,1fr)}
  .statband .wrap{grid-template-columns:repeat(2,1fr);gap:2rem}
  .footer .cols{grid-template-columns:1fr 1fr;gap:2rem}
}
@media(max-width:1080px){ .nav-links{display:none} .nav-cta{display:none} .burger{display:flex} }
@media(max-width:860px){
  .hero-inner{max-width:100%}
  .split{grid-template-columns:1fr;gap:2rem}
  .split.rev .split-media{order:0}
  .split-media{max-width:520px;margin-inline:auto;width:100%}
  .steps{grid-template-columns:1fr}
  .g4s{grid-template-columns:1fr}
  .quotes{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .g3{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  body{font-size:16px}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .trust .wrap,.statband .wrap{grid-template-columns:1fr}
  .footer .cols{grid-template-columns:1fr}
  .footer .fbar{flex-direction:column;gap:.5rem}
  .hero-stats{gap:1.4rem}
  .brand .bt span{display:none}
  .cta-band{padding:1.8rem 1.3rem}
}

/* ============================================================
   NOWE SEKCJE — hero-slideshow, brandband, galeria, kalendarz, o mnie
   ============================================================ */

/* hero: slideshow z mglistym przejściem */
.hero-photo{min-height:min(88vh,860px);display:flex;align-items:center;background:#2A251C}
.hero-slides{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-slides .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;
  filter:blur(8px);transform:scale(1.03);
  transition:opacity 2.4s ease,filter 2.4s ease,transform 5.4s ease;will-change:opacity,filter,transform}
.hero-slides .slide.on{opacity:1;filter:blur(0);transform:scale(1)}
html:not(.js) .hero-slides .slide:first-child{opacity:1;filter:none;transform:none}
.hero-veil{position:absolute;inset:0;z-index:1;background:
  linear-gradient(100deg,rgba(250,247,240,.97) 0%,rgba(250,247,240,.9) 34%,rgba(250,247,240,.55) 58%,rgba(250,247,240,.12) 82%,rgba(250,247,240,0) 100%),
  linear-gradient(0deg,rgba(250,247,240,.85),rgba(250,247,240,0) 34%)}
.hero-photo .wrap{position:relative;z-index:2;width:100%}
.hero-photo .hero-inner{padding-top:clamp(56px,8vw,104px);padding-bottom:clamp(56px,8vw,104px);max-width:720px}
.hero-photo .btn-ghost{background:rgba(255,255,255,.62);border-color:rgba(46,42,36,.22)}
.hero-photo .btn-ghost:hover{background:rgba(255,255,255,.85)}
.hero-photo .hero-stats{border-top-color:rgba(46,42,36,.2)}
.hero-photo .hero-stats span{color:var(--text-2)}
@media(max-width:860px){
  .hero-veil{background:linear-gradient(180deg,rgba(250,247,240,.96) 0%,rgba(250,247,240,.9) 55%,rgba(250,247,240,.78) 82%,rgba(250,247,240,.62) 100%)}
}
@media(prefers-reduced-motion:reduce){.hero-slides .slide{transition:none;filter:none;transform:none}}

/* brand band — plansza od klientki */
.brandband{border-block:1px solid var(--line);background:#F3EBDB;line-height:0}
.brandband img{width:100%;max-height:560px;object-fit:cover;object-position:center 42%}

/* galeria realizacji */
.gal{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.8vw,20px)}
.gitem{margin:0;position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);
  background:var(--panel);box-shadow:0 14px 34px -24px rgba(46,42,36,.28)}
.gitem img{width:100%;aspect-ratio:5/7;object-fit:cover;display:block;transition:transform .6s ease}
.gitem:hover img{transform:scale(1.045)}
.gitem figcaption{position:absolute;inset:auto 0 0 0;padding:2.2rem .95rem .85rem;color:#FAF7F0;
  background:linear-gradient(0deg,rgba(35,30,21,.82),rgba(35,30,21,0));opacity:0;transform:translateY(8px);
  transition:opacity .35s ease,transform .35s ease}
.gitem:hover figcaption{opacity:1;transform:none}
.gitem figcaption b{display:block;font-family:var(--ff-head);font-size:1.08rem;letter-spacing:.03em}
.gitem figcaption span{font-size:.78rem;color:#E6D9B8}
@media(hover:none){.gitem figcaption{opacity:1;transform:none}}

/* kalendarz wizyt */
.cal-wrap{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,4vw,54px);align-items:start}
.cal-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:clamp(1.3rem,2.6vw,2rem);box-shadow:var(--shadow)}
.cal-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.1rem}
.cal-head h3{font-size:1.7rem;letter-spacing:.02em}
.cal-note{display:inline-flex;align-items:center;gap:.45em;font-size:.82rem;color:var(--muted)}
.cal-note svg{width:15px;height:15px;color:var(--red-2)}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-dows{margin-bottom:6px}
.dow{text-align:center;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);padding:.2rem 0}
.day{position:relative;aspect-ratio:1;border-radius:10px;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--line-2);background:var(--bg);font-variant-numeric:tabular-nums}
.day b{font-family:var(--ff);font-weight:700;font-size:.95rem;color:var(--text-2)}
.day.empty{border:0;background:transparent}
.day.free{background:rgba(176,141,63,.12);border-color:rgba(176,141,63,.5)}
.day.free b{color:#8C6D28}
.day.free::after{content:"";position:absolute;bottom:6px;width:5px;height:5px;border-radius:50%;background:var(--red)}
.day.busy{background:var(--panel-2)}
.day.busy b{color:var(--faint);font-weight:600}
.day.closed{background:transparent;border-style:dashed}
.day.closed b{color:#C9BFA9;font-weight:400}
.day.past{opacity:.42}
.day.today{outline:2px solid var(--red);outline-offset:1px}
.cal-legend{display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:1.1rem;font-size:.82rem;color:var(--muted)}
.cal-legend span{display:inline-flex;align-items:center;gap:.45em}
.lg{width:14px;height:14px;border-radius:5px;display:inline-block;border:1px solid var(--line-2)}
.lg.free{background:rgba(176,141,63,.16);border-color:rgba(176,141,63,.55)}
.lg.busy{background:var(--panel-2)}
.lg.closed{background:transparent;border-style:dashed}
.cal-demo{display:flex;gap:.6rem;align-items:flex-start;margin:1.2rem 0 0;padding:.8rem .95rem;border-radius:10px;
  background:var(--red-ghost);border:1px solid rgba(212,188,122,.45);font-size:.84rem;color:#6E5620;line-height:1.5}
.cal-demo svg{width:18px;height:18px;flex:none;margin-top:2px;color:var(--red-2)}
.form-h{display:flex;align-items:center;gap:.55em;font-size:1.3rem;letter-spacing:.03em;margin-bottom:1.2rem}
.form-h svg{width:24px;height:24px;color:var(--red-2)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field input[type=date]{color:var(--text-2)}
@media(max-width:1000px){.cal-wrap{grid-template-columns:1fr}}
@media(max-width:560px){.cal-grid{gap:4px}.day{border-radius:8px}.frow{grid-template-columns:1fr}}

/* o mnie — placeholder na zdjęcie */
.ph-card{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);padding:12px}
.ph-frame{aspect-ratio:5/6;border-radius:calc(var(--r-lg) - 6px);border:1.5px dashed rgba(176,141,63,.55);
  background:linear-gradient(150deg,#FAF3E2,#F3EBDB);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem}
.ph-lotus{width:74px;height:74px;color:var(--red);opacity:.85;margin-bottom:.6rem}
.ph-frame b{font-family:var(--ff-head);font-size:1.25rem;letter-spacing:.06em;text-transform:uppercase;color:#8C6D28}
.ph-frame span{font-size:.82rem;color:var(--muted)}
.omnie-sub{margin:-.4rem 0 1rem;font-family:var(--ff-head);font-style:italic;font-size:1.2rem;color:#8C6D28;letter-spacing:.04em}
@media(max-width:860px){.ph-card{max-width:440px;margin-inline:auto}}

/* galeria responsywnie */
@media(max-width:1000px){.gal{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.gal{grid-template-columns:repeat(2,1fr)}}
@media(max-width:430px){.gal{grid-template-columns:1fr}.gitem img{aspect-ratio:4/5}}
