
:root{
  --ink:#3b2f22;--ink-2:#5c5045;--muted:#94877a;--line:#ebe3d8;--line-2:#dccfbf;
  --paper:#fffdf9;--off:#f8f4ee;--off-2:#efe6da;--accent:#b0884f;--beige:#d7c6b1;--taupe:#948473;--gold:#b0884f;--ok:#3f6e4c;--ok-soft:#edf3ec;
  --r:14px;--safe-b:env(safe-area-inset-bottom);--nav:64px;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html,body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
html,body,a,button,label,input,summary,.chip,.stp,.stepper{touch-action:manipulation}
.to{touch-action:none;overscroll-behavior:contain}
.to-bar{touch-action:pan-x}
img{-webkit-touch-callout:none;-webkit-user-drag:none}
input,textarea{-webkit-user-select:text;user-select:text}
.loupe{position:absolute;width:128px;height:128px;margin:-64px 0 0 -64px;border-radius:50%;border:3px solid #fff;box-shadow:0 6px 24px rgba(0,0,0,.55);background-repeat:no-repeat;background-color:#000;pointer-events:none;z-index:7;overflow:hidden}
.loupe::before,.loupe::after{content:"";position:absolute;background:var(--accent);left:50%;top:50%}
.loupe::before{width:2px;height:28px;margin:-14px 0 0 -1px}
.loupe::after{width:28px;height:2px;margin:-1px 0 0 -14px}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:Jost,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--off);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
button,input{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0}
a{color:inherit;text-decoration:none}
a,button,label{-webkit-tap-highlight-color:transparent}
.disp{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;letter-spacing:-.01em;line-height:1.02}
.cap{font-family:Jost,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.14em;font-size:11px}
.wrap{padding:0 max(18px,env(safe-area-inset-left)) 0 max(18px,env(safe-area-inset-right));max-width:1120px;margin:0 auto}

/* Demo strip */
.demo{background:var(--accent);color:#fff;font-size:11.5px;text-align:center;padding:7px 12px;padding-top:calc(7px + env(safe-area-inset-top));letter-spacing:.02em}
.demo b{font-weight:600}

/* Header */
header.top{position:sticky;top:0;z-index:40;background:rgba(29,27,24,.96);color:#fff;-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid #2d2a25}
header.top .wrap{height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.logo img{height:26px;width:auto}
.hbtn{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;position:relative}
.hbtn svg{width:22px;height:22px}
.badge{position:absolute;top:6px;right:4px;min-width:18px;height:18px;border-radius:9px;background:#fff;color:var(--ink);font-size:10.5px;font-weight:700;display:grid;place-items:center;padding:0 5px}
.badge[data-n="0"]{display:none}
.back{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:500;height:44px;padding-right:8px}

/* Views */
main{min-height:70vh;padding-bottom:calc(var(--nav) + 24px + var(--safe-b))}
.view{animation:in .25s ease}
@keyframes in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* Hero */
.hero{position:relative;color:#fff;min-height:min(78vh,640px);display:flex;align-items:flex-end;overflow:hidden;background:#222}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 20%,rgba(0,0,0,.72) 100%)}
.hero .wrap{position:relative;z-index:1;padding-bottom:28px;width:100%}
.hero h1{font-size:clamp(38px,11vw,72px);margin:10px 0 12px}
.hero p{font-size:15px;opacity:.92;max-width:460px}
.cta-row{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 22px;border-radius:999px;font-weight:600;font-size:14.5px;transition:transform .1s,background .2s}
.btn:active{transform:scale(.97)}
.btn.dark{background:var(--ink);color:#fff}
.btn.light{background:#fff;color:var(--ink)}
.btn.ghost{border:1.5px solid currentColor}
.btn.block{width:100%}

/* USP strip */
.usp{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding:16px max(18px,env(safe-area-inset-left));scroll-snap-type:x mandatory;background:var(--paper);border-bottom:1px solid var(--line)}
.usp::-webkit-scrollbar{display:none}
.usp div{flex:none;scroll-snap-align:start;display:flex;gap:10px;align-items:center;background:var(--off);border-radius:12px;padding:10px 14px;font-size:12.5px;line-height:1.3}
.usp svg{width:22px;height:22px;flex:none}
.usp b{display:block;font-size:13px}

section.blk{padding:34px 0 8px}
.sec-h{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:14px;gap:12px}
.sec-h h2{font-size:28px}
.sec-h a{font-size:13px;font-weight:600;border-bottom:1.5px solid;white-space:nowrap}

/* Chips */
.chips{scroll-padding-left:18px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px max(18px,env(safe-area-inset-left)) 6px;margin:0 calc(-1*max(18px,env(safe-area-inset-left)))}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;height:38px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);background:var(--paper);font-size:13px;font-weight:500;display:inline-flex;align-items:center}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}

/* Category tiles */
.cats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cat{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;background:#ddd}
.cat img{width:100%;height:100%;object-fit:cover}
.cat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.62))}
.cat span{position:absolute;left:14px;bottom:12px;z-index:1;color:#fff;font-family:"Cormorant Garamond",Georgia,serif;font-size:24px;text-transform:uppercase}
.cat small{position:absolute;left:14px;bottom:42px;z-index:1;color:#fff;opacity:.85;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-family:Jost,system-ui,sans-serif}

/* Product cards */
.rail{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;scroll-padding-left:max(18px,env(safe-area-inset-left));padding:0 max(18px,env(safe-area-inset-left)) 6px;margin:0 calc(-1*max(18px,env(safe-area-inset-left)))}
.rail::-webkit-scrollbar{display:none}
.rail .pc{flex:0 0 62%;scroll-snap-align:start}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px}
.pc{display:block}
.pc .im{border-radius:var(--r);overflow:hidden;aspect-ratio:1;background:var(--off-2)}
.pc img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.pc:active img{transform:scale(1.03)}
.pc h3{font-size:13px;font-weight:600;margin-top:9px;line-height:1.3;text-transform:uppercase;letter-spacing:.01em}
.pc .pr{font-size:13px;color:var(--ink-2);margin-top:2px}
.pc .pr b{font-weight:700;color:var(--ink)}
.pc .ct{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:6px;font-family:Jost,system-ui,sans-serif}

/* Steps */
.steps{display:grid;gap:10px;counter-reset:s}
.step{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:flex;gap:14px;align-items:flex-start}
.step::before{counter-increment:s;content:counter(s);flex:none;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:700;font-size:14px}
.step b{display:block;font-size:14.5px}
.step p{font-size:13.5px;color:var(--ink-2)}

/* Sample promo */
.promo{background:var(--ink);color:#fff;border-radius:18px;padding:22px;display:grid;grid-template-columns:1fr 92px;gap:16px;align-items:center}
.promo h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;font-size:26px;text-transform:uppercase;line-height:1.05}
.promo p{font-size:13.5px;opacity:.8;margin:6px 0 14px}
.promo .sw{width:92px;height:92px;border-radius:12px;overflow:hidden;transform:rotate(6deg);box-shadow:0 10px 30px rgba(0,0,0,.4)}
.promo .sw img{width:100%;height:100%;object-fit:cover}
.promo .btn{height:44px;padding:0 18px;font-size:13.5px}

/* FAQ */
details.faq{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-bottom:8px}
details.faq summary{list-style:none;padding:16px;font-weight:600;font-size:14.5px;display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:56px}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";font-size:22px;font-weight:400;color:var(--muted);transition:transform .2s}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq p{padding:0 16px 16px;font-size:14px;color:var(--ink-2)}

/* Contact */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.contact a{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:flex;flex-direction:column;gap:4px;min-height:92px}
.contact a svg{width:22px;height:22px}
.contact b{font-size:14px}
.contact span{font-size:12px;color:var(--muted)}

footer.ft{background:var(--ink);color:rgba(255,255,255,.7);font-size:12.5px;padding:28px 0 calc(var(--nav) + 36px + var(--safe-b));margin-top:36px}
footer.ft img{height:24px;width:auto;margin-bottom:12px}
footer.ft a{display:block;padding:6px 0;color:#fff}

/* Shop */
.shop-h{padding:22px 0 10px}
.shop-h h1{font-size:34px}
.shop-h p{font-size:13.5px;color:var(--ink-2);margin-top:4px}
.filters{position:sticky;top:56px;z-index:30;background:rgba(246,242,236,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:10px 0 8px;margin-bottom:10px}
.count{font-size:12px;color:var(--muted);margin:2px 0 12px}

/* Product page */
.gal{position:relative;background:var(--off-2)}
.gal .track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.gal .track::-webkit-scrollbar{display:none}
.gal .track img{flex:0 0 100%;scroll-snap-align:center;aspect-ratio:4/3;object-fit:cover;width:100%}
.dots{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:6px}
.dots i{width:6px;height:6px;border-radius:3px;background:rgba(255,255,255,.55);transition:.2s}
.dots i.on{width:18px;background:#fff}
.pinfo{padding:18px 0 4px}
.pinfo .ct{font-size:11px}
.pinfo h1{font-size:30px;margin:6px 0 8px}
.price-l{display:flex;align-items:baseline;gap:6px}
.price-l b{font-size:24px;font-weight:700}
.price-l span{color:var(--muted);font-size:13px}
.rating{display:flex;gap:6px;align-items:center;font-size:12.5px;color:var(--ink-2);margin-top:8px}

.card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px;margin-top:14px}
.card h2{font-size:12px;font-family:Jost,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;font-weight:400;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}
.card h2 em{font-style:normal;font-family:Jost,system-ui,sans-serif;letter-spacing:0;text-transform:none;font-size:12px;color:var(--muted)}
.dims{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:end}
.dims label{font-size:11.5px;color:var(--muted);display:block;margin-bottom:5px;font-weight:500}
.stepper{display:flex;align-items:center;border:1.5px solid var(--line-2);border-radius:12px;height:52px;overflow:hidden;background:var(--paper)}
.stepper:focus-within{border-color:var(--ink)}
.stepper button{width:40px;height:100%;font-size:20px;color:var(--ink-2)}
.stepper button:active{background:var(--off-2)}
.stepper input{flex:1;min-width:0;width:100%;border:0;outline:0;text-align:center;font-size:17px;font-weight:600;background:transparent;-moz-appearance:textfield}
.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.dims .x{padding-bottom:14px;color:var(--muted)}
.unit{font-size:11.5px;color:var(--muted);margin-top:8px}
.preview{margin-top:14px;border-radius:12px;background:var(--off-2);padding:14px;display:grid;place-items:center;min-height:170px}
.wall{position:relative;background-size:cover;background-position:center;box-shadow:0 8px 24px rgba(0,0,0,.18);transition:aspect-ratio .2s,width .2s}
.wall .tag{position:absolute;font-size:11px;font-weight:600;background:rgba(0,0,0,.65);color:#fff;padding:3px 8px;border-radius:999px;white-space:nowrap}
.wall .tw{left:50%;bottom:-11px;transform:translateX(-50%)}
.wall .th{left:-12px;top:50%;transform:translate(-50%,-50%) rotate(-90deg)}
.area{display:flex;justify-content:space-between;font-size:13px;margin-top:16px;color:var(--ink-2)}
.area b{color:var(--ink)}
.howto{font-size:12.5px;color:var(--ink-2);margin-top:10px;display:flex;gap:8px;align-items:flex-start;background:var(--off);padding:10px 12px;border-radius:10px}
.howto svg{flex:none;width:18px;height:18px;margin-top:1px}

.structs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.st{border:1.5px solid var(--line-2);border-radius:12px;padding:8px;text-align:center;font-size:12.5px;font-weight:600;position:relative;background:var(--paper)}
.st img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;margin-bottom:6px;background:var(--off-2)}
.st small{display:block;font-weight:400;font-size:11px;color:var(--muted);line-height:1.3}
.st.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.st.on::after{content:"✓";position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;display:grid;place-items:center}

.trust{display:grid;gap:12px}
.trust div{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;line-height:1.4}
.trust svg{flex:none;width:22px;height:22px;color:var(--ok)}
.trust b{display:block;font-size:14px}
.trust span{color:var(--ink-2)}

.sample{display:flex;gap:12px;align-items:center;margin-top:14px;padding:14px;border:1.5px dashed var(--line-2);border-radius:14px;background:var(--paper)}
.sample img{width:56px;height:56px;border-radius:8px;object-fit:cover;flex:none}
.sample div{flex:1;font-size:13px;line-height:1.35}
.sample b{display:block;font-size:14px}
.sample button{height:40px;padding:0 14px;border-radius:999px;border:1.5px solid var(--ink);font-weight:600;font-size:13px;white-space:nowrap}

.desc{font-size:14.5px;color:var(--ink-2)}
.desc p+p{margin-top:10px}

/* Sticky buy bar */
.buybar{position:fixed;left:0;right:0;bottom:0;z-index:45;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:10px max(16px,env(safe-area-inset-left)) calc(10px + var(--safe-b));display:flex;align-items:center;gap:12px;transform:translateY(110%);transition:transform .25s}
.buybar.show{transform:none}
.buybar .t{flex:1;line-height:1.2}
.buybar .t small{display:block;font-size:11.5px;color:var(--muted)}
.buybar .t b{font-size:20px;font-weight:700}
.buybar .btn{height:50px;padding:0 20px}

/* Bottom nav */
nav.bn{position:fixed;left:0;right:0;bottom:0;z-index:44;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:var(--safe-b);transition:transform .25s}
nav.bn.hide{transform:translateY(110%)}
nav.bn a{height:var(--nav);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10.5px;font-weight:500;color:var(--muted);position:relative}
nav.bn a svg{width:23px;height:23px}
nav.bn a.on{color:var(--ink)}
nav.bn .badge{top:8px;right:calc(50% - 22px);background:var(--ink);color:#fff}

/* Cart */
.cart-h{padding:22px 0 14px}
.cart-h h1{font-size:34px}
.ci{display:grid;grid-template-columns:84px 1fr;gap:14px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:12px;margin-bottom:10px}
.ci img{width:84px;height:84px;border-radius:10px;object-fit:cover}
.ci h3{font-size:13px;font-weight:600;text-transform:uppercase;line-height:1.3}
.ci p{font-size:12.5px;color:var(--muted);margin-top:2px}
.ci .row{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.ci .row b{font-size:15px}
.ci .rm{font-size:12px;color:var(--muted);text-decoration:underline;height:32px}
.sum{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px;margin-top:6px}
.sum .l{display:flex;justify-content:space-between;font-size:14px;padding:5px 0}
.sum .l.t{font-size:18px;font-weight:700;border-top:1px solid var(--line);margin-top:8px;padding-top:12px}
.empty{text-align:center;padding:60px 20px;color:var(--ink-2)}
.empty svg{width:56px;height:56px;margin:0 auto 12px;color:var(--line-2)}

/* Sheet / toast */
.sheet-bg{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:60;opacity:0;pointer-events:none;transition:opacity .2s}
.sheet-bg.on{opacity:1;pointer-events:auto}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:61;background:var(--paper);border-radius:22px 22px 0 0;padding:10px 20px calc(22px + var(--safe-b));transform:translateY(105%);transition:transform .28s cubic-bezier(.2,.8,.2,1);max-height:88vh;overflow:auto}
.sheet.on{transform:none}
.sheet .grab{width:40px;height:5px;border-radius:3px;background:var(--line-2);margin:0 auto 16px}
.sheet h3{font-size:22px;margin-bottom:6px}
.sheet p{font-size:14px;color:var(--ink-2);margin-bottom:16px}
.sheet .added{display:flex;gap:12px;align-items:center;background:var(--ok-soft);border-radius:12px;padding:12px;margin-bottom:16px;font-size:13.5px}
.sheet .added img{width:52px;height:52px;border-radius:8px;object-fit:cover}
.sheet .btns{display:grid;gap:10px}

@media (min-width:760px){
  .grid{grid-template-columns:repeat(4,1fr)}
  .rail .pc{flex-basis:28%}
  .cats{grid-template-columns:repeat(3,1fr)}
  .cat{aspect-ratio:4/3}
  .hero{min-height:560px}
  .pwrap{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:start;padding-top:20px}
  .gal{border-radius:18px;overflow:hidden;position:sticky;top:76px}
  .steps{grid-template-columns:repeat(3,1fr)}
  .contact{grid-template-columns:repeat(4,1fr)}
  .sheet{max-width:480px;margin:0 auto;border-radius:22px;bottom:24px}
}

/* Wybór fragmentu */
.crop{position:relative;overflow:hidden;border-radius:10px;touch-action:none;user-select:none;-webkit-user-select:none;background:#ddd;cursor:crosshair}
.crop img{width:100%;height:auto;display:block;pointer-events:none;-webkit-user-drag:none}
.frame{position:absolute;box-shadow:0 0 0 9999px rgba(0,0,0,.55);outline:2px solid #fff;cursor:grab;touch-action:none;background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px);background-size:33.333% 33.333%;background-position:-1px -1px}
.frame.drag{cursor:grabbing}
.frame .fl{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;box-shadow:0 2px 10px rgba(0,0,0,.3)}
.frame .fl svg{width:22px;height:22px}
.zoom{display:flex;align-items:center;gap:12px;margin-top:14px;font-size:18px;color:var(--ink-2)}
.zoom input{flex:1;accent-color:var(--ink);height:32px}
.hint{font-size:12.5px;color:var(--muted);margin-top:4px}
.res{margin-top:14px}
.res .cap{color:var(--muted);font-size:10.5px}
.res .preview{margin-top:8px}
#tryon{margin-top:14px}
#tryon svg{width:20px;height:20px}
.tease{display:grid;grid-template-columns:1fr 1fr;border-radius:18px;overflow:hidden;background:var(--paper);border:1px solid var(--line)}
.tease .ph{position:relative;background:#e9e6e1;min-height:180px;overflow:hidden}
.tease .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tease .ph .q{position:absolute;inset:16% 14% 30% 14%;outline:2px dashed rgba(255,255,255,.95);background:rgba(255,255,255,.08)}
.tease .ph .q i{position:absolute;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--ink);transform:translate(-50%,-50%)}
.tease .tx{padding:18px}
.tease h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;font-size:24px;text-transform:uppercase;line-height:1.05}
.tease p{font-size:13px;color:var(--ink-2);margin:8px 0 14px}
.tease .btn{height:42px;padding:0 16px;font-size:13px}

/* Przymierzalnia */
.to{position:fixed;inset:0;z-index:80;background:#0d0d0d;color:#fff;display:flex;flex-direction:column}
.to[hidden]{display:none}
.to-top{height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0;display:flex;align-items:center;justify-content:space-between;flex:none}
.to-top>b{font-family:Jost,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:400}
.to-top #tx{width:44px;height:44px;font-size:28px;line-height:1;color:#fff;flex:none}
.to-stage{position:relative;flex:1;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}
.to-stage img.ph{position:absolute;pointer-events:none;-webkit-user-drag:none}
.paper{position:absolute;left:0;top:0;transform-origin:0 0;background-repeat:no-repeat;pointer-events:none;will-change:transform;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.paper.mul{mix-blend-mode:multiply}
.paper.off{opacity:0!important}
.hd{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;touch-action:none;z-index:6;display:grid;place-items:center}
.hd::after{content:"";width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--accent);box-shadow:0 2px 8px rgba(0,0,0,.5)}
.quad{position:absolute;inset:0;pointer-events:none;z-index:2}
.to-top .tp-wrap{flex:1;min-width:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;padding-right:6px}
.to-top .tp-wrap.off .tp{visibility:hidden}
.to-top .tt{font-family:Jost,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:400;opacity:.85;text-align:center}
.tp{display:flex;align-items:center;gap:6px;min-width:0;height:44px;background:#1f1f1f;border:1px solid #333;border-radius:12px;padding:0 6px 0 8px;color:#fff;text-align:left}
.tp:active{background:#333}
.tp small{display:block;font-size:9px;opacity:.65;text-transform:uppercase;letter-spacing:.06em;line-height:1.1}
.tp b{display:block;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tp img{width:28px;height:28px;border-radius:6px;object-fit:cover;flex:none}
.tp small{white-space:nowrap}
@media (max-width:440px){.tp img{display:none}.to-top .tt{font-size:8.5px;letter-spacing:.06em}.tp{padding:0 4px 0 8px}.tp .nx{font-size:16px}}
.tp .tx{min-width:0;flex:1}
.tp .nx{flex:none;font-size:18px;opacity:.8}
.to-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;gap:12px}
.to-empty svg{width:56px;height:56px;opacity:.8}
.to-empty h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;font-size:28px;text-transform:uppercase;line-height:1.05}
.to-empty p{font-size:14px;opacity:.75;max-width:320px}
.to-empty ol{font-size:13.5px;opacity:.85;text-align:left;max-width:300px;padding-left:18px;margin:4px 0 8px}
.to-empty .btn{width:100%;max-width:320px}
.to-empty small{font-size:11.5px;opacity:.6;max-width:300px}
.to-bar{flex:none;padding:12px 16px calc(14px + env(safe-area-inset-bottom));background:#161616;border-top:1px solid #262626}
.to-bar[hidden]{display:none}
.to-dims{display:grid;grid-template-columns:1fr auto 1fr auto;gap:8px;align-items:center;margin-bottom:6px}
.to-dims .stp{display:flex;align-items:center;background:#262626;border:1px solid #333;border-radius:10px;height:44px;overflow:hidden}
.to-dims .stp:focus-within{border-color:#fff}
.to-dims button{width:34px;height:100%;color:#fff;font-size:18px}
.to-dims input{flex:1;min-width:0;width:100%;background:transparent;border:0;outline:0;color:#fff;text-align:center;font-size:16px;font-weight:600;-moz-appearance:textfield}
.to-dims input::-webkit-outer-spin-button,.to-dims input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.to-dims span{font-size:12px;opacity:.7}
.to-seg{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px}
.to-seg button{height:34px;border-radius:999px;background:#262626;border:1px solid #333;color:#fff;font-size:12.5px;font-weight:600}
.to-seg button.on{background:#fff;color:var(--ink)}
.to-dims .stp.est{border-style:dashed;border-color:#8c8c8c}
.to-dims .stp.est input{opacity:.8}
.to-est{font-size:11.5px;opacity:.65;text-align:center;margin:2px 0 6px}
.to-tip{font-size:12.5px;opacity:.75;margin-bottom:10px;text-align:center}
.to-row{display:flex;align-items:center;gap:12px;font-size:12.5px;margin-bottom:8px}
.to-row span{flex:none;width:96px;opacity:.85}
.to-stage.pan{cursor:grab}
.to-stage.pan .hd{visibility:hidden}
.to-row input{flex:1;accent-color:#fff}
.to-btns{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin-bottom:12px}
.to-btns::-webkit-scrollbar{display:none}
.to-btns .chip{background:#262626;color:#fff;border-color:#333;flex:none;cursor:pointer}
.to-btns .chip.on{background:#fff;color:var(--ink)}
.to-btns input{display:none}

/* kreator: najpierw wymiar, potem kadr, struktura i cena w jednym oknie */
.cfgm{position:fixed;inset:0;z-index:50;background:var(--off);display:flex;flex-direction:column}
.cfgm-h{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;padding-top:calc(14px + env(safe-area-inset-top));background:var(--paper);border-bottom:1px solid var(--line)}
.cfgm-h b{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;font-weight:400}
.cfgm-h button{width:40px;height:40px;border-radius:50%;background:var(--off-2);font-size:22px;line-height:1}
.cfgm-b{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 16px 20px;overscroll-behavior:contain}
.cfgm-f{background:var(--paper);border-top:1px solid var(--line);padding:10px 16px calc(10px + var(--safe-b));display:flex;align-items:center;gap:12px}
.cfgm-f .t{flex:1;line-height:1.2}.cfgm-f .t small{display:block;font-size:11.5px;color:var(--muted)}.cfgm-f .t b{font-size:20px;font-weight:700}
.cfgm-f .btn{height:50px;padding:0 20px}
.wallsz{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-top:12px}
.wallsz button{font-size:13px;text-decoration:underline;color:var(--ink-2)}
.sumtab{display:grid;grid-template-columns:1fr auto;gap:8px 12px;font-size:14px}
.sumtab span{color:var(--muted)}.sumtab b{text-align:right}
.sumtab .tot{font-size:18px;color:var(--ink)}
.pgsum{margin-top:12px;font-size:14px;color:var(--ink-2)}.pgsum b{color:var(--ink)}
.stepper.err{border-color:#c0392b!important;box-shadow:0 0 0 3px rgba(192,57,43,.12)}
.dimerr{color:#c0392b;font-size:13px;margin-top:8px}
html.lock,html.lock body{overflow:hidden}

/* ===== INAtelier ===== */
.logo{display:flex;flex-direction:column;line-height:1;color:#fff}
.logo .wm{font-family:"Cormorant Garamond",Georgia,serif;font-size:25px;letter-spacing:.02em}
.logo .wm b{font-family:Jost,system-ui,sans-serif;font-weight:600;font-size:17px;letter-spacing:.16em;margin-right:1px}
.logo small{font-size:8.5px;letter-spacing:.32em;text-transform:uppercase;opacity:.65;margin-top:3px}
footer.ft .logo{margin-bottom:12px}
.hero h1{text-transform:none}
.sec-h h2.disp{font-size:30px}
.pc h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;font-weight:600;letter-spacing:0;text-transform:none}
.legal{padding:22px 0 30px;font-size:14.5px;color:var(--ink-2);-webkit-user-select:text;user-select:text}
.legal h1{font-size:34px;margin-bottom:14px;color:var(--ink)}
.legal h2{font-family:Jost,system-ui,sans-serif;font-size:15px;font-weight:600;margin:22px 0 6px;color:var(--ink)}
.legal p,.legal li{margin-bottom:8px}.legal ol,.legal ul{padding-left:20px}
.legal a{text-decoration:underline}
.crumbs{font-size:12px;color:var(--muted);padding:14px 0 0}.crumbs a{text-decoration:underline}
/* zamówienie */
.co{padding-bottom:30px}
.co h1{font-size:34px;margin:18px 0 4px}
.fld{margin-top:12px}
.fld label{display:block;font-size:12.5px;color:var(--ink-2);margin-bottom:5px;font-weight:500}
.fld input,.fld textarea,.fld select{width:100%;height:50px;border:1.5px solid var(--line-2);border-radius:12px;padding:0 14px;font-size:16px;background:var(--paper);-webkit-appearance:none;appearance:none}
.fld textarea{height:auto;padding:12px 14px;min-height:80px;resize:vertical}
.fld input:focus,.fld textarea:focus{outline:none;border-color:var(--ink)}
.fld.bad input,.fld.bad textarea{border-color:#c0392b}
.fld .e{color:#c0392b;font-size:12.5px;margin-top:4px}
.row2{display:grid;grid-template-columns:110px 1fr;gap:10px}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;margin-top:12px;line-height:1.4}
.chk input{width:22px;height:22px;flex:none;margin-top:1px;accent-color:var(--ink)}
.chk.bad{color:#c0392b}
.opt{display:flex;gap:12px;align-items:center;border:1.5px solid var(--line-2);border-radius:14px;padding:14px;margin-top:10px;background:var(--paper)}
.opt.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.opt input{width:20px;height:20px;accent-color:var(--ink)}
.opt div{flex:1;font-size:14px}.opt small{display:block;color:var(--muted);font-size:12px}
.mini{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.mini img{width:48px;height:48px;border-radius:8px;object-fit:cover;flex:none}
.mini div{flex:1}.mini b{white-space:nowrap}
.tot{display:flex;justify-content:space-between;font-size:18px;font-weight:700;margin-top:12px}
.formerr{background:#fbeeee;color:#8a2a2a;border-radius:12px;padding:12px 14px;font-size:14px;margin-top:12px}
.done-ic{width:64px;height:64px;border-radius:50%;background:var(--ok-soft);color:var(--ok);display:grid;place-items:center;margin:26px auto 10px}
.done-ic svg{width:32px;height:32px}
.bankbox{background:var(--off-2);border-radius:14px;padding:14px;font-size:14px;line-height:1.7;margin-top:12px;-webkit-user-select:text;user-select:text}
.bankbox b{font-size:15px}
/* zgody cookies */
.cc{position:fixed;left:10px;right:10px;bottom:10px;z-index:90;background:var(--paper);border-radius:18px;box-shadow:0 10px 40px rgba(0,0,0,.25);padding:18px;max-width:520px;margin:0 auto;font-size:13.5px;line-height:1.45}
.cc h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;font-weight:600;margin-bottom:6px}
.cc p{color:var(--ink-2)}.cc a{text-decoration:underline}
.cc .b{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.cc .b .btn{height:46px;font-size:14px}
.cc .b .all{grid-column:1/-1}
.cc .sw{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.cc .sw small{display:block;color:var(--muted);font-size:12px}
.cc .sw input{width:22px;height:22px;accent-color:var(--ink)}
footer.ft a.logo{display:flex;padding:0;margin-bottom:12px}

/* ===== motyw INAtelier: kość słoniowa, beż, taupe, soft black, złoto, łuk ===== */
body{font-weight:400;letter-spacing:.005em}
header.top{background:rgba(253,250,246,.94);color:var(--ink);border-bottom:1px solid var(--line)}
header.top .wrap{height:62px}
.badge{background:var(--gold);color:#fff}
.logo{flex-direction:row;align-items:center;gap:8px;color:var(--ink)}
.logo .mono{height:38px;width:auto}
.logo .lt{display:flex;flex-direction:column;line-height:1}
.logo .wm{font-family:"Cormorant Garamond",Georgia,serif;font-size:25px;font-weight:500;letter-spacing:-.005em}
.logo .wm b{font:inherit;letter-spacing:inherit;margin:0}
.logo small{font-family:Jost,system-ui,sans-serif;font-size:7.5px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);opacity:1;margin-top:3px}
.back .logo{margin-left:2px}
.disp{color:var(--ink)}
.cap{color:var(--gold)}
.btn.dark{background:var(--ink);color:#fdfaf6}
.btn.dark:active{background:#2a2118}
.btn.ghost{border-width:1px}
/* łuk – motyw z logo */
.pc .im{border-radius:999px 999px 6px 6px;aspect-ratio:4/5}
.pc .im img{height:100%;object-fit:cover}
.pc .ct{color:var(--gold);letter-spacing:.18em}
.cat{border-radius:999px 999px 8px 8px}
.cat::after{background:linear-gradient(180deg,transparent 40%,rgba(59,47,34,.68))}
.hero{background:var(--beige)}
.hero::after{background:linear-gradient(180deg,rgba(59,47,34,0) 25%,rgba(59,47,34,.74) 100%)}
.hero h1{font-weight:500}
.slogan{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;color:var(--gold);font-size:24px;text-align:center;padding:26px 18px 6px}
.slogan:before,.slogan:after{content:"";display:block;width:56px;height:1px;background:var(--line-2);margin:0 auto 14px}
.slogan:after{margin:14px auto 0}
.usp div{background:var(--off);border:1px solid var(--line)}
.usp svg{color:var(--gold)}
.promo{background:var(--beige);color:var(--ink)}
.promo p{opacity:1;color:var(--ink-2)}
.promo .btn.light{background:var(--ink);color:#fdfaf6}
.promo h3,.tease h3{text-transform:none;font-weight:500;font-size:28px}
.tease .ph{border-radius:999px 999px 0 0;margin:14px 0 0 14px}
.step b{font-family:"Cormorant Garamond",Georgia,serif;font-size:20px;font-weight:600}
.card{border-color:var(--line);border-radius:16px}
.card h2{color:var(--ink);letter-spacing:.2em}
.card h2 em{color:var(--gold)}
footer.ft{background:var(--off-2);color:var(--ink-2);border-top:1px solid var(--line)}
footer.ft a{color:var(--ink)}
footer.ft .logo{color:var(--ink)}
nav.bn a.on{color:var(--gold)}
nav.bn .badge{background:var(--gold)}
.st.on{border-color:var(--gold)!important}
.chip.on{background:var(--ink);color:#fdfaf6;border-color:var(--ink)}
.done-ic{background:var(--off-2);color:var(--gold)}
.cc{border:1px solid var(--line)}
.cc h3{font-weight:500}
.hero h1,.hero .disp{color:#fdfaf6}
.cat span{text-transform:none;font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:26px}
.cat small{font-family:Jost,system-ui,sans-serif}
/* bez zaokrągleń zdjęć */
.pc .im,.cat,.tease .ph{border-radius:0}
.tease .ph{margin:0}
/* zdjęcia: kadry zgodne z proporcjami plików, bez ucinania i zaokrągleń */
.pc .im{aspect-ratio:1;border-radius:0}
.pc .im img{width:100%;height:100%;object-fit:cover;display:block}
.gal{border-radius:0}
.gal .track img{aspect-ratio:1;height:auto}
.gal .track img[src$="-w.webp"]{object-fit:contain;background:var(--off-2)}
.st img{border-radius:0}
.desc .pasuje{margin-top:10px;font-size:14px;color:var(--muted)}.desc .pasuje b{color:inherit;font-weight:600}
.cat-opis{max-width:640px;margin:28px auto 8px;font-size:15px;line-height:1.6;color:var(--muted);text-align:center}
