/* První Svatební – v2-1 „Album našich nevěst“
   Nadpisy Origin Display, text Nohemi (v25, přepínače zrušeny). Paleta „salon“: bílá, inkoust, zlatá fólie. */
:root{
  --bg:#FFFFFF; --surf:#F3F3F1; --ink:#16171D; --ink2:#5E606A; --line:#DEDEDA;
  --gold:#A87C0A; --gold-d:#D6A106; --gold-hl:rgba(214,161,6,.32); --err:#B4482E;
  --dark:#16171D; --on-dark:#F4F2EC; --on-dark2:#A9A8A3;
  --f-head:"OriginD",Georgia,serif; --f-text:"Nohemi",system-ui,sans-serif;
  --pad:64px; --wrap:1312px;
  --e-out:cubic-bezier(.16,1,.3,1); --e-nav:cubic-bezier(.2,.8,.2,1); --e-panel:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:96px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 18px/1.6 var(--f-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
ul{list-style:none;margin:0;padding:0}
p{margin:0}
h1,h2,h3{margin:0;font-family:var(--f-head);font-weight:300}
address{font-style:normal}
figure,blockquote,fieldset{margin:0;padding:0;border:0}
:focus{outline:none}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:3px}
::selection{background:var(--gold-hl)}
.skip{position:fixed;left:16px;top:-80px;z-index:200;background:var(--ink);color:#fff;padding:12px 18px;border-radius:6px;font-size:15px}
.skip:focus{top:16px}
.wrap{width:100%;max-width:calc(var(--wrap) + 2 * var(--pad));margin:0 auto;padding:0 var(--pad)}
.num{font-family:var(--f-text);font-variant-numeric:normal;font-style:normal;font-weight:inherit}
.tnum{font-variant-numeric:tabular-nums}
.label{font:500 12px/1.2 var(--f-text);letter-spacing:.12em;text-transform:uppercase;color:var(--ink2)}
.small{font-size:15px;line-height:1.5;color:var(--ink2)}
.lead{font-size:18px;max-width:34em}
.h1{font-size:clamp(72px,5.56vw,88px);line-height:.98;letter-spacing:-.01em;font-weight:300}
.h1 em,.h2 em{font-style:italic;font-weight:300}
.h2{font-size:56px;line-height:1.05;font-weight:300;letter-spacing:-.005em;text-wrap:balance}
.h3{font:400 32px/1.15 var(--f-head)}
.quote{font:italic 300 28px/1.3 var(--f-head);text-wrap:balance}
.m-only{display:none}
.line{padding-top:.14em;margin-top:-.14em}

/* Rough Notation vkládá SVG absolutně vedle prvku – rodič musí být kotva */
.h1,.h2,.lead,.ptab,.rcard__t,.detail__act,.sendwrap,.hero__cta,.hero__rating{position:relative}
svg.rough-annotation{max-width:none}

/* hvězdy */
.stars{display:inline-block;color:var(--gold);width:99px;vertical-align:middle}
.stars svg{width:100%;height:auto;fill:currentColor}
.stars--s{width:15px;margin:-3px 2px 0 6px}
.stars--l{width:132px}

/* ---------- odkazy: Codrops Line Hover „herse“ (oblouk se dokreslí) ---------- */
.link{cursor:pointer;position:relative;white-space:nowrap;display:inline-flex;align-items:center;gap:10px;min-height:44px;font:500 15px/1 var(--f-text);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.link .arr{width:18px;height:10px;fill:none;stroke:currentColor;stroke-width:1.4;flex:none;transition:transform .3s ease-out}
.link:hover .arr{transform:translateX(4px)}
.link .arr--down{transform:rotate(90deg)}
.link:hover .arr--down{transform:rotate(90deg) translateX(4px)}
.link .arr--out{transform:rotate(-45deg)}
.link:hover .arr--out{transform:rotate(-45deg) translateX(3px)}
.link__graphic{position:absolute;top:0;left:0;pointer-events:none;fill:none;stroke:var(--gold);stroke-width:1.6px;overflow:visible;max-width:none}
.link__graphic--stroke path{stroke-dasharray:1;stroke-dashoffset:1}
.link:hover .link__graphic--stroke path,.link:focus-visible .link__graphic--stroke path{stroke-dashoffset:0}
.link__graphic--arc{top:73%;left:-6%;width:100%}
.link__graphic--arc path{transition:stroke-dashoffset .4s cubic-bezier(.7,0,.3,1)}
.link:hover .link__graphic--arc path{transition-timing-function:cubic-bezier(.8,1,.7,1);transition-duration:.3s}
.link:active{opacity:.7}
.tlink{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1.5px;text-underline-offset:4px;transition:text-decoration-color .3s ease-out,color .3s ease-out}
.tlink:hover{text-decoration-color:var(--ink)}
.tbtn{font:500 15px/1.4 var(--f-text);color:var(--ink);text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1.5px;text-underline-offset:4px;min-height:44px;padding:0 2px;transition:text-decoration-color .3s ease-out}
.tbtn:hover{text-decoration-color:var(--ink)}
.tbtn:active{opacity:.7}

/* CTA = text + zlatý kroužek Rough Notation */
.cta{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 4px;font:500 15px/1 var(--f-text);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--ink);transition:transform .2s ease-out}
.cta:active{transform:scale(.97)}
/* plné tlačítko (formulář, menu) */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 32px;border-radius:999px;background:var(--ink);color:#fff;font:500 15px/1 var(--f-text);letter-spacing:.08em;text-transform:uppercase;transition:background .3s ease-out,transform .2s ease-out,color .3s ease-out,box-shadow .3s ease-out}
.btn:hover{background:#2A2C36}
.btn:active{transform:scale(.97)}
.btn:focus-visible{outline-offset:4px;border-radius:999px}
.btn--ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.btn--ghost:hover{background:var(--ink);color:#fff}
.xbtn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:inset 0 0 0 1px var(--line);transition:background .3s ease-out,box-shadow .3s ease-out,transform .2s ease-out}
.xbtn svg{width:12px;height:12px;stroke:var(--ink);stroke-width:1.4;fill:none}
.xbtn:hover{background:var(--surf);box-shadow:inset 0 0 0 1px var(--ink)}
.xbtn:active{transform:scale(.94)}
.abtn{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s ease-out,background .3s ease-out,transform .2s ease-out}
.abtn svg{width:18px;height:10px;stroke:var(--ink);stroke-width:1.4;fill:none}
.abtn:hover{box-shadow:inset 0 0 0 1px var(--ink);background:var(--surf)}
.abtn:active{transform:scale(.94)}

/* fotka v paspartě */
.ph{padding:12px;background:#fff;border:1px solid var(--line);border-radius:6px}
.ph__in{overflow:hidden;border-radius:2px;background:var(--surf)}
.ph__in img{width:100%;height:100%;object-fit:cover}
.js .ph .ph__in img{transform:scale(1.1);opacity:0;transition:transform .9s var(--e-out),opacity .6s ease-out}
.js .ph.in .ph__in img{transform:none;opacity:1}

/* vstupy */
.js [data-rv]{opacity:0;transform:translateY(24px);transition:opacity .6s var(--e-out),transform .6s var(--e-out);transition-delay:var(--d,0s)}
.js [data-rv].in{opacity:1;transform:none}
.js .reveal-h{opacity:0}
.js .reveal-h.ready{opacity:1}

/* ================= HLAVIČKA ================= */
.hdr{position:fixed;inset:0 0 auto 0;z-index:60;pointer-events:none}
.hdr__body{pointer-events:auto;position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1440px;height:80px;margin:0 auto;padding:0 var(--pad);border-radius:999px;background:rgba(255,255,255,0);
  transition:max-width .5s var(--e-nav),transform .5s var(--e-nav),height .5s var(--e-nav),padding .5s var(--e-nav),background-color .3s ease-out,box-shadow .5s var(--e-nav)}
.hdr.is-scrolled .hdr__body{max-width:960px;height:60px;padding:0 28px 0 24px;transform:translateY(20px);background:rgba(255,255,255,.96);
  box-shadow:0 0 24px rgba(34,42,53,.06),0 1px 1px rgba(0,0,0,.05),0 0 0 1px rgba(34,42,53,.04),0 0 4px rgba(34,42,53,.08),0 16px 68px rgba(47,48,55,.05),0 1px 0 rgba(255,255,255,.1) inset}
.hdr__logo{display:block;width:168px;flex:none;color:var(--ink);position:relative;z-index:2}
.logo-svg{width:100%;height:auto}
.hdr__nav{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:4px;pointer-events:none}
.hdr__nav a{pointer-events:auto;position:relative;display:inline-flex;flex-direction:column;justify-content:center;height:44px;padding:0 14px;font:500 13px/1 var(--f-text);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.hdr__nav a:active{opacity:.6}
.hdr__nav i,.osmo-fixed{position:absolute;left:14px;right:14px;top:calc(50% + 9px);height:8px;color:var(--gold);pointer-events:none}
.text-draw__box-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible!important}
.hdr__right{display:flex;align-items:center;gap:28px;position:relative;z-index:2}
.hdr__tel{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:500 15px/1 var(--f-text);white-space:nowrap;transition:opacity .3s ease-out}
.hdr__tel svg{width:18px;height:18px;fill:none;stroke:var(--ink);stroke-width:1.3;stroke-linejoin:round}
.hdr__tel:hover span{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;text-decoration-thickness:1.5px}
.hdr.is-scrolled .hdr__tel span{display:none}
.hdr__cta{position:relative;display:inline-flex;align-items:center;height:44px;font:500 13px/1 var(--f-text);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.hdr__cta .osmo-fixed{left:-2px;right:-2px}
.hdr__cta:hover{color:#000}
.hdr__cta:active{opacity:.6}
.hdr__menu{display:none}
@media (max-width:1279px){.hdr__tel span{display:none}}

/* ================= HERO ================= */
.hero{position:relative;min-height:max(760px,min(100svh,1040px));overflow:hidden}
.hero__text{position:relative;z-index:2;width:580px;margin-left:max(var(--pad),calc((100vw - var(--wrap)) / 2));padding-top:clamp(124px,17.5vh,200px);padding-bottom:64px}
.hero__label{margin-bottom:22px}
.h1{max-width:580px}
.js .h1,.js .hero__perex,.js .hero__cta,.js .hero__rating,.js .hero__label{opacity:0}
.hero__perex{margin-top:40px;max-width:480px;font-size:18px;line-height:1.6}
.hero__cta{display:flex;align-items:center;gap:56px;margin-top:44px;padding-left:22px}
.hero__rating{margin-top:48px;padding-left:10px}
.rating{display:inline-flex;align-items:center;gap:16px;position:relative;padding:2px 4px;transition:opacity .3s ease-out}
.rating__num{font-size:64px;line-height:1;font-weight:500;letter-spacing:-.02em}
.rating__col{display:flex;flex-direction:column;gap:8px}
.rating__txt{font:500 14px/1.2 var(--f-text);letter-spacing:.08em;text-transform:uppercase}
.rating:hover .rating__txt{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;text-decoration-thickness:1.5px}
.rating:active{opacity:.7}
.hero__note{margin-top:22px}
.hero__fan{position:absolute;inset:0;z-index:1;pointer-events:none}
.scaler{position:absolute;left:0;top:0;width:400px;height:300px;transform-origin:50% 50%}
/* --- ReactBits Bounce Cards: zdroj.css beze změny (jen 3:4 a rádius 6 jako v demo.html) --- */
.bounceCardsContainer{position:relative;display:flex;justify-content:center;align-items:center;width:400px;height:300px}
.bounceCardsContainer .card{box-sizing:content-box;position:absolute;width:200px;aspect-ratio:3/4;border:5px solid #fff;border-radius:6px;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,.2);pointer-events:auto;background:var(--surf);padding:0;-webkit-tap-highlight-color:transparent}
.bounceCardsContainer .card .image{width:100%;height:100%;object-fit:cover;display:block;max-width:none}
.bounceCardsContainer button.card{cursor:pointer}
.bounceCardsContainer .card:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.fan__cap{position:absolute;left:0;top:0;transform:translate(-50%,8px);opacity:0;white-space:nowrap;color:var(--ink);font-size:15px;transition:opacity .3s ease-out,transform .3s ease-out;pointer-events:none}
.fan__cap.on{opacity:1;transform:translate(-50%,0)}
.fan__cap b{font-weight:500}
.fan__cap .stars--s{margin-left:4px}

/* ================= SEKCE obecně ================= */
.sec{padding:140px 0}
.sec__head--c{text-align:center;max-width:820px;margin:0 auto 96px}
.sec__head--c .label{margin-bottom:20px}

/* ================= KATALOG ================= */
.cat{padding-top:96px}
.cat__head{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:44px}
.cat__perex{margin-top:18px}
#hl8000{white-space:nowrap}
.tabs{position:relative;display:inline-flex;padding:4px;border-radius:999px;background:var(--surf);flex:none}
.tabs__bg{position:absolute;left:0;top:4px;height:calc(100% - 8px);width:0;border-radius:999px;background:#fff;box-shadow:0 1px 2px rgba(22,23,29,.08),0 0 0 1px rgba(22,23,29,.05);transition:transform .3s var(--e-out),width .3s var(--e-out)}
.tab{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 20px;border-radius:999px;font:500 15px/1 var(--f-text);white-space:nowrap;color:var(--ink2);transition:color .3s ease-out}
.tab[aria-selected="true"]{color:var(--ink)}
.tab:hover{color:var(--ink)}
.tab:active{opacity:.7}
.cnt{font-size:15px;color:var(--ink2)}
.cnt--soon{font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line)}

.filters{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:26px 48px;padding:32px 0 30px;border-top:1px solid var(--line)}
.filters__top,.filters__foot,.fbar__open,.fsheet-scrim{display:none}
.fgroup .label{margin-bottom:12px}
.chips{position:relative;display:flex;flex-wrap:wrap;gap:8px}
.chip,.chips button{position:relative;z-index:1;display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 17px;border-radius:999px;font:400 15px/1 var(--f-text);white-space:nowrap;box-shadow:inset 0 0 0 1px var(--line);background:transparent;color:var(--ink);transition:box-shadow .3s ease-out,background-color .3s ease-out,color .3s ease-out,transform .2s ease-out;cursor:pointer}
.chips button .n{font-size:15px;color:var(--ink2);transition:color .3s ease-out}
.chips button:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.chips button:active{transform:scale(.96)}
.chips button[aria-pressed="true"]{background:var(--ink);color:#fff;box-shadow:inset 0 0 0 1px var(--ink)}
.chips button[aria-pressed="true"] .n{color:rgba(255,255,255,.7)}
.chips button[disabled]{opacity:.38;cursor:default;box-shadow:inset 0 0 0 1px var(--line)}
.chips--num button{min-width:52px;justify-content:center;padding:0 12px;font-weight:500;font-variant-numeric:tabular-nums}
/* jednovýběr: Motion Primitives Animated Background – jedna pilulka klouže pod aktivní položku */
.chips__bg{position:absolute;left:0;top:0;height:44px;width:0;border-radius:999px;background:var(--ink);transition:transform .3s var(--e-out),width .3s var(--e-out);z-index:0}
.chips--single button[aria-pressed="true"]{background:transparent}
.fbar{display:flex;align-items:center;gap:24px;min-height:44px;margin-bottom:8px}
.fbar__res{font-size:15px;color:var(--ink2)}
.fbar__res .num{color:var(--ink);font-weight:500}
.fbar__clear{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:500 15px/1 var(--f-text);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;text-decoration-thickness:1.5px}
.fbar__clear svg{width:10px;height:10px;stroke:var(--ink);stroke-width:1.4;fill:none}
.fbar__clear:hover{text-decoration-color:var(--ink)}
.fbar__clear[hidden]{display:none}
#panel-saty{display:flex;flex-direction:column}
#panel-saty[hidden]{display:none}
#panel-saty .filters{order:1}
#panel-saty .fbar{order:2;border-top:1px solid var(--line);padding-top:14px;margin-bottom:22px}
#panel-saty .grid,#panel-saty .empty,#panel-saty .cat__more{order:3}

.grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px 24px}
.item{position:relative;display:flex;flex-direction:column;text-align:left;cursor:pointer;padding-bottom:18px;border-radius:2px}
.item::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--line);transition:background-color .3s ease-out,height .3s ease-out}
.item__ph{display:block;overflow:hidden;aspect-ratio:3/4;background:var(--surf);border-radius:2px}
.item__ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--e-out)}
.item__r1{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:16px}
.item__no{font:500 20px/1.2 var(--f-text)}
.item__sz{font-size:15px;color:var(--ink2);font-variant-numeric:tabular-nums}
.item__pop{display:block;margin-top:8px;font-size:15px;line-height:1.45;color:var(--ink);min-height:2.9em}
.item__tags{display:block;margin-top:10px;font:500 12px/1.4 var(--f-text);letter-spacing:.1em;text-transform:uppercase;color:var(--ink2)}
@media (hover:hover){
  .item:hover .item__ph img{transform:scale(1.03)}
  .item:hover::after{background:var(--gold);height:2px}
}
.item:focus-visible{outline-offset:6px}
.item:active .item__ph img{transform:scale(1.01)}
.item--rev{background:var(--surf);border-radius:6px;padding:0;cursor:pointer;overflow:hidden}
.item--rev::after{display:none}
.item--rev .item__ph{aspect-ratio:auto;flex:0 0 55%;border-radius:0}
.item--rev .item__ph img{object-position:50% 22%}
.item--rev .rv__b{display:flex;flex-direction:column;justify-content:space-between;flex:1;padding:24px 24px 22px;gap:16px}
.item--rev .quote{font-size:28px}
.item--rev .small b{font-weight:500;color:var(--ink)}
@media (hover:hover){.item--rev:hover .small b{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;text-decoration-thickness:1.5px}}
.cat__more{margin-top:56px;text-align:center}
.cat__more[hidden]{display:none}
.empty{padding:72px 24px;text-align:center;background:var(--surf);border-radius:6px}
.empty[hidden]{display:none}
.empty p+p{margin-top:12px;color:var(--ink2)}
.empty__act{display:flex;justify-content:center;align-items:center;gap:36px;margin-top:22px!important;flex-wrap:wrap}
.kos__head{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px 0 32px;border-top:1px solid var(--line)}
.kos__logo{width:auto;color:var(--ink);flex:none}
.kos__logo svg{height:44px;width:auto}
.grid--kos{grid-template-columns:repeat(6,minmax(0,1fr));gap:32px 20px}
.kitem{display:flex;flex-direction:column;padding-bottom:16px;border-bottom:1px solid var(--line)}
.kitem .item__no{font-size:17px}
.kitem .item__pop{min-height:0}
.druz{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;padding:64px;background:var(--surf);border-radius:6px}
.druz__txt .h3{margin:14px 0 14px}
.druz__txt p+p{margin-top:16px}
.druz__q .small{margin-top:14px}

/* ================= ZKOUŠKA ================= */
.steps-sec{padding-bottom:120px}
.steps{position:relative;max-width:1120px;margin:0 auto}
.steps__svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;max-width:none;z-index:0}
.steps__svg path{fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.step{position:relative;z-index:1;display:grid;grid-template-columns:160px minmax(0,1fr) 400px;gap:0 72px;align-items:center}
.step+.step{margin-top:88px}
.step__n{font-size:96px;font-weight:500;line-height:1;text-align:center;width:160px;height:160px;display:grid;place-items:center}
.step__txt{max-width:440px}
.step__txt .h3{margin-bottom:14px}
.step__ph{width:400px;aspect-ratio:auto}
.step__ph .ph__in{aspect-ratio:3/4}
.step--r{grid-template-columns:160px 400px minmax(0,1fr)}
.step--r .step__ph{order:2}
.step--r .step__txt{order:3}
.step__act{display:flex;align-items:center;gap:32px;margin-top:22px;flex-wrap:wrap}
.step__q{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}
.step__q .small{margin-top:12px}

/* ================= CENÍK ================= */
.price{background:var(--surf);padding:120px 0}
.price__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:96px;align-items:center}
.price__big{font-size:96px;font-weight:500;line-height:1;letter-spacing:-.03em;margin-top:22px;white-space:nowrap}
.price__big span{font-size:.42em;font-weight:400;letter-spacing:0;color:var(--ink2);margin-right:.1em}
.price__sub{margin-top:14px;color:var(--ink2)}
.ptab li{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}
.ptab li:first-child{border-top:1px solid var(--line)}
.ptab b{font-weight:500;font-size:20px;white-space:nowrap}
.ptab i{font-style:normal;color:var(--ink2);white-space:nowrap}
.price__note{margin-top:22px;max-width:34em}

/* ================= RECENZE ================= */
.rev__in{display:grid;grid-template-columns:360px minmax(0,1fr);gap:72px;align-items:start}
.rev__sticky{position:sticky;top:128px}
.rev__score{display:flex;align-items:center;gap:18px;margin-bottom:18px}
.rev__num{font-size:64px;font-weight:500;line-height:1;letter-spacing:-.02em;font-variant-numeric:normal}
.h2num{font-weight:500;font-size:.86em;letter-spacing:-.02em}
.rev__p{margin:24px 0 18px;color:var(--ink2)}
.wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.wall+.wall{margin-top:16px}
.wall__col{display:flex;flex-direction:column;gap:16px}
.rcard{display:flex;flex-direction:column;align-items:stretch;-webkit-appearance:none;appearance:none;text-align:left;width:100%;background:var(--surf);border-radius:6px;overflow:hidden;cursor:pointer;transition:background-color .3s ease-out,box-shadow .3s ease-out,transform .2s ease-out}
.rcard__ph{display:block;width:100%;flex:none;align-self:stretch;aspect-ratio:3/4;overflow:hidden;background:var(--line)}
.rcard__ph img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--e-out)}
.rcard__b{display:block;width:100%;box-sizing:border-box;padding:26px 26px 22px}
.rcard__t{display:block;font-size:17px;line-height:1.55}
.rcard__n{display:block;margin-top:18px;font:400 28px/1.15 var(--f-head)}
.rcard__s{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;min-height:20px}
.rcard__s .stars{width:78px}
.rcard__m{display:block;margin-top:6px;font-size:15px;color:var(--ink2)}
.rcard__more{font:500 12px/1 var(--f-text);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);opacity:0;transform:translateX(-4px);transition:opacity .3s ease-out,transform .3s ease-out}
@media (hover:hover){
  .rcard:hover{background:#ECECE9}
  .rcard:hover .rcard__more{opacity:1;transform:none}
  .rcard:hover .rcard__ph img{transform:scale(1.03)}
}
.rcard:focus-visible .rcard__more{opacity:1;transform:none}
.rcard:active{transform:scale(.99)}
.rev__more{margin-top:40px;text-align:center}
.rev__more[hidden]{display:none}

/* ================= O SALONU ================= */
.about{padding-top:60px}
.about__in{display:grid;grid-template-columns:420px minmax(0,1fr);gap:88px;align-items:center}
.about__h{margin:20px 0 28px}
.about__txt p+p{margin-top:16px}
.about__ph{position:relative;padding-bottom:230px}
.about__a{width:100%;max-width:744px;margin-left:auto}
.about__a .ph__in{aspect-ratio:720/384}
.about__a img{object-position:50% 100%;transform-origin:50% 100%}
.js .about__a.in .ph__in img,.about__a .ph__in img{transform:scale(1.12)}
.js .about__a .ph__in img{transform:scale(1.24)}
.about__b{position:absolute;left:-72px;bottom:0;width:min(520px,64%);box-shadow:0 24px 60px -24px rgba(22,23,29,.25)}
.about__b .ph__in{aspect-ratio:496/330}
.about__b img{object-position:50% 100%;transform-origin:50% 100%}
.js .about__b.in .ph__in img,.about__b .ph__in img{transform:scale(1.16)}
.js .about__b .ph__in img{transform:scale(1.28)}

/* ================= ZNAČKY ================= */
.brands{padding-top:40px}
.brands__head{display:flex;align-items:baseline;gap:24px;padding-top:22px;border-top:1px solid var(--line);margin-bottom:8px}
.brands__head--2{margin-top:36px}
.brands__p{font-size:15px;color:var(--ink2)}
.hov{position:relative;display:grid}
.hov--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.hov--3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:60%}
.hov__bg{position:absolute;left:0;top:0;width:0;height:0;border-radius:24px;background:var(--surf);opacity:0;pointer-events:none;transition:opacity .15s linear .2s}
.hov__bg.on{opacity:1;transition:opacity .15s linear}
.hov__c{position:relative;z-index:1;display:grid;place-items:center;padding:8px;height:184px;color:var(--ink)}
.hov__c:active .lg{transform:scale(.97)}
.hov__c:focus-visible{outline-offset:-6px;border-radius:24px}
.lg{display:block;transition:transform .2s ease-out}
.lg svg{width:auto;max-width:none}
/* velikosti log = v2-2 */
.lg--32 svg{height:34px}
.lg--mo svg{height:32px}
.lg--be svg{height:44px}
.lg--hp svg{height:46px}
.lg--40 svg{height:58px}
.lg--sh svg{height:62px}
.lg--72 svg{height:92px}
.lg--du svg{height:104px}
@media (min-width:760px) and (max-width:1099px){.hov--5{grid-template-columns:repeat(3,minmax(0,1fr))}.hov--3{max-width:none}}

/* ================= FORMULÁŘ ================= */
.book__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:88px;align-items:start}
.ticks{margin-top:32px}
.ticks li{position:relative;padding:14px 0 14px 34px;border-bottom:1px solid var(--line)}
.ticks li:first-child{border-top:1px solid var(--line)}
.ticks li::before{content:"";position:absolute;left:4px;top:23px;width:14px;height:7px;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.book__tel{margin-top:36px;display:flex;flex-direction:column;gap:6px}
.book__tel a{font-size:32px;font-weight:500;line-height:1.2;letter-spacing:-.01em;align-self:flex-start;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:6px;text-decoration-thickness:2px;transition:text-decoration-color .3s ease-out}
.book__tel a:hover{text-decoration-color:var(--gold)}
.book__q{margin-top:56px;display:grid;grid-template-columns:200px minmax(0,1fr);gap:28px;align-items:end}
.book__ph{padding:10px}
.book__ph .ph__in{aspect-ratio:3/4}
.book__ph img{object-position:50% 40%}
.book__q .quote{font-size:28px}
.book__q .small{margin-top:10px}
.nw{white-space:nowrap}
.form{position:relative;background:var(--surf);border-radius:6px;padding:48px}
.frow{display:grid;gap:20px}
.frow--2{grid-template-columns:1fr 1fr}
.fld{position:relative;padding-bottom:34px}
.fld--area{padding-bottom:34px;margin-top:6px}
.fset{margin:2px 0 30px}
.fset .label,.fset legend{margin-bottom:12px;display:block;padding:0}
/* --- Codrops Text Input Effects: Madoka (rámeček se dokreslí) --- */
.input{position:relative;z-index:1;display:block;width:100%;vertical-align:top}
.input__field{position:relative;display:block;width:100%;border:none;border-radius:0;background:#fff;color:var(--ink);font:400 17px/1.4 var(--f-text);-webkit-appearance:none;appearance:none}
.input__field--madoka{height:60px;padding:0 18px;background:#fff}
textarea.input__field--madoka{height:auto;min-height:112px;padding:18px;resize:vertical}
.input__field:focus{outline:none}
.input__label{position:absolute;left:0;top:0;width:100%;height:100%;color:var(--ink2);text-align:left;cursor:text;font-size:17px;-webkit-user-select:none;user-select:none}
.input__label-content--madoka{position:absolute;left:18px;top:17px;display:block;transform-origin:0% 50%;transition:transform .3s;white-space:nowrap;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis}
.graphic{position:absolute;top:0;left:0;fill:none;width:100%;height:100%;max-width:none;overflow:visible}
.graphic--madoka{transform:scale3d(1,-1,1);transition:stroke-dashoffset .3s,stroke .3s;pointer-events:none;stroke:#9A9BA3;stroke-width:2px}
.input__field--madoka:focus + .input__label--madoka,.input--filled .input__label--madoka{cursor:default;pointer-events:none}
.input__field--madoka:focus + .input__label--madoka .graphic--madoka,.input--filled .graphic--madoka{stroke-dashoffset:0!important;stroke:var(--gold)}
.input__field--madoka:focus + .input__label--madoka .input__label-content--madoka,.input--filled .input__label-content--madoka{transform:scale3d(.9,.9,1) translate3d(-18px,var(--lab-y,54px),0)}
.input__field--madoka:focus-visible + .input__label--madoka .graphic--madoka{stroke-width:3px}
.input--err .graphic--madoka{stroke:var(--err)!important}
.err{font-size:15px;line-height:1.3;color:var(--err);margin-top:30px;margin-bottom:-14px}
.err[hidden]{display:none}
.fld--chk .err{margin:6px 0 0;padding-left:40px}
.chips--form .chip{padding:0}
.chip input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;left:0;top:0}
.chip span{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);font-size:15px;transition:box-shadow .3s ease-out,background-color .3s ease-out,color .3s ease-out}
.chip{box-shadow:none}
.chip:hover span{box-shadow:inset 0 0 0 1px var(--ink)}
.chip input:checked + span{background:var(--ink);color:#fff;box-shadow:inset 0 0 0 1px var(--ink)}
.chip input:focus-visible + span{outline:2px solid var(--ink);outline-offset:3px}
.chip:active span{transform:scale(.96)}
.picked__list{display:flex;flex-wrap:wrap;gap:8px}
.picked__list:empty{display:none}
.pk{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 6px 0 16px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--gold);font:500 15px/1 var(--f-text)}
.pk button{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;transition:background-color .3s ease-out}
.pk button svg{width:10px;height:10px;stroke:var(--ink);stroke-width:1.5;fill:none}
.pk button:hover{background:var(--surf)}
.picked__list:not(:empty) + .picked__empty{display:none}
.chk{position:relative;display:flex;align-items:flex-start;gap:14px;font-size:15px;line-height:1.5;cursor:pointer;min-height:44px;padding-top:9px}
.chk input{position:absolute;opacity:0;width:26px;height:26px;margin:0;left:0;top:9px;cursor:pointer}
.chk__box{flex:none;width:26px;height:26px;border-radius:5px;background:#fff;box-shadow:inset 0 0 0 1.5px #9A9BA3;display:grid;place-items:center;transition:box-shadow .3s ease-out,background-color .3s ease-out}
.chk__box svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2;stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset .25s ease-out}
.chk:hover .chk__box{box-shadow:inset 0 0 0 1.5px var(--ink)}
.chk input:checked + .chk__box{background:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
.chk input:checked + .chk__box svg{stroke-dashoffset:0}
.chk input:focus-visible + .chk__box{outline:2px solid var(--ink);outline-offset:3px}
.chk.is-err .chk__box{box-shadow:inset 0 0 0 1.5px var(--err)}
.fld--chk{padding-bottom:0;margin-top:2px}
.form__send{display:flex;align-items:center;gap:28px;margin-top:34px;flex-wrap:wrap}
.sendwrap{position:relative;display:inline-block}
.form__send .small{max-width:16em}
.form__ok{padding:8px 0 36px;display:flex;flex-direction:column;gap:14px}
.form__ok[hidden]{display:none}
.form__ok .h3{font-size:44px;font-weight:300}
.form.is-sent .form__body > *:not(.form__send){display:none}
.form.is-sent .form__send{margin-top:8px}
.form.is-sent .btn--send{pointer-events:none}
.form.is-sent .form__send .small{display:none}

/* ================= KONTAKT ================= */
.contact{padding-top:40px}
.contact__in{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:72px;align-items:center}
.contact__ph .ph__in{aspect-ratio:1600/1150}
.contact__card .h2{margin:18px 0 14px}
.contact__card address{font-size:20px;line-height:1.5}
.clist{margin-top:28px;border-top:1px solid var(--line)}
.clist li{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:baseline;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}
.clist a{align-self:center;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px;text-decoration-thickness:1.5px;transition:text-decoration-color .3s ease-out;min-height:32px;display:inline-flex;align-items:center}
.clist a:hover{text-decoration-color:var(--gold)}
.clist__big{font-size:22px;font-weight:500}
.clist__mail{overflow-wrap:anywhere}
.contact__act{display:flex;align-items:center;gap:28px;margin-top:24px;flex-wrap:wrap}
.soc{display:inline-flex;align-items:center;min-height:44px;font-size:15px;color:var(--ink2);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px;transition:color .3s ease-out,text-decoration-color .3s ease-out}
.soc:hover{color:var(--ink);text-decoration-color:var(--gold)}

/* ================= PATIČKA ================= */
.ftr{background:var(--dark);color:var(--on-dark);padding:96px 0 40px}
.ftr .label{color:var(--on-dark2)}
.ftr__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:72px;align-items:start}
.ftr__logo{position:relative;height:120px;aspect-ratio:14820/6516;color:var(--on-dark)}
.ftr__napis,.ftr__figura{display:block;position:absolute;top:0}
.ftr__napis{left:0;width:78.6%;height:90.42%;top:.18%}
.ftr__figura{left:70.1%;width:29.9%;height:100%;color:var(--gold-d)}
.ftr__napis svg,.ftr__figura svg{width:100%;height:100%;overflow:visible}
.ftr__figura path{stroke:var(--gold-d);stroke-width:500;stroke-linejoin:round;fill:var(--gold-d)}
.js .ftr__figura path{fill-opacity:0}
.js .ftr__figura.done path{fill-opacity:1;stroke-width:0;transition:fill-opacity .4s ease-out,stroke-width .4s ease-out}
.ftr__motto{margin-top:28px;font:italic 300 28px/1.3 var(--f-head);color:var(--on-dark)}
.ftr__cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.ftr__cols .label{margin-bottom:18px}
.ftr__cols li{font-size:17px;line-height:1.5;padding:5px 0;color:var(--on-dark)}
.ftr__cols a{display:inline-flex;align-items:center;min-height:34px;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px;text-decoration-thickness:1.5px;transition:text-decoration-color .3s ease-out}
.ftr__cols a:hover{text-decoration-color:var(--gold-d)}
.ftr__cols a:active,.ftr__bot a:active{opacity:.7}
.ftr :focus-visible{outline-color:var(--on-dark)}
.ftr__bot{display:flex;flex-wrap:wrap;gap:8px 36px;margin-top:80px;padding-top:28px;border-top:1px solid rgba(244,242,236,.16);font-size:15px;color:var(--on-dark2)}
.ftr__bot a{color:var(--on-dark);text-decoration:underline;text-decoration-color:rgba(244,242,236,.35);text-underline-offset:4px;display:inline-flex;min-height:32px;align-items:center}
.ftr__bot a:hover{text-decoration-color:var(--gold-d)}
.ftr__consent{flex-basis:100%;padding-right:84px}

/* ================= DETAIL ŠATŮ ================= */
.dscrim,.pscrim{position:fixed;inset:0;z-index:80;background:rgba(255,255,255,.78);opacity:0;visibility:hidden;transition:opacity .4s ease-out,visibility 0s linear .4s}
.dscrim.on,.pscrim.on{opacity:1;visibility:visible;transition:opacity .4s ease-out}
.pscrim{background:rgba(22,23,29,.28);z-index:90}
.detail{position:fixed;top:10px;left:50%;z-index:85;display:flex;visibility:hidden;height:min(86vh,780px);background:#fff;border-radius:6px;box-shadow:0 0 0 1px rgba(22,23,29,.06),0 40px 100px -30px rgba(22,23,29,.35)}
.detail__img{position:relative;z-index:2;height:100%;aspect-ratio:3/4;flex:none;background:var(--surf);border-radius:6px 0 0 6px;overflow:hidden}
.detail__img > img{width:100%;height:100%;object-fit:cover}
.detail__side{position:relative;width:460px;flex:none;overflow:hidden;border-radius:0 6px 6px 0}
.detail .content{height:100%;padding:56px 48px 104px;background:#fff;display:flex;flex-direction:column;overflow:auto}
.detail__no{font-size:48px;font-weight:500;line-height:1;margin-top:14px;letter-spacing:-.02em}
.detail__pop{margin-top:16px;font-size:18px;line-height:1.5}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}
.tags li{font:500 12px/1 var(--f-text);letter-spacing:.1em;text-transform:uppercase;padding:9px 12px;border-radius:999px;background:var(--surf)}
.detail__sz{margin-top:26px}
.sizes{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.sizes li{min-width:44px;height:44px;display:grid;place-items:center;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line);font-weight:500;font-size:16px}
.detail__price{margin-top:28px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.detail__price .num{font-size:20px;font-weight:500}
.detail__act{margin-top:34px;padding-left:22px}
.detail__hint{margin-top:auto;padding-top:24px}
.detail__x{position:absolute;right:14px;top:14px;z-index:5}
.detail__nav{position:absolute;right:48px;bottom:36px;z-index:5;display:flex;align-items:center;gap:14px;width:364px;justify-content:space-between}
.detail__nav .small{color:var(--ink2)}
/* --- MagicUI Lens (přepis z demo.html) --- */
.lens{cursor:zoom-in}
.lens__layer{position:absolute;inset:0;overflow:hidden;z-index:50;opacity:0;transform:scale(.58);transition:opacity .1s,transform .1s;pointer-events:none}
.lens.is-on .lens__layer{opacity:1;transform:scale(1)}
.lens__zoom{position:absolute;inset:0}
.lens__zoom img{width:100%;height:100%;object-fit:cover}
.lens.no-lens{cursor:default}

/* ================= PANEL RECENZE ================= */
.rpanel{position:fixed;top:0;right:0;bottom:0;z-index:95;width:480px;max-width:100%;background:#fff;padding:84px 44px 48px;overflow:auto;overscroll-behavior:contain;transform:translateX(100%);visibility:hidden;transition:transform .4s var(--e-panel),visibility 0s linear .4s;box-shadow:-30px 0 80px -40px rgba(22,23,29,.35)}
.rpanel.on{transform:none;visibility:visible;transition:transform .4s var(--e-panel)}
.rpanel__x{position:absolute;right:20px;top:20px}
.rpanel__meta{display:flex;align-items:center;gap:14px}
.rpanel .h3{margin:16px 0 22px;font-size:36px}
.rpanel__txt p{font-size:17px;line-height:1.6}
.rpanel__txt p+p{margin-top:14px}
.rpanel__ph{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}
.rpanel__ph:empty{display:none}
.rpanel__ph img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:4px;background:var(--surf)}
.rpanel__ph img.w{grid-column:1/-1;aspect-ratio:3/2}
.rpanel__foot{margin-top:28px;padding-top:16px;border-top:1px solid var(--line)}

/* ================= PŘEPÍNAČ PÍSMA ================= */
.fsw{position:fixed;left:16px;bottom:16px;z-index:70;display:flex;align-items:center;gap:8px;transition:transform .4s var(--e-out),opacity .3s ease-out}
.fsw.away:not(.open){transform:translateY(80px);opacity:0;pointer-events:none}
.fsw__tog{width:44px;height:44px;border-radius:50%;background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--line),0 6px 20px -8px rgba(22,23,29,.3);font:500 15px/1 var(--f-text);transition:box-shadow .3s ease-out,transform .2s ease-out}
.fsw__tog:hover{box-shadow:0 0 0 1px var(--ink),0 6px 20px -8px rgba(22,23,29,.3)}
.fsw__tog:active{transform:scale(.94)}
.fsw__body{display:flex;align-items:center;gap:2px;height:44px;padding:0 4px 0 16px;border-radius:999px;background:#fff;box-shadow:0 0 0 1px var(--line),0 6px 20px -8px rgba(22,23,29,.3)}
.fsw__body[hidden]{display:none}
.fsw__l{font:500 12px/1 var(--f-text);letter-spacing:.1em;text-transform:uppercase;color:var(--ink2);margin-right:8px;white-space:nowrap}
.fsw__body button[data-font]{height:36px;padding:0 12px;border-radius:999px;font:400 15px/1 var(--f-text);color:var(--ink);transition:background-color .3s ease-out,color .3s ease-out}
.fsw__body button[data-font]:hover{background:var(--surf)}
.fsw__body button[aria-pressed="true"]{background:var(--ink)!important;color:#fff}
.fsw__x{width:36px;height:36px;display:grid;place-items:center;border-radius:50%}
.fsw__x svg{width:10px;height:10px;stroke:var(--ink);stroke-width:1.4;fill:none}
.fsw__x:hover{background:var(--surf)}
.fsw.open .fsw__tog{display:none}
.menu-open .fsw,.sheet-open .fsw,.lock .fsw{opacity:0;pointer-events:none}

.mmenu{display:none}
html.lock,html.lock body{overflow:hidden}

/* ================= menší desktop ================= */
@media (max-width:1359px){
  :root{--pad:48px}
  .h2{font-size:48px}
  .step{gap:0 56px}
  .about__in{gap:64px;grid-template-columns:380px minmax(0,1fr)}
  .rev__in{grid-template-columns:320px minmax(0,1fr);gap:48px}
  .book__in{gap:56px}
  .price__in{gap:56px}
  .grid--kos{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ================= stohovaný hero + tablet (< 1200) ================= */
@media (max-width:1199px){
  .hero{display:flex;flex-direction:column;min-height:0;padding:128px var(--pad) 72px}
  .hero__text{display:contents}
  .hero__label{order:1}
  .h1{order:2;max-width:none}
  .hero__perex{order:3}
  .hero__cta{order:4}
  .hero__fan{order:5;position:relative;inset:auto;height:var(--fan-h,330px);margin:56px calc(var(--pad) * -1) 0;pointer-events:auto}
  .hero__rating{order:6;margin-top:36px}
  .d-only{display:none}
  .m-only{display:inline}
  .cat__head{flex-direction:column;align-items:flex-start;gap:28px}
  .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .step,.step--r{grid-template-columns:120px minmax(0,1fr) 320px;gap:0 40px}
  .step--r{grid-template-columns:120px 320px minmax(0,1fr)}
  .step__n{width:120px;height:120px;font-size:72px}
  .step__ph{width:320px}
  .rev__in{grid-template-columns:1fr}
  .rev__sticky{position:static}
  .about__in{grid-template-columns:1fr}
  .about__b{left:0}
  .book__in{grid-template-columns:1fr}
  .contact__in{grid-template-columns:1fr;gap:40px}
  .price__in{grid-template-columns:1fr;gap:48px}
  .hov--3{max-width:none}
  .ftr__in{grid-template-columns:1fr}
}

/* ================= mobilní lišta + menu (< 1100) ================= */
@media (max-width:1099px){
  .hdr__nav,.hdr__cta,.hdr__tel span{display:none}
  .hdr__body,.hdr.is-scrolled .hdr__body{max-width:none;height:64px;padding:0 8px 0 16px;transform:none;border-radius:0;background:rgba(255,255,255,.97);box-shadow:none;transition:box-shadow .3s ease-out}
  .hdr.is-scrolled .hdr__body{box-shadow:0 1px 0 var(--line)}
  .hdr__logo{width:150px}
  .hdr__right{gap:0}
  .hdr__tel{width:44px;height:44px;justify-content:center}
  .hdr__tel svg{width:20px;height:20px}
  .hdr__menu{display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 10px 0 8px;font:500 13px/1 var(--f-text);letter-spacing:.08em;text-transform:uppercase}
  .burger{position:relative;width:22px;height:10px;display:block}
  .burger i{position:absolute;left:0;right:0;height:1.5px;background:var(--ink);transition:transform .3s var(--e-out),top .3s var(--e-out)}
  .burger i:nth-child(1){top:0}.burger i:nth-child(2){top:8.500px}
  .menu-open .burger i:nth-child(1){top:4px;transform:rotate(45deg)}
  .menu-open .burger i:nth-child(2){top:4px;transform:rotate(-45deg)}
  .mmenu{display:flex;flex-direction:column;justify-content:space-between;position:fixed;inset:0;z-index:55;background:#fff;padding:96px 24px calc(28px + env(safe-area-inset-bottom));overflow:auto;opacity:0;visibility:hidden;transition:opacity .3s ease-out,visibility 0s linear .3s}
  .menu-open .mmenu{opacity:1;visibility:visible;transition:opacity .3s ease-out}
  .menu-open .hdr__body{background:#fff;box-shadow:none}
  .mmenu__nav{display:flex;flex-direction:column}
  .mmenu__nav a{display:flex;align-items:center;min-height:60px;font:300 36px/1.1 var(--f-head);border-bottom:1px solid var(--line);opacity:0;transform:translateY(16px);transition:opacity .5s var(--e-out),transform .5s var(--e-out)}
  .mmenu__nav a span{position:relative;display:inline-block}
  .mmenu__nav a i{position:absolute;left:0;right:0;bottom:-6px;height:9px;color:var(--gold)}
  .menu-open .mmenu__nav a{opacity:1;transform:none}
  .menu-open .mmenu__nav a:nth-child(2){transition-delay:.04s}.menu-open .mmenu__nav a:nth-child(3){transition-delay:.08s}.menu-open .mmenu__nav a:nth-child(4){transition-delay:.12s}.menu-open .mmenu__nav a:nth-child(5){transition-delay:.16s}.menu-open .mmenu__nav a:nth-child(6){transition-delay:.2s}
  .mmenu__nav a:active{opacity:.6}
  .mmenu__foot{display:flex;flex-direction:column;gap:14px;margin-top:32px}
  .mmenu__tel{font-size:28px;font-weight:500;min-height:44px;display:inline-flex;align-items:center}
  .mmenu__foot .btn{width:100%}
  html{scroll-padding-top:76px}
}

/* ================= mobil (< 760) ================= */
@media (max-width:759px){
  :root{--pad:16px}
  body{font-size:17px}
  .h1{font-size:44px;line-height:1}
  .h2{font-size:36px;line-height:1.08}
  .h3{font-size:28px}
  .lead{font-size:17px}
  .sec{padding:80px 0}
  .sec__head--c{margin-bottom:48px;text-align:left}
  .hero{padding:84px var(--pad) 44px}
  .hero__label{margin-bottom:10px}
  .hero__perex{font-size:17px;line-height:1.5;margin-top:16px}
  .hero__cta{margin-top:18px;gap:6px 36px;padding-left:20px;flex-wrap:wrap}
  .hero__cta .link{display:none}
  .hero__fan{margin-top:20px}
  .hero__rating{margin-top:20px;padding-left:10px}
  .rating__num{font-size:48px}
  .rating{gap:12px}
  .rating__txt{font-size:13px}
  .cat{padding-top:64px}
  .cat__head{margin-bottom:20px;gap:22px}
  .tabs{display:flex;max-width:calc(100% + 32px);margin:0 -16px;padding:4px 16px;background:none;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;gap:8px;border-radius:0;align-self:stretch}
  .tabs::-webkit-scrollbar{display:none}
  .tabs__bg{display:none}
  .tab{scroll-snap-align:start;box-shadow:inset 0 0 0 1px var(--line);flex:none;padding:0 16px}
  .tab[aria-selected="true"]{background:var(--ink);color:#fff;box-shadow:none}
  .tab[aria-selected="true"] .cnt{color:rgba(255,255,255,.7)}
  /* filtry = spodní list */
  #panel-saty .fbar{order:0;border-top:0;padding-top:0;justify-content:space-between;margin-bottom:16px;gap:12px;flex-wrap:wrap}
  .fbar__open{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 20px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--ink);font:500 15px/1 var(--f-text)}
  .fbar__open svg{width:20px;height:20px;stroke:var(--ink);stroke-width:1.4;fill:none}
  .fbar__open:active{transform:scale(.97)}
  .fbar__open .num:not(:empty){display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:12px;background:var(--ink);color:#fff;font-size:15px}
  .fbar__clear{order:3;flex-basis:100%;justify-content:flex-start}
  .fsheet-scrim{display:block;position:fixed;inset:0;z-index:74;background:rgba(22,23,29,.32);opacity:0;visibility:hidden;transition:opacity .3s ease-out,visibility 0s linear .3s}
  .filters{position:fixed;left:0;right:0;bottom:0;z-index:75;display:flex;flex-direction:column;gap:22px;max-height:86dvh;overflow:auto;overscroll-behavior:contain;background:#fff;border-radius:18px 18px 0 0;border-top:0;padding:8px 16px calc(16px + env(safe-area-inset-bottom));transform:translateY(105%);visibility:hidden;transition:transform .4s var(--e-panel),visibility 0s linear .4s;box-shadow:0 -20px 60px -20px rgba(22,23,29,.3)}
  .sheet-open .filters{transform:none;visibility:visible;transition:transform .4s var(--e-panel)}
  .sheet-open .fsheet-scrim{opacity:1;visibility:visible;transition:opacity .3s ease-out}
  .filters__top{display:flex;align-items:center;justify-content:space-between;position:sticky;top:-8px;background:#fff;z-index:3;padding:8px 0 6px;margin-bottom:-6px;font-size:17px}
  .filters__top strong{font-weight:500}
  .filters__foot{display:block;position:sticky;bottom:-16px;background:#fff;padding:10px 0 16px;margin-bottom:-16px;z-index:3}
  .filters__foot .btn{width:100%}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 12px}
  .item__no{font-size:18px}
  .item__r1{flex-direction:column;gap:2px;margin-top:12px}
  .item__pop{font-size:15px;min-height:0}
  .item__tags{font-size:12px;letter-spacing:.08em}
  .item--rev{grid-column:1/-1;flex-direction:row}
  .item--rev .item__ph{flex:0 0 42%;aspect-ratio:3/4}
  .item--rev .rv__b{padding:18px 16px}
  .item--rev .quote{font-size:28px;line-height:1.2}
  .cat__more{margin-top:40px}
  .grid--kos{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}
  .kos__head{flex-direction:column;align-items:flex-start;gap:16px;padding:20px 0 24px}
  .druz{grid-template-columns:1fr;padding:28px 20px;gap:32px}
  .steps-sec{padding-bottom:72px}
  .step,.step--r{grid-template-columns:72px minmax(0,1fr);gap:0 12px;align-items:start}
  .step+.step{margin-top:64px}
  .step__n{width:72px;height:72px;font-size:56px;margin-left:-8px}
  .step__txt{order:2!important;padding-top:10px;max-width:none}
  .step__ph,.step--r .step__ph{order:3;grid-column:2;width:100%;margin-top:24px;padding:8px}
  .step__q{margin-top:22px;padding-top:20px}
  .step__act{gap:8px 24px}
  .price{padding:72px 0}
  .price__big{font-size:56px}
  .ptab li{padding:18px 0}
  .ptab b{font-size:18px}
  .rev__num{font-size:48px}
  .wall{grid-template-columns:1fr}
  .rcard__b{padding:22px 20px 18px}
  .rcard__more{opacity:1;transform:none}
  .about{padding-top:24px}
  .about__ph{padding-bottom:0;display:flex;flex-direction:column;gap:12px;margin-top:8px}
  .about__a,.about__b{position:static;width:100%;max-width:none;padding:8px;box-shadow:none}
  .about__a .ph__in,.about__b .ph__in{aspect-ratio:16/10}
  .brands{padding-top:24px}
  .brands__head{flex-direction:column;gap:6px}
  .hov--5,.hov--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hov__c{height:136px}
  .hov__bg{display:none}
  .lg--32 svg{height:27px}.lg--mo svg{height:25px}.lg--be svg{height:34px}.lg--hp svg{height:36px}.lg--40 svg{height:45px}.lg--sh svg{height:48px}.lg--72 svg{height:72px}.lg--du svg{height:81px}
  .book__in{display:flex;flex-direction:column;gap:0}
  .book__l{display:contents}
  .book__l .h2{order:1}
  .ticks{order:2;margin-top:24px}
  .form{order:3;margin:32px -16px 0;border-radius:0;padding:32px 16px 36px}
  .book__tel{order:4;margin-top:40px}
  .book__tel a{font-size:28px;min-height:44px;display:inline-flex;align-items:center}
  .book__q{order:5;margin-top:36px;grid-template-columns:112px minmax(0,1fr);gap:16px;align-items:center}
  .book__ph{padding:6px}
  .book__q .quote{font-size:28px;line-height:1.2}
  .frow--2{grid-template-columns:1fr;gap:0}
  .form__send{flex-direction:column;align-items:stretch;gap:14px}
  .sendwrap,.btn--send{width:100%}
  .form.is-sent .sendwrap{width:auto;align-self:center}
  .form.is-sent .btn--send{width:auto;padding:0 40px}
  .btn--send{padding:0 16px}
  .form__send .small{max-width:none;text-align:center}
  .contact{padding-top:16px}
  .contact__ph{padding:8px}
  .contact__ph .ph__in{aspect-ratio:16/10}
  .clist li{grid-template-columns:1fr;gap:4px}
  .ftr{padding:64px 0 96px}
  .ftr__in{gap:48px}
  .ftr__logo{height:96px}
  .ftr__cols{grid-template-columns:1fr;gap:36px}
  .ftr__bot{margin-top:48px;flex-direction:column;gap:6px}
  .ftr__consent{padding-right:0}
  /* detail přes celé okno */
  .detail{inset:0;top:0;left:0;width:100%;height:100dvh;flex-direction:column;border-radius:0;overflow:auto;overscroll-behavior:contain;box-shadow:none}
  .detail__img{height:auto;width:100%;aspect-ratio:5/6;border-radius:0;flex:none}
  .detail__img > img{object-position:50% 20%}
  .detail__side{width:100%;overflow:visible;flex:none;border-radius:0}
  .detail .content{height:auto;padding:28px 16px calc(40px + env(safe-area-inset-bottom));overflow:visible}
  .detail__no{font-size:40px}
  .detail__hint{display:none}
  .detail__x{position:fixed;right:12px;top:12px}
  .detail__nav{position:fixed;left:0;right:0;bottom:0;width:auto;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -1px 0 var(--line)}
  .lens{cursor:default}
  .rpanel{width:100%;padding:76px 20px 40px}
  .fsw{left:12px;bottom:12px}
  .fsw__l{display:none}
  .fsw__body{padding-left:6px}
  .fsw__body button[data-font]{padding:0 9px}
}
@media (max-width:359px){
  .h1{font-size:40px}
  .hero__cta{gap:20px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}
  .js [data-rv],.js .ph .ph__in img,.js .h1,.js .hero__perex,.js .hero__cta,.js .hero__rating,.js .hero__label,.js .reveal-h{opacity:1;transform:none}
  .js .about__b .ph__in img{transform:scale(1.16)}
  .js .about__a .ph__in img{transform:scale(1.12)}
  .js .ftr__figura path{fill-opacity:1;stroke-width:0}
  .lens__layer{display:none}
}
.detail:focus,.rpanel:focus,.form__ok:focus{outline:none}

/* v8: přepínač písma nadpisů (druhý řádek nad písmem textu) */
.fsw__body--h{position:absolute;left:0;bottom:52px;display:none}
.fsw.open .fsw__body--h{display:flex}
.fsw__body--h{padding-right:8px}
.fsw__body button[data-head]{height:36px;padding:0 12px;border-radius:999px;font:400 15px/1 var(--f-text);color:var(--ink);white-space:nowrap;transition:background-color .3s ease-out,color .3s ease-out}
.fsw__body button[data-head]:hover{background:var(--surf)}
@media (max-width:759px){.fsw__body--h,.fsw__body{max-width:calc(100vw - 32px);overflow-x:auto}}
.fsw__body button[data-head][aria-pressed="true"]{color:#fff}

svg.tahnote{max-width:none;z-index:1}

/* v9: tahy ve stylu v1-B po celém webu */
.steps__svg path.steps__tah{fill:var(--gold);stroke:none}
.link__graphic{display:none!important}
.link{position:relative}
.tahbox{position:absolute;left:0;right:0;bottom:-7px;height:9px;color:var(--gold);pointer-events:none;display:block}
.tahbox--fld{left:0;right:0;bottom:-5px;height:10px}
.input--madoka{position:relative}
.graphic--madoka{stroke:var(--line)!important}
.ticks li::before{border:0!important;transform:none!important;width:18px!important;height:16px!important;left:2px!important;top:18px!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 15'%3E%3Cpath fill='%23A87C0A' d='M1 7.6c1.7 1.2 3.1 2.8 4.2 4.7C7.7 7.5 10.7 3.8 15 1c-3.5 3.7-6.300 7.900-8.500 12.700-.5 1-1.900 1.100-2.500.1C3.100 12 2 9.800 1 7.600z'/%3E%3C/svg%3E") no-repeat center/contain}

/* v11 (předěláno): rozložení kroků zpět jako ve v9 (čísla vlevo, stejné šířky a rozestupy); mění se jen tah – stužka */

/* v12: odkaz „Všech 146 recenzí na Googlu“ zpět jako ve v8 (kreslená linka Codrops) */
.link--v8 .link__graphic{display:block!important}

/* v13: „Objednat zkoušku“ v hlavičce = podtržení štětcovým tahem z druhé verze kreseb (v9–v11), ne vlnitá linka Osmo */

/* v13: míchání karet v katalogu – karta má při letu bílý podklad a stín, texty přes sebe neprosvítají */
.item,.kitem{position:relative;background:var(--bg);will-change:auto}
html.is-shuffling .item,html.is-shuffling .kitem{pointer-events:none}
html.is-shuffling .grid,html.is-shuffling .panel{overflow:visible}

/* v13: karty při přemístění odjíždějí mimo stránku – nesmí vzniknout vodorovný posuvník */
html.is-shuffling #saty{overflow-x:clip}

/* v16: detail šatů – tmavá clona (zbytek webu ustoupí, fotka svítí) a větší fotka přes skoro celou výšku okna */
.dscrim{background:rgba(12,13,17,.82)}
@media (min-width:760px){
  .detail{height:min(92vh,920px);top:calc((100vh - min(92vh,920px)) / 2);box-shadow:0 40px 120px -30px rgba(0,0,0,.6)}
}

/* v16: lupa pryč */
#dHint{display:none!important}
#lens{cursor:default}

/* v16: detail – fotka se při otevírání vykresluje rovnou v plné velikosti (jinak se zvětšuje malý rastr a na konci „doskočí“ do ostra) */
.detail,.detail__img{will-change:transform}

/* v16: zarovnání – bílé políčko aktivní kategorie bylo o 4 px níž (top 4px + posun z JS); nápis loga v hlavičce na osu s navigací */
.tabs__bg{top:0}
.hdr__logo svg{display:block}


/* v16: logo v hlavičce v rozložení z jejího webu (nápis výš vůči figuře, větší mezera mezi slovy) – širší, aby písmo nebylo menší */
.hdr__logo{width:236px}
@media (min-width:1100px){.hdr.is-scrolled .hdr__logo{width:206px}.hdr.is-scrolled .hdr__body{max-width:1010px}}
@media (min-width:1200px){.hdr__logo{width:280px}.hdr.is-scrolled .hdr__logo{width:240px}.hdr.is-scrolled .hdr__body{max-width:1080px}}
@media (max-width:1099px){.hdr__logo{width:216px}}

/* v24 (15.10.): klientka chce jen filtr podle velikosti – ostatní skupiny skryté */
.fgroup[data-group="silueta"],.fgroup[data-group="vrsek"],.fgroup[data-group="material"]{display:none}
.filters{grid-template-columns:minmax(0,1fr)}

/* v26: „Prodej i zapůjčení“ velkým pod nadpisem katalogu; panel věnečku bez citace (jeden sloupec) */
.cat__deal{margin:10px 0 0;font:300 clamp(28px,2.6vw,42px)/1.1 var(--f-head);color:var(--gold);letter-spacing:-.005em}
.cat__deal + .cat__perex{margin-top:14px}
.druz--solo{grid-template-columns:minmax(0,1fr)}
.druz--solo .druz__txt{max-width:36em}
