/* =========================================================================
   Lovecolors :: app.css
   Dizajnový smer "Redakcia". Jediný stylesheet celého webu.
   Poradie: fonty > tokeny > reset > typografia > layout > komponenty
   ========================================================================= */

/* --- 1. Fonty (lokálne, subset SK/CZ/HU/PL/DE) -------------------------- */
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/newsreader.woff2') format('woff2');}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400 700;font-display:swap;src:url('../fonts/newsreader-italic.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 600;font-display:swap;src:url('../fonts/archivo.woff2') format('woff2');}
@font-face{font-family:'Archivo';font-style:italic;font-weight:400 600;font-display:swap;src:url('../fonts/archivo-italic.woff2') format('woff2');}

/* --- 2. Tokeny ----------------------------------------------------------- */
:root{
  /* farby */
  --bg:#F5F4F0;
  --surface:#FFFFFF;
  --ink:#191B19;
  /* Stmavené oproti pôvodnému odtieňu: pri 12px verzálkach mal kontrast len 4,40:1, WCAG AA žiada 4,5:1. */
  --muted:#5E635E;
  --line:#D8D6CF;
  --accent:#5E2340; /* bordová - luxusný odtieň, biela na nej 11,8:1 */
  --accent-ink:#FFFFFF;
  /* Odvodené z akcentu, nie druhá farba v palete. */
  --accent-hover:color-mix(in oklab,var(--accent) 82%,var(--ink));

  /* písmo */
  --font-display:'Newsreader',Georgia,'Times New Roman',serif;
  --font-text:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;

  /* typografická škála, plynulá */
  --t-display:clamp(3.25rem,11vw,8.5rem);
  --t-h1:clamp(2.625rem,7vw,5rem);
  --t-h2:clamp(2rem,4.2vw,3.25rem);
  --t-h3:clamp(1.5rem,2.4vw,2rem);
  --t-lead:clamp(1.1875rem,1.6vw,1.4375rem);
  --t-body:clamp(1.125rem,1.06rem + 0.3vw,1.1875rem);
  --t-small:1rem;
  --t-label:0.8125rem;

  /* priestor, density 0.3 = vzdušne */
  --s-xs:6px;
  --s-sm:12px;
  --s-md:24px;
  --s-lg:48px;
  --s-xl:96px;
  --s-xxl:160px;
  --section:var(--s-xl);

  /* rámec stránky */
  --container:1440px;
  --gutter:24px;
  --radius:var(--r-sm);

  /* zaoblenie. Logo je ramcek 560x388 so zaoblenim 51 px, teda ~13 %
     kratsej strany. Rovnaka makkost ide na cely web: cim vacsia plocha,
     tym vacsi polomer. Nic sa nepise natvrdo, vsetko cez tieto tokeny. */
  --r-xs:8px;    /* stitky, badge, drobne miniatury */
  --r-sm:14px;   /* tlacidla, polia, select, mnozstvo */
  --r-md:24px;   /* karty, panely, suhrn, oznamy */
  --r-lg:32px;   /* obrazky a media */
  --r-xl:48px;   /* hero a plochy cez celu sirku */
  --r-pill:999px;/* chipy, pocitadla */
  --r-full:50%;  /* kruhove ciele */

  /* motion 0.25 = striedmo */
  --ease:cubic-bezier(.22,.61,.36,1);
  --dur:.32s;
}

@media (min-width:900px){
  :root{--gutter:64px;--section:var(--s-xxl);}
}

/* --- 3. Reset ------------------------------------------------------------ */
/* :where() drží špecificitu na nule, aby ho každé komponentové pravidlo prebilo */
*,*::before,*::after{box-sizing:border-box;}
:where(html){-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
:where(body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul,ol,fieldset){margin:0;padding:0;}
:where(ul[role='list'],ol[role='list']){list-style:none;}
:where(img,picture,video,canvas,svg){display:block;max-width:100%;}
:where(img,video){height:auto;}
:where(input,button,textarea,select){font:inherit;color:inherit;}
:where(button){background:none;border:0;cursor:pointer;}
:where(a){color:inherit;text-decoration:none;}
:where(table){border-collapse:collapse;}
:where(fieldset){border:0;}
:where(blockquote,figure){margin:0;padding:0;border:0;}

@media (prefers-reduced-motion:reduce){
  :where(html){scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
}

/* --- 4. Základná typografia ---------------------------------------------- */
body{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--font-text);
  font-size:var(--t-body);
  font-weight:400;
  line-height:1.65;
  font-synthesis-weight:none;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

h1,h2,h3,.display{
  font-family:var(--font-display);
  font-optical-sizing:auto;
  /* Krehke rezy kolekcie si tento token prepisu na 600. */
  font-weight:var(--display-weight,700);
  line-height:1.12;
  letter-spacing:-0.004em;
  text-wrap:balance;
}
h1{font-size:var(--t-h1);}
h2{font-size:var(--t-h2);}
h3{font-size:var(--t-h3);line-height:1.22;letter-spacing:0;}

/* kurzíva potrebuje vzduch, inak sa dolné dotiahy orezávajú */
h1 em,h2 em,h3 em,.display em{font-style:italic;font-weight:400;line-height:1.14;padding-bottom:.04em;}

p{max-width:66ch;}
p + p{margin-top:1em;}

.lead{font-size:var(--t-lead);line-height:1.5;max-width:52ch;}
.muted{color:var(--muted);}

/* malý popisok verzálkami. Podla dizajnu najviac jeden na tri sekcie. */
.label{
  font-size:var(--t-label);
  font-weight:500;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  line-height:1.2;
}

.rule{height:1px;background:var(--line);border:0;margin:0;}

/* --- 5. Layout ----------------------------------------------------------- */
.wrap{
  width:100%;
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:var(--gutter);
}

.section{padding-block:var(--section);}
.section--tight{padding-block:var(--s-lg);}

.grid{display:grid;gap:var(--s-md);grid-template-columns:repeat(12,1fr);}
@media (max-width:899px){.grid{grid-template-columns:repeat(6,1fr);}}

.stack > * + *{margin-top:var(--s-md);}
.stack-lg > * + *{margin-top:var(--s-lg);}

/* obraz smie vybočiť k okraju viewportu. Variance 0.5: zhruba jedna sekcia z troch. */
/* Presah k okraju kontajnera. Zamerne bez 100vw: to zapocitava scrollbar
   a obraz potom konci o 15 px skor ako ma. */
.bleed-right{margin-right:calc(var(--gutter) * -1);}

.ratio{position:relative;overflow:hidden;background:var(--line);}
.ratio > img,.ratio > video,.ratio > .ph,.ratio > picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
/* lc_picture vypisuje <picture>; obrazok v nom musi vyplnit ramik rovnako. */
.ratio > picture > img{display:block;width:100%;height:100%;object-fit:cover;}
.ratio--portrait{aspect-ratio:3/4;}
.ratio--reel{aspect-ratio:9/16;}
.ratio--wide{aspect-ratio:16/9;}

/* Deklarovaný lokálny placeholder namiesto prázdneho miesta, kým neprídu ostré fotky. */
.ph{
  background:
    radial-gradient(120% 80% at 70% 15%,color-mix(in oklab,var(--bg) 88%,var(--surface)) 0%,transparent 60%),
    linear-gradient(168deg,
      color-mix(in oklab,var(--bg) 70%,var(--line)) 0%,
      var(--line) 52%,
      color-mix(in oklab,var(--line) 82%,var(--ink)) 100%);
}
.ph::after{
  content:"";position:absolute;inset:0;opacity:.5;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E");
}

/* --- 6. Tlačidlá --------------------------------------------------------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.6em;
  min-height:48px;padding:0 var(--s-md);
  font-family:var(--font-text);font-size:.9375rem;font-weight:500;
  letter-spacing:.08em;text-transform:uppercase;
  border-radius:var(--radius);
  transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.btn--primary{background:var(--accent);color:var(--accent-ink);}
.btn--primary:hover{background:var(--accent-hover);}
.btn--ghost{border:1px solid var(--ink);color:var(--ink);}
.btn--ghost:hover{background:var(--ink);color:var(--bg);}

/* textový odkaz s podtrhnutím, ktoré sa rozvinie */
.link{
  display:inline-block;color:var(--accent);font-weight:500;
  background-image:linear-gradient(currentColor,currentColor);
  background-size:100% 1px;background-repeat:no-repeat;background-position:0 100%;
  transition:background-size var(--dur) var(--ease);
}
.link:hover{background-size:0 1px;background-position:100% 100%;}

:where(a,button,input,select,textarea,summary):focus-visible{
  outline:2px solid var(--accent);outline-offset:3px;
}
.skip{position:absolute;left:-9999px;}
.skip:focus{left:var(--gutter);top:var(--s-sm);z-index:100;background:var(--ink);color:var(--bg);padding:var(--s-sm) var(--s-md);}

/* --- 8. Hero ------------------------------------------------------------- */
.hero{padding-top:var(--s-lg);padding-bottom:var(--s-xl);}
@media (min-width:900px){.hero{padding-top:var(--s-lg);padding-bottom:var(--s-xxl);}}
/* Hero sa musí zmestiť do prvého viewportu aj s tlačidlami, preto je obraz zastropovaný. */
@media (min-width:900px){
  .hero__media .ratio--portrait{aspect-ratio:4/5;max-height:min(74vh,700px);}
}

/* Zarovnanie nadol patri len skutocnemu hero (obrazok + text spolu dole).
   Stranky a archivy pouzivaju tu istu mriezku bez obalu .hero a text im
   inak spadne na spodok vysokeho obrazka. */
.hero__grid{display:grid;gap:var(--s-lg);align-items:start;}
.hero .hero__grid{align-items:end;}
@media (min-width:900px){
  .hero__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s-xl);}
}

.hero__title{font-size:var(--t-display);line-height:1.08;letter-spacing:-0.01em;margin-top:var(--s-md);}
.hero__meta{display:flex;align-items:center;gap:var(--s-md);}
.hero__meta .rule{flex:1;}
.hero__text{margin-top:var(--s-md);}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--s-sm);margin-top:var(--s-lg);}
.hero__media{align-self:stretch;}
/* Na mobile ide typografia prvá. Masthead je pointa smeru, nie obrázok. */
@media (max-width:899px){
  .hero{padding-top:var(--s-md);}
  .hero__title{font-size:clamp(3rem,17vw,5rem);}
  .hero__grid{gap:var(--s-md);}
  .hero__media .ratio--portrait{aspect-ratio:4/5;}
}

/* --- 9. Kolekcie --------------------------------------------------------- */
.collections{display:grid;gap:var(--s-lg);}
@media (min-width:900px){
  /* asymetria namiesto troch rovnakých dlaždíc */
  .collections{grid-template-columns:minmax(0,6fr) minmax(0,4fr);gap:var(--s-xl) var(--s-lg);align-items:start;}
  .collections__side{display:grid;gap:var(--s-lg);}
}

.coll{display:block;}
.coll__media{margin-bottom:var(--s-md);}
.coll__media .ratio{transition:opacity var(--dur) var(--ease);}
.coll:hover .ratio{opacity:.88;}
.coll__name{font-family:var(--font-display);font-weight:700;font-size:var(--t-h3);line-height:1.1;}
.coll--lead .coll__name{font-size:var(--t-h2);}
.coll__note{color:var(--muted);font-size:var(--t-small);margin-top:var(--s-xs);}

/* --- 10. Manifest -------------------------------------------------------- */
.manifesto{border-block:1px solid var(--line);}
.manifesto__inner{display:grid;gap:var(--s-lg);padding-block:var(--s-xl);}
@media (min-width:900px){
  .manifesto__inner{grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:var(--s-xl);align-items:end;}
}
.manifesto__quote{font-family:var(--font-display);font-size:var(--t-h2);line-height:1.14;letter-spacing:-0.01em;text-wrap:balance;}
.manifesto__by{font-size:var(--t-small);color:var(--muted);margin-top:var(--s-md);}

/* --- 11. Materiály ------------------------------------------------------- */
.materials{display:grid;gap:var(--s-md);}
@media (min-width:640px){.materials{grid-template-columns:repeat(2,1fr);}}
@media (min-width:900px){.materials{grid-template-columns:repeat(4,1fr);gap:var(--s-lg);}}
.mat__name{font-family:var(--font-display);font-size:1.25rem;margin-top:var(--s-sm);}
.mat__spec{font-size:var(--t-small);color:var(--muted);}

/* --- 13. Video ----------------------------------------------------------- */
/* LCP je vždy poster, nikdy video. Video sa načíta až keď je v zornom poli. */
.reel{position:relative;background:var(--line);}
.reel video{width:100%;height:100%;object-fit:cover;display:block;}
.reel__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;background:var(--surface);color:var(--ink);display:none;align-items:center;justify-content:center;}
.reel[data-manual='1'] .reel__play{display:flex;}

/* --- 14. Utility --------------------------------------------------------- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
[hidden]{display:none !important;}

/* --- 15. Kolekcia: varianty kompozície ---------------------------------- */
/* Tokeny prepisuje inline <style> z lc_collection_style(). Tu sú len rozloženia. */
.lc-collection{background:var(--bg);color:var(--ink);}

.hero--typograficky .hero__media{display:none;}
.hero--typograficky .hero__grid{grid-template-columns:1fr;}
.hero--typograficky .hero__title{font-size:clamp(3.5rem,14vw,11rem);}

@media (min-width:900px){
  .hero--fullbleed .hero__grid{grid-template-columns:1fr;}
  .hero--fullbleed .hero__media{margin-inline:calc(var(--gutter) * -1);order:-1;}
  .hero--fullbleed .hero__media .ratio{aspect-ratio:16/9;max-height:72vh;}
}

.lc-prose{max-width:62ch;}
.lc-prose p + p{margin-top:1em;}
.lc-prose h2{font-size:var(--t-h3);margin-top:var(--s-lg);}

.lc-gallery{display:grid;gap:var(--s-md);}
@media (min-width:900px){
  .lc-gallery{grid-template-columns:repeat(2,1fr);gap:var(--s-lg);}
  .rytmus--dramaticky .lc-gallery > *:nth-child(3n+1){grid-column:1 / -1;}
  .rytmus--mriezka .lc-gallery{grid-template-columns:repeat(3,1fr);}
  .rytmus--pas .lc-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;}
  .rytmus--pas .lc-gallery > *{flex:0 0 min(42vw,520px);scroll-snap-align:start;}
}

/* Detail je jemný. Nikdy text položený na fotografii. */
.detail--zrno .ratio::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100' height='100' filter='url(%23g)'/%3E%3C/svg%3E");}
.detail--linka .section{border-top:1px solid var(--line);}

/* --- 16. Archív a špecifikácie ------------------------------------------ */
.lc-archive{display:grid;gap:var(--s-lg);}
@media (min-width:640px){.lc-archive{grid-template-columns:repeat(2,1fr);}}
@media (min-width:900px){.lc-archive{grid-template-columns:repeat(3,1fr);gap:var(--s-xl) var(--s-lg);}}

.lc-spec{margin-top:var(--s-lg);display:grid;gap:0;}
.lc-spec dt{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:var(--s-sm);border-top:1px solid var(--line);}
.lc-spec dd{margin:0 0 var(--s-sm);padding-bottom:var(--s-sm);}

.lc-care{list-style:none;margin-top:var(--s-md);display:grid;gap:var(--s-xs);}
.lc-care li{padding-left:1.1em;position:relative;color:var(--muted);}
.lc-care li::before{content:"";position:absolute;left:0;top:.7em;width:6px;height:1px;background:var(--accent);}

/* --- 17. Editoriál kolekcie -------------------------------------------- */

/* Manifest: jedna veta cez celú šírku, tesná a veľká. */
.lc-manifest{padding-block:var(--s-xl);border-block:1px solid var(--line);}
@media (min-width:900px){.lc-manifest{padding-block:var(--s-xxl);}}
.lc-manifest__line{
  font-family:var(--font-display);font-weight:700;
  font-size:clamp(2rem,5.6vw,4.25rem);line-height:1.12;letter-spacing:-0.006em;
  max-width:20ch;text-wrap:balance;
}
.lc-manifest__note{margin-top:var(--s-lg);max-width:52ch;color:var(--muted);font-size:var(--t-lead);line-height:1.55;}
@media (min-width:900px){.lc-manifest__note{margin-left:auto;}}

/* Príbeh: text v úzkom stĺpci, obraz vedľa neho a vyššie než text. */
.lc-story{display:grid;gap:var(--s-lg);}
@media (min-width:900px){
  .lc-story{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s-xl);align-items:start;}
  .lc-story__media{margin-top:calc(var(--s-xl) * -1);}
}

/* Citát: samý o sebe, na inom podklade, s vysadenou úvodzovkou. */
/* Sekcia má vlastný, tmavší podklad, takže muted sa musí odvodiť od neho.
   Inak podpis pod citátom spádne pod 4,5:1. */
.lc-quote{--quote-bg:color-mix(in oklab,var(--bg) 88%,var(--ink));background:var(--quote-bg);padding-block:var(--s-xl);}
@media (min-width:900px){.lc-quote{padding-block:var(--s-xxl);}}
.lc-quote__inner{max-width:64ch;}
.lc-quote__text{
  position:relative;font-family:var(--font-display);font-style:italic;font-weight:400;
  font-size:clamp(1.375rem,2.8vw,2rem);line-height:1.35;letter-spacing:-0.005em;
}
.lc-quote__text::before{
  content:"„";position:absolute;left:-0.55em;top:-0.12em;
  font-size:2.6em;line-height:1;color:var(--accent);opacity:.5;
}
@media (max-width:899px){.lc-quote__text::before{position:static;display:block;font-size:2em;margin-bottom:-.35em;}}
.lc-quote__by{margin-top:var(--s-lg);font-size:var(--t-small);color:color-mix(in oklab,var(--ink) 78%,var(--quote-bg));}

/* Čo kolekcia obsahuje: typografický zoznam, nie odrážky. */
.lc-contains__list{
  list-style:none;margin-top:var(--s-lg);
  display:grid;gap:0;border-top:1px solid var(--line);
}
@media (min-width:640px){.lc-contains__list{grid-template-columns:repeat(2,1fr);column-gap:var(--s-xl);}}
@media (min-width:900px){.lc-contains__list{grid-template-columns:repeat(3,1fr);}}
.lc-contains__list li{
  font-family:var(--font-display);font-size:1.25rem;line-height:1.2;
  padding-block:var(--s-md);border-bottom:1px solid var(--line);
}

/* Záver: posledné slovo a jedno tlačidlo. */
.lc-close{padding-block:var(--s-xl);border-top:1px solid var(--line);}
@media (min-width:900px){.lc-close{padding-block:var(--s-xxl);}}
.lc-close__line{
  font-family:var(--font-display);font-weight:700;
  font-size:clamp(1.75rem,4.4vw,3.25rem);line-height:1.16;letter-spacing:-0.004em;
  max-width:24ch;text-wrap:balance;
}
.lc-close__note{margin-top:var(--s-md);max-width:54ch;color:var(--muted);font-size:var(--t-lead);line-height:1.55;}

/* --- 18. Limitované edície a minikolekcie ------------------------------- */
/* Kompaktnejšie než veľké kolekcie, aby bolo na prvý pohľad jasné,
   že ide o menšiu radu, nie o hlavnú kolekciu sezóny. */
.lc-mini{display:grid;gap:var(--s-md);}
@media (min-width:640px){.lc-mini{grid-template-columns:repeat(2,1fr);gap:var(--s-lg);}}
@media (min-width:900px){.lc-mini{grid-template-columns:repeat(3,1fr);}}
.lc-mini__item .ratio{transition:opacity var(--dur) var(--ease);}
.lc-mini__item:hover .ratio{opacity:.88;}
.lc-mini__name{font-family:var(--font-display);font-size:1.125rem;line-height:1.2;margin-top:var(--s-sm);}
.lc-mini__note{font-size:var(--t-small);color:var(--muted);margin-top:2px;}

/* Dostupnosť v hero kolekcie. */
.lc-avail{
  margin-top:var(--s-md);
  font-size:var(--t-small);letter-spacing:.02em;color:var(--muted);
  padding-left:14px;position:relative;
}
.lc-avail::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;background:var(--accent);}
.lc-avail--vypredane,.lc-avail--skoncila{color:var(--ink);}
.lc-avail--vypredane::before,.lc-avail--skoncila::before{background:var(--muted);}

/* --- 18. Editorialne sekcie kolekcie ------------------------------------ */
/* Ton urcuje podklad aj farbu textu. Oboje pocita PHP, aby ziadna
   sekcia nespadla pod AA. Sekcie idu za sebou od tmy k svetlu. */

.lcs{padding-block:var(--s-xl);background:var(--ton-svetlo-bg,var(--bg));color:var(--ton-svetlo-ink,var(--ink));}
.lcs + .lcs{padding-top:var(--s-xl);}

.ton--tma{background:var(--ton-tma-bg,var(--ink));color:var(--ton-tma-ink,var(--bg));}
.ton--sero{background:var(--ton-sero-bg,var(--surface));color:var(--ton-sero-ink,var(--ink));}
.ton--akcent{background:var(--ton-akcent-bg,var(--accent));color:var(--ton-akcent-ink,var(--accent-ink));}
.ton--svetlo{background:var(--ton-svetlo-bg,var(--bg));color:var(--ton-svetlo-ink,var(--ink));}

.ton--tma .lcs__text,.ton--tma .lcs__veta{color:var(--ton-tma-muted,inherit);}
.ton--sero .lcs__text,.ton--sero .lcs__veta{color:var(--ton-sero-muted,inherit);}
.ton--akcent .lcs__text{color:var(--ton-akcent-muted,inherit);}
.ton--svetlo .lcs__text{color:var(--ton-svetlo-muted,inherit);}

.lcs__nadpis{font-family:var(--font-display);font-weight:var(--display-weight,500);line-height:1.12;font-size:var(--t-h2);margin:0 0 var(--s-md);}
.lcs__nadpis--velky{font-size:clamp(2.6rem,9vw,7rem);letter-spacing:.06em;text-transform:uppercase;}
.lcs__text{max-width:56ch;}
.lcs__text p + p{margin-top:1em;}
.lcs__text--uzky{max-width:48ch;}
.lcs__text--stred{max-width:44ch;margin-inline:auto;text-align:center;}
.lcs__akcia{margin-top:var(--s-lg);}

/* Dvojica textu a fotografie. Na mobile vzdy fotka pod textom. */
.lcs__dvojica{display:grid;gap:var(--s-lg);}
@media (min-width:900px){
  .lcs__dvojica{grid-template-columns:1fr 1fr;gap:var(--s-xl);align-items:center;}
  .lcs__dvojica--obratena .lcs__foto{order:-1;}
}
.lcs__foto{margin:0;}
.lcs__plne{margin:0;}
.lcs__veta{margin-top:var(--s-lg);font-family:var(--font-display);font-weight:var(--display-weight,400);font-size:var(--t-h3);line-height:1.2;max-width:24ch;}
.lcs__zaver{padding-top:var(--s-lg);text-align:center;}

/* Miesto pre fotografiu, kym fotenie nebolo. Zaroven zoznam zaberov. */
.lcs__caka{display:flex;flex-direction:column;justify-content:flex-end;gap:var(--s-sm);padding:var(--s-md);border:1px dashed currentColor;opacity:.68;aspect-ratio:4/5;}
.lcs__caka--wide{aspect-ratio:16/9;}
.lcs__caka--landscape{aspect-ratio:3/2;}
.lcs__caka--square{aspect-ratio:1/1;}
.lcs__caka-cislo{font-family:var(--font-display);font-size:var(--t-h3);line-height:1;}
.lcs__caka-popis{margin:0;font-size:var(--t-small);max-width:38ch;}

/* Farebny svet */
.lcs__vzorkovnik{list-style:none;margin:var(--s-lg) 0 0;padding:0;display:grid;gap:var(--s-md);grid-template-columns:repeat(2,1fr);}
@media (min-width:640px){.lcs__vzorkovnik{grid-template-columns:repeat(4,1fr);}}
@media (min-width:900px){.lcs__vzorkovnik{grid-template-columns:repeat(7,1fr);gap:var(--s-md);}}
.lcs__vzorka{display:flex;flex-direction:column;gap:var(--s-xs);}
.lcs__plocha{display:flex;align-items:flex-end;aspect-ratio:3/4;padding:var(--s-xs);}
.lcs__hex{font-size:var(--t-label);letter-spacing:.1em;opacity:.9;}
.lcs__nazov-farby{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;}

/* Modely */
.lcs__modely{list-style:none;margin:var(--s-lg) 0 0;padding:0;display:grid;gap:var(--s-lg);grid-template-columns:repeat(2,1fr);}
@media (min-width:900px){.lcs__modely{grid-template-columns:repeat(4,1fr);}}
.lcs__model a{display:grid;gap:var(--s-xs);text-decoration:none;color:inherit;}
.lcs__model-nazov{font-family:var(--font-display);font-size:var(--t-h4,1.25rem);}
.lcs__model-cena{font-size:var(--t-small);opacity:.8;}

@media (prefers-reduced-motion:no-preference){
  .lcs{scroll-margin-top:var(--s-xl);}
}

/* Popis zaberu v zastupnej ploche hero sekcie. */
.ph{display:flex;align-items:flex-end;padding:var(--s-md);}
.ph__zaber{margin:0;font-size:var(--t-small);line-height:1.6;max-width:36ch;opacity:.8;}

/* Opakovac riadkov so zmiesanymi typmi. Na mobile vzdy pod sebou. */
.lc-rows--stacked .lc-rows__row{display:grid;gap:var(--s-xs);padding:var(--s-sm) 0;border-top:1px solid var(--line);}
.lc-rows--stacked .lc-rows__field{display:grid;gap:.2rem;}
.lc-rows--stacked .lc-rows__field > span{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.lc-rows--stacked textarea{min-height:5em;}

/* --- 7. Hlavička a megamenu --------------------------------------------- */
/* Masthead časopisu: značka vľavo, rubriky v strede, služby vpravo.
   Panely megamenu sú súčasťou hlavičky (absolútne pod ňou), otvárajú sa na
   :hover, :focus-within a triedou .is-open z JS pre dotyk. */
.site-head{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--line);}
.site-head__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--s-sm);min-height:64px;}
@media (min-width:1120px){
  .site-head__inner{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:var(--s-md);min-height:84px;}
  .brand{justify-self:start;}
  .head-actions{justify-self:end;}
}
@media (max-width:1119px){
  .brand{justify-self:center;text-align:center;}
}

.brand{font-family:var(--font-display);font-weight:700;font-size:1.5rem;letter-spacing:.02em;line-height:1;white-space:nowrap;}
@media (min-width:1120px){.brand{font-size:1.75rem;}}

.nav{display:none;}
@media (min-width:1120px){
  .nav{display:block;}
  .nav__list{list-style:none;display:flex;align-items:center;gap:var(--s-md);margin:0;padding:0;}
  @media (min-width:1320px){.nav__list{gap:var(--s-lg);}}
  .nav__item{display:flex;align-items:center;gap:2px;}
  .nav__link{display:inline-block;font-size:.9375rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);position:relative;padding-block:30px;}
  .nav__link::after{content:"";position:absolute;left:0;bottom:26px;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform var(--dur) var(--ease);}
  .nav__link:hover::after,.nav__link[aria-current='page']::after,
  .nav__item:hover .nav__link::after,.nav__item.is-open .nav__link::after,.nav__item:focus-within .nav__link::after{transform:scaleX(1);}
  .nav__more{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--muted);transition:transform var(--dur) var(--ease),color var(--dur) var(--ease);}
  .nav__more:hover{color:var(--ink);}
  .nav__item:hover .nav__more,.nav__item.is-open .nav__more,.nav__item:focus-within .nav__more{transform:rotate(180deg);color:var(--ink);}
}

/* Panel: celá šírka pod hlavičkou, rovnaký podklad, jedna linka dole. */
.mega{position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 24px 40px -32px rgba(25,27,25,.35);
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s linear var(--dur);}
.nav__item:hover .mega,.nav__item:focus-within .mega,.nav__item.is-open .mega{opacity:1;visibility:visible;transform:none;transition-delay:0s;}
/* Krátke oneskorenie pri prechode kurzora, aby panel nebliskal medzi položkami. */
.nav__item:hover .mega{transition-delay:.08s;}
.mega__inner{display:grid;gap:var(--s-lg);padding-block:var(--s-lg) var(--s-xl);align-items:start;}
.mega__inner--kolekcie{grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,3fr);}
.mega__inner--obchod{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.1fr);}
.mega__inner--latky{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.1fr);}.mega__inner--blog{grid-template-columns:minmax(0,1fr) minmax(0,2fr);}
.mega__list{list-style:none;margin:var(--s-sm) 0 0;padding:0;display:grid;gap:2px;}
.mega__list a{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-sm);padding-block:5px;color:var(--ink);transition:color var(--dur) var(--ease);}
.mega__list a:hover{color:var(--accent);}
.mega__list small{font-size:var(--t-small);color:var(--muted);}
.mega__list--display a{display:block;padding-block:8px;border-bottom:1px solid var(--line);}
.mega__list--display span{display:block;font-family:var(--font-display);font-size:1.5rem;line-height:1.1;}
.mega__list--display small{display:block;margin-top:2px;}
.mega__links{list-style:none;margin:var(--s-md) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-md);}
.mega__links a{font-size:var(--t-small);}
.mega__tile{display:block;}
.mega__tile .ratio{max-height:320px;transition:opacity var(--dur) var(--ease);}
.mega__tile:hover .ratio{opacity:.88;}
.mega__tile-name{display:block;font-family:var(--font-display);font-size:1.25rem;line-height:1.1;margin-top:var(--s-sm);}
.mega__tile-note{display:block;font-size:var(--t-small);color:var(--muted);margin-top:2px;}

.head-actions{display:flex;align-items:center;gap:2px;}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--ink);position:relative;}
.icon-btn svg{width:20px;height:20px;}
@media (max-width:1119px){.head-actions__account{display:none;}}
@media (min-width:1120px){.nav-toggle{display:none;}}
.cart-link__count{position:absolute;top:6px;right:4px;min-width:16px;height:16px;padding:0 4px;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:600;line-height:16px;text-align:center;border-radius:var(--r-pill);}

/* Vyhľadávanie: pruh pod hlavičkou, jeden veľký riadok. */
.search{border-top:1px solid var(--line);background:var(--bg);}
.search__form{display:flex;align-items:center;gap:var(--s-md);padding-block:var(--s-md);}
.search__input{flex:1;min-width:0;background:none;border:0;border-bottom:1px solid var(--ink);padding:10px 0;font-family:var(--font-display);font-size:clamp(1.25rem,2.4vw,1.75rem);line-height:1.2;}
.search__input::placeholder{color:var(--muted);opacity:1;}
.search__input:focus{outline:none;border-bottom-color:var(--accent);}
.search__hints{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-sm) var(--s-md);padding-bottom:var(--s-md);}
.search__hints a{font-size:var(--t-small);border-bottom:1px solid var(--line);}
.search__hints a:hover{border-bottom-color:var(--accent);color:var(--accent);}
@media (max-width:639px){.search__form .btn{display:none;}}

/* Mobilné menu: celá obrazovka, rubriky ako harmonika. */
.mobile-nav{position:fixed;inset:0;z-index:60;background:var(--bg);display:flex;flex-direction:column;overflow-y:auto;}
.mobile-nav[hidden]{display:none;}
.mobile-nav__head{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding-inline:var(--gutter);border-bottom:1px solid var(--line);}
.mobile-nav__list{padding:var(--s-md) var(--gutter);display:flex;flex-direction:column;}
.mobile-nav__link,.mobile-nav__group summary{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-display);font-size:1.75rem;line-height:1.1;padding-block:var(--s-sm);border-bottom:1px solid var(--line);cursor:pointer;list-style:none;}
.mobile-nav__group summary::-webkit-details-marker{display:none;}
.mobile-nav__group summary svg{transition:transform var(--dur) var(--ease);color:var(--muted);}
.mobile-nav__group[open] summary svg{transform:rotate(180deg);}
.mobile-nav__group ul{list-style:none;margin:0;padding:var(--s-sm) 0 var(--s-md);display:grid;gap:2px;}
.mobile-nav__group ul a{display:block;padding:8px 0;font-size:var(--t-body);}
.mobile-nav__foot{margin-top:auto;padding:var(--s-md) var(--gutter) var(--s-lg);border-top:1px solid var(--line);display:grid;gap:var(--s-sm);}
.mobile-nav__foot a{display:flex;align-items:center;gap:var(--s-sm);color:var(--muted);}
.mobile-nav__foot a:hover{color:var(--ink);}

/* --- 12. Pätička --------------------------------------------------------- */
.site-foot{border-top:1px solid var(--line);}

.foot-club{border-bottom:1px solid var(--line);}
.foot-club__inner{display:grid;gap:var(--s-lg);padding-block:var(--s-xl);}
@media (min-width:900px){.foot-club__inner{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s-xl);align-items:end;}}
.foot-club__title{font-size:var(--t-h2);margin-top:var(--s-sm);}
.foot-club__text{margin-top:var(--s-md);max-width:46ch;}
.foot-club__form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s-sm);align-items:end;}
.foot-club__input{background:none;border:0;border-bottom:1px solid var(--ink);padding:12px 0;font-size:var(--t-body);min-height:48px;}
.foot-club__input:focus{outline:none;border-bottom-color:var(--accent);}
.foot-club__note{grid-column:1 / -1;font-size:var(--t-label);letter-spacing:0;text-transform:none;color:var(--muted);max-width:none;}
.foot-club__note a{border-bottom:1px solid var(--line);}

.foot__grid{display:grid;gap:var(--s-lg) var(--s-md);padding-block:var(--s-xl) var(--s-lg);grid-template-columns:repeat(2,minmax(0,1fr));}
@media (min-width:900px){.foot__grid{grid-template-columns:repeat(3,minmax(0,2fr)) minmax(0,3fr);gap:var(--s-lg);}}
.foot h3{font-family:var(--font-text);font-size:var(--t-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s-sm);}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-xs);}
.foot a:hover{color:var(--accent);}
.foot__contact{grid-column:1 / -1;}
@media (min-width:900px){.foot__contact{grid-column:auto;}}
.foot__contact address{font-style:normal;display:grid;gap:var(--s-xs);}
.foot__social{flex-direction:row !important;gap:var(--s-sm) !important;margin-top:var(--s-md) !important;}
.foot__social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);color:var(--ink);transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease);}
.foot__social a:hover{border-color:var(--ink);}

/* Slovo značky ako masthead na konci strany. */
.foot__brandline{border-top:1px solid var(--line);padding-block:var(--s-lg);display:grid;gap:var(--s-md);}
@media (min-width:900px){.foot__brandline{grid-template-columns:auto minmax(0,1fr);align-items:end;gap:var(--s-xl);}}
.foot__brand{font-family:var(--font-display);font-weight:700;font-size:clamp(3rem,9vw,7rem);line-height:.9;letter-spacing:-.02em;}
.foot__claim{color:var(--muted);max-width:44ch;font-size:var(--t-small);}
@media (min-width:900px){.foot__claim{justify-self:end;text-align:right;}}

.foot__bottom{display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-md);justify-content:space-between;padding-block:var(--s-md) var(--s-lg);border-top:1px solid var(--line);font-size:var(--t-label);letter-spacing:.02em;color:var(--muted);}
.foot__bottom a{border-bottom:1px solid var(--line);}
.foot__bottom a:hover{color:var(--ink);}

/* --- 19. Obchod: katalóg ------------------------------------------------- */
.ratio--card{aspect-ratio:4/5;}
.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s-sm) var(--s-md);}

.shop-head{padding-top:var(--s-lg);}
.shop-head__title{margin-top:var(--s-sm);font-size:var(--t-h1);}
.shop-head__lead{margin-top:var(--s-md);}
.shop{padding-block:var(--s-lg) var(--s-xl);}

.shop-bar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--s-sm) var(--s-md);padding-block:var(--s-sm);border-block:1px solid var(--line);position:relative;}
.shop-bar__count{font-size:var(--t-small);text-align:center;}
@media (max-width:639px){.shop-bar{grid-template-columns:auto 1fr;}.shop-bar__count{display:none;}.shop-bar__sort{justify-self:end;}.shop-bar__sort select{max-width:170px;text-overflow:ellipsis;}}
.shop-bar__sort select{background:none;border:0;border-bottom:1px solid var(--line);padding:10px 0;font-size:var(--t-small);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;}
.shop-bar__sort select:focus{outline:none;border-bottom-color:var(--accent);}

/* Filtre: na desktope panel pod lištou, na mobile celá obrazovka. */
.filters__summary{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 var(--s-sm) 0 0;font-size:var(--t-small);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;list-style:none;}
.filters__summary::-webkit-details-marker{display:none;}
.filters__n,.facet__n{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--ink);color:var(--bg);font-size:11px;line-height:1;border-radius:var(--r-pill);}
.filters__panel{display:grid;gap:var(--s-md);}
@media (min-width:900px){
  .filters{position:static;}
  .filters__panel{position:absolute;left:0;right:0;top:100%;z-index:20;background:var(--bg);border-bottom:1px solid var(--line);padding:var(--s-lg) 0 var(--s-lg);grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--s-lg);box-shadow:0 24px 40px -32px rgba(25,27,25,.3);}
  .filters__reset{grid-column:1 / -1;}
  .facet{border:0;}
  .facet__summary{pointer-events:none;}
  .facet__summary svg{display:none;}
  .facet:not([open]) .facet__list{display:grid;}
}
@media (max-width:899px){
  .filters[open] .filters__panel{position:fixed;inset:0;z-index:70;background:var(--bg);overflow-y:auto;padding:var(--s-md) var(--gutter) calc(var(--s-xl) + 60px);}
  .filters[open] .filters__summary{position:fixed;left:0;right:0;bottom:0;z-index:71;justify-content:center;background:var(--ink);color:var(--bg);margin:0;padding:0 var(--gutter);min-height:60px;}
  .filters[open] .filters__summary::before{content:"Zobraziť výsledky · ";}
  .filters[open] .filters__summary svg{display:none;}
  .facet{border-bottom:1px solid var(--line);}
  .facet__summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;cursor:pointer;list-style:none;}
  .facet__summary::-webkit-details-marker{display:none;}
  .facet__summary svg{transition:transform var(--dur) var(--ease);}
  .facet[open] .facet__summary svg{transform:rotate(180deg);}
  .facet__list{padding-bottom:var(--s-md);}
}
.facet__summary{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-family:var(--font-text);}
@media (max-width:899px){.facet__summary{font-size:1.125rem;letter-spacing:0;text-transform:none;color:var(--ink);font-family:var(--font-display);}}
.facet__list{list-style:none;margin:var(--s-sm) 0 0;padding:0;display:grid;gap:2px;}
.facet__opt{display:flex;align-items:center;gap:10px;min-height:36px;padding:4px 0;color:var(--ink);}
.facet__opt small{margin-left:auto;color:var(--muted);font-size:var(--t-label);}
.facet__opt:hover{color:var(--accent);}
.facet__opt.is-on{font-weight:600;}
.facet__opt.is-on::before{content:"";width:6px;height:6px;background:var(--accent);flex:none;}
.facet__list--farba{grid-template-columns:repeat(2,1fr);}
.facet__list--velkost{grid-template-columns:repeat(2,1fr);}
.facet__opt b{font-weight:600;min-width:2.2em;}
.filters__reset{font-size:var(--t-small);}

.swatch{display:inline-block;width:18px;height:18px;border-radius:var(--r-full);background:var(--sw,#ccc);box-shadow:inset 0 0 0 1px rgba(25,27,25,.18);flex:none;}
.swatch--sm{width:10px;height:10px;}

.chips{list-style:none;margin:var(--s-md) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.chip{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:1px solid var(--ink);font-size:var(--t-small);}
.chip:hover{background:var(--ink);color:var(--bg);}

.products-grid{list-style:none;margin:var(--s-lg) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-lg) var(--s-sm);}
@media (min-width:900px){.products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-xl) var(--s-md);}}
@media (min-width:900px){.products-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-lg) var(--s-md);}}

.pcard{display:flex;flex-direction:column;}
.pcard__media{position:relative;display:block;}
.pcard__hover{position:absolute;inset:0;opacity:0;transition:opacity var(--dur) var(--ease);}
@media (hover:hover){.pcard:hover .pcard__hover{opacity:1;}}
.pcard__badge{position:absolute;left:0;top:var(--s-sm);background:var(--bg);color:var(--ink);font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;}
.pcard--out .pcard__media{opacity:.72;}
.pcard__body{padding-top:var(--s-sm);display:grid;gap:2px;}
.pcard__coll{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.pcard__coll:hover{color:var(--accent);}
.pcard__name{font-family:var(--font-display);font-weight:var(--display-weight,400);font-size:1.25rem;line-height:1.2;letter-spacing:0;}
@media (min-width:900px){.pcard__name{font-size:1.375rem;}}
.pcard__price{font-size:var(--t-small);}
.pcard__price del{color:var(--muted);margin-right:.5em;}
.pcard__price ins{text-decoration:none;}
.pcard__colors{list-style:none;margin:6px 0 0;padding:0;display:flex;align-items:center;gap:6px;}
.pcard__more{font-size:var(--t-label);color:var(--muted);}

.pagination{margin-top:var(--s-xl);display:flex;justify-content:center;}
.pagination .nav-links{display:flex;gap:4px;}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 12px;border:1px solid transparent;font-size:var(--t-small);}
.pagination .page-numbers.current{border-color:var(--ink);}
.pagination a.page-numbers:hover{border-color:var(--line);}

.shop-empty{padding-block:var(--s-xl);max-width:52ch;}
.shop-coll__grid{display:grid;gap:var(--s-lg);}
@media (min-width:900px){.shop-coll__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s-xl);align-items:center;}}

/* --- 20. Karta modelu --------------------------------------------------- */
.product{padding-top:var(--s-md);}
.product__grid{display:grid;gap:var(--s-lg);}
@media (min-width:900px){
  .product__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s-xl);align-items:start;}
  .product__info{position:sticky;top:calc(84px + var(--s-md));}
}
.product__gallery{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-sm);}
@media (min-width:900px){
  .product__gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-md);}
  .product__gallery > li:first-child{grid-column:1 / -1;}
  .product__gallery > li:first-child .ratio--card{aspect-ratio:4/5;max-height:88vh;}
  .product__reel{max-width:60%;margin-inline:auto;margin-bottom:var(--s-md);}
}
@media (max-width:899px){
  .product__gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:var(--s-xs);margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none;}
  .product__gallery::-webkit-scrollbar{display:none;}
  .product__gallery > li{flex:0 0 88%;scroll-snap-align:center;}
  .product__reel{margin-inline:calc(var(--gutter) * -1);}
}
.product__shot[hidden]{display:none !important;}
.product__crumbs a:hover{color:var(--accent);}
.product__title{font-size:var(--t-h2);margin-top:var(--s-sm);font-weight:400;}
.product__price{margin-top:var(--s-sm);font-size:var(--t-lead);}
.product__price del{color:var(--muted);margin-right:.5em;}
.product__price ins{text-decoration:none;}
.product__short{margin-top:var(--s-md);color:var(--muted);}
.product__form{margin-top:var(--s-lg);display:grid;gap:var(--s-md);}

.variant{border:0;margin:0;padding:0;}
.variant__legend{display:flex;gap:8px;font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s-sm);}
.variant__chosen{color:var(--ink);letter-spacing:0;text-transform:none;font-size:var(--t-small);}
.variant__opts{display:flex;flex-wrap:wrap;gap:8px;}
.variant__swatch{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid transparent;border-radius:var(--r-full);cursor:pointer;transition:border-color var(--dur) var(--ease);}
.variant__swatch .swatch{width:24px;height:24px;}
.variant__input:checked + .variant__swatch{border-color:var(--ink);}
.variant__input:focus-visible + label{outline:2px solid var(--accent);outline-offset:2px;}
.variant__pill{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px;min-height:48px;padding:6px 12px;border:1px solid var(--line);cursor:pointer;line-height:1.1;transition:border-color var(--dur) var(--ease),background-color var(--dur) var(--ease);}
.variant__pill b{font-weight:500;font-size:var(--t-body);}
.variant__pill small{font-size:var(--t-label);color:var(--muted);margin-top:2px;}
.variant__pill:hover{border-color:var(--ink);}
.variant__input:checked + .variant__pill{border-color:var(--ink);background:var(--ink);color:var(--bg);}
.variant__input:checked + .variant__pill small{color:var(--bg);opacity:.75;}
.variant__input:disabled + label,.variant__input[data-out] + label{opacity:.4;text-decoration:line-through;}
.product__stock{font-size:var(--t-small);}
.product__actions{display:grid;gap:var(--s-sm);}
.product__buy{width:100%;min-height:56px;}
.product__buy[disabled]{opacity:.5;cursor:not-allowed;}
.product__custom{justify-self:start;font-size:var(--t-small);}
.product__soldout{margin-top:var(--s-lg);padding:var(--s-md);border:1px solid var(--line);}
.product__perks{list-style:none;margin:var(--s-lg) 0 0;padding:var(--s-md) 0 0;border-top:1px solid var(--line);display:grid;gap:6px;font-size:var(--t-small);color:var(--muted);}
.product__perks li{padding-left:1.1em;position:relative;}
.product__perks li::before{content:"";position:absolute;left:0;top:.7em;width:6px;height:1px;background:var(--accent);}
.product__details{margin-top:var(--s-lg);border-top:1px solid var(--line);}
.acc{border-bottom:1px solid var(--line);}
.acc summary{display:flex;align-items:center;justify-content:space-between;min-height:56px;font-family:var(--font-display);font-size:1.25rem;cursor:pointer;list-style:none;}
.acc summary::-webkit-details-marker{display:none;}
.acc summary svg{transition:transform var(--dur) var(--ease);color:var(--muted);}
.acc[open] summary svg{transform:rotate(180deg);}
.acc__body{padding-bottom:var(--s-md);}
.product__fabric + .product__fabric{margin-top:var(--s-md);}

/* --- 21. Transakčné stránky: košík, pokladňa, účet ---------------------- */
/* Zákazníčka Lovecolors je často žena 45+ a nakupuje na mobile. Preto
   základné písmo namiesto drobného, jeden stĺpec, popisky slovami namiesto
   ikon a dotykové ciele aspoň 48 px. Woo tabuľky nahradili karty. */

/* Woo posiela popisky pre čítačku obrazovky v .screen-reader-text. Bez tohto
   pravidla ich prehliadač vykreslí ako bežný text — odtiaľ bolo v košíku
   „Obrázok miniatúry" a „množstvo Kvetinové šaty Daria…". */
.screen-reader-text{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;}

.page__head h1{font-size:var(--t-h1);}
.page--text{max-width:calc(72ch + var(--gutter) * 2);}
.page--text .page__body{margin-top:var(--s-lg);}
/* Transakčná stránka nie je editoriál: nad obsah patrí menej vzduchu. */
.page--woo.section{padding-block:var(--s-lg) var(--s-xl);}
.page--woo .page__head h1{font-size:var(--t-h2);}
.page--woo .page__body{margin-top:var(--s-md);font-size:var(--t-body);}

.lc-prose{line-height:1.75;}
.lc-prose > * + *{margin-top:var(--s-md);}
.lc-prose h2{font-size:var(--t-h3);margin-top:var(--s-xl);line-height:1.2;}
.lc-prose h2:first-child{margin-top:0;}
.lc-prose h3{font-family:var(--font-text);font-size:1.125rem;font-weight:600;letter-spacing:.01em;margin-top:var(--s-lg);}
.lc-prose ul,.lc-prose ol{margin:0 0 0 1.2em;}
.lc-prose li + li{margin-top:.5em;}
.lc-prose a{color:var(--accent);text-decoration:underline;text-underline-offset:.15em;}
.lc-prose hr{border:0;border-top:1px solid var(--line);margin-block:var(--s-lg);}
.lc-prose__aktualizacia{font-size:var(--t-small);color:var(--muted);}

.woocommerce-notices-wrapper:empty{display:none;}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 var(--s-md);padding:var(--s-sm) var(--s-md);border:1px solid var(--ink);display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-md);align-items:center;justify-content:space-between;font-size:var(--t-small);}
.woocommerce-error{border-color:#8E2F2F;color:#8E2F2F;}
.woocommerce-message .button,.woocommerce-info .button{order:2;}

.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:52px;padding:0 var(--s-md);font-family:var(--font-text);font-size:1rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:var(--accent-ink);border:0;border-radius:var(--r-sm);cursor:pointer;transition:background-color var(--dur) var(--ease);}
.woocommerce .button:hover,.woocommerce button.button:hover{background:var(--accent-hover);color:var(--accent-ink);}
.woocommerce .button:disabled,.woocommerce button.button:disabled{opacity:.5;cursor:not-allowed;}

/* Košík: karta na položku. */
.lc-cart__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
.lc-cart__item{display:grid;grid-template-columns:96px minmax(0,1fr);gap:var(--s-sm) var(--s-md);align-items:start;padding-block:var(--s-md);border-bottom:1px solid var(--line);}
.lc-cart__media{grid-row:1 / span 3;}
.lc-cart__media img{width:96px;height:128px;object-fit:cover;}
.lc-cart__name{font-family:var(--font-display);font-weight:var(--display-weight,400);font-size:1.5rem;line-height:1.15;letter-spacing:0;}
.lc-cart__name a:hover{color:var(--accent);}
.lc-cart__attrs{margin-top:var(--s-xs);display:flex;flex-wrap:wrap;gap:2px var(--s-md);font-size:var(--t-small);}
.lc-cart__attrs > div{display:flex;gap:6px;}
.lc-cart__attrs dt{color:var(--muted);}
.lc-cart__attrs dt::after{content:":";}
.lc-cart__attrs dd{margin:0;}
.lc-cart__unit{margin-top:var(--s-xs);font-size:var(--t-small);color:var(--muted);}
.lc-cart__sklad{margin-top:6px;font-size:var(--t-small);color:#8E2F2F;}
.lc-cart__qtylabel,.lc-cart__sumlabel{display:block;margin-bottom:6px;font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.lc-cart__qtyone{font-size:var(--t-body);}
.lc-qty{display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--surface);}
.lc-qty__btn{width:48px;height:48px;font-size:1.25rem;line-height:1;color:var(--ink);}
.lc-qty__btn:hover{background:var(--bg);}
.lc-qty__input{width:60px;height:48px;border:0;border-inline:1px solid var(--line);background:none;text-align:center;font-size:var(--t-body);-moz-appearance:textfield;}
.lc-qty__input::-webkit-outer-spin-button,.lc-qty__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.lc-cart__price{font-family:var(--font-display);font-size:1.5rem;display:block;}
.lc-cart__remove{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:var(--t-small);color:var(--muted);border-bottom:1px solid transparent;}
.lc-cart__remove span{font-size:1.125rem;line-height:1;}
.lc-cart__remove:hover{color:#8E2F2F;border-bottom-color:currentColor;}
@media (min-width:900px){
  .lc-cart__item{grid-template-columns:120px minmax(0,1fr) auto minmax(160px,auto);gap:var(--s-md) var(--s-lg);align-items:center;padding-block:var(--s-lg);}
  .lc-cart__media{grid-row:auto;}
  .lc-cart__media img{width:120px;height:160px;}
  .lc-cart__sum{text-align:right;}
  .lc-cart__sum .lc-cart__remove{justify-content:flex-end;}
}

.lc-cart__actions{display:grid;gap:var(--s-md);padding-block:var(--s-md);}
@media (min-width:640px){.lc-cart__actions{grid-template-columns:minmax(0,1fr) auto;align-items:end;}}
.lc-cart__coupon label{display:block;margin-bottom:6px;font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.lc-cart__coupon > div{display:flex;flex-wrap:wrap;gap:var(--s-sm);}
.lc-cart__coupon input{flex:1 1 220px;max-width:340px;min-height:52px;padding:0 12px;border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm);}
.lc-cart__update{justify-self:start;}
@media (min-width:640px){.lc-cart__update{justify-self:end;}}

.lc-prazdny{display:flex;flex-wrap:wrap;gap:var(--s-md) var(--s-lg);margin-top:var(--s-md);}

.lc-uistenie{display:grid;gap:var(--s-md) var(--s-lg);margin-top:var(--s-lg);padding-top:var(--s-lg);border-top:1px solid var(--line);}
@media (min-width:900px){.lc-uistenie{grid-template-columns:repeat(3,minmax(0,1fr));}}
.lc-uistenie h2{font-family:var(--font-text);font-size:var(--t-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.lc-uistenie p{margin-top:8px;font-size:var(--t-small);max-width:46ch;}
.lc-uistenie a{color:var(--accent);border-bottom:1px solid var(--line);}
.lc-uistenie a:hover{border-bottom-color:var(--accent);}

/* Súhrn: panel, nie tabuľka. */
.cart-collaterals{margin-top:var(--s-lg);}
@media (min-width:900px){
  .cart-collaterals{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:var(--s-lg);}
  .cart-collaterals .lc-suhrn{grid-column:2;}
}
.lc-suhrn{background:var(--surface);border:1px solid var(--line);padding:var(--s-md);}
@media (min-width:900px){.lc-suhrn{padding:var(--s-lg);}}
.lc-suhrn h2{font-family:var(--font-display);font-size:var(--t-h3);line-height:1.1;}
.lc-suhrn__riadky{margin-top:var(--s-md);}
.lc-suhrn__riadok{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-md);padding-block:12px;border-bottom:1px solid var(--line);}
.lc-suhrn__riadok dt{color:var(--muted);}
.lc-suhrn__riadok dd{margin:0;text-align:right;}
.lc-suhrn__riadok--zlava dd{color:var(--accent);}
.lc-suhrn__riadok--spolu{border-bottom:0;padding-top:var(--s-md);}
.lc-suhrn__riadok--spolu dt{color:var(--ink);font-size:var(--t-lead);}
.lc-suhrn__riadok--spolu dd{font-family:var(--font-display);font-size:var(--t-h3);line-height:1;}
.lc-suhrn__dph{margin-top:var(--s-xs);font-size:var(--t-small);color:var(--muted);}
.lc-suhrn .wc-proceed-to-checkout{margin-top:var(--s-md);}
.lc-suhrn .checkout-button{width:100%;min-height:60px;}
.lc-suhrn__spat{margin-top:var(--s-sm);text-align:center;font-size:var(--t-small);}
.woocommerce-shipping-destination{font-size:var(--t-small);color:var(--muted);}
.shipping-calculator-button{font-size:var(--t-small);color:var(--accent);}
#shipping_method{list-style:none;margin:0;padding:0;display:grid;gap:8px;text-align:right;}
#shipping_method label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;}

/* Kroky objednávky. */
.lc-kroky{list-style:none;margin:0 0 var(--s-lg);padding:0;display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-md);font-size:var(--t-small);color:var(--muted);}
.lc-kroky li{display:flex;align-items:center;gap:8px;}
.lc-kroky span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--line);border-radius:var(--r-full);font-size:var(--t-label);}
.lc-kroky .is-done span{border-color:var(--ink);color:var(--ink);}
.lc-kroky .is-now{color:var(--ink);}
.lc-kroky .is-now span{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);}

/* Formuláre pokladne a účtu. Ohraničené pole je pre staršie oči
   jednoznačnejšie než samotná podčiarknutá linka. */
.woocommerce form .form-row{margin:0 0 var(--s-md);padding:0;display:grid;gap:6px;}
.woocommerce form .form-row label{font-size:var(--t-small);letter-spacing:0;text-transform:none;color:var(--ink);}
.woocommerce form .form-row .required{color:#8E2F2F;text-decoration:none;}
.woocommerce form .form-row .optional{color:var(--muted);}
.woocommerce form .input-text,.woocommerce form select,.woocommerce form textarea,.woocommerce .select2-container--default .select2-selection--single{width:100%;min-height:52px;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);font:inherit;color:var(--ink);}
.woocommerce form textarea{min-height:120px;}
.woocommerce form .input-text:focus,.woocommerce form select:focus,.woocommerce form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 22%,transparent);}
.woocommerce .select2-container--default .select2-selection--single{display:flex;align-items:center;}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{padding:0;line-height:1.4;}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{height:50px;}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%;float:none;}
@media (min-width:640px){
  .woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-address-fields__field-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--s-md);}
  .woocommerce form .form-row-wide{grid-column:1 / -1;}
}
.woocommerce-form__label-for-checkbox{display:flex !important;gap:12px;align-items:flex-start;text-transform:none !important;letter-spacing:0 !important;color:var(--ink) !important;font-size:var(--t-small) !important;line-height:1.5;}
.woocommerce-form__label-for-checkbox input{width:22px;height:22px;margin-top:.1em;flex:none;accent-color:var(--accent);}

.woocommerce-checkout h3{font-family:var(--font-display);font-size:var(--t-h3);margin-bottom:var(--s-md);line-height:1.15;}
.woocommerce-checkout .col2-set{display:grid;gap:var(--s-lg);}
@media (min-width:900px){.woocommerce-checkout .col2-set{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-xl);}}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{width:auto;float:none;}
#order_review_heading{margin-top:var(--s-xl);}
#order_review{margin-top:var(--s-md);background:var(--surface);border:1px solid var(--line);padding:var(--s-md);}
@media (min-width:900px){#order_review{padding:var(--s-lg);}}

.lc-rekap__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
.lc-rekap__item{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:var(--s-sm) var(--s-md);align-items:center;padding-block:var(--s-sm);border-bottom:1px solid var(--line);}
.lc-rekap__media img{width:64px;height:85px;object-fit:cover;}
.lc-rekap__name{font-family:var(--font-display);font-size:1.25rem;line-height:1.2;}
.lc-rekap__attrs{margin-top:2px;font-size:var(--t-small);color:var(--muted);}
.lc-rekap__pocet{margin-top:2px;font-size:var(--t-small);}
.lc-rekap__cena{font-family:var(--font-display);font-size:1.25rem;white-space:nowrap;text-align:right;}

#payment{margin-top:var(--s-lg);}
#payment ul.payment_methods{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
#payment ul.payment_methods > li{padding:var(--s-sm) 0;border-bottom:1px solid var(--line);}
#payment ul.payment_methods label{display:inline-flex;align-items:center;gap:12px;min-height:48px;cursor:pointer;font-size:var(--t-body);}
#payment ul.payment_methods input[type="radio"]{width:22px;height:22px;accent-color:var(--accent);}
#payment ul.payment_methods img{height:24px;width:auto;}
#payment .payment_box{margin-top:var(--s-sm);padding:var(--s-sm) var(--s-md);background:var(--bg);font-size:var(--t-small);}
#payment .place-order{margin-top:var(--s-lg);}
#payment .place-order .button{width:100%;min-height:60px;}
.woocommerce-terms-and-conditions-wrapper{margin-bottom:var(--s-md);}
.woocommerce-privacy-policy-text{font-size:var(--t-small);color:var(--muted);}
.woocommerce-privacy-policy-text a{color:var(--accent);text-decoration:underline;}
.woocommerce form.checkout_coupon{display:grid;gap:var(--s-sm);margin-bottom:var(--s-md);padding:var(--s-md);background:var(--surface);border:1px solid var(--line);}
@media (min-width:640px){.woocommerce form.checkout_coupon{grid-template-columns:minmax(0,1fr) auto;align-items:end;}}
.woocommerce form.checkout_coupon .form-row{margin:0;}

.woocommerce-thankyou-order-received{font-family:var(--font-display);font-size:var(--t-h3);}
.woocommerce-order-overview{list-style:none;margin:var(--s-md) 0;padding:var(--s-md) 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--s-md);border-block:1px solid var(--line);}
.woocommerce-order-overview li{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.woocommerce-order-overview li strong{display:block;margin-top:6px;font-size:var(--t-body);letter-spacing:0;text-transform:none;color:var(--ink);}
.woocommerce-customer-details address{font-style:normal;line-height:1.7;}

/* Môj účet. */
.lc-ucet__uvod{max-width:52ch;margin-bottom:var(--s-lg);font-size:var(--t-lead);color:var(--muted);}
.woocommerce-account .woocommerce{display:grid;gap:var(--s-lg);}
@media (min-width:900px){.woocommerce-account .woocommerce{grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:var(--s-xl);}}
.woocommerce-account .woocommerce > h2,.woocommerce-account .woocommerce > .lc-ucet__uvod,.woocommerce-account .woocommerce > .woocommerce-notices-wrapper,.woocommerce-account .woocommerce > .u-columns{grid-column:1 / -1;}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
.woocommerce-MyAccount-navigation li a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:var(--t-body);}
.woocommerce-MyAccount-navigation li.is-active a{font-weight:600;color:var(--accent);}
.woocommerce-MyAccount-navigation li a:hover{color:var(--accent);}
.woocommerce-MyAccount-content > p:first-child{max-width:60ch;}
.woocommerce-account h2{font-family:var(--font-display);font-size:var(--t-h3);margin-bottom:var(--s-md);}
.woocommerce-form-login,.woocommerce-form-register{max-width:480px;}
.u-columns.col2-set{display:grid;gap:var(--s-xl);}
@media (min-width:900px){.u-columns.col2-set{grid-template-columns:repeat(2,minmax(0,1fr));}}
.u-columns.col2-set .col-1,.u-columns.col2-set .col-2{width:auto;float:none;}
.woocommerce-LostPassword{margin-top:var(--s-sm);font-size:var(--t-small);}
.woocommerce-LostPassword a{color:var(--accent);text-decoration:underline;}
.woocommerce-Addresses{display:grid;gap:var(--s-lg);}
@media (min-width:640px){.woocommerce-Addresses{grid-template-columns:repeat(2,minmax(0,1fr));}}
.woocommerce-Address-title{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-sm);}
.woocommerce-Address address{margin-top:var(--s-sm);font-style:normal;line-height:1.7;color:var(--muted);}
.woocommerce table.shop_table{width:100%;border:0;border-top:1px solid var(--line);font-size:var(--t-small);}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:var(--s-sm) var(--s-xs);border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;}
.woocommerce table.shop_table th{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500;}
.woocommerce-orders-table__cell-order-actions .button{min-height:44px;padding:0 var(--s-sm);font-size:var(--t-label);}
.woocommerce-pagination{margin-top:var(--s-md);}
@media (max-width:767px){
  .woocommerce table.shop_table_responsive thead{display:none;}
  .woocommerce table.shop_table_responsive tr{display:grid;grid-template-columns:auto 1fr;gap:var(--s-xs) var(--s-sm);padding-block:var(--s-sm);border-bottom:1px solid var(--line);}
  .woocommerce table.shop_table_responsive td{border:0;padding:0;}
  .woocommerce table.shop_table_responsive td::before{content:attr(data-title) ": ";color:var(--muted);}
}
/* --- 22. Látky: knižnica a karta ------------------------------------------ */
.tabs{display:flex;flex-wrap:wrap;gap:4px var(--s-md);padding-block:var(--s-sm);border-block:1px solid var(--line);overflow-x:auto;}
.tab{display:inline-flex;align-items:baseline;gap:6px;min-height:40px;padding:8px 0;font-size:var(--t-small);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid transparent;white-space:nowrap;}
.tab small{font-size:var(--t-label);letter-spacing:0;}
.tab:hover{color:var(--ink);}
.tab.is-on{color:var(--ink);border-bottom-color:var(--ink);}
.fabrics{list-style:none;margin:var(--s-lg) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-lg) var(--s-sm);}
@media (min-width:900px){.fabrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-xl) var(--s-md);}}
.fabric__media{position:relative;display:block;}
.fabric__media .ratio{transition:opacity var(--dur) var(--ease);}
.fabric__media:hover .ratio{opacity:.9;}
.fabric__body{padding-top:var(--s-sm);display:grid;gap:4px;}
.fabric__name{font-family:var(--font-display);font-weight:var(--display-weight,400);font-size:1.5rem;line-height:1.1;letter-spacing:0;}
.fabric__spec{font-size:var(--t-small);}
.fabric__text{font-size:var(--t-small);color:var(--muted);margin-top:4px;}
.fabric__body{grid-template-columns:minmax(0,1fr);}\n.fabric__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-xs) var(--s-sm);margin-top:6px;min-width:0;}\n.fabric__foot .pcard__colors{flex-wrap:wrap;min-width:0;}\n.fabric__count{white-space:nowrap;}
.fabric__count{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--line);}
.fabric__count:hover{color:var(--accent);border-bottom-color:var(--accent);}
.fabric-colors{list-style:none;margin:var(--s-lg) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-md) var(--s-sm);}
@media (min-width:640px){.fabric-colors{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (min-width:900px){.fabric-colors{grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--s-md);}}
.fabric-color__plane{box-shadow:inset 0 0 0 1px rgba(25,27,25,.08);}
.fabric-color__name{margin-top:var(--s-xs);font-size:var(--t-small);}
.cert{display:inline-flex;flex-wrap:wrap;gap:6px;margin-right:var(--s-md);}
.cert b{font-weight:500;}
/* --- 23. Kolekcie: časová os archívu ----------------------------------- */
.coll--soon .coll__media{position:relative;}
.timeline__year{display:grid;gap:var(--s-md);padding-block:var(--s-lg);border-top:1px solid var(--line);}
.timeline__year:first-of-type{margin-top:var(--s-lg);}
@media (min-width:900px){.timeline__year{grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:var(--s-xl);}}
.timeline__label{font-family:var(--font-display);font-weight:700;font-size:clamp(2.5rem,6vw,4.5rem);line-height:.9;letter-spacing:-.02em;}
.timeline__list{list-style:none;margin:0;padding:0;display:grid;}
.timeline__item{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:var(--s-md);align-items:center;padding-block:var(--s-sm);border-bottom:1px solid var(--line);transition:color var(--dur) var(--ease);}
.timeline__item:hover{color:var(--accent);}
.timeline__item svg{color:var(--muted);transition:transform var(--dur) var(--ease);}
.timeline__item:hover svg{transform:translateX(4px);color:var(--accent);}
.timeline__thumb{display:block;width:72px;}
.timeline__text{display:grid;gap:2px;}
.timeline__name{font-family:var(--font-display);font-size:1.375rem;line-height:1.1;}
.timeline__note{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;}
.timeline__claim{font-size:var(--t-small);color:var(--muted);max-width:60ch;}
@media (max-width:639px){.timeline__claim{display:none;}}
/* --- 24. Stránky: kroky, formuláre, tabuľky ------------------------------ */
.steps{list-style:none;margin:var(--s-lg) 0 0;padding:0;display:grid;gap:var(--s-lg) var(--s-md);grid-template-columns:repeat(2,minmax(0,1fr));}
@media (min-width:900px){.steps{grid-template-columns:repeat(3,minmax(0,1fr));}}
.step{border-top:1px solid var(--line);padding-top:var(--s-md);}
.step__n{font-family:var(--font-display);font-size:2rem;line-height:1;color:var(--accent);}
.step__t{font-family:var(--font-display);font-weight:400;font-size:1.375rem;margin-top:var(--s-sm);}
.step p{margin-top:6px;font-size:var(--t-small);}
.form{display:grid;gap:var(--s-md);}
.form__row--2{display:grid;gap:var(--s-md);}
@media (min-width:640px){.form__row--2{grid-template-columns:repeat(2,minmax(0,1fr));}}
.field{display:grid;gap:4px;}
.field > span{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.field input,.field textarea,.field select{width:100%;min-height:48px;padding:10px 0;background:none;border:0;border-bottom:1px solid var(--ink);font:inherit;color:inherit;border-radius:var(--r-sm);}
.field textarea{min-height:120px;resize:vertical;}
.field input:focus,.field textarea:focus{outline:none;border-bottom-color:var(--accent);}
.form__note{font-size:var(--t-label);letter-spacing:0;color:var(--muted);max-width:none;}
.form__note a{border-bottom:1px solid var(--line);}
.form .btn{justify-self:start;}
.hp{position:absolute;left:-9999px;}
.notice{padding:var(--s-sm) var(--s-md);border:1px solid var(--ink);font-size:var(--t-small);max-width:none;}
.notice--err{border-color:#8E2F2F;color:#8E2F2F;}
.lc-prose table{width:100%;border-collapse:collapse;margin-top:var(--s-md);font-size:var(--t-small);}
.lc-prose th,.lc-prose td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top;}
.lc-prose th{font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:500;}
.lc-prose blockquote{border-left:2px solid var(--accent);padding-left:var(--s-md);font-family:var(--font-display);font-size:var(--t-h3);line-height:1.3;margin-top:var(--s-lg);}
.faq{border-top:1px solid var(--line);margin-top:var(--s-md);}
.faq .acc summary{font-size:1.25rem;}
.faq .acc__body p{max-width:60ch;}
.lc-prose{overflow-wrap:anywhere;}

.facet__more{margin-top:var(--s-sm);}
.facet__more summary{font-size:var(--t-small);color:var(--muted);cursor:pointer;list-style:none;padding:6px 0;}
.facet__more summary::-webkit-details-marker{display:none;}
.facet__more summary:hover{color:var(--ink);}
@media (min-width:900px){.facet__more{max-height:260px;overflow:auto;}}
.facet__note{font-size:var(--t-label);margin-top:var(--s-sm);max-width:none;}

/* logo znacky v hlavicke */
.brand{display:inline-flex;align-items:center;}
.brand__logo,.brand__logo img{display:block;height:44px;width:auto;}
@media (min-width:1120px){.brand__logo,.brand__logo img{height:58px;}}
.mobile-nav__head .brand__logo,.mobile-nav__head .brand__logo img{height:38px;}
.pg-brand{display:inline-flex;align-items:center;}
.pg-brand .brand__logo,.pg-brand .brand__logo img{height:26px;width:auto;}

/* Vyber dopravy v suhrne. */
.lc-doprava{display:grid;gap:8px;}
.lc-doprava .woocommerce-shipping-methods{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.lc-doprava .woocommerce-shipping-methods li{display:flex;}
.lc-doprava label{display:inline-flex;align-items:baseline;gap:8px;cursor:pointer;text-align:left;}
.lc-doprava input[type="radio"]{width:20px;height:20px;flex:none;accent-color:var(--accent);position:relative;top:3px;}
.lc-doprava__jedna{text-align:right;}
.lc-doprava .woocommerce-shipping-destination{margin-top:4px;}
.lc-doprava .shipping-calculator-button{display:inline-block;margin-top:4px;text-decoration:underline;}
.lc-doprava .shipping-calculator-form{margin-top:var(--s-sm);text-align:left;}
.lc-suhrn__riadok--doprava{align-items:start;}
.lc-suhrn__riadok--doprava dd{max-width:70%;}

/* Znamienko pri rozbalovacich otazkach. Bez neho nie je vidiet, ze sa daju otvorit. */
.acc summary::after{content:'+';margin-left:var(--s-md);font-family:var(--font-text);font-size:1.5rem;line-height:1;color:var(--muted);transition:transform var(--dur) var(--ease);}
.acc[open] summary::after{content:'\2212';}
.acc summary:hover{color:var(--accent);}
.acc summary:hover::after{color:var(--accent);}

/* ============================================================
   25. Oznamy, aktuality a uvedenie kolekcie
   ============================================================ */
.oznam{padding-block:var(--s-lg) var(--s-xl);}
.oznam__grid{display:grid;gap:var(--s-lg);margin-top:var(--s-lg);}
@media (min-width:900px){.oznam__grid{grid-template-columns:1.1fr .9fr;align-items:start;}}
.oznam__title{margin-top:var(--s-sm);}
.oznam__lead{margin-top:var(--s-md);}
.oznam__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--s-md);margin:var(--s-lg) 0 0;}
.oznam__facts dt{font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.oznam__facts dd{margin:.4rem 0 0;line-height:1.5;}
.oznam__text{margin-top:var(--s-lg);}
.oznam__actions{display:flex;flex-wrap:wrap;gap:var(--s-md);align-items:center;margin-top:var(--s-lg);}
.oznam__gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-sm);}
.oznam-page{padding-top:0;}
.oznam-page__past{padding-top:var(--s-md);}
.oznam-list{margin-top:var(--s-lg);border-top:1px solid var(--line);}
.oznam-list__item a{display:grid;gap:.3rem;padding:var(--s-md) 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none;}
.oznam-list__title{font-family:var(--font-display);font-size:var(--t-h3);line-height:1.15;}
.notice-bar{position:relative;display:flex;align-items:center;background:color-mix(in oklab,var(--accent) 9%,var(--bg));color:var(--ink);border-bottom:1px solid var(--line);font-size:var(--t-small);line-height:1.4;}
/* Odsadenie je na oboch stranach rovnake (miesto pre krizik aj vlavo), inak text nesedi v strede stranky. */
.notice-bar__link{flex:1;display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.35rem var(--s-sm);padding:.65rem calc(var(--gutter) + 2.5rem);color:inherit;text-decoration:none;text-align:center;}
.notice-bar__close{position:absolute;right:var(--s-sm);top:50%;transform:translateY(-50%);width:2.25rem;height:2.25rem;border:0;background:transparent;color:var(--muted);font-size:1.5rem;line-height:1;cursor:pointer;}
.notice-bar__close:hover{color:var(--ink);}
.notice-bar__label{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.notice-bar__place{font-weight:600;color:var(--accent);}
.notice-bar__meta{color:var(--muted);}
.notice-bar__more{text-decoration:underline;text-underline-offset:.2em;}
/* Mobil: krizik v rohu, popisok na vlastnom riadku, text v strede medzi rovnakymi okrajmi. */
@media (max-width:639px){
  .notice-bar{font-size:.9375rem;}
  .notice-bar__link{padding:.7rem calc(var(--gutter) + 1.5rem) .8rem;gap:.15rem .45rem;line-height:1.35;}
  .notice-bar__label{font-size:.75rem;}
  .notice-bar__label{flex-basis:100%;}
  .notice-bar__close{right:4px;top:.4rem;transform:none;width:2rem;height:2rem;font-size:1.35rem;}
}
.staff-bar{margin-top:var(--s-sm);}
.staff-bar p{margin:0;padding:.5rem .75rem;background:#FFF3C4;color:#4A3B00;font-size:var(--t-small);}
.staff-bar a{color:inherit;}
.product__prelaunch{margin-top:var(--s-lg);padding:var(--s-md);border:1px solid var(--line);}
.product__prelaunch p+p{margin-top:var(--s-sm);}
.pcard__price:empty{display:none;}


/* ============================================================
   26. Zaoblenie — jazyk tvarov podla loga
   Logo je ramcek 560x388 px so zaoblenim 51 px, teda ~13 %
   kratsej strany. Rovnaka makkost ide na cely web. Polomer
   rastie s plochou: stitok 8, tlacidlo 14, karta 24,
   obrazok 32, hero 48. Vsetko cez tokeny --r-* z :root.
   ============================================================ */

/* --- Media: fotky, video, zastupne plochy ------------------- */
/* .ratio uz ma overflow:hidden, polomer teda oreze aj fotku vnutri. */
.ratio{border-radius:var(--r-lg);}
.pcard__media{border-radius:var(--r-lg);overflow:hidden;}
.hero__media .ratio,
.hero--fullbleed .hero__media .ratio,
.lcs__plne .ratio,
.product__gallery > li:first-child .ratio,
.reel,
.ratio--reel{border-radius:var(--r-xl);overflow:hidden;}
.mega__tile .ratio,
.timeline__thumb .ratio,
.timeline__thumb img,
.lc-mini__item .ratio{border-radius:var(--r-md);}
.lcs__caka{border-radius:var(--r-lg);}
.lcs__plocha,
.fabric-color__plane{border-radius:var(--r-md);}
.lc-cart__media img{border-radius:var(--r-sm);}
.lc-rekap__media img{border-radius:var(--r-xs);}
/* Stitok uz nesmie sediet na lavej hrane: zaoblena fotka by mu orezala
   roh. Je preto odsadeny a cely oblu, plava na fotke ako pilulka. */
.pcard__badge{left:var(--s-sm);border-radius:var(--r-pill);}

/* --- Tlacidla a ovladacie prvky ----------------------------- */
.btn,
.woocommerce .button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.variant__pill,
.lc-cart__coupon input{border-radius:var(--r-sm);}
.icon-btn,
.nav__more,
.foot__social a,
.pagination .page-numbers,
.reel__play,
.notice-bar__close{border-radius:var(--r-full);}
.chip,
.cart-link__count,
.filters__n,
.facet__n{border-radius:var(--r-pill);}
/* Mnozstvo v kosiku je jeden celok: polomer na obale, tlacidla sa orezu. */
.lc-qty{border-radius:var(--r-sm);overflow:hidden;}

/* --- Formulare --------------------------------------------- */
/* Podciarknuta linka sa nedala zaoblit a pre oci 45+ bola aj tak
   menej jednoznacna nez ramcek. Polia su preto zaoblene boxy —
   rovnake, ake ma uz poklandna. */
.field input,
.field textarea,
.field select,
.search__input,
.foot-club__input{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--r-sm);
  padding:12px 16px;
}
.field textarea{padding-block:14px;}
.search__input{padding-block:14px;}
.shop-bar__sort select{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--r-sm);
  padding:10px 14px;
}
.woocommerce form .input-text,
.woocommerce form select,
.woocommerce form textarea,
.woocommerce .select2-container--default .select2-selection--single{border-radius:var(--r-sm);}
.field input:focus,
.field textarea:focus,
.field select:focus,
.search__input:focus,
.foot-club__input:focus,
.shop-bar__sort select:focus,
.woocommerce form .input-text:focus,
.woocommerce form select:focus,
.woocommerce form textarea:focus{
  outline:none;
  border-color:var(--accent);
  box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 16%,transparent);
}

/* --- Karty, panely a oznamy -------------------------------- */
.lc-suhrn,
#order_review,
.notice,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.product__soldout,
.product__prelaunch{border-radius:var(--r-md);}

/* Tabulka objednavok v ucte je karta, nie holy zoznam.
   border-collapse:separate je nutne, inak polomer neoreze bunky. */
.woocommerce table.shop_table{
  border-collapse:separate;
  border-spacing:0;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--r-md);
  overflow:hidden;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{padding-inline:var(--s-md);}
.woocommerce table.shop_table tr:last-child th,
.woocommerce table.shop_table tr:last-child td{border-bottom:0;}

/* --- Rozbalovacie panely pod hlavickou --------------------- */
/* Panel visi pod hlavickou, spodne rohy ho odlepia od obsahu. */
@media (min-width:1120px){
  .mega{border-radius:0 0 var(--r-lg) var(--r-lg);}
}
@media (min-width:900px){
  .filters__panel{border-radius:0 0 var(--r-md) var(--r-md);}
}

/* --- Mensie obrazovky -------------------------------------- */
/* Na telefone je fotka siroka 330 az 390 px. Polomer 48 by z nej
   spravil bublinu, preto sa cela skala mierne stiahne. */
@media (max-width:639px){
  :root{
    --r-md:20px;
    --r-lg:24px;
    --r-xl:32px;
  }
}

/* =========================================================================
   27. Pristupnost - tokeny pre kontrast a tmave sekcie
   Portal a dielna sa pouzivaju v pohybe, na mobile a na tablete pri stroji.
   Preto maju vlastnu, prisnejsiu uroven kontrastu a vlastne tokeny pre
   tmave pasy. Verejny web tieto tokeny nepouziva, len ich nesie.
   ========================================================================= */
:root{
  /* Tmave sekcie: zeleny akcent so svetlym pismom. Biela na #2E5B4E ma
     kontrast 7,7:1 - teda AAA aj pre bezny text. */
  --dark:var(--accent);
  --dark-ink:#FFFFFF;
  --dark-muted:#E1C7D5;   /* sekundarny text na tmavom, 7,1:1 */
  --dark-line:color-mix(in srgb,#FFFFFF 22%,transparent);
  --dark-hair:color-mix(in srgb,#FFFFFF 22%,var(--dark)); /* delici pruh medzi dlazdicami */
  --dark-up:#A7E0C6;      /* kladna zmena na tmavom, 5,4:1 */
  --dark-down:#FAD0C6;    /* zaporna zmena na tmavom, 5,0:1 */
}

/* Portal a dielna: sekundarny text a linky idu o stupen nizsie.
   #4A504A ma na bielej 8,3:1 (predtym 6,1:1) - AAA aj pri 14 px. */
.lc-portal,.lc-dielna{
  --muted:#4A504A;
  --line:#C9C6BC;
}
/* --- Autorská tvorba (stránka služby) ----------------------------------- */
.at-grid{display:grid;gap:var(--s-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));margin-top:var(--s-lg);}
.at-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-md);}
.at-card__t{font-size:var(--t-h3);margin-bottom:var(--s-xs);}
.at-price{display:grid;gap:var(--s-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));margin-top:var(--s-lg);}
.at-price__n{font-size:var(--t-h2);margin:var(--s-xs) 0 var(--s-sm);}
.at-port{display:grid;gap:var(--s-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));margin-top:var(--s-lg);}
.at-port > *{border-radius:var(--r-lg);overflow:hidden;}
.at-note{font-size:var(--t-small);margin-top:var(--s-md);}
.at-cross{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:var(--s-lg);margin-top:var(--s-lg);}
@media (min-width:900px){.at-cross{padding:var(--s-xl);}}


/* --- 19. Magazínová landing page kolekcie -------------------------------- */
/* Rozmery a farby prevzaté zo starého webu (Elementor, Back to Origins):
   kontajner 1310 px, medzery 10 px, Anton pre titulky, EB Garamond pre
   medzititulky, Roboto 25 px pre text. Zaoblenie ide z tokenov témy. */

.mag{--mag-font-title:'Anton',Impact,'Arial Narrow Bold',sans-serif;
     --mag-font-serif:'EB Garamond',Georgia,'Times New Roman',serif;
     --mag-font-text:'Roboto',Arial,Helvetica,sans-serif;
     --mag-font-rubrika:'Roboto Flex','Roboto',Arial,sans-serif;
     --mag-ink:#222222;--mag-h:#1A1C1F;--mag-muted:#525151;--mag-line:#000000;
     --mag-gap:10px;
     background:#FAF9F6;color:var(--mag-ink);}
.mag .wrap{max-width:1330px;padding-inline:10px;}
@media (min-width:1350px){.mag .wrap{padding-inline:0;}}
.mag .ratio{border-radius:var(--r-lg);}

/* Hero: video cez celú šírku, text úplne dole, prechod do červenej. */
.mag-hero{position:relative;overflow:hidden;min-height:85vh;display:flex;align-items:flex-end;padding:0 0 20px 20px;background:#111;isolation:isolate;}
.mag-hero__poster,.mag-hero__video,.mag-hero__prechod{position:absolute;inset:0;}
.mag-hero__poster .ratio{position:absolute;inset:0;aspect-ratio:auto;max-height:none;border-radius:0;background:transparent;}
.mag-hero__poster img{width:100%;height:100%;object-fit:cover;}
.mag-hero__video{z-index:1;opacity:0;transition:opacity .8s var(--ease);pointer-events:none;}
.mag-hero--video .mag-hero__video{opacity:1;}
.mag-hero__video iframe{position:absolute;top:50%;left:50%;width:max(100%,177.78vh);height:max(100%,56.25vw);transform:translate(-50%,-50%);border:0;}
.mag-hero__prechod{z-index:2;background:linear-gradient(180deg,rgba(3,3,3,0) 46%,var(--mag-prechod,#900404) 82%);opacity:.64;}
.mag-hero__copy{position:relative;z-index:3;max-width:min(100%,1310px);}
.mag-hero__label{margin:0 0 20px;font-family:var(--mag-font-serif);font-size:39px;font-weight:400;line-height:1.2;color:var(--mag-stitok,#AF0F0F);}
.mag-hero__title{margin:0;font-family:var(--mag-font-title);font-weight:500;font-size:11.3rem;line-height:1.05;color:#FFFFFF;text-shadow:0 0 10px rgba(0,0,0,.3);letter-spacing:0;text-transform:none;}
.mag-hero__claim{margin:20px 0 0;max-width:34em;font-family:var(--mag-font-serif);font-weight:700;font-size:29px;line-height:1.3;color:#FFFFFF;}
.mag-hero__note{margin:12px 0 0;font-family:var(--mag-font-text);font-size:1rem;color:#FFFFFF;}
@media (max-width:767px){
  .mag-hero{min-height:82vh;padding:0 20px 20px 20px;}
  .mag-hero__prechod{background:linear-gradient(180deg,rgba(3,3,3,0) 61%,var(--mag-prechod,#900404) 79%);opacity:.52;}
  .mag-hero__label{margin-bottom:0;font-size:30px;}
  .mag-hero__title{font-size:clamp(56px,20vw,83px);}
  .mag-hero__claim{font-size:17px;line-height:1.2;text-align:justify;}
}
@media (min-width:768px) and (max-width:1024px){.mag-hero__title{font-size:clamp(83px,14vw,11.3rem);}}

/* Rubrika: malý nadpis a čiara, ktorá sa k nemu tiahne sprava. */
.mag-rubrika{display:flex;align-items:center;gap:20px;margin-top:50px;}
.mag-rubrika__nadpis{flex:0 0 auto;margin:0;font-family:var(--mag-font-rubrika);font-weight:400;font-size:23px;line-height:1.3;color:var(--mag-muted);text-transform:none;letter-spacing:0;}
.mag-rubrika__ciara{flex:0 0 76%;margin-left:auto;height:1px;background:var(--mag-line);}
@media (max-width:767px){.mag-rubrika__ciara{flex-basis:35%;}}

/* Dvojstĺpcový editoriál. Medzi prvkami 20 px, ako mal Elementor. */
.mag-stlpce{display:grid;grid-template-columns:minmax(0,var(--mag-lavy,50%)) minmax(0,1fr);gap:var(--mag-gap);margin-top:20px;}
.mag-stlpec > * + *{margin-top:20px;}
@media (max-width:767px){.mag-stlpce{grid-template-columns:1fr;margin-top:0;}.mag-stlpec + .mag-stlpec{margin-top:20px;}}

.mag-h3{margin:0;font-family:var(--mag-font-serif);font-weight:700;font-size:26px;line-height:1.25;color:var(--mag-h);text-transform:none;letter-spacing:0;}
.mag-text{font-family:var(--mag-font-text);font-weight:400;font-size:25px;line-height:1.5;color:var(--mag-ink);text-align:justify;}
.mag-text p{margin:0;}
.mag-text p + p{margin-top:1em;}
.mag-text a{color:#3366ff;text-decoration:underline;text-underline-offset:.12em;}
.mag-text--garamond{font-family:var(--mag-font-serif);font-weight:700;font-size:16px;line-height:1.5;text-align:left;}
@media (max-width:767px){.mag-h3{font-size:18px;}.mag-text{font-size:20px;}}

.mag-img{margin:0;}
.mag-img .ratio{max-height:none;}

/* Galéria: štvorce v troch stĺpcoch, tmavý závoj pri prejdení myšou. */
.mag-gal{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--mag-gap);}
.mag-gal__item{position:relative;}
.mag-gal .ratio{aspect-ratio:1/1;max-height:none;border-radius:var(--r-md);}
.mag-gal .ratio::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,0);transition:background .8s var(--ease);pointer-events:none;}
.mag-gal__item:hover .ratio::after{background:rgba(0,0,0,.5);}
.mag-gal--siroka{margin-top:20px;}
@media (max-width:767px){.mag-gal{grid-template-columns:1fr;}}

.mag-ciara{width:92%;margin:65px auto 15px;border:0;border-top:1px solid var(--mag-line);}
@media (max-width:767px){.mag-ciara{width:89%;}}

/* Akcentový nadpis: veľký Anton v červenej, pod ním garamondový odsek. */
.mag-akcent{margin-top:20px;}
.mag-akcent__nadpis{margin:0 0 20px;font-family:var(--mag-font-title);font-weight:700;font-size:87px;line-height:1;color:var(--mag-akcent,#B32323);text-transform:none;letter-spacing:0;}
@media (max-width:767px){.mag-akcent__nadpis{font-size:48px;}}

/* Text s tlačidlom: text vľavo na 44 %, tlačidlo v strede zvyšku. */
.mag-zaver{display:grid;grid-template-columns:43.905% minmax(0,1fr);gap:var(--mag-gap);margin-top:20px;align-items:center;}
.mag-zaver__akcia{display:flex;justify-content:center;}
@media (max-width:767px){.mag-zaver{grid-template-columns:1fr;}}

.mag-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:12px 24px;
  font-family:var(--mag-font-text);font-size:16px;font-weight:400;letter-spacing:.5px;text-transform:none;line-height:1.2;
  color:#FFFFFF;background:#292A2C;border:1px solid #1A1A1A;border-radius:var(--r-sm);
  box-shadow:inset 0 0 10px 0 rgba(147,137,137,.5);text-decoration:none;
  transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease);}
.mag-btn:hover,.mag-btn:focus-visible{background:#BA7373;border-color:#BA7373;color:#FFFFFF;}
.mag-btn--ghost{background:transparent;color:var(--mag-h);border-color:var(--mag-h);box-shadow:none;}
.mag-btn--ghost:hover,.mag-btn--ghost:focus-visible{background:var(--mag-h);border-color:var(--mag-h);color:#FFFFFF;}
@media (max-width:767px){.mag-btn{border-width:2px;}}

/* Látky a nákup: dve nové sekcie pod editoriálom, v rovnakej rubrikovej reči. */
.mag-sekcia{padding-bottom:20px;}
.mag-sekcia__uvod{margin:20px 0 0;font-family:var(--mag-font-text);font-size:18px;color:var(--mag-muted);}
.mag-latky{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--mag-gap);margin-top:20px;}
@media (max-width:767px){.mag-latky{grid-template-columns:1fr;}}
.mag-latka{display:flex;flex-direction:column;gap:16px;}
.mag-latka__media{display:block;}
.mag-latka__media .ratio{max-height:none;}
.mag-latka__body{display:flex;flex-direction:column;gap:12px;align-items:flex-start;}
.mag-latka__body .mag-h3 a{color:inherit;text-decoration:none;}
.mag-latka__body .mag-h3 a:hover{text-decoration:underline;}
.mag-latka__spec{margin:0;font-family:var(--mag-font-text);font-size:16px;color:var(--mag-muted);}
.mag-odtiene{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.mag-modely{margin-top:20px;}
.mag-sekcia__akcia{display:flex;justify-content:center;margin-top:40px;}

/* --- 19b. Magazín: rubrika bez pretekania, Farebný svet, filtre, spomienky --- */
/* Rubrika: nadpis sa moze zalomit, ciara nikdy nepresiahne riadok. */
.mag{overflow-x:clip;}
.mag-rubrika{min-width:0;}
.mag-rubrika__nadpis{flex:0 1 auto;min-width:0;}
.mag-rubrika__ciara{flex:1 1 0;max-width:76%;min-width:48px;}
@media (max-width:767px){.mag-rubrika__ciara{max-width:35%;}}

/* Farebný svet: karty látok, panel pod radom kariet. */
.mag-latky{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--mag-gap);margin-top:20px;}
@media (max-width:1023px){.mag-latky{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:767px){.mag-latky{grid-template-columns:repeat(2,minmax(0,1fr));}}
.mag-latka{position:relative;display:flex;flex-direction:column;gap:10px;padding:0;margin:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer;font:inherit;transition:transform var(--dur) var(--ease);}
.mag-latka .ratio{aspect-ratio:1/1;max-height:none;border-radius:var(--r-md);transition:box-shadow var(--dur) var(--ease);}
.mag-latka:hover,.mag-latka.is-open{transform:translateY(-4px);}
.mag-latka:hover .ratio,.mag-latka.is-open .ratio{box-shadow:0 12px 30px rgba(0,0,0,.14);}
.mag-latka:focus-visible{outline:2px solid var(--mag-h);outline-offset:4px;border-radius:var(--r-md);}
.mag-latka__nazov{font-family:var(--mag-font-serif);font-weight:700;font-size:20px;line-height:1.2;color:var(--mag-h);}
.mag-latka__stitok{position:absolute;left:10px;top:10px;background:#FAF9F6;color:var(--mag-muted);font-family:var(--mag-font-text);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:var(--r-xs);}
.mag-latka--nedostupna .ratio{filter:grayscale(.6);opacity:.8;}
.mag-latky-panely{margin-top:var(--mag-gap);}
.mag-latka-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;padding:20px;background:#FFFFFF;border:1px solid var(--line);border-radius:var(--r-md);}
.mag-latka-panel[hidden]{display:none;}
@media (max-width:767px){.mag-latka-panel{grid-template-columns:1fr;padding:12px;}}
.mag-latka-panel__foto .ratio{max-height:none;border-radius:var(--r-md);}
.mag-latka-panel__telo{display:flex;flex-direction:column;gap:12px;align-items:flex-start;}
.mag-latka-panel__spec{margin:0;font-family:var(--mag-font-text);font-size:16px;color:var(--mag-muted);}
.mag-latka-panel__popis{margin:0;font-family:var(--mag-font-text);font-size:17px;line-height:1.5;color:var(--mag-ink);}
.mag-latka-panel__label{margin:8px 0 0;font-family:var(--mag-font-rubrika);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--mag-muted);}
.mag-odtiene{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px;}
.mag-odtien{display:flex;flex-direction:column;align-items:center;gap:6px;width:72px;}
.mag-odtien__foto{flex:0 0 56px;width:56px;height:56px;border-radius:var(--r-full);overflow:hidden;border:1px solid var(--line);display:block;}
.mag-odtien__foto img{width:100%;height:100%;object-fit:cover;display:block;}
.mag-odtien__nazov{font-family:var(--mag-font-text);font-size:12px;line-height:1.2;text-align:center;color:var(--mag-muted);}
.mag-latka-panel__akcie{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.mag-latka-panel__pozn{font-family:var(--mag-font-text);font-size:15px;color:var(--mag-muted);}

/* Filtre v rámci kolekcie. */
.mag-filtre{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:flex-end;margin-top:20px;}
.mag-filter{border:0;margin:0;padding:0;min-width:0;}
.mag-filter__label{font-family:var(--mag-font-rubrika);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--mag-muted);padding:0;margin-bottom:8px;}
.mag-filter__chipy{display:flex;flex-wrap:wrap;gap:8px;}
.mag-chip{font-family:var(--mag-font-text);font-size:15px;line-height:1;padding:10px 14px;border:1px solid var(--mag-h);border-radius:var(--r-pill);background:transparent;color:var(--mag-h);cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease);}
.mag-chip:hover{background:rgba(0,0,0,.06);}
.mag-chip[aria-pressed="true"]{background:var(--mag-h);color:#FFFFFF;}
.mag-filtre__zrusit{font-family:var(--mag-font-text);font-size:15px;background:none;border:0;padding:10px 0;color:var(--mag-muted);text-decoration:underline;cursor:pointer;}
.mag-filtre__pocet{margin:0;font-family:var(--mag-font-text);font-size:15px;color:var(--mag-muted);flex-basis:100%;}
.mag-filtre__pocet:empty{display:none;}
.mag-modely > li[hidden]{display:none;}
.mag-modely__prazdne{margin:20px 0 0;font-family:var(--mag-font-text);font-size:17px;color:var(--mag-muted);}
.mag-modely__prazdne .link{background:none;border:0;padding:0;font:inherit;color:var(--mag-h);text-decoration:underline;cursor:pointer;}

/* Spomienky: album kolekcie, nie zvyšok e-shopu. */
.mag-spomienky{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--mag-gap);grid-auto-flow:dense;}
@media (max-width:767px){.mag-spomienky{grid-template-columns:repeat(2,minmax(0,1fr));}}
.mag-spomienka--wide{grid-column:span 2;}
.mag-spomienka__btn{display:block;width:100%;padding:0;margin:0;border:0;background:none;cursor:zoom-in;}
.mag-spomienka .ratio{max-height:none;border-radius:var(--r-md);}
.mag-spomienka__popis{margin:8px 0 0;font-family:var(--mag-font-serif);font-weight:700;font-size:16px;color:var(--mag-h);}
.mag-spomienka__popis span{font-family:var(--mag-font-text);font-weight:400;color:var(--mag-muted);}
.mag-lightbox{border:0;padding:0;background:transparent;max-width:min(96vw,1400px);max-height:96vh;}
.mag-lightbox::backdrop{background:rgba(10,10,10,.92);}
.mag-lightbox img{display:block;max-width:96vw;max-height:88vh;object-fit:contain;border-radius:var(--r-md);}
.mag-lightbox__popis{margin:12px 0 0;text-align:center;color:#FFFFFF;font-family:var(--mag-font-serif);font-weight:700;font-size:18px;}
.mag-lightbox__zavriet{position:fixed;top:16px;right:16px;width:44px;height:44px;border-radius:var(--r-full);border:0;background:#FFFFFF;color:#111;font-size:28px;line-height:1;cursor:pointer;}

/* =========================================================================
   28. Tmava hlavicka
   Masthead, megamenu, vyhladavanie aj mobilne menu maju tmavy podklad.
   Vlastne tokeny, aby kazdy prvok drzal kontrast na tmavom:
   Podklad je slivkova bordova (akcent), nie cierna - cierna posobila morbidne.
   Kontrast na #5E2340: head-ink 11,8:1 - head-muted 7,3:1 - head-accent 8,9:1.
   Logo je cierna kresba na priehladnom PNG, na tmavom sa invertuje na bielu.
   ========================================================================= */
:root{
  --head-bg:var(--accent);
  --head-ink:#FFFFFF;
  --head-muted:#E1C7D5;
  --head-accent:#EED8E3;
  --head-line:rgba(255,255,255,.22);
  --head-hover:rgba(255,255,255,.12);
}

/* Lista */
.site-head{background:var(--head-bg);color:var(--head-ink);border-bottom-color:var(--head-line);}
.site-head .brand__logo img{filter:invert(1);}
.site-head .icon-btn{color:var(--head-ink);transition:background-color var(--dur) var(--ease);}
.site-head .icon-btn:hover{background:var(--head-hover);}
.site-head .cart-link__count{background:#FFFFFF;color:#401428;}

/* Polozky menu */
.site-head .nav__link{color:var(--head-ink);}
.site-head .nav__link::after{background:var(--head-accent);}
.site-head .nav__more{color:var(--head-muted);}
.site-head .nav__more:hover,
.site-head .nav__item:hover .nav__more,
.site-head .nav__item.is-open .nav__more,
.site-head .nav__item:focus-within .nav__more{color:var(--head-ink);}

/* Rozbalovacie panely */
.site-head .mega{background:var(--head-bg);color:var(--head-ink);border-bottom-color:var(--head-line);box-shadow:0 28px 44px -24px rgba(30,8,22,.55);}
.site-head .mega .label{color:var(--head-muted);}
.site-head .mega__list a{color:var(--head-ink);}
.site-head .mega__list a:hover{color:var(--head-accent);}
.site-head .mega__list small,
.site-head .mega__tile-note{color:var(--head-muted);}
.site-head .mega__list--display a{border-bottom-color:var(--head-line);}
.site-head .mega .link{color:var(--head-accent);}
.site-head .mega__tile{color:var(--head-ink);}

/* Vyhladavanie */
.site-head .search{background:var(--head-bg);color:var(--head-ink);border-top-color:var(--head-line);}
/* Pole je zaobleny box (blok 25): na tmavom je tmave s jemnym ramom. */
.site-head .search__input{color-scheme:dark;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.35);color:var(--head-ink);}
.site-head .search__input::placeholder{color:var(--head-muted);}
.site-head .search__input:focus{border-color:var(--head-accent);box-shadow:0 0 0 3px rgba(238,216,227,.3);}
.site-head .search-close{color:var(--head-ink);}
.site-head .search__hints .label{color:var(--head-muted);}
.site-head .search__hints a{color:var(--head-ink);border-bottom-color:var(--head-line);}
.site-head .search__hints a:hover{color:var(--head-accent);border-bottom-color:var(--head-accent);}
.site-head .search .btn--primary{background:var(--head-ink);color:var(--head-bg);}
.site-head .search .btn--primary:hover{background:var(--head-accent);color:#401428;}

/* Mobilne menu */
.mobile-nav{background:var(--head-bg);color:var(--head-ink);}
.mobile-nav .brand__logo img{filter:invert(1);}
.mobile-nav .icon-btn{color:var(--head-ink);}
.mobile-nav__head{border-bottom-color:var(--head-line);}
.mobile-nav__link,
.mobile-nav__group summary{color:var(--head-ink);border-bottom-color:var(--head-line);}
.mobile-nav__group summary svg{color:var(--head-muted);}
.mobile-nav__group ul a{color:var(--head-ink);}
.mobile-nav__group ul a:hover{color:var(--head-accent);}
.mobile-nav__foot{border-top-color:var(--head-line);}
.mobile-nav__foot a{color:var(--head-muted);}
.mobile-nav__foot a:hover{color:var(--head-ink);}

/* Fokus z klavesnice: zeleny akcent by na tmavom zanikol, ram je svetly. */
.site-head :where(a,button,input,summary):focus-visible,
.mobile-nav :where(a,button,input,summary):focus-visible{outline-color:var(--head-accent);}

/* Vzorka farby: fotka odtienu, ak ju ma; inak plocha podla hexu. */
.swatch{background-image:var(--sw-img,none);background-size:cover;background-position:center;}

/* =========================================================================
   29. Mobilne menu - editorialne, nie akordeon
   Cela obrazovka na zelenom podklade hlavicky. Zhora: hladanie, kolekcie
   ako karty s fotkou (vodorovny posun), obchod so skladovkami na prvom
   mieste a chipmi typov, latky ako kruhove vzorky, velke odkazy a showroom.
   Tokeny --head-* z bloku 28. Vsetko zaoblene ako logo.
   ========================================================================= */
.mobile-nav__body{padding:var(--s-md) var(--gutter) calc(var(--s-lg) + env(safe-area-inset-bottom,0px));display:grid;gap:var(--s-lg);}
.mobile-nav__head{position:sticky;top:0;z-index:2;background:var(--head-bg);}

/* Hladanie */
.mnav-search{position:relative;}
.mnav-search__input{width:100%;min-height:52px;padding:12px 56px 12px 18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.35);border-radius:var(--r-pill);color:var(--head-ink);font:inherit;font-size:var(--t-body);color-scheme:dark;}
.mnav-search__input::placeholder{color:var(--head-muted);opacity:1;}
.mnav-search__input:focus{outline:none;border-color:var(--head-accent);box-shadow:0 0 0 3px rgba(238,216,227,.3);}
.mnav-search__btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-full);background:#FFFFFF;color:#401428;}

/* Sekcie */
.mnav-sec{display:grid;gap:var(--s-sm);}
.mnav-sec__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-sm);}
.mnav-sec__title{font-family:var(--font-display);font-weight:var(--display-weight,500);font-size:1.75rem;line-height:1.1;margin:0;color:var(--head-ink);}
.mnav-sec__all{display:inline-flex;align-items:center;gap:6px;font-size:var(--t-small);color:var(--head-accent);white-space:nowrap;}
.mnav-sec__all svg{width:16px;height:16px;}

/* Vodorovny posun: karty vybiehaju az k okraju obrazovky */
.mnav-scroll{display:flex;gap:var(--s-sm);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);padding-top:4px;padding-bottom:14px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.mnav-scroll::-webkit-scrollbar{display:none;}

/* Karta kolekcie */
.mnav-card{position:relative;flex:0 0 46%;max-width:220px;scroll-snap-align:start;display:grid;gap:4px;color:var(--head-ink);}
.mnav-card__media .ratio{border-radius:var(--r-md);background:rgba(255,255,255,.12);box-shadow:0 14px 28px -10px rgba(30,8,22,.6),0 4px 10px -4px rgba(30,8,22,.45),inset 0 1px 0 rgba(255,255,255,.18);}\n.mnav-card__media{padding-bottom:6px;}
.mnav-card__badge{position:absolute;left:10px;top:10px;padding:5px 10px;background:#FFFFFF;color:#401428;font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--r-pill);line-height:1.2;}
.mnav-card__name{margin-top:6px;font-family:var(--font-display);font-size:1.25rem;line-height:1.1;}
.mnav-card__note{font-size:var(--t-small);color:var(--head-muted);}

/* Obchod: dve dlazdice, skladovky prve a najvyraznejsie */
.mnav-duo{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-sm);}
.mnav-tile{display:grid;align-content:end;gap:2px;min-height:124px;padding:var(--s-sm) var(--s-md);border:1px solid rgba(255,255,255,.28);border-radius:var(--r-md);color:var(--head-ink);background:rgba(255,255,255,.08);}
.mnav-tile--sklad{background:#FFFFFF;border-color:#FFFFFF;color:#401428;}
.mnav-tile__n{font-family:var(--font-display);font-size:2.5rem;line-height:1;}
.mnav-tile__t{font-size:var(--t-small);font-weight:500;}
.mnav-tile__t--big{font-family:var(--font-display);font-size:1.5rem;line-height:1.1;font-weight:var(--display-weight,500);}
.mnav-tile__s{font-size:var(--t-label);letter-spacing:.02em;opacity:.8;}
.mnav-chips{list-style:none;margin:var(--s-xs) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.mnav-chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.35);border-radius:var(--r-pill);color:var(--head-ink);font-size:var(--t-small);line-height:1;white-space:nowrap;}
.mnav-chip small{font-size:var(--t-label);color:var(--head-muted);}
.mnav-chip:hover,.mnav-chip:focus-visible{background:rgba(255,255,255,.12);border-color:var(--head-ink);}

/* Latky: kruhove vzorky */
.mnav-scroll--latky{gap:var(--s-md);}
.mnav-latka{flex:0 0 auto;width:84px;scroll-snap-align:start;display:grid;justify-items:center;gap:8px;text-align:center;color:var(--head-ink);}
.mnav-latka__foto{display:block;width:76px;height:76px;border-radius:var(--r-full);overflow:hidden;border:2px solid rgba(255,255,255,.35);box-shadow:0 10px 20px -8px rgba(30,8,22,.6),0 3px 8px -3px rgba(30,8,22,.45);}
.mnav-latka__foto .ratio{aspect-ratio:1/1;border-radius:0;max-height:none;height:100%;}
.mnav-latka__foto img{display:block;width:100%;height:100%;object-fit:cover;}
.mnav-latka__name{font-size:var(--t-label);line-height:1.25;}

/* Velke odkazy */
.mnav-links{display:grid;border-top:1px solid var(--head-line);}
.mnav-link{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t i" "s i";align-items:center;column-gap:var(--s-sm);padding:var(--s-sm) 0;border-bottom:1px solid var(--head-line);color:var(--head-ink);}
.mnav-link span{grid-area:t;font-family:var(--font-display);font-size:1.5rem;line-height:1.1;}
.mnav-link small{grid-area:s;font-size:var(--t-small);color:var(--head-muted);}
.mnav-link svg{grid-area:i;color:var(--head-accent);}

/* Pata: ucet, showroom, kontakt */
.mnav-foot{display:grid;gap:var(--s-sm);}
.mnav-foot__ucet{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 var(--s-md);border:1px solid rgba(255,255,255,.35);border-radius:var(--r-pill);color:var(--head-ink);font-weight:500;}
.mnav-showroom{display:flex;align-items:center;gap:var(--s-sm);padding:var(--s-sm) var(--s-md);background:rgba(255,255,255,.08);border-radius:var(--r-md);color:var(--head-ink);}
.mnav-showroom svg{flex:none;color:var(--head-accent);}
.mnav-showroom__t{display:block;font-weight:500;}
.mnav-showroom__s{display:block;font-size:var(--t-label);color:var(--head-muted);margin-top:2px;}
.mnav-foot__row{display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-md);font-size:var(--t-small);}
.mnav-foot__row a{display:inline-flex;align-items:center;gap:6px;color:var(--head-muted);}
.mnav-foot__row a:hover{color:var(--head-ink);}

/* Tablet: karty a dlazdice mozu byt sirsie */
@media (min-width:640px){
  .mnav-card{flex-basis:30%;}
  .mobile-nav__body{max-width:720px;margin-inline:auto;width:100%;}
  .mnav-scroll{margin-inline:0;padding-inline:0;}
}

/* =========================================================================
   30. Textove vyzvy namiesto tlacidiel
   Na Julianninu ziadost: marketingove vyzvy (Prezriet kolekciu, Vsetky
   kolekcie, Klub, dopyt) su text s podciarknutim a sipkou, nie plocha.
   Plne tlacidla ostavaju len pre nakup a odoslanie formularov.
   Rovnaka typografia ako .btn (verzalky Archivo), ciarka sa pri hoveri
   stiahne a sipka posunie. Dotykovy ciel drzi 48 px cez padding-block.
   ========================================================================= */
.btn--text,.btn--text-2{
  min-height:0;padding:12px 0;border-radius:0;gap:.55em;
  background:none;color:var(--accent);
  position:relative;isolation:isolate;
}
.btn--text-2{color:var(--ink);}
.btn--text::before,.btn--text-2::before{
  content:"";position:absolute;left:0;right:1.4em;bottom:8px;height:2px;
  background:currentColor;opacity:.9;
  transform-origin:left;transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease);
}
.btn--text-2::before{height:1px;opacity:.55;}
.btn--text::after,.btn--text-2::after{
  content:"\2192";font-family:var(--font-text);font-size:1.1em;line-height:1;
  transition:transform var(--dur) var(--ease);
}
.btn--text:hover,.btn--text-2:hover{background:none;color:var(--accent);}
.btn--text:hover::before,.btn--text-2:hover::before{transform:scaleX(.35);opacity:.5;}
.btn--text:hover::after,.btn--text-2:hover::after{transform:translateX(4px);}
.btn--text:focus-visible,.btn--text-2:focus-visible{outline-offset:6px;border-radius:var(--r-sm);}
/* Vedla seba: vacsia medzera nez medzi plnymi tlacidlami. */
.hero__actions:has(.btn--text){gap:var(--s-xs) var(--s-md);}
/* Na tmavych sekciach kolekcii a v oznamoch dedi farbu podkladu. */
.ton--tma .btn--text,.ton--akcent .btn--text{color:inherit;}

/* =========================================================================
   31. Omrvinky (breadcrumbs)
   Hned pod hlavickou, viditelne, na jednej linke s obsahom (.wrap).
   Desktop: cela cesta Domov / Latky / Bavlna / Muselin. Aktualna stranka
   je v inku, nadradene v muted s podciarknutim pri hoveri, oddelovac je
   tenka sikma ciarka. Mobil: cesta bez aktualnej stranky (jej nazov je
   aj tak hned pod tym v nadpise), na jeden riadok s vodorovnym posunom.
   ========================================================================= */
.crumbs{border-bottom:1px solid var(--line);background:var(--bg);font-size:var(--t-small);line-height:1.3;}
.crumbs__inner{display:flex;align-items:center;min-height:44px;padding-block:6px;}
.crumbs__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 0;}
.crumbs__item{display:inline-flex;align-items:center;color:var(--muted);}
.crumbs__item + .crumbs__item::before{content:"/";margin:0 .6em;color:var(--line);font-weight:300;}
.crumbs__item a{color:var(--muted);padding-block:6px;transition:color var(--dur) var(--ease);}
.crumbs__item a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:.2em;}
.crumbs__item--current{color:var(--ink);font-weight:500;}
@media (max-width:639px){
  .crumbs__inner{overflow-x:auto;scrollbar-width:none;}
  .crumbs__inner::-webkit-scrollbar{display:none;}
  .crumbs__list{flex-wrap:nowrap;white-space:nowrap;}
  .crumbs__item--current{display:none;}
  .crumbs__item a{color:var(--ink);}
  .crumbs__item:nth-last-child(2) a{color:var(--accent);font-weight:500;} /* nadradena stranka = posledna viditelna */
}
/* Kolekcie s vlastnym magazinovym rozvrhom drzia omrvinky nad hero. */
.crumbs + main{padding-top:0;}

/* =========================================================================
   Cookie lišta. Plávajúca karta dole, zaoblená ako zvyšok webu. Nikdy
   neprekrýva celú obrazovku – stránka sa dá čítať aj bez voľby.
   ========================================================================= */
.cookie {
  position: fixed;
  inset: auto var(--gutter, 16px) var(--gutter, 16px) var(--gutter, 16px);
  z-index: 90;
  display: flex;
  justify-content: flex-end;
  pointer-events: none;
}
.cookie[hidden] { display: none; }
.cookie__box {
  pointer-events: auto;
  width: min(100%, 30rem);
  background: var(--surface, #fff);
  color: var(--ink, #191b19);
  border: 1px solid var(--line, #e6e2da);
  border-radius: var(--r-lg, 24px);
  box-shadow: 0 18px 48px rgba(25, 27, 25, .16);
  padding: var(--s-lg, 24px);
  display: grid;
  gap: var(--s-md, 16px);
}
.cookie__title {
  font-family: var(--font-display);
  font-size: var(--t-h3, 1.25rem);
  line-height: 1.2;
  margin: 0;
}
.cookie__p {
  margin: var(--s-xs, 6px) 0 0;
  font-size: var(--t-small, .9rem);
  color: var(--muted, #6b6a66);
}
.cookie__p a { color: inherit; text-decoration: underline; text-underline-offset: .15em; }
.cookie__volby {
  border: 0;
  margin: 0;
  padding: var(--s-sm, 12px) 0 0;
  border-top: 1px solid var(--line, #e6e2da);
  display: grid;
  gap: var(--s-sm, 10px);
}
.cookie__volby[hidden] { display: none; }
.cookie__volba {
  display: flex;
  align-items: flex-start;
  gap: var(--s-sm, 10px);
  font-size: var(--t-small, .9rem);
  cursor: pointer;
}
.cookie__volba input { margin-top: .25em; accent-color: var(--accent, #6a2e3f); width: 1.1em; height: 1.1em; flex: none; }
.cookie__akcie {
  display: flex;
  flex-wrap: wrap;
  gap: var(--s-sm, 10px);
  align-items: center;
}
.cookie__akcie .btn { flex: 1 1 auto; justify-content: center; }
.cookie__akcie .btn--text { flex: 0 0 auto; }
.cookie__akcie .btn[hidden] { display: none; }
@media (max-width: 480px) {
  .cookie { inset: auto 8px 8px 8px; }
  .cookie__box { padding: var(--s-md, 16px); border-radius: var(--r-md, 18px); }
}
@media (prefers-reduced-motion: no-preference) {
  .cookie__box { animation: cookie-in .35s var(--ease, ease) both; }
  @keyframes cookie-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
}

/* Odstúpenie od zmluvy — dvojkrokový formulár */
.odstupenie__krok { margin: 0 0 var(--s-md, 16px); font-size: var(--t-label, .8rem); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.odstupenie__suhrn { display: grid; gap: var(--s-xs, 6px); padding: var(--s-md, 16px) var(--s-lg, 24px); border: 1px solid var(--line); border-radius: var(--r-md, 18px); background: var(--surface); margin: 0 0 var(--s-lg, 24px); }
.odstupenie__suhrn dt { font-size: var(--t-small, .9rem); color: var(--muted); }
.odstupenie__suhrn dd { margin: 0 0 var(--s-sm, 10px); }
.odstupenie__hotovo { padding: var(--s-lg, 24px); border-radius: var(--r-lg, 24px); background: var(--surface); border: 1px solid var(--line); }

/* =========================================================================
   O Julianne: citat v hero, eticky kodex ako ocislovany zoznam, karty Kam dalej
   ========================================================================= */
.oj-quote{
  margin:var(--s-lg) 0 0;padding-left:var(--s-md);
  border-left:2px solid var(--accent);
  font-family:var(--font-display);font-size:var(--t-h3);line-height:1.3;
  font-style:italic;max-width:24ch;
}
.oj-prose h2{font-size:var(--t-h3);}
.oj-kodex{
  list-style:none;margin:var(--s-lg) 0 0;padding:0;
  display:grid;gap:var(--s-md);
  grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));
}
.oj-kodex__item{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);
  padding:var(--s-md);display:grid;gap:var(--s-xs);align-content:start;
}
.oj-kodex__n{font-size:1.75rem;line-height:1;color:var(--accent);}
.oj-kodex__t{font-family:var(--font-display);font-weight:400;font-size:1.375rem;line-height:1.2;margin-top:var(--s-xs);}
.oj-kodex__item p{font-size:var(--t-small);}
.oj-card__link{color:inherit;text-decoration:none;}
.oj-card__link:hover,.oj-card__link:focus-visible{color:var(--accent);}
.at-card:has(.oj-card__link){transition:border-color var(--dur) var(--ease);}
.at-card:has(.oj-card__link:hover){border-color:var(--accent);}
/* =========================================================================
   Kontakt: rychle akcie v hero, karty kanalov, online konzultacia, siete
   ========================================================================= */
.kt-rychlo{display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-md);align-items:center;margin-top:var(--s-lg);}
.kt-rychlo .btn--primary svg{margin-right:.4em;}
.kt-grid{
  list-style:none;margin:var(--s-lg) 0 0;padding:0;
  display:grid;gap:var(--s-md);
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));
}
.kt-card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);
  padding:var(--s-md);display:grid;gap:var(--s-xs);align-content:start;
  transition:border-color var(--dur) var(--ease);
}
.kt-card:hover{border-color:var(--accent);}
.kt-card__ico{
  display:inline-flex;align-items:center;justify-content:center;
  width:48px;height:48px;border-radius:var(--r-full);
  background:var(--bg);color:var(--accent);margin-bottom:var(--s-xs);
}
.kt-card__t{font-family:var(--font-display);font-weight:400;font-size:1.375rem;line-height:1.2;}
.kt-card__v{font-weight:500;overflow-wrap:anywhere;}
.kt-card__p{font-size:var(--t-small);}
.kt-card__cta{margin-top:var(--s-sm);justify-self:start;}
.kt-online{display:grid;gap:var(--s-md);align-items:end;}
.kt-online__akcie{display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-lg);}
@media (min-width:900px){
  .kt-online{grid-template-columns:minmax(0,7fr) minmax(0,5fr);}
  .kt-online__akcie{justify-content:flex-end;}
}
.kt-social{
  list-style:none;margin:var(--s-lg) 0 0;padding:0;
  display:grid;gap:var(--s-sm);
  grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));
}
.kt-social__a{
  display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:var(--s-sm);align-items:center;
  padding:var(--s-sm) var(--s-md);border:1px solid var(--line);border-radius:var(--r-md);
  color:inherit;text-decoration:none;transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease);
}
.kt-social__a svg{grid-row:1 / span 2;color:var(--accent);}
.kt-social__a:hover{border-color:var(--accent);color:var(--accent);}
.kt-social__t{font-weight:500;}
.kt-social__h{font-size:var(--t-small);}
/* =========================================================================
   Hlavicka na mobile: logo presne v strede za kazdych okolnosti.
   Vlavo je jedno tlacidlo (menu), vpravo dve (hladat, kosik) - pri mriezke
   auto 1fr auto sa stred posuval dolava. Krajne stlpce su teraz rovnako
   siroke (1fr), logo sedi v strednom stlpci auto.
   ========================================================================= */
@media (max-width:1119px){
  .site-head__inner{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:var(--s-xs);}
  .site-head__inner > .nav-toggle{justify-self:start;margin-left:-10px;}
  .site-head__inner > .brand{justify-self:center;}
  .site-head__inner > .head-actions{justify-self:end;margin-right:-10px;}
}

/* Jemny prechod v liste hlavicky: z bordovej do svetlejsieho odtienu tej
   istej farby (odvodene z --accent, nie druha farba). Biela na najsvetlejsom
   konci ma stale > 5:1. Panely, hladanie a mobilne menu ostavaju plne. */
.site-head{
  background-color:var(--head-bg);
  background-image:linear-gradient(100deg,
    color-mix(in oklab,var(--accent) 100%,#000) 0%,
    var(--accent) 45%,
    color-mix(in oklab,var(--accent) 80%,#FFFFFF) 100%);
}
/* =========================================================================
   Latky kolekcie v beznych rozlozeniach: karty a panely z magazinu
   (.mag-latka, .mag-latka-panel), ale v pismach a farbach temy.
   Premenne --mag-* sa prepisu na tokeny temy len v tomto obale.
   ========================================================================= */
.lc-farebny-svet--tema{
  --mag-font-serif:var(--font-display);
  --mag-font-text:var(--font-text);
  --mag-font-rubrika:var(--font-text);
  --mag-ink:var(--ink);--mag-h:var(--ink);--mag-muted:var(--muted);
  --mag-gap:var(--s-md);
  margin-top:var(--s-lg);
}
.lc-farebny-svet--tema .mag-latka__nazov{font-weight:400;font-size:1.375rem;}
.lc-farebny-svet--tema .mag-h3{font-weight:400;font-size:var(--t-h3);}
.lc-farebny-svet--tema .mag-latka-panel{background:var(--surface);border-radius:var(--r-md);padding:var(--s-md);}
.lc-farebny-svet--tema .mag-latka-panel__spec,
.lc-farebny-svet--tema .mag-latka-panel__pozn,
.lc-farebny-svet--tema .mag-odtien__nazov{font-size:var(--t-small);}
.lc-farebny-svet--tema .mag-latka-panel__popis{font-size:var(--t-body);}
.lc-farebny-svet--tema .mag-latka-panel__label{font-size:var(--t-label);letter-spacing:.14em;}
.lc-farebny-svet--tema .mag-latka__stitok{background:var(--bg);}
.lc-farebny-svet--tema .mag-latka:focus-visible{outline-color:var(--accent);}
.lc-farebny-svet--tema .mag-latka-panel__akcie{gap:var(--s-sm) var(--s-lg);align-items:center;}

/* =========================================================================
   41. Hero s videom najnovsej kolekcie (domovska stranka)
   Poster je LCP, video sa pripoji po nacitani. Zaoblenie ako logo (--r-lg).
   Text sedi dole na tmavom prechode, aby mal nazov kolekcie stabilny
   kontrast bez ohladu na zaber videa. Riadok znacky je hore v strede.
   ========================================================================= */
.hero-v{padding-top:var(--s-sm);padding-bottom:var(--s-lg);}
@media (min-width:900px){.hero-v{padding-top:var(--s-md);padding-bottom:var(--s-xl);}}
.hero-v__frame{
  position:relative;isolation:isolate;overflow:hidden;
  border-radius:var(--r-lg);background:var(--ink);color:#fff;
  min-height:min(78svh,720px);display:flex;align-items:flex-end;
}
@media (min-width:900px){.hero-v__frame{min-height:min(84svh,880px);}}
.hero-v__media{position:absolute;inset:0;z-index:0;}
.hero-v__media .ratio{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;background:var(--ink);}
.hero-v__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;opacity:0;transition:opacity .9s var(--ease);pointer-events:none;}
.hero-v--playing .hero-v__video{opacity:1;}
.hero-v__yt iframe{position:absolute;top:50%;left:50%;width:max(100%,177.78vh);height:max(100%,56.25vw);transform:translate(-50%,-50%);border:0;}
.hero-v__scrim{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    linear-gradient(to top,rgba(12,10,11,.84) 0%,rgba(12,10,11,.52) 34%,rgba(12,10,11,0) 66%),
    linear-gradient(to bottom,rgba(12,10,11,.46) 0%,rgba(12,10,11,0) 24%);
}
.hero-v__brand{
  position:absolute;left:var(--s-md);right:var(--s-md);top:var(--s-md);z-index:3;
  text-align:center;font-size:var(--t-label);font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.94);line-height:1.3;
  text-shadow:0 1px 12px rgba(0,0,0,.4);
}
.hero-v__copy{position:relative;z-index:3;width:100%;padding:var(--s-xl) var(--s-md) var(--s-lg);}
@media (min-width:900px){.hero-v__copy{padding:var(--s-xxl) var(--s-lg) var(--s-xl);max-width:min(100%,900px);}}
.hero-v__label{font-size:var(--t-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.82);line-height:1.2;}
.hero-v__title{
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(3rem,13vw,7.5rem);line-height:1.02;letter-spacing:-.01em;
  margin-top:var(--s-sm);color:#fff;text-wrap:balance;
  text-shadow:0 2px 28px rgba(0,0,0,.5);
}
@media (min-width:900px){.hero-v__title{font-size:var(--t-display);}}
.hero-v__text{margin-top:var(--s-md);max-width:46ch;font-size:var(--t-lead);line-height:1.5;color:rgba(255,255,255,.9);text-shadow:0 1px 14px rgba(0,0,0,.45);}
.hero-v__actions{display:flex;flex-wrap:wrap;gap:var(--s-sm) var(--s-lg);margin-top:var(--s-lg);}
.hero-v .hero-v__cta,.hero-v .hero-v__cta.btn--text-2{color:#fff;}
.hero-v .hero-v__cta::before{background:currentColor;}
.hero-v__play{
  position:absolute;right:var(--s-md);bottom:var(--s-md);z-index:4;
  display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:10px 18px;
  border:1px solid rgba(255,255,255,.55);border-radius:var(--r-sm);
  background:rgba(12,10,11,.45);color:#fff;font:inherit;font-size:var(--t-small);cursor:pointer;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
.hero-v__play:hover,.hero-v__play:focus-visible{background:rgba(12,10,11,.7);}

/* Riadok znacky nad klasickym hero (bez videa). */
.hero__brand{
  font-size:var(--t-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted);line-height:1.2;margin-bottom:var(--s-md);
}

/* Portal: nahlad videa v sekcii Hero video. */
.pg-video video{display:block;width:100%;max-height:60vh;border-radius:var(--r-md);background:#000;}

/* Clenska cena pod cenou modelu. Cena zostava jedna pre vsetkych, toto je
   informacia, kolko z nej prihlasenej clenke odratame v kosiku. */
.lc-zlava-poznamka{
  margin-top:var(--s-xs);font-size:var(--t-small);line-height:1.4;
  color:var(--accent);
}
.lc-zlava-poznamka strong{font-weight:600;}
.lc-zlava-poznamka .muted{color:var(--muted);}
/* Stranka latky: editorialny hero + odtiene z fotiek kotucov */
.fabric-hero__caption{margin-top:var(--s-xs);font-size:var(--t-small);}
.fabric-color__link{display:block;color:inherit;text-decoration:none;border-radius:var(--r-md);}
a.fabric-color__link:hover .fabric-color__name,a.fabric-color__link:focus-visible .fabric-color__name{text-decoration:underline;text-underline-offset:.15em;}
.fabric-color .ratio,.fabric-color picture,.fabric-color img{border-radius:var(--r-md);overflow:hidden;}
.fabric-color__dost{margin-top:2px;font-size:var(--t-small);color:var(--muted);}
.fabric-color__pocet{color:var(--ink);}\na.fabric-color__link:hover .fabric-color__pocet,a.fabric-color__link:focus-visible .fabric-color__pocet{text-decoration:underline;text-underline-offset:.15em;}\na.fabric-color__link:hover .fabric-color__name,a.fabric-color__link:focus-visible .fabric-color__name{text-decoration:none;}
.fabric-color--makro .fabric-color__name{color:var(--muted);}

/* --- Karta modelu: vyber odtiena a velkosti so stavom ---------------- */
.variant__opts--odtiene{display:grid;gap:var(--s-sm);}
.variant__group{display:grid;gap:6px;}
.variant__group-label{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.variant__group[data-group="skladom"] .variant__group-label{color:var(--accent);}
.variant__group-opts{display:flex;flex-wrap:wrap;gap:10px;}
.variant__swatch{width:56px;height:56px;padding:2px;border:2px solid transparent;border-radius:var(--r-md);}
.variant__swatch .swatch{width:100%;height:100%;border-radius:calc(var(--r-md) - 4px);}
.variant__swatch[data-state="objednavka"]{border-color:var(--line);border-style:dashed;}
.variant__swatch[data-state="vypredane"] .swatch{opacity:.4;}
.variant__swatch:hover{border-color:var(--ink);}
.variant__input:checked + .variant__swatch{border-color:var(--ink);border-style:solid;}
.variant__preview{margin-top:var(--s-sm);}
.variant__preview-item{margin:0;}
.variant__preview-item .ratio,.variant__preview-item picture,.variant__preview-item img{border-radius:var(--r-md);overflow:hidden;}
.variant__preview-cap{font-size:var(--t-small);margin-top:6px;}
.variant__pill{min-height:56px;}
.variant__stav{display:block;font-style:normal;font-size:10px;letter-spacing:.06em;text-transform:uppercase;margin-top:3px;color:var(--muted);min-height:12px;}
.variant__pill[data-state="skladom"] .variant__stav{color:var(--accent);}
.variant__pill[data-state="objednavka"]{border-style:dashed;}
.variant__input:checked + .variant__pill{border-style:solid;}
.variant__input:checked + .variant__pill .variant__stav{color:var(--bg);opacity:.8;}
.variant__miery{font-size:var(--t-small);color:var(--muted);margin-top:var(--s-sm);}
.product__stav{display:flex;align-items:flex-start;gap:8px;font-size:var(--t-small);}
.product__stav-dot{width:9px;height:9px;margin-top:.45em;border-radius:var(--r-full);background:var(--line);flex:none;}
.product__stav-dot[data-s="skladom"]{background:var(--accent);}
.product__stav-dot[data-s="objednavka"]{background:transparent;border:1.5px solid var(--accent);}
.miery-tab{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--s-md);}
.miery-tab__table{border-collapse:collapse;width:100%;font-size:var(--t-small);}
.miery-tab__table th,.miery-tab__table td{padding:8px 12px 8px 0;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;}
.miery-tab__table thead th{font-weight:500;color:var(--muted);font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;}
.miery-tab__table tbody th{font-weight:400;}
.miery-tab__table tbody th b{font-weight:500;}
.miery-tab__table tbody th small{color:var(--muted);}
.miery-tab__table tr.is-on th,.miery-tab__table tr.is-on td{background:var(--surface);}
.miery-tab__table tr.is-on th b{color:var(--accent);}
.miery-tab__pozn{margin-top:var(--s-sm);font-size:var(--t-small);}
@media (max-width:639px){.variant__swatch{width:52px;height:52px;}}

/* --- 49. Najnovsia kolekcia v hero + video v karte kolekcie ------------ */
.hero__note,.hero-v__note{font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;margin-top:var(--s-md);}
.hero__note{color:var(--accent,var(--ink));}
.hero-v__note{color:#fff;opacity:.9;}
.coll__media--video{position:relative;}
.coll__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--r-lg);z-index:1;opacity:0;transition:opacity .9s var(--ease);pointer-events:none;background:transparent;}
.coll__media--video.is-playing .coll__video{opacity:1;}
.coll:hover .coll__media--video.is-playing .coll__video{opacity:.88;}
@media (prefers-reduced-motion:reduce){.coll__video{display:none;}}
/* --- 50. Šitie po vypredaní: posledné kusy --------------------------- */
.variant__pill[data-last] .variant__stav{color:var(--accent);font-weight:700;}
.product__stav[data-last]{color:var(--accent);font-weight:600;}
/* ==========================================================================
   51. Pripomienky Julianny z 18. 9. 2026 (dok. 51)
   ========================================================================== */

/* Editorial: kratka veta v jednom riadku, pismo sa zmensi len na uzkom displeji. */
.lcs__veta--riadok{max-width:none;white-space:nowrap;font-size:min(var(--t-h3),5.4vw);}

/* Kredity kolekcie: polozka sa nikdy nerozdeli, na sirsej obrazovke jeden riadok. */
.lc-kredity .lc-kredit{white-space:nowrap;}
@media (min-width:900px){.lc-kredity{white-space:nowrap;text-align:center;}}

/* Pribeh: na mobile najprv fotka, az potom text - k prvej fotke sa nescrolluje. */
@media (max-width:899px){.lc-story__media{order:-1;}}

/* Citat s fotkou z galerie. */
.lc-quote--foto .lc-quote__inner{max-width:none;display:grid;gap:var(--s-lg);}
.lc-quote__foto{margin:0;}
.lc-quote__foto .ratio{border-radius:var(--r-md);}
@media (min-width:900px){
  .lc-quote--foto .lc-quote__inner{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s-xl);align-items:center;}
  .lc-quote--foto .lc-quote__slova{max-width:60ch;}
}

/* Galeria v radoch rovnakej vysky: fotka si drzi vlastny format (--r = sirka/vyska),
   na vysku aj na sirku sedia vedla seba bez orezania. */
.lcg{display:flex;flex-wrap:wrap;gap:var(--s-sm);--lcg-h:52vw;}
@media (min-width:640px){.lcg{--lcg-h:32vw;gap:var(--s-md);}}
@media (min-width:1100px){.lcg{--lcg-h:min(24vw,380px);}}
.lcg::after{content:"";flex-grow:999;}
.lcg__i{margin:0;min-width:0;flex-grow:var(--r);flex-basis:calc(var(--r) * var(--lcg-h));}
.lcg__i .ratio{aspect-ratio:var(--r) !important;border-radius:var(--r-md);}

/* Farebny svet zo skutocnych latok. */
.lcs__vzorkovnik--latky .lcs__latka{display:flex;flex-direction:column;gap:6px;color:inherit;text-decoration:none;}
.lcs__vzorkovnik--latky .ratio{aspect-ratio:1/1;border-radius:var(--r-md);transition:opacity var(--dur) var(--ease);}
.lcs__vzorkovnik--latky .lcs__latka:hover .ratio{opacity:.88;}
.lcs__latka-nazov{font-size:var(--t-small);opacity:.78;}
@media (min-width:900px){.lcs__vzorkovnik--latky{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));}}

/* Paticka: odber noviniek namiesto klubu. */
.foot-club__odkaz{margin-top:var(--s-sm);}
/* 52. Archiv latok: aktualne latky hore, archiv pod nimi, tlmenejsi. */
.fabrics-archiv{margin-top:var(--s-xl);}
.fabrics--archiv .fabric__media img{filter:saturate(.55);}
.fabrics--archiv .fabric__name a{color:var(--muted);}
.mnav-sec__archiv{margin:0;font-size:var(--t-small);}

/* --- 54. Režim „Iba skladom“ ------------------------------------------------ */
.stock-mode{background:#EED8E3;color:#3A1226;border-top:1px solid rgba(255,255,255,.18);}
.stock-mode__inner{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;min-height:44px;padding-block:6px;font-size:var(--t-small);}
.stock-mode__text{margin:0;display:flex;align-items:center;gap:8px;line-height:1.35;}
.stock-mode__text strong{font-weight:700;}
.stock-mode__dot{flex:none;width:10px;height:10px;border-radius:var(--r-pill);background:#2F7D4F;box-shadow:0 0 0 3px rgba(47,125,79,.2);}
.stock-mode__off{flex:none;display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:var(--r-pill);border:1px solid currentColor;color:#3A1226;font-weight:600;text-decoration:none;white-space:nowrap;}
.stock-mode__off:hover{background:#3A1226;color:#fff;}
@media (max-width:639px){.stock-mode__more{display:none;}.stock-mode__inner{flex-wrap:nowrap;}.stock-mode__off{padding:0 12px;}}

.shop-stock{margin-top:var(--s-md);}
.stock-switch{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:6px 16px 6px 8px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);text-decoration:none;transition:border-color var(--dur) var(--ease),background-color var(--dur) var(--ease);}
.stock-switch:hover{border-color:var(--ink);}
.stock-switch__track{position:relative;flex:none;width:44px;height:26px;border-radius:var(--r-pill);background:var(--line);transition:background-color var(--dur) var(--ease);}
.stock-switch__knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:var(--r-pill);background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform var(--dur) var(--ease);}
.stock-switch.is-on{border-color:#2F7D4F;background:#EEF6F0;}
.stock-switch.is-on .stock-switch__track{background:#2F7D4F;}
.stock-switch.is-on .stock-switch__knob{transform:translateX(18px);}
.stock-switch__label{font-size:var(--t-small);line-height:1.3;}
.stock-switch__note{color:var(--muted);}
@media (prefers-reduced-motion:reduce){.stock-switch__knob,.stock-switch__track{transition:none;}}
.stock-mode__cap{text-transform:none;}
@media (max-width:639px){.stock-mode__inner{gap:10px;min-height:42px;padding-block:5px;}.stock-mode__text{font-size:14px;}.stock-mode__cap{text-transform:uppercase;}.stock-mode__off{min-height:32px;font-size:13px;padding:0 12px;}}

/* 54b. Lišta Iba skladom: text ako jeden riadok (nie flex položky, ktoré sa zalamujú samostatne) */
.stock-mode__text{display:block;flex:1 1 auto;min-width:0;}
.stock-mode__dot{display:inline-block;vertical-align:-1px;margin-right:8px;}
@media (min-width:640px){.stock-mode__inner{flex-wrap:nowrap;}.stock-mode__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}}
@media (min-width:640px) and (max-width:1023px){.stock-mode__text > .stock-mode__more{display:none;}}

/* =========================================================================
   57. Bloky stránky kolekcie – tón a rozloženie z portálu
   Tón pevného bloku nastaví podklad obalu a deťom prepíše tokeny
   (--bg, --ink, --muted, --line), takže manifest, citát aj záver ostanú
   čitateľné na akomkoľvek podklade. Riadky sekcií si tón nesú samy (.lcs).
   ========================================================================= */
.lcb-ton.ton--svetlo{--lcb-bg:var(--ton-svetlo-bg,var(--bg));--lcb-ink:var(--ton-svetlo-ink,var(--ink));--lcb-muted:var(--ton-svetlo-muted,var(--muted));--lcb-line:var(--ton-svetlo-line,var(--line));}
.lcb-ton.ton--sero{--lcb-bg:var(--ton-sero-bg,var(--surface));--lcb-ink:var(--ton-sero-ink,var(--ink));--lcb-muted:var(--ton-sero-muted,var(--muted));--lcb-line:var(--ton-sero-line,var(--line));}
.lcb-ton.ton--tma{--lcb-bg:var(--ton-tma-bg,var(--ink));--lcb-ink:var(--ton-tma-ink,var(--bg));--lcb-muted:var(--ton-tma-muted,color-mix(in oklab,var(--bg) 80%,var(--ink)));--lcb-line:var(--ton-tma-line,color-mix(in oklab,var(--bg) 24%,var(--ink)));}
.lcb-ton.ton--akcent{--lcb-bg:var(--ton-akcent-bg,var(--accent));--lcb-ink:var(--ton-akcent-ink,var(--accent-ink));--lcb-muted:var(--ton-akcent-muted,color-mix(in oklab,var(--accent-ink) 84%,var(--accent)));--lcb-line:var(--ton-akcent-line,color-mix(in oklab,var(--accent-ink) 26%,var(--accent)));}
.lcb-ton > *{--bg:var(--lcb-bg);--ink:var(--lcb-ink);--muted:var(--lcb-muted);--line:var(--lcb-line);--quote-bg:var(--lcb-bg);color:var(--lcb-ink);}
.lcb-ton .lc-quote{background:var(--lcb-bg);}
.lcb-ton.ton--akcent .lc-quote__text::before{color:currentColor;}
.lcb-ton.ton--akcent .btn--text,.lcb-ton.ton--tma .btn--text{color:inherit;}
/* Blok s vlastným podkladom potrebuje vzduch aj hore. */
.lcb-ton > .section[style*="padding-top:0"]{padding-top:var(--s-xl) !important;}
.lcb-ton > .lc-manifest,.lcb-ton > .lc-close{border-color:transparent;}

/* Rozloženie */
.lcb-var--stred .lc-manifest .wrap,.lcb-var--stred .lc-close .wrap{text-align:center;}
.lcb-var--stred .lc-manifest__line,.lcb-var--stred .lc-manifest__note,
.lcb-var--stred .lc-close__line,.lcb-var--stred .lc-close__note{margin-inline:auto;}
.lcb--obsahuje.lcb-var--stred .lc-contains{text-align:center;}
.lcb--citat.lcb-var--stred .lc-quote__inner{max-width:64ch;grid-template-columns:1fr !important;text-align:center;}
.lcb--citat.lcb-var--stred .lc-quote__foto{max-width:420px;width:100%;margin-inline:auto;}
.lcb--citat.lcb-var--stred .lc-quote__text::before{position:static;display:block;font-size:2em;margin-bottom:-.35em;}
.lcb--galeria.lcb-var--uzka .lc-galeria-sekcia{max-width:1120px;}
.lcb-var--okraj .lcs__plne{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);}

@media (min-width:900px){
  .lcb--pribeh.lcb-var--foto-vlavo .lc-story{grid-template-columns:minmax(0,5fr) minmax(0,7fr);}
  .lcb--pribeh.lcb-var--foto-vlavo .lc-story__media{order:-1;}
  .lcb--citat.lcb-var--foto-vpravo .lc-quote--foto .lc-quote__inner{grid-template-columns:minmax(0,7fr) minmax(0,5fr);}
  .lcb--citat.lcb-var--foto-vpravo .lc-quote__foto{order:2;}
  .lcb--r-pribeh.lcb-var--foto-vlavo .lcs__foto{order:-1;}
  .lcb--r-material.lcb-var--foto-vpravo .lcs__foto{order:2;}
}

/* Náhľad v portáli: prázdny blok, zvýraznenie a klikateľnosť */
.lcb-prazdny{padding-block:var(--s-lg);}
.lcb-prazdny p{margin:0;padding:var(--s-md);border:2px dashed currentColor;border-radius:var(--r-md);opacity:.6;font-size:var(--t-small);}
.lc-nahlad [data-lc-blok]{position:relative;cursor:pointer;}
.lc-nahlad [data-lc-blok]:hover{outline:2px dashed rgba(224,165,38,.9);outline-offset:-2px;}
.lc-nahlad .lcb-aktivny{outline:4px solid #E0A526 !important;outline-offset:-4px;}
.lc-nahlad .lcb-aktivny::before{content:"Upravujete";position:absolute;top:12px;left:12px;z-index:5;padding:6px 12px;border-radius:999px;background:#E0A526;color:#191B19;font:600 13px/1 var(--font-text);letter-spacing:.06em;text-transform:uppercase;}
.lc-nahlad .cookie{display:none !important;}

/* 60. Tvar rámika zvolený v portáli */
.ratio--square{aspect-ratio:1/1;}
.lcs__plne .ratio--portrait,.lcs__plne .ratio--square{max-height:88vh;}

/* ============================================================
   61. Šitie na mieru – upozornenie, miery a súhlas
   ============================================================ */
.lc-nm-box{margin-top:var(--s-md);padding:var(--s-md);border:1px solid var(--accent);border-radius:var(--r-md);background:color-mix(in oklab,var(--accent) 5%,var(--surface));font-size:var(--t-small);display:grid;gap:var(--s-sm);}
.lc-nm-box[hidden]{display:none;}
.lc-nm-box__title{font-family:var(--font-display);font-size:1.375rem;line-height:1.2;color:var(--accent);}
.lc-nm-box__check{display:flex;gap:12px;align-items:flex-start;padding:var(--s-sm);border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);cursor:pointer;line-height:1.5;}
.lc-nm-box__check input{width:22px;height:22px;margin-top:.1em;flex:none;accent-color:var(--accent);}
.lc-nm-box.is-error .lc-nm-box__check{border-color:#8E2F2F;box-shadow:0 0 0 2px color-mix(in oklab,#8E2F2F 25%,transparent);}
.lc-nm-box__err{color:#8E2F2F;font-weight:500;}
.lc-nm{margin-top:var(--s-lg);padding:var(--s-md);border:1px solid var(--accent);border-radius:var(--r-md);background:var(--surface);}
@media (min-width:900px){.lc-nm{padding:var(--s-lg);}}
.lc-nm h3{color:var(--accent);}
.lc-nm__uvod{font-size:var(--t-small);max-width:70ch;}
.lc-nm__ulozene{margin-top:var(--s-md);padding:var(--s-md);border-radius:var(--r-sm);background:var(--bg);display:grid;gap:10px;}
.lc-nm__label{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.lc-nm__label .muted{text-transform:none;letter-spacing:0;}
.lc-nm__hodnoty{font-family:var(--font-display);font-size:1.25rem;line-height:1.35;}
.lc-nm__pozor{color:#8E2F2F;font-size:var(--t-small);}
.lc-nm__volba{display:flex;gap:10px;align-items:center;font-size:var(--t-small);cursor:pointer;min-height:36px;}
.lc-nm__volba input{width:20px;height:20px;flex:none;accent-color:var(--accent);}
.lc-nm__tip{margin-top:var(--s-sm);font-size:var(--t-small);}
.lc-nm__polia{margin-top:var(--s-md);}
.lc-nm__polia[hidden]{display:none;}
.lc-nm__grid{display:grid;gap:0 var(--s-md);grid-template-columns:repeat(2,minmax(0,1fr));}
@media (min-width:900px){.lc-nm__grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
.lc-nm__navod{margin-top:var(--s-sm);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.lc-nm__navod summary{cursor:pointer;min-height:48px;display:flex;align-items:center;font-weight:500;color:var(--accent);}
.lc-nm__navod-body{padding-bottom:var(--s-md);font-size:var(--t-small);display:grid;gap:var(--s-sm);max-width:70ch;}
.lc-nm__navod-body ol{margin:0;padding-left:1.25em;display:grid;gap:6px;}
.lc-nm__podmienky{margin-top:var(--s-md);font-size:var(--t-small);display:grid;gap:var(--s-sm);}
.lc-nm__podmienky .form-row{margin:0;padding:var(--s-sm);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg);}


/* 60 · Farebny system kolekcie: farba nadpisov sekcii a iskra (uvodzovky). */
.lc-collection .ton--tma,.lc-collection .ton--akcent,.lc-collection .ton--sero{--nadpis-farba:currentColor;}
.lc-collection .lcs__nadpis{color:var(--nadpis-farba,inherit);}
.lc-collection .lc-quote__text::before{color:var(--iskra,var(--accent));}


/* ============================================================
   62. Modely na objednávku – ľubovoľná farba (dohodou.php)
   ============================================================ */
.product__dohoda{margin-top:var(--s-md);padding:var(--s-md);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);font-size:var(--t-small);line-height:1.55;display:grid;gap:6px;}
.product__dohoda[hidden]{display:none;}
.product__dohoda-title{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:1.25rem;line-height:1.25;}
.product__dohoda-title strong{font-weight:400;}
.product__dohoda .swatch{flex:none;}


/* Prihlásenie odkazom z e-mailu (dok. 63). */
.lc-prihlasenie{margin:0 0 var(--s-lg);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);}
.lc-prihlasenie > summary{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px var(--s-sm);min-height:64px;padding:var(--s-sm) var(--s-md);cursor:pointer;font-size:var(--t-body);border-radius:var(--r-md);}
.lc-prihlasenie > summary::-webkit-details-marker{display:none;}
.lc-prihlasenie > summary::after{content:"+";margin-left:auto;font-size:1.5rem;line-height:1;color:var(--accent);}
.lc-prihlasenie[open] > summary::after{content:"–";}
.lc-prihlasenie > summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.lc-prihlasenie__akcia{color:var(--accent);text-decoration:underline;text-underline-offset:3px;}
.lc-prihlasenie__telo{padding:0 var(--s-md) var(--s-md);}
.lc-prihlasenie__bez{margin-top:var(--s-md);padding-top:var(--s-md);border-top:1px solid var(--line);font-size:var(--t-small);color:var(--muted);}

.lc-odkaz{max-width:480px;}
.lc-odkaz__uvod{margin-bottom:var(--s-md);font-size:var(--t-body);}
.lc-odkaz__form .form-row{margin-bottom:var(--s-md);}
.lc-odkaz__form label{display:block;margin-bottom:6px;}
.lc-odkaz__form input[type=email]{width:100%;min-height:52px;padding:0 16px;font:inherit;font-size:var(--t-body);background:var(--surface);color:var(--ink);border:1px solid var(--ink);border-radius:var(--r-sm);}
.lc-odkaz__form input[type=email]:focus{outline:2px solid var(--accent);outline-offset:1px;}
.lc-odkaz__tlacidlo{width:100%;}
@media (min-width:640px){.lc-odkaz__tlacidlo{width:auto;min-width:220px;}}
.lc-odkaz__med{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.lc-odkaz__chyba{margin-bottom:var(--s-md);padding:var(--s-sm) var(--s-md);border:1px solid #8E2F2F;border-radius:var(--r-sm);color:#8E2F2F;font-size:var(--t-small);}
.lc-odkaz__poslany{padding:var(--s-md);background:var(--bg);border-radius:var(--r-sm);border-left:4px solid var(--accent);}
.lc-odkaz__titulok{font-family:var(--font-display);font-size:var(--t-h3);line-height:1.2;margin-bottom:var(--s-sm);}
.lc-odkaz__poslany p + p{margin-top:var(--s-sm);}
.lc-odkaz__drobne{font-size:var(--t-small);color:var(--muted);}
.lc-odkaz__drobne a{color:var(--accent);text-decoration:underline;}
.lc-odkaz__heslo{margin-top:var(--s-md);}
.lc-odkaz__heslo > summary{display:inline-flex;align-items:center;min-height:48px;cursor:pointer;font-size:var(--t-small);color:var(--accent);text-decoration:underline;text-underline-offset:3px;}
.lc-odkaz__heslo[open] > summary{margin-bottom:var(--s-sm);}
.lc-odkaz__heslo .woocommerce-form-login{display:block !important;margin:0;}

.lc-odkaz-stranka{padding:var(--s-xl) var(--gutter);}
.lc-odkaz-stranka__box{max-width:560px;margin:0 auto;padding:var(--s-lg) var(--s-md);background:var(--surface);border-radius:var(--r-md);text-align:center;}
.lc-odkaz-stranka__box h1{font-family:var(--font-display);font-size:var(--t-h2);line-height:1.1;margin-bottom:var(--s-md);}
.lc-odkaz-stranka__box > p{font-size:var(--t-lead);margin-bottom:var(--s-lg);}
.lc-odkaz-stranka__box .lc-odkaz{margin:0 auto;text-align:left;}
.lc-odkaz-stranka__box .lc-odkaz__tlacidlo,.lc-odkaz-stranka__box form > .lc-odkaz__tlacidlo{min-width:260px;}

.lc-odkaz-stranka__box > p.lc-odkaz-stranka__drobne{font-size:var(--t-small);color:var(--muted);margin-top:calc(-1 * var(--s-md));}
.lc-odkaz-stranka__drobne a{color:var(--accent);text-decoration:underline;}

/* --- 30. Pokladna a podakovanie - doladenie (22. 9. 2026) --------------- */
.woocommerce-order .lc-kroky{margin-top:0;}
.woocommerce-thankyou-order-received{margin:0 0 var(--s-sm);}
.woocommerce-bacs-bank-details{background:var(--surface);border-radius:var(--r-md);padding:var(--s-md);margin:var(--s-md) 0;}
.woocommerce-bacs-bank-details .wc-bacs-bank-details-heading{font-family:var(--font-display);font-weight:400;font-size:var(--t-h3);line-height:1.2;margin:0 0 var(--s-sm);}
.woocommerce-bacs-bank-details .wc-bacs-bank-details-account-name{font-family:var(--font-text);font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500;margin:0 0 var(--s-sm);}
.wc-bacs-bank-details{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--s-sm) var(--s-md);}
.wc-bacs-bank-details li{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.wc-bacs-bank-details li strong{display:block;margin-top:4px;font-size:var(--t-body);letter-spacing:0;text-transform:none;color:var(--ink);word-break:break-word;}
.lc-dalej{background:var(--surface);border-radius:var(--r-md);padding:var(--s-md);margin:var(--s-md) 0 var(--s-lg);}
.lc-dalej__nadpis{font-family:var(--font-display);font-weight:400;font-size:var(--t-h3);line-height:1.2;margin:0 0 var(--s-sm);}
.lc-dalej__kroky{margin:0 0 var(--s-sm);padding-left:1.25em;display:grid;gap:10px;font-size:var(--t-body);line-height:1.55;}
.lc-dalej__kroky li::marker{color:var(--accent);font-weight:600;}
.lc-dalej__pozn{margin:0;color:var(--muted);font-size:var(--t-small);line-height:1.6;}
.lc-dalej__pozn a{color:var(--accent);}
.woocommerce-order-details{margin:var(--s-lg) 0;}
.woocommerce-order-details__title,.woocommerce-customer-details .woocommerce-column__title{font-family:var(--font-display);font-weight:400;font-size:var(--t-h3);line-height:1.2;margin:0 0 var(--s-sm);}
.woocommerce-order-details .shop_table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border-radius:var(--r-md);overflow:hidden;font-size:var(--t-body);}
.woocommerce-order-details .shop_table th,.woocommerce-order-details .shop_table td{padding:14px var(--s-md);text-align:left;vertical-align:top;border-bottom:1px solid var(--line);}
.woocommerce-order-details .shop_table thead th{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500;}
.woocommerce-order-details .shop_table tfoot tr:last-child th,.woocommerce-order-details .shop_table tfoot tr:last-child td{border-bottom:0;}
.woocommerce-order-details .shop_table .product-total,.woocommerce-order-details .shop_table tfoot td{text-align:right;}
.woocommerce-order-details .shop_table tfoot th{font-weight:500;}
.woocommerce-order-details > div{background:var(--surface);border-radius:var(--r-md);padding:var(--s-md);margin-top:var(--s-md);line-height:1.7;}
.woocommerce-customer-details .addresses{display:grid;gap:var(--s-md);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.woocommerce-customer-details address{background:var(--surface);border-radius:var(--r-md);padding:var(--s-md);border:0;}

/* GLS: vyber balikomatu / Parcel Shopu v pokladni */
#gls-map-button{display:inline-flex;align-items:center;min-height:40px;margin:8px 0 4px;padding:8px 16px;border:1px solid var(--accent);border-radius:var(--r-pill);background:transparent;color:var(--accent);font:500 var(--t-small)/1.2 var(--font-text);cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease);}
#gls-map-button:hover{background:var(--accent);color:var(--accent-ink);}
#gls-pickup-info{border:1px solid var(--line) !important;border-radius:var(--r-sm) !important;padding:var(--s-sm) var(--s-md) !important;margin:var(--s-sm) 0 var(--s-md) !important;background:var(--bg);font:400 var(--t-small)/1.6 var(--font-text);color:var(--ink);}
#gls-pickup-info strong{font-weight:600;}

/* Skryte prepinace (farba, velkost): viditelny fokus na stitku pri ovladani klavesnicou */
label:has(> input.sr-only:focus-visible),input.sr-only:focus-visible + label,input.sr-only:focus-visible + span{outline:2px solid var(--accent);outline-offset:3px;}

/* Chybova hlaska pri platbe kartou */
.lc-pk-tip{display:block;margin-top:6px;}

/* =========================================================================
 * 31 Blog, články, Ženy Love Colors, Press (dok. 69)
 * ========================================================================= */
.ratio--natural{aspect-ratio:auto;}
.blog-filter{margin-top:var(--s-md);}
.blog-filter ul{display:flex;flex-wrap:wrap;gap:var(--s-xs);margin:0;padding:0;list-style:none;}
.blog-filter__chip{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--s-md);border:1px solid var(--line);border-radius:var(--r-pill);text-decoration:none;color:inherit;font-size:var(--t-small);}
.blog-filter__chip:hover{border-color:currentColor;}
.blog-filter__chip.is-active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);}
.blog__nadpis{margin-bottom:var(--s-lg);}
.blog-mriezka{display:grid;gap:var(--s-xl) var(--s-lg);grid-template-columns:1fr;}
@media (min-width:600px){.blog-mriezka{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:960px){.blog-mriezka{grid-template-columns:repeat(3,minmax(0,1fr));}}
.blog-karta__odkaz{display:block;text-decoration:none;color:inherit;}
.blog-karta__foto{border-radius:var(--r-lg);}
.blog-karta__foto img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.blog-karta__odkaz:hover .blog-karta__foto img{transform:scale(1.03);}
.blog-karta__foto--prazdna{background:var(--line);}
.blog-karta__text{margin-top:var(--s-sm);}
.blog-karta__titulok{font-size:var(--t-h3);margin-top:var(--s-xs);line-height:1.2;}
.blog-karta__odkaz:hover .blog-karta__titulok{text-decoration:underline;text-underline-offset:.15em;}
.blog-karta__perex{margin-top:var(--s-xs);}
.blog-karta--velka{margin-bottom:var(--s-xl);}
@media (min-width:900px){
  .blog-karta--velka .blog-karta__odkaz{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--s-lg);align-items:center;}
  .blog-karta--velka .blog-karta__titulok{font-size:var(--t-h2);}
}
.blog-strany{margin-top:var(--s-xl);}
.blog-strany .nav-links,.blog-strany{display:flex;flex-wrap:wrap;gap:var(--s-xs);}
.blog-strany .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 var(--s-sm);border-radius:var(--r-pill);border:1px solid var(--line);text-decoration:none;color:inherit;}
.blog-strany .page-numbers.current{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);}

.clanok{padding-bottom:var(--s-xl);}
.clanok__hlava{max-width:760px;padding-top:var(--s-lg);}
.clanok__titulok{margin-top:var(--s-sm);}
.clanok__meta{margin-top:var(--s-sm);}
.clanok__hero{max-width:1040px;margin-top:var(--s-lg);}
.clanok__hero .ratio{border-radius:var(--r-xl);}
.clanok__hero .ratio--portrait{max-width:560px;}
.clanok__hero img,.clanok__obr img{width:100%;height:100%;object-fit:cover;}
.clanok__telo{max-width:760px;margin-top:var(--s-lg);font-size:var(--t-body);line-height:1.7;}
.clanok__telo > * + *{margin-top:1em;}
.clanok__telo h2{font-size:var(--t-h2);margin-top:1.6em;}
.clanok__telo h3{font-size:var(--t-h3);margin-top:1.4em;}
.clanok__telo ul,.clanok__telo ol{padding-left:1.2em;}
.clanok__telo li + li{margin-top:.35em;}
.clanok__telo a{text-decoration:underline;text-underline-offset:.15em;}
.clanok__telo blockquote{margin-inline:0;padding-left:var(--s-md);border-left:3px solid var(--accent, currentColor);font-family:var(--font-display);font-size:var(--t-lead);}
.clanok__obr{margin:var(--s-lg) 0;}
.clanok__obr .ratio{border-radius:var(--r-lg);max-height:88vh;}
.clanok__obr .ratio img{object-fit:contain;background:var(--bg);}
.clanok__telo iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:var(--r-lg);}
.clanok__pata{max-width:760px;margin-top:var(--s-xl);}
.clanok__pata p{margin-top:var(--s-md);}

.zeny-mriezka{display:grid;gap:var(--s-xl) var(--s-md);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;}
@media (min-width:900px){.zeny-mriezka{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-xl) var(--s-lg);}}
.zena__foto{border-radius:var(--r-lg);}
.zena__foto img{width:100%;height:100%;object-fit:cover;}
.zena{min-width:0;}.zena__meno{font-size:var(--t-h3);margin-top:var(--s-sm);}
.zena__text{margin-top:var(--s-xs);font-size:var(--t-small);}
.zena__odkaz{margin-top:var(--s-xs);}

/* =========================================================================
 * 32 Ženy Love Colors – hnutie (dok. 70)
 * ========================================================================= */
.zeny-hero{padding-block:var(--s-lg) var(--s-xl);}
.zeny-hero__grid{display:grid;gap:var(--s-xl);align-items:center;}
@media (min-width:900px){.zeny-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);}}
.zeny-hero__title{font-size:var(--t-h1);line-height:1;margin-top:var(--s-sm);}
.zeny-hero__lead{margin-top:var(--s-md);max-width:38ch;}
.zeny-pocitadlo{margin-top:var(--s-md);font-size:var(--t-lead);}
.zeny-pocitadlo strong{font-family:var(--font-display);font-size:1.6em;color:var(--accent);margin-right:.15em;}
.zeny-hero__cta{display:flex;flex-wrap:wrap;gap:var(--s-md);align-items:center;margin-top:var(--s-lg);}
.zeny-hero__kolaz{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-sm);align-items:start;}
.zeny-hero__foto{border-radius:var(--r-xl);}
.zeny-hero__foto img{width:100%;height:100%;object-fit:cover;}
.zeny-hero__foto--2{margin-top:var(--s-xl);}
.zeny-hero__foto--3{margin-top:var(--s-md);}

.zeny-manifest{background:var(--accent);color:var(--accent-ink);}
.zeny-manifest .label{color:inherit;opacity:.8;}
.zeny-manifest__titulok{margin-top:var(--s-sm);color:inherit;}
.zeny-manifest__zoznam{list-style:none;counter-reset:manifest;margin:var(--s-lg) 0 0;padding:0;display:grid;gap:var(--s-md) var(--s-xl);}
@media (min-width:900px){.zeny-manifest__zoznam{grid-template-columns:repeat(2,minmax(0,1fr));}}
.zeny-manifest__zoznam li{counter-increment:manifest;display:grid;grid-template-columns:auto 1fr;gap:var(--s-sm);font-family:var(--font-display);font-size:var(--t-lead);line-height:1.35;padding-top:var(--s-md);border-top:1px solid color-mix(in oklab,var(--accent-ink) 30%,transparent);}
.zeny-manifest__zoznam li::before{content:counter(manifest,decimal-leading-zero);font-family:var(--font-text);font-size:var(--t-small);letter-spacing:.1em;padding-top:.35em;opacity:.75;}
.zeny-manifest__cta{margin-top:var(--s-xl);}
.zeny-manifest .btn--primary{background:var(--accent-ink);color:var(--accent);border-color:var(--accent-ink);}

.zeny-galeria__titulok{margin:var(--s-sm) 0 var(--s-lg);}
.zena__foto--bez{display:flex;align-items:center;justify-content:center;background:color-mix(in oklab,var(--accent) 12%,var(--bg));}
.zena__foto--bez span{font-family:var(--font-display);font-size:4rem;color:var(--accent);}
.zena__mesto{font-size:var(--t-small);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:2px;}
.zena__model{margin-top:var(--s-xs);font-size:var(--t-small);}
.zena{scroll-margin-top:120px;}

.zeny-pridat{background:var(--surface);}
.zeny-pridat__grid{display:grid;gap:var(--s-xl);align-items:start;}
@media (min-width:900px){.zeny-pridat__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);}}
.zeny-pridat__text{margin-top:var(--s-sm);max-width:44ch;}
.zeny-pridat__kroky{list-style:none;margin:var(--s-lg) 0 0;padding:0;display:grid;gap:var(--s-sm);}
.zeny-pridat__kroky li{display:flex;gap:var(--s-sm);align-items:center;}
.zeny-pridat__kroky span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r-full);background:var(--accent);color:var(--accent-ink);font-size:var(--t-small);flex:none;}
.zeny-suhlas{display:flex;gap:var(--s-sm);align-items:flex-start;margin-top:var(--s-sm);font-size:var(--t-small);line-height:1.5;cursor:pointer;}
.zeny-suhlas input{width:22px;height:22px;margin-top:1px;flex:none;accent-color:var(--accent);}
.zeny-form .btn{margin-top:var(--s-md);}

.zeny-citat blockquote{margin:0 auto;max-width:28ch;text-align:center;}
.zeny-citat p{font-family:var(--font-display);font-size:var(--t-h2);line-height:1.2;}
.zeny-citat p::before{content:"„";color:var(--accent);}
.zeny-citat p::after{content:"“";color:var(--accent);}
.zeny-citat footer{margin-top:var(--s-md);font-size:var(--t-small);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}

/* Hlavne menu s 8 polozkami (Zeny Love Colors, dok. 70) */
@media (min-width:1120px){.nav__list{gap:clamp(12px,1.25vw,28px);}.nav__link{font-size:.8125rem;letter-spacing:.04em;}}
@media (min-width:1500px){.nav__list{gap:var(--s-md);}.nav__link{font-size:.875rem;}}
@media (min-width:1700px){.nav__list{gap:var(--s-lg);}.nav__link{font-size:.9375rem;letter-spacing:.06em;}}
@media (min-width:1120px) and (max-width:1279px){.nav{display:none;}.nav-toggle{display:inline-flex;}.site-head .brand{justify-self:center;}}

/* --- 74. Hero pod oznamovou lištou ------------------------------------
   Výška hero sa počíta z výšky okna mínus lepiaca hlavička a oznamová
   lišta (--lc-top nastavuje app.js, záloha 64px), aby spodok hero –
   nadpis a tlačidlá – bol vidieť aj s lištou. */
:root{--lc-top:64px;}
.hero-v__frame{min-height:min(calc(100svh - var(--lc-top) - var(--s-sm) - var(--s-lg) - 12px),720px);}
@media (min-width:900px){.hero-v__frame{min-height:min(calc(100svh - var(--lc-top) - var(--s-md) - var(--s-xl) - 12px),880px);}}
@media (min-width:900px){
  .hero__media .ratio--portrait{max-height:min(calc(100svh - var(--lc-top) - 140px),700px);}
  .hero--fullbleed .hero__media .ratio{max-height:min(calc(100svh - var(--lc-top) - 140px),72vh);}
}
.mag-hero{min-height:min(85vh,calc(100svh - var(--lc-top)));}
@media (max-width:767px){.mag-hero{min-height:min(82vh,calc(100svh - var(--lc-top)));}}

/* 74b. Prvá sekcia podstránky pod drobčekmi: rovnaké odsadenie ako obchod, kolekcie
   a aktuality (48 px), nie celé sekčné (160 px) – s oznamovou lištou začínal nadpis
   až pod polovicou obrazovky. */
main > .section:first-child:not(.page--woo),
main > .fabric-page > .section:first-child{padding-top:var(--s-lg);}
