/* === Airy rozšíření nad v06 designem (drží Fresh Emerald + Manrope) === */

/* Empatie / teze · klidný vzdušný blok */
.quiet{padding:78px 0}
.quiet .wrap{max-width:840px;text-align:center}
.quiet .micro{margin-bottom:22px}
.quiet-lead{font-size:clamp(22px,2.5vw,31px);line-height:1.5;letter-spacing:-.035em;color:#3a1f22;font-weight:600;margin:0}
.quiet-lead b{color:var(--deep)}

/* Centrovaný intro nad sekcemi */
.section-intro{max-width:740px;margin:0 auto 54px;text-align:center}
.section-intro .micro{margin-bottom:16px}
.section-intro h2{font-size:clamp(32px,4vw,52px);line-height:1.04;letter-spacing:-.06em;margin:0;color:#2A181D}
.section-intro p{font-size:16px;line-height:1.7;color:#695A60;max-width:560px;margin:14px auto 0}

/* Číslovaný tag + zvýrazněný bod u důvodu */
.story-head .dtag{display:inline-flex;align-items:center;margin-bottom:14px;background:rgba(255,255,255,.12);color:#F3D7DC;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:8px 13px;font-size:12px;font-weight:900;letter-spacing:.02em}
.reason-point{display:inline-flex;align-items:center;gap:10px;margin-top:22px;background:var(--soft);color:var(--deep);border:1px solid var(--mint);border-radius:999px;padding:11px 16px;font-weight:850;font-size:14px}
.reason-point::before{content:"✓";flex:0 0 auto;width:20px;height:20px;border-radius:50%;background:var(--ed);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900;line-height:1}
.scene-grid + .scene-grid{margin-top:30px}

/* 7 dalších · lehké stacked řádky s řezanými UI výřezy (žádné těžké karty) */
.feat-rows{max-width:760px;margin:14px auto 0}
.frow{position:relative;display:flex;align-items:center;justify-content:center;gap:44px;min-height:154px;padding:32px 8px}
/* Horní dělící čára každého řádku (animovaná); gradient mizící na obou koncích */
.frow::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(to right,transparent,var(--line) 16%,var(--line) 84%,transparent)}
/* Uzavírací čára pod poslední (7.) položkou */
.feat-rows::after{content:"";display:block;height:1px;background:linear-gradient(to right,transparent,var(--line) 16%,var(--line) 84%,transparent)}
.ftext{position:relative;z-index:2;flex:0 1 360px;max-width:360px}
/* Velké jemné číslo s tečkou jako vodoznak za prvním písmenem titulku (stejně jako 3 důvody) */
.fbignum{position:absolute;left:0;top:-18px;transform:translate(-70%,-30%);z-index:0;font-size:clamp(64px,7vw,86px);line-height:1;font-weight:900;letter-spacing:-.05em;color:rgba(197,92,99,.20);pointer-events:none;user-select:none}
.ftext strong,.ftext p{position:relative;z-index:1}
.ftext strong{display:block;font-size:clamp(18px,1.9vw,21px);letter-spacing:-.03em;color:#2A181D;line-height:1.18;margin-bottom:6px}
.ftext p{margin:0;font-size:14px;line-height:1.55;color:#6F5F66;max-width:340px}
/* UI výřez vedle textu: čisté karty ve stejném stylu jako .cmd nahoře (bez fade) */
.fcut{position:relative;flex:0 0 300px;width:300px;z-index:1;pointer-events:none}
/* Úvodní animace: nejdřív připluje zprava horní čára, hned po ní výřez (oba z větší dálky) */
.js .frow::before{transform:translateX(100px);opacity:0;transition:opacity .45s ease,transform .55s cubic-bezier(.22,.61,.36,1)}
.js .frow.slid::before{transform:none;opacity:1}
.js .fcut{opacity:0;transform:translateX(100px);transition:opacity .5s ease,transform .66s cubic-bezier(.22,.61,.36,1)}
.js .frow.slid .fcut{opacity:1;transform:none;transition-delay:.14s}
@media(prefers-reduced-motion:reduce){.js .frow::before,.js .fcut{opacity:1;transform:none;transition:none}}
/* Úvodní animace · Přechod (3 kroky): vyskočí zespodu s lehkým „pop“ overshoot, kaskádovitě */
.js #prechod .step{opacity:0;transform:translateY(32px) scale(.95);transition:opacity .5s ease,transform .62s cubic-bezier(.34,1.3,.5,1)}
.js #prechod .steps.cards-in .step{opacity:1;transform:none}
.js #prechod .steps.cards-in .step:nth-child(2){transition-delay:.12s}
.js #prechod .steps.cards-in .step:nth-child(3){transition-delay:.24s}
/* Úvodní animace · Český nástroj (4 karty): 3D vyklopení nahoru, kaskádovitě */
.js #cesky .cp{opacity:0;transform:perspective(900px) rotateX(-11deg) translateY(22px);transform-origin:center top;transition:opacity .5s ease,transform .6s cubic-bezier(.22,.61,.36,1)}
.js #cesky .czech-points.cards-in .cp{opacity:1;transform:none}
.js #cesky .czech-points.cards-in .cp:nth-child(2){transition-delay:.1s}
.js #cesky .czech-points.cards-in .cp:nth-child(3){transition-delay:.2s}
.js #cesky .czech-points.cards-in .cp:nth-child(4){transition-delay:.3s}
@media(prefers-reduced-motion:reduce){.js #prechod .step,.js #cesky .cp{opacity:1;transform:none;transition:none}}
/* Telefon: kontejnery „Uděláme to za vás" naskáčou zleva (místo pop), kaskádovitě pod sebou */
@media(max-width:760px){.js #prechod .step{transform:translateX(-60px)}}
.fcard{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 30px rgba(30,23,27,.06);padding:13px 15px}
/* 1 · připomínky */
.ntf{display:flex;gap:11px;align-items:flex-start}
.appic{flex:0 0 30px;width:30px;height:30px;border-radius:9px;overflow:hidden;display:grid;place-items:center}
.appic img{width:100%;height:100%;display:block}
.ntf-top{display:flex;align-items:center;gap:7px}
.ntf-app{font-size:12.5px;color:#2A181D;font-weight:900;letter-spacing:-.01em}
.ntf-app span{color:#9F404D}
.ntf-cat{font-size:11px;color:#8a968f;font-weight:700;position:relative;padding-left:9px}
.ntf-cat::before{content:"·";position:absolute;left:1px;color:#c2cbc7}
.ntf-msg{display:block;margin-top:3px;font-size:12px;line-height:1.35;color:#4a3a3c;font-weight:600}
.okc svg{display:block}
.chips3{display:flex;gap:6px;margin-top:9px;padding-left:2px}
.chips3 span{font-size:10.5px;font-weight:900;color:var(--deep);background:var(--soft);border:1px solid var(--mint);border-radius:999px;padding:4px 9px}
/* 2 · platby */
.pay{display:flex;gap:11px;align-items:center}
.okc{flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--mint);color:var(--deep);display:flex;align-items:center;justify-content:center;line-height:0;font-weight:900;font-size:14px}
.pay div b{display:block;font-size:13px;color:#2A181D;font-weight:900}
.pay div span{display:block;font-size:12px;color:#695A60;margin-top:2px}
.fcard.pay{display:flex;align-items:center;gap:11px;width:100%;height:auto;padding:13px 15px;border-radius:16px}   /* „Zaplaceno online" sjednotit s ostatními kartami i na desktopu (přebít leak z footer .pay — inline-flex/9px/height:34px) */
/* 3 · logo a barvy */
.brandbar{display:flex;gap:9px;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:11px}
.brandlogo{width:26px;height:26px;border-radius:8px;overflow:hidden;display:grid;place-items:center}
.brandlogo img{width:100%;height:100%;display:block}
.brandbar b{font-size:13px;color:#2A181D;font-weight:900}
/* Barevný posuvník s jezdcem → „barvy si nastavíte úplně přesně“ */
.brand-slider{position:relative;height:16px;margin-top:5px;border-radius:999px;background:linear-gradient(to right,#ef4444,#f59e0b,#fde047,#C55C63,#0ea5e9,#7c3aed,#ec4899);box-shadow:inset 0 1px 2px rgba(0,0,0,.16)}
.bs-knob{position:absolute;top:50%;left:32%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;background:#f4ab00;border:3px solid #fff;box-shadow:0 3px 9px rgba(90,60,0,.32),0 0 0 1px rgba(0,0,0,.06)}
/* 4 · google kalendář */
.gcal{display:flex;gap:11px;align-items:center}
.gcal .glogo{flex:0 0 22px}
.gcal-body{flex:1}
.gcal-body b{display:block;font-size:13px;color:#2A181D;font-weight:900}
.gcal-body span{display:block;font-size:11.5px;color:#695A60;margin-top:2px}
.syncpill{flex:0 0 auto;width:24px;height:24px;border-radius:50%;background:var(--mint);color:var(--deep);display:grid;place-items:center;font-weight:900;font-size:12px}
/* 5 · pracovní doba */
/* mini týdenní pohled: sloupec = den + blok (výška = délka pracovní doby), So bez bloku */
.weekmini{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}
.wday{display:flex;flex-direction:column;gap:6px}
.wday>span{font-size:10px;font-weight:900;color:var(--deep);background:var(--soft);border:1px solid var(--mint);border-radius:6px;padding:2px 0;text-align:center;letter-spacing:.02em}
.wtrack{position:relative;height:58px;border-radius:7px;background:#f9f7f7;border:1px solid #f1eeee}
.wbar{position:absolute;left:3px;right:3px;top:3px;height:calc(var(--h) - 6px);min-height:9px;border-radius:5px;background:#fdeccd;border-left:3px solid #f3b64b}
/* 6 · přehledy */
.bars{display:flex;align-items:flex-end;gap:7px;height:46px;margin-bottom:11px}
.bars i{flex:1;height:var(--h);border-radius:5px 5px 3px 3px;background:linear-gradient(180deg,#D07981,#C55C63)}
.bars i:last-child{background:linear-gradient(180deg,#C55C63,#8A3644)}
.kpis{display:flex;gap:18px}
.kpis span{font-size:11px;color:#7c8a85;font-weight:700}
.kpis b{display:block;font-size:15px;color:#2A181D;font-weight:900;letter-spacing:-.02em}
/* 7 · video */
.vthumb{position:relative;height:96px;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:0 12px 30px rgba(43,27,44,.14)}
.vthumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.vthumb::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(0,0,0,.5),transparent 52%)}
.vplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.94);color:#8A3644;display:grid;place-items:center;font-size:14px;padding-left:3px;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.vlen{position:absolute;right:8px;top:8px;z-index:2;background:rgba(0,0,0,.6);color:#fff;font-size:10px;font-weight:900;border-radius:6px;padding:2px 6px}
.yt-logo{position:absolute;left:8px;top:8px;z-index:2;line-height:0;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}
.yt-logo svg{display:block;width:26px;height:18px}
.vtitle{position:absolute;left:10px;right:10px;bottom:8px;z-index:2;color:#fff;font-size:12px;font-weight:900;text-shadow:0 1px 4px rgba(0,0,0,.5);line-height:1.2}
/* Dostupnost · nadpis na jeden řádek, zelené názvy obchodů */
#zarizeni .section-intro{max-width:none}
#zarizeni .section-intro h2{font-size:clamp(26px,3.5vw,42px);white-space:nowrap}
.store-hl{color:#9F404D;white-space:nowrap}
@media(max-width:720px){#zarizeni .section-intro h2{white-space:normal;font-size:clamp(32px,4vw,52px)}}
/* Dostupnost · foto zařízení + texty + store badge */
.device-photo{max-width:700px;margin:0 auto;transform:translateX(-50px)}
@media(max-width:720px){.device-photo{transform:translateX(-20px)}}   /* mobil: jemný posun (z desktop -50). MUSÍ být ZA základním pravidlem, jinak ho přebije */
.device-photo img{width:100%;height:auto;display:block}
.device-line{margin-top:18px;display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;font-weight:800;font-size:clamp(15px,1.8vw,19px);letter-spacing:-.025em;color:#2A181D;text-align:center}
.device-line .dl-sep{color:var(--e)}
@media(max-width:560px){.device-line{flex-direction:column;gap:9px}.device-line .dl-sep{display:none}}   /* telefon: 3 fráze (.dl) pod sebe, tečky (.dl-sep) pryč (jinak se ošklivě lámaly) */
.store-badges{display:flex;gap:14px;justify-content:center;flex-wrap:nowrap;margin-top:40px}
.store-badge{display:inline-flex;align-items:center;gap:11px;height:56px;padding:0 20px;background:#1E171B;color:#fff;border-radius:13px;box-shadow:0 14px 32px rgba(30,23,27,.18);transition:transform .2s ease,box-shadow .2s ease}
.store-badge:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(30,23,27,.24)}
.sb-ico{width:23px;height:26px;flex:0 0 auto;color:#fff}
.sb-txt{display:flex;flex-direction:column;line-height:1.04;text-align:left}
.sb-txt small{font-size:10px;font-weight:600;letter-spacing:.01em;opacity:.86}
.sb-txt b{font-size:18px;font-weight:800;letter-spacing:-.01em}
@media(max-width:560px){.store-badges{flex-wrap:wrap}.store-badge{padding:0 16px}}
/* „Sklapnutí rukou": App Store zleva, Google Play zprava, potkají se uprostřed (jen mobil, první nájezd; scope #zarizeni ať nesáhne na patičku) */
@media(max-width:760px){
  .js #zarizeni .store-badge{opacity:0;transition:transform .6s cubic-bezier(.5,.03,.18,1),opacity .5s ease}
  .js #zarizeni .store-badge:nth-child(1){transform:translateX(-130px)}
  .js #zarizeni .store-badge:nth-child(2){transform:translateX(130px)}
  .js #zarizeni .store-badges.clap .store-badge{opacity:1;transform:none}
}
@media(prefers-reduced-motion:reduce){.js #zarizeni .store-badge{opacity:1;transform:none;transition:none}}
/* Klíčové číslo „5" v nepravidelné rotující bublině (sekce 5 dalších) */
.five-num{position:relative;display:inline-grid;place-items:center;width:1.5em;height:1.5em;margin:0 .06em;isolation:isolate;color:#fff;font-weight:900;font-size:1.05em;line-height:1;vertical-align:middle}
.five-blob{position:absolute;z-index:-1;inset:-2px;background:linear-gradient(140deg,#D07981 0%,#C55C63 48%,#8A3644 100%);border-radius:30% 70% 58% 42% / 44% 34% 66% 56%;box-shadow:0 12px 28px rgba(43,27,44,.24)}
@keyframes blobSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.five-blob{animation:none}}
#funkce .section-intro{max-width:none}
#funkce .section-intro h2{font-size:clamp(28px,3.6vw,44px)}
/* Spotlight: klientská appka (rebooking) */
.spotlight{position:relative;overflow:hidden;display:flex;align-items:center;background:linear-gradient(135deg,#FFF3F5 0%,#ffffff 52%,#f6dadd 100%);border:1px solid rgba(197,92,99,.16);border-radius:36px;padding:54px;min-height:480px;box-shadow:0 22px 70px rgba(43,27,44,.09)}
.spot-eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--deep);margin-bottom:22px}
.spot-copy{position:relative;z-index:2;max-width:54%}
.spot-copy h2{font-size:clamp(30px,3.6vw,46px);line-height:1.08;letter-spacing:-.05em;color:#2A181D;margin:0 0 24px}
.spot-copy h2 .hl{color:#9F404D}
.spot-copy p{font-size:16px;line-height:1.72;color:#695A60;max-width:430px;margin:0}
.spot-copy .reason-point{margin-top:30px}
.spot-art{position:absolute;top:0;right:0;bottom:0;width:42%;z-index:1;overflow:hidden}
.spot-art img{position:absolute;left:0;top:-16%;width:100%;height:132%;object-fit:cover;object-position:center 50%;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.42) 24%,rgba(0,0,0,.86) 44%,#000 58%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.42) 24%,rgba(0,0,0,.86) 44%,#000 58%)}
@media(max-width:900px){.spotlight{padding:32px 24px;min-height:0;flex-direction:column;align-items:stretch}.spot-copy{max-width:none}.spot-art{position:relative;width:auto;height:320px;margin:10px -24px -32px;border-radius:0 0 35px 35px;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.5) 16%,#000 38%);mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.5) 16%,#000 38%)}.spot-art img{object-position:center 36%;-webkit-mask-image:none;mask-image:none}}

/* Oba světy · slim disclaimer „aplikace je volitelná“ · přitažený ke spotlightu, parallax přes něj */
.disclaimer-wrap{padding:0 0 86px;margin-top:-58px;position:relative;z-index:6}
.disclaimer{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px 26px;box-shadow:0 22px 50px rgba(43,27,44,.12);will-change:translate}
@media(max-width:900px){.disclaimer-wrap{margin-top:-80px;padding-bottom:36px}}
.disc-ic{flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--mint);color:var(--deep);display:flex;align-items:center;justify-content:center}
.disclaimer p{margin:0;font-size:16px;line-height:1.62;color:#695A60}
.disclaimer p b{color:#2A181D;font-weight:900}

/* Přechod · barevný pás na pozadí (rozbíjí řadu bílých sekcí), rozšířený nahoru i dolů */
#prechod{position:relative;padding:186px 0}
@media(max-width:760px){#prechod{padding:104px 0}}
#prechod::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  radial-gradient(60% 55% at 12% 16%,rgba(197,92,99,.13),transparent 60%),
  radial-gradient(54% 50% at 90% 84%,rgba(229,167,174,.18),transparent 62%),
  linear-gradient(180deg,#f8edee,#f4e3e5 52%,#f8edee);
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 9%,#000 91%,transparent);
  mask-image:linear-gradient(to bottom,transparent,#000 9%,#000 91%,transparent)}

/* Migrace · světlé kroky */
.steps.light{grid-template-columns:repeat(3,1fr)}
.steps.light .step{background:#fff;border:1px solid var(--line);color:#2A181D;box-shadow:0 14px 40px rgba(30,23,27,.05);backdrop-filter:none}
.steps.light .step strong{color:#2A181D}
.steps.light .step p{color:#6F5F66}
.steps.light .no{background:var(--mint);color:var(--deep)}
.steps.light .mini-ui{background:var(--soft);color:var(--deep)}
@media(max-width:760px){.steps.light{grid-template-columns:1fr;gap:16px}}   /* telefon: 3 karty pod sebe (jinak je base .steps.light drží ve 3 sloupcích i na mobilu = nečitelné) */
.center-cta{text-align:center;margin-top:34px}
/* Přechod · DIY proužek (self-import přes šablonu) pod 3 kroky */
.import-note{position:relative;z-index:5;display:flex;align-items:center;gap:15px;max-width:840px;margin:36px auto 0;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 22px;box-shadow:0 18px 44px rgba(43,27,44,.10);will-change:translate}
.import-ic{flex:0 0 32px;width:32px;height:32px;border-radius:10px;background:var(--soft);border:1px solid var(--mint);color:var(--deep);display:flex;align-items:center;justify-content:center}
.import-ic svg{width:18px;height:18px;display:block}
.import-note p{margin:0;font-size:14px;line-height:1.55;color:#695A60}
.import-note p b{color:#2A181D;font-weight:900}
@media(max-width:760px){.import-note{align-items:flex-start;max-width:300px;background:linear-gradient(135deg,#FFF3F5,#ffffff 55%,#f6dadd);border-color:rgba(197,92,99,.24)}}   /* telefon: 4. kontejner užší než ty tři + zelený gradient = odliší se, parallax ho při scrollu přejede přes ně */
/* Přechod · menší otázka nahoře + zvýrazněná zelená pointa s odstupem */
.ph-setup{display:block;font-size:1em;font-weight:800;letter-spacing:-.02em;color:#2A181D;line-height:1.12;margin-bottom:.36em}
.ph-punch{display:block;color:#9F404D}
.steps.light .step .step-cta{display:inline-flex;align-items:center;gap:8px;margin-top:22px;height:44px;padding:0 18px;border-radius:999px;background:var(--ink);color:#fff;font-weight:900;font-size:13px;box-shadow:0 12px 26px rgba(30,23,27,.16);transition:transform .2s ease,box-shadow .2s ease}
.steps.light .step .step-cta:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(30,23,27,.22)}
.steps.light .step .step-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.steps.light .step .chip-pill{display:inline-flex;align-items:center;border-radius:999px;background:var(--soft);color:var(--deep);border:1px solid var(--mint);padding:9px 13px;font-size:12px;font-weight:900;line-height:1}
.steps.light .step .chip-pill.link{transition:background .2s ease,color .2s ease,border-color .2s ease}
.steps.light .step .chip-pill.link{gap:7px;padding-right:15px}
.steps.light .step .chip-pill.link:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.chip-arrow{display:inline-block;font-weight:900;animation:chipArrow 1.3s ease-in-out infinite}
@keyframes chipArrow{0%,100%{transform:translateX(0);opacity:.65}50%{transform:translateX(4px);opacity:1}}
@media(prefers-reduced-motion:reduce){.chip-arrow{animation:none}}

/* Český nástroj · lehké body */
.czech-points{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:6px}
.czech-points .cp{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 12px 38px rgba(30,23,27,.045);position:relative;overflow:hidden}
.czech-points .cp strong{display:block;font-size:17px;letter-spacing:-.03em;color:#2A181D;margin-bottom:8px;line-height:1.2}
.czech-points .cp p{margin:0;font-size:13.5px;line-height:1.6;color:#6F5F66}
.czech-points .cp>*{position:relative;z-index:1}
.czech-points .cp::after{content:"✓";position:absolute;right:4px;bottom:-16px;z-index:0;font-size:92px;font-weight:900;line-height:1;color:var(--mint);pointer-events:none}   /* odškrtávací fajfka na pozadí kartičky */
.czech-claim{margin-top:72px;text-align:center;font-size:clamp(23px,3vw,34px);font-weight:800;letter-spacing:-.05em;color:var(--deep)}
#cesky{padding-bottom:36px}   /* claim posunut dolů (blíž k recenzi), méně mrtvého místa pod ním */
/* === Reference / testimonial · teplý krémový panel (rozbíjí řadu nadpisů před ceníkem) === */
.testimonial{position:relative;display:grid;grid-template-columns:1fr 340px;gap:44px;align-items:center;max-width:880px;margin:0 auto;background:linear-gradient(135deg,#fdf4e8,#fcecd6);border:1px solid #f6e2c8;border-radius:34px;padding:44px 48px;box-shadow:0 24px 70px rgba(180,120,40,.10)}
.tm-quote{display:block;font-family:Georgia,"Times New Roman",serif;font-size:68px;line-height:1;color:#f0a44e;font-weight:900;margin:-10px 0 0;height:auto;overflow:visible}
.tm-text{font-size:clamp(20px,2.2vw,27px);line-height:1.42;letter-spacing:-.02em;color:#3a2e22;font-weight:600;margin:0 0 26px}
.tm-hl{color:#df8a3a;font-weight:800}
.tm-author{display:flex;align-items:center;gap:13px}
.tm-avatar{flex:0 0 48px;width:48px;height:48px;border-radius:50%;background:linear-gradient(140deg,#3B2136,#C55C63);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:15px;letter-spacing:.02em}
.tm-who b{display:block;font-size:15px;color:#2a2118;font-weight:900}
.tm-who span{font-size:13.5px;color:#9a8568}
.tm-photo{position:relative}
.tm-photo img{display:block;width:100%;height:auto;aspect-ratio:71/100;object-fit:cover;object-position:center;border-radius:24px;box-shadow:0 20px 50px rgba(120,80,30,.18)}
@media(max-width:840px){.testimonial{grid-template-columns:1fr;gap:26px;padding:32px 26px;max-width:520px}.tm-photo img{aspect-ratio:71/100;max-width:300px;margin:0 auto}}

/* AI chat karta (art u důvodu 2) */
.ai-chat{position:absolute;left:50%;top:24px;transform:translateX(-50%);width:340px;background:#21090b;border-radius:32px;padding:24px;box-shadow:var(--shadow)}
.ai-chat .bub{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#f6dddf;border-radius:16px;padding:13px 15px;margin:11px 0;font-size:13px;font-weight:700;line-height:1.45}
.ai-chat .bub.me{background:#FFF3F5;color:#3B2136;margin-left:34px}
/* Seznam hlasových příkazů (Důvod 2) */
.cmd-list{position:relative;width:min(470px,100%);display:grid;gap:12px;z-index:3}
.cmd{display:flex;gap:13px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px 17px;box-shadow:0 12px 32px rgba(30,23,27,.06)}
.cmd-no{flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:var(--mint);color:var(--deep);display:grid;place-items:center;font-weight:900;font-size:13px;margin-top:2px}
.cmd strong{display:block;font-style:italic;font-size:16px;line-height:1.4;color:#2A181D;letter-spacing:-.01em}
.cmd-res{display:block;margin-top:7px;font-size:13px;line-height:1.45;color:#7c8a99;font-weight:600}
@media(max-width:900px){.cmd-list{width:100%}}

/* Ceník · světlý čistý blok */
.pricebox{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:34px;padding:42px;box-shadow:0 22px 70px rgba(43,27,44,.08)}
.pricebox .big{font-size:clamp(44px,5vw,64px);font-weight:900;letter-spacing:-.05em;color:#2A181D;line-height:1}
.pricebox .big small{font-size:18px;color:#695A60;font-weight:700;letter-spacing:0}
.pricebox .sub{color:#695A60;line-height:1.62;margin:14px 0 24px;max-width:380px}
.checklist{display:grid;gap:12px}
.checklist .ck{display:flex;gap:10px;align-items:flex-start;color:#4A3A42;font-weight:600;font-size:14px;line-height:1.4}
.checklist .ck:before{content:"✓";flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--mint);color:var(--deep);display:grid;place-items:center;font-weight:900;font-size:12px}
/* === Ceník · emoční fotopruh + volitelná rozšíření === */
#cenik .section-intro{margin-bottom:32px}
.price-photo{position:relative;width:100%;height:300px;border-radius:28px;overflow:hidden;box-shadow:0 24px 60px rgba(43,27,44,.14);margin:0 0 30px}
.price-photo img{position:absolute;left:0;top:-20%;width:100%;height:140%;object-fit:cover;object-position:center 42%;will-change:translate}
.price-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(43,27,44,0) 42%,rgba(43,27,44,.55) 100%)}
.price-photo-line{position:absolute;left:30px;bottom:24px;z-index:2;color:#fff;font-weight:900;font-size:clamp(18px,2.2vw,25px);letter-spacing:-.03em;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.pb-note{display:block;margin-top:13px;font-size:13px;color:#7c8a85;font-weight:600}
.ck-star{color:var(--ed);font-weight:800}
.price-notes{margin-top:18px}
.price-notes p{margin:5px 0;font-size:13px;line-height:1.55;color:#6b7b75}
.price-notes .ck-star{margin-right:4px}
.addons{margin-top:42px}
.addons-head{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.addons-head span{font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--deep)}
.addons-head::after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--line),transparent)}
.addons-lead{margin:-6px 0 22px;font-size:14.5px;line-height:1.6;color:#6F5F66;max-width:560px}
.addon-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.addons-single .addons-lead{text-align:center;max-width:560px;margin:0 auto 22px}
.addons-single .addon-grid{grid-template-columns:1fr;max-width:560px;margin:0 auto}
.addon{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 14px 40px rgba(30,23,27,.05);overflow:hidden;transition:box-shadow .25s ease}
.addon.open{box-shadow:0 22px 54px rgba(43,27,44,.12)}
.addon-sum{display:flex;align-items:center;gap:15px;width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:22px 24px;font:inherit;color:inherit}
.addon-ic{flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:var(--soft);border:1px solid var(--mint);color:var(--deep);display:flex;align-items:center;justify-content:center}
.addon-ic svg{width:21px;height:21px;display:block}
.addon-head{flex:1;min-width:0}
.addon-head strong{display:block;font-size:17px;letter-spacing:-.03em;color:#2A181D;line-height:1.2}
.addon-sub{display:block;font-size:13px;color:#7c8a85;margin-top:4px;line-height:1.4}
.addon-price{flex:0 0 auto;font-size:19px;font-weight:900;letter-spacing:-.02em;color:#2A181D;white-space:nowrap}
.addon-price small{font-size:11px;color:#8a968f;font-weight:700;margin-left:2px}
.addon-arrow{flex:0 0 auto;width:22px;height:22px;color:var(--deep);display:flex;align-items:center;justify-content:center;transition:transform .32s ease}
.addon-arrow svg{width:20px;height:20px;display:block}
.addon.open .addon-arrow{transform:rotate(180deg)}
.addon-body{max-height:0;overflow:hidden;transition:max-height .42s cubic-bezier(.4,0,.2,1)}
.addon.open .addon-body{max-height:360px}
.addon-body-in{padding:18px 24px 22px;border-top:1px solid var(--line)}
.addon-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.addon-list li{position:relative;padding-left:25px;font-size:14px;line-height:1.5;color:#695A60}
.addon-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--deep);font-weight:900;font-size:13px}
.addon-fee{margin-top:15px;font-size:12.5px;line-height:1.5;color:#7c8a85;background:var(--soft);border:1px solid var(--mint);border-radius:12px;padding:11px 13px}
.addon-fee strong{color:var(--deep)}
@media(max-width:760px){
  .addon-grid{grid-template-columns:1fr}.price-photo{height:230px}
  /* addon hlavička: nadpis přes celý řádek, pod ním podnápis vlevo + cena vpravo dole (cena a šipka absolutně, ať se nadpis roztáhne) */
  .addon-sum{position:relative;align-items:flex-start;padding:20px 22px 22px}
  .addon-head{padding-right:24px}
  .addon-sub{padding-right:84px}
  .addon-price{position:absolute;right:22px;bottom:18px}
  .addon-arrow{position:absolute;right:22px;top:24px}
}
/* === FAQ · akordeon === */
.faq-list{max-width:760px;margin:0 auto;display:grid;gap:12px}
.faq{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 24px rgba(30,23,27,.04);overflow:hidden;transition:box-shadow .3s ease,background-color .35s ease,border-color .35s ease}
.faq.open{background:linear-gradient(180deg,#faf0f1,#f8eaeb);border-color:#e7bcc0;box-shadow:0 18px 44px rgba(43,27,44,.10)}
.faq-q{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:18px 22px;font:inherit;font-size:16px;font-weight:800;letter-spacing:-.02em;color:#2A181D;line-height:1.3;transition:color .25s ease}
.faq.open .faq-q{color:var(--deep)}
.faq-arrow{flex:0 0 auto;width:22px;height:22px;color:var(--deep);display:flex;align-items:center;justify-content:center;transition:transform .35s cubic-bezier(.33,1,.68,1)}
.faq-arrow svg{width:20px;height:20px;display:block}
.faq.open .faq-arrow{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .42s cubic-bezier(.33,1,.68,1)}
.faq.open .faq-a{max-height:240px}
.faq-a-in{padding:0 22px 20px;font-size:14.5px;line-height:1.65;color:#695A60;opacity:0;transform:translateY(-8px);transition:opacity .3s ease,transform .35s cubic-bezier(.33,1,.68,1)}
.faq.open .faq-a-in{opacity:1;transform:none;transition-delay:.08s}
.faq-a-in a{color:var(--ed);text-decoration:underline;text-underline-offset:2px;font-weight:600}
.faq-q-main{display:flex;flex-direction:column;gap:5px;min-width:0}
.faq-q-note{font-weight:600;font-size:13px;color:#5e6d68;letter-spacing:-.01em}
.faq-points{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:11px}
.faq-points li{position:relative;padding-left:25px;font-size:14.5px;line-height:1.6;color:#695A60}
.faq-points li::before{content:"✓";position:absolute;left:0;top:1px;color:var(--deep);font-weight:900;font-size:13px}
.faq-points strong{color:#2A181D;font-weight:800}

/* FAQ · otázky se při scrollu postupně vysypou zespoda nahoru (stagger). Animace (ne transition), ať se nepere s rozbalováním accordionu. */
.js .faq-list .faq{opacity:0}
.js .faq-list.faqs-in .faq{animation:faqUp .55s cubic-bezier(.22,.61,.36,1) both}
@keyframes faqUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
.js .faq-list.faqs-in .faq:nth-child(2){animation-delay:.06s}
.js .faq-list.faqs-in .faq:nth-child(3){animation-delay:.12s}
.js .faq-list.faqs-in .faq:nth-child(4){animation-delay:.18s}
.js .faq-list.faqs-in .faq:nth-child(5){animation-delay:.24s}
.js .faq-list.faqs-in .faq:nth-child(6){animation-delay:.30s}
.js .faq-list.faqs-in .faq:nth-child(7){animation-delay:.36s}
.js .faq-list.faqs-in .faq:nth-child(8){animation-delay:.42s}
.js .faq-list.faqs-in .faq:nth-child(9){animation-delay:.48s}
.js .faq-list.faqs-in .faq:nth-child(10){animation-delay:.54s}
@media(prefers-reduced-motion:reduce){.js .faq-list .faq{opacity:1}.js .faq-list.faqs-in .faq{animation:none}}
/* === Závěrečný banner · tmavý, s fotkou v pravé třetině === */
.cta-box{position:relative;overflow:hidden;border-radius:36px;border:1px solid rgba(197,92,99,.35);padding:60px 64px;background:radial-gradient(120% 95% at 14% -12%,rgba(229,167,174,.34),transparent 56%),linear-gradient(140deg,#A94A57,#9F404D 50%,#9F404D);box-shadow:0 30px 80px rgba(138,54,68,.30)}
.cta-box:after{display:none!important}
.cta-copy{position:relative;z-index:2;max-width:60%}
.cta-box h2{color:#fff;font-size:clamp(32px,4.1vw,50px);line-height:1.05;letter-spacing:-.05em;margin:0 0 14px;max-width:600px}
.cta-box .cta-lead{font-size:clamp(18px,2vw,24px);font-weight:800;letter-spacing:-.025em;color:#fff;margin:0 0 14px}
.cta-box .cta-sub{color:#f7dfe1;font-size:15.5px;line-height:1.65;max-width:440px;margin:0 0 26px}
.cta-box .actions{position:relative;z-index:2}
.cta-primary{background:#fff;color:#4A222B;box-shadow:0 14px 34px rgba(36,21,33,.26)}
.cta-primary:hover{background:#fdf5f6}
.cta-ghost{background:rgba(255,255,255,.10);color:#fff;border:1px solid rgba(255,255,255,.55);box-shadow:none}
.cta-ghost:hover{background:rgba(255,255,255,.18)}
.cta-note{display:block;position:relative;z-index:2;margin-top:16px;font-size:13px;color:#eecdd0}
.cta-art{position:absolute;top:0;right:0;bottom:0;width:40%;z-index:1;overflow:hidden}
.cta-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 28%;-webkit-mask-image:linear-gradient(to right,transparent 0,rgba(0,0,0,.35) 24%,#000 58%);mask-image:linear-gradient(to right,transparent 0,rgba(0,0,0,.35) 24%,#000 58%)}
@media(max-width:900px){.cta-box{padding:38px 28px}.cta-copy{max-width:none}.cta-art{position:relative;width:auto;height:300px;margin:6px -28px -38px;border-radius:0 0 34px 34px}.cta-art::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,#9F404D 0%,#9F404D 6%,rgba(159,64,77,0) 56%);pointer-events:none}.cta-art img{object-position:center 36%;-webkit-mask-image:none;mask-image:none}}

/* Footer */
/* === Robustní patička === */
.foot{padding:60px 0 28px;border-top:1px solid var(--line);background:#faf6f6;color:#695A60;font-size:14px}
.foot .wrap{display:block}
.foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px}
.foot-brand .fb{display:flex;gap:10px;align-items:center;font-weight:900;color:#2A181D;font-size:19px}
.foot-brand .fb img{width:30px;height:30px;border-radius:9px}
.foot-brand .fb span span{color:var(--ed)}
.foot-brand>p{margin:16px 0 20px;font-size:14px;line-height:1.65;color:#6F5F66;max-width:280px}
.foot-brand>p b{color:#2A181D;font-weight:900}
.foot-stores{display:flex;gap:10px;flex-wrap:wrap}
.foot-stores .store-badge{height:48px;padding:0 16px;box-shadow:0 8px 22px rgba(30,23,27,.14)}
.foot-stores .store-badge:hover{transform:translateY(-2px)}
.foot-stores .sb-txt b{font-size:15px}
.foot-col h3{font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#94a3a0;margin:0 0 16px}
.foot-col a,.foot-col span{display:block;font-size:14.5px;color:#695A60;margin-bottom:11px;line-height:1.4}
.foot-col a{transition:color .2s ease}
.foot-col a:hover{color:var(--deep)}
.foot-col .foot-strong{font-weight:900;color:#2A181D}
.foot-col .foot-cta{color:var(--ed);font-weight:800}
.foot-mid{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;padding:24px 0;border-top:1px solid var(--line)}
.foot-pay{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.foot-pay-label{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#94a3a0}
.pay{display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 12px;background:#fff;border:1px solid var(--line);border-radius:9px;font-weight:900;font-size:13px;color:#1E171B;box-shadow:0 4px 12px rgba(30,23,27,.05)}
.pay svg{display:block}
.pv-visa{color:#1434cb;font-style:italic;letter-spacing:.04em;font-size:14px}
.foot-stripe{display:flex;align-items:center;gap:8px;font-size:13.5px;color:#695A60}
.foot-stripe svg{color:var(--deep);flex:0 0 auto}
.foot-stripe b{color:#2A181D}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;color:#8a968f}
.foot-made .heart{color:#e11d48}
@media(max-width:860px){.foot-top{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:560px){
  .foot-top{grid-template-columns:1fr}.foot-mid,.foot-bottom{flex-direction:column;align-items:flex-start}
  .foot .wrap{padding-left:14px}                          /* obsah patičky lehce odsazený od levého kraje (ne nalepený, ale ne moc) */
  .foot-pay{gap:7px;align-items:flex-start}
  .foot-pay-label{flex-basis:100%;margin-bottom:9px}      /* „Akceptujeme" na vlastní řádek nad logy */
  .foot-pay .pay{padding:0 9px}                            /* loga kompaktnější, ať Visa/MC/Apple/Google Pay sednou na jeden řádek */
}

@media(max-width:900px){
  .czech-points{grid-template-columns:1fr 1fr}
  .pricebox{grid-template-columns:1fr;padding:30px}
  .ai-chat{position:relative;left:auto;top:auto;transform:none;width:100%}
}
@media(max-width:760px){
  .frow{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:16px;overflow:visible;min-height:0;padding:34px 0}
  .ftext,.ftext p{flex:none;max-width:none}
  .fbignum{left:24px;top:-12px;transform:translateY(-26%)}        /* číslo viditelné (zrušen posun mimo obrazovku vlevo) */
  .ftext strong,.ftext p{padding-left:80px}                        /* nadpis + popis začínají cca ve čtvrtině obrazovky; číslo prosvítá vlevo */
  .fcut{flex:none;width:100%;max-width:262px;margin-left:80px;-webkit-mask-image:none;mask-image:none}  /* karta sjede pod text, zarovnaná s ním */
  .fcard.pay{display:flex;width:100%;border-radius:16px;height:auto;min-height:64px;padding:12px 18px;gap:13px}   /* „Zaplaceno online“: zrušit leak z footer .pay (řádek 322 — inline-flex zúžil kartu, radius 9px) → plná šířka a stejné rohy 16px jako ostatní karty; výška na úroveň Google kalendáře */
}
@media(max-width:560px){ .czech-points{grid-template-columns:1fr 1fr;gap:12px} .czech-points .cp{padding:18px 15px;border-radius:18px} }   /* telefon: 2×2 místo sloupce pod sebou (text je krátký, vejde se) */

/* === HERO · full-screen foto, černý text vlevo (světlý overlay) === */
.hero.hero-photo{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;padding:0;overflow:hidden;background:#eee7e8}
.hero.hero-photo:before,.hero.hero-photo:after{display:none!important}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;transform-origin:50% 0%;transform:scale(1.12);z-index:0}
.hero-bg-m{display:none}   /* mobilní portrétní verze hero fotky, zapnutá na <=760px (viz @media) */
.hero-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,255,255,.60) 0%,rgba(255,255,255,.28) 30%,rgba(255,255,255,0) 58%)}
/* výřez masérky (rembg, lícuje 1:1 s .hero-bg) — kapsle se z-indexem 2 se schová ZA ni, ostatní (z-index 4) zůstanou před ní */
.hero-fg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;transform-origin:50% 0%;transform:scale(1.12);z-index:3;pointer-events:none}
/* Floating skleněné UI kapsle v heru (vypouklé sklo, ořezané z bílého pozadí přes rembg = průhledné okolo), zmenšené o 25 % — parallax různými rychlostmi = 3D hloubka */
.hero-cap{position:absolute;z-index:4;pointer-events:none;height:auto;will-change:translate,transform}
.cap-voice{top:48%;right:26%;width:clamp(210px,19vw,300px);animation:capFloat 6s ease-in-out infinite}   /* přední (před masérkou): hlasová akce, vedle textu; pomalejší než text */
.cap-cal{top:34%;right:calc(2% + 35px);width:clamp(185px,16vw,245px);z-index:2;animation:capFloat 7.6s ease-in-out -2.4s infinite}   /* ZA masérkou (z-index 2 < výřez 3): doprava, ale o 35px zpět doleva (víc za paži); jen kousíček za paží; úplně pomalu, spíš dolů */
.cap-map{bottom:6%;right:4%;width:clamp(175px,16vw,235px);animation:capFloat 6.8s ease-in-out -4s infinite}   /* přední: karta klienta (čtvercová mapa těla), vpravo dole; rychlost = jako hero text */
@keyframes capFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(prefers-reduced-motion:reduce){.hero-cap{animation:none!important}}
.cap-m{display:none}   /* kapsle u přechodu hero→#proc: jen mobil (viz @media ≤760) */
.hero.hero-photo .wrap{position:relative;z-index:5}
.hero-photo .hero-copy{width:60%;max-width:620px;padding:0}
.hero-photo h1{color:#1E171B;text-shadow:0 1px 0 rgba(255,255,255,.35)}
.hero-photo .hero-copy p{color:#302425}
.btn.outline{background:rgba(255,255,255,.55);color:var(--ink);border:1px solid rgba(30,23,27,.2);box-shadow:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
@media(max-width:900px){
  .hero.hero-photo{min-height:100svh}   /* fotka vyplní viewport telefonu; svh = stabilní výška (žádný reflow/zoom při scrollu, na rozdíl od dvh) */
  .hero-photo .hero-copy{width:100%;max-width:none;padding-left:30px;padding-right:14px}
  .hero-bg{object-position:35% 28%;transform:scale(1.16)}
  .hero-veil{background:linear-gradient(180deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,.2) 42%,rgba(255,255,255,.55) 100%)}
  .hero-cap,.hero-fg{display:none}   /* mobil zatím skryté, doladíme potom */
}
/* Full-bleed hero na telefonu: zelené pozadí pod safe-area/overscroll (žádné bílé okraje nad/pod) + nav pod notch */
@media(max-width:760px){html{background:#2B1B2C}}
/* Tablet NA VÝŠKU: landscape foto se ořízne na střed → masérka vypadne. Posun ořezu doprava na ni; pryč bílý wash overlay (→ jemné ztmavení vlevo + bílý text jako na mobilu); 2 plovoucí kapsle (voice+kalendář), occlusion výřez i mapa skryté. */
@media(min-width:761px) and (max-width:1024px) and (orientation:portrait){
  .hero-bg{object-position:72% 50%;transform:scale(1)}
  .hero-fg,.cap-map{display:none}
  .hero-veil{background:linear-gradient(98deg,rgba(36,19,24,.34),rgba(36,19,24,.08) 46%,transparent 68%)}
  .hero.hero-photo h1 .hl{color:#D07981;text-shadow:0 2px 20px rgba(0,0,0,.5),0 1px 3px rgba(0,0,0,.5)}
  .hero.hero-photo h1 .ln2{color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.55),0 1px 3px rgba(0,0,0,.5)}
  .hero-photo .hero-copy p{color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.7),0 1px 3px rgba(0,0,0,.55)}
  .hero-cap.cap-voice,.hero-cap.cap-cal{display:block}
  .cap-voice{top:calc(18% + 100px);left:auto;right:calc(6% + 300px);width:clamp(170px,22vw,215px)}            /* diktování: 300px doleva, 100px dolů */
  .cap-cal{top:calc(56% - 160px);right:auto;left:calc(33% + 360px);width:clamp(150px,19vw,190px);z-index:3}    /* kalendář: 360px doprava, 160px nahoru */
  /* === Sekce jako na telefonu: nadpis NAD grafikou (Důvody 1 & 3) + odsazení za číslo + kroky přechodu pod sebe === */
  .r1 .copy{order:-1;margin-top:30px}
  .r3 .copy{order:-1}
  .r1 .reason-num,.r2 .reason-num,.r3 .reason-num{left:2px;top:-60px}
  .r1 .copy h2,.r2 .copy h2,.r3 .copy h2{padding-left:50px}
  .r1 .copy p,.r2 .copy p,.r3 .copy p{padding-left:90px}
  .r3 .mocks{min-height:440px;margin-top:44px}
  .r3 .mock.tablet{width:64%}
  .r3 .mock.phone{width:26%;bottom:20px}
  .steps.light{grid-template-columns:1fr;gap:16px}
}
@media(max-width:900px){.nav{top:calc(8px + env(safe-area-inset-top))}}
/* Mobilní zalomení podnadpisu (na desktopu schované) */
.br-m{display:none}
@media(max-width:760px){.br-m{display:inline}}
/* Telefon: místo landscape hero fotky portrétní ořez (masérka vpravo nahoře vidět ostře) */
@media(max-width:760px){
  .hero-bg{display:none}
  /* fotka zvětšená (overflow nahoru/dolů) → má kam jezdit při pomalém parallaxu, aniž by se odkryl okraj */
  .hero-bg-m{display:block;position:absolute;left:0;top:-4%;width:100%;height:108%;object-fit:cover;object-position:62% 50%;z-index:0}
  .hero.hero-photo{align-items:center}   /* mobil: text vertikálně na střed */
  .hero-photo .hero-copy{transform:translateY(6vh)}   /* mírně pod střed */
  /* varianta D: fotka zůstane čistá, kontrast drží stín textu + jemné ztmavení vlevo */
  .hero-veil{background:linear-gradient(94deg,rgba(36,19,24,.30),rgba(36,19,24,.06) 42%,transparent 64%)}
  .hero.hero-photo h1 .hl{color:#D07981;text-shadow:0 2px 20px rgba(0,0,0,.55),0 1px 3px rgba(0,0,0,.5)}
  .hero.hero-photo h1 .ln2{color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.6),0 1px 3px rgba(0,0,0,.55)}
  .hero-photo .hero-copy p{color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.72),0 1px 3px rgba(0,0,0,.6)}
  /* frosted „frozen glass" pill u sekundárního tlačítka */
  .hero .actions .btn.outline{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.5);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4)}
  /* Telefon: hero kapsle z heru pryč (overflow:hidden je ořezával). Náhrada: kapsle žijí v #proc → neořezané, leží ZA kartou „V diáři" (nižší z-index) a při scrollu vyjedou zpod ní, nad bílým okrajem */
  .hero-cap.cap-voice,.hero-cap.cap-cal{display:none}
  #proc{position:relative}
  #proc .intro-compose{position:relative;z-index:3}
  .cap-m{display:block;position:absolute;z-index:2;pointer-events:none;height:auto;animation:capFloat 7s ease-in-out infinite}
  .cap-cal-m{left:9%;top:-84px;width:clamp(120px,34vw,148px)}
  .cap-voice-m{right:18%;top:-66px;width:clamp(135px,38vw,165px)}
}

/* Hero nadpis: „Vy masírujete." zeleně, menší font · odstavec · animované CTA */
.hero-photo h1{font-size:clamp(44px,5.2vw,72px);line-height:1}
.hero-photo h1 .hl{display:block;color:#9F404D}
.hero-photo h1 .ln2{display:block;color:#1E171B;font-size:.6em;letter-spacing:-.04em;margin-top:.05em}
/* Had okolo tlačítka, obecný (funguje na hero CTA i na navigační „Spustit aplikaci") */
@property --snakeA{syntax:"<angle>";inherits:false;initial-value:0deg}
.run{position:relative;z-index:0;overflow:hidden;--snakeA:0deg}
.run::before{content:"";position:absolute;z-index:-2;left:50%;top:50%;width:260%;height:260%;transform:translate(-50%,-50%);background:conic-gradient(from var(--snakeA),transparent 0 70%,#D07981 79%,#FFF3F5 86%,#E5A7AE 90%,transparent 96%);animation:snakeSpin 2.8s linear infinite}
.run::after{content:"";position:absolute;z-index:-1;inset:3px;border-radius:999px;background:var(--ink)}
.btn.run{animation:btnPulse 3s ease-in-out infinite}
.try.run{animation:glowPulse 2.2s ease-in-out infinite}      /* pulzující stín i v liště (bez scale, ať neskáče layout) */
.fly-cta{animation:none!important;pointer-events:none}        /* letící klon: vypnout pulz, ať se nepere s přejezdem */
.js .nav .try{opacity:0;pointer-events:none;transition:opacity .3s ease}   /* v hero žádné CTA v liště; objeví se až po dosednutí zleva */
.js .nav .try.run{opacity:1;pointer-events:auto}
/* CTA „Spustit aplikaci" dvouřádkové: hlavní text + lehký podnadpis 14 dní zdarma */
.cta-stack{flex-direction:column;justify-content:center;gap:1px;line-height:1.05}
.cta-stack .l1{font-weight:900}
.cta-stack .l2{font-weight:700;color:#e79fa6;letter-spacing:.01em;white-space:nowrap}
.try.cta-stack{padding:0 16px}
.try.cta-stack .l1{font-size:12.5px}
.try.cta-stack .l2{font-size:9px}
.btn.cta-stack .l1{font-size:14px}
.btn.cta-stack .l2{font-size:10.5px}
/* Mobilní burger + vysypání chipsů s kotvami (one-pager nav, jen <=900px; desktop má .links) */
.nav-burger{display:none}
.nav-chips{display:none}
@media(max-width:900px){
  .nav .try{margin-left:auto}   /* links zmizely -> přitlačí CTA + burger doprava */
  .nav-burger{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:44px;height:44px;flex:0 0 auto;border:0;cursor:pointer;border-radius:999px;background:var(--ink);margin-left:8px;padding:0}
  .nav-burger span{display:block;width:18px;height:2px;border-radius:2px;background:#fff;transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .2s ease}
  .nav-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .nav-burger[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(0)}
  .nav-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .nav-chips{display:flex;align-items:flex-start;justify-content:center;gap:10px;width:calc(100% - 20px);max-width:440px;margin:11px auto 0;padding:13px 14px;border-radius:26px;pointer-events:none;background:transparent;box-shadow:0 0 0 rgba(30,23,27,0);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);transition:background .38s ease,box-shadow .38s ease,-webkit-backdrop-filter .38s ease,backdrop-filter .38s ease}
  .nav-links{flex:1 1 auto;min-width:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,46px);gap:9px;align-items:center}
  .nav-chips .nav-links a{display:flex;align-items:center;justify-content:center;padding:7px 6px;font-size:11px;white-space:nowrap}
  .nav-stores{flex:0 0 auto;display:flex;flex-direction:column;gap:9px}
  .nav-chips a{opacity:0;transform:translateY(-12px) scale(.88);background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(248,231,234,.8);border-radius:999px;padding:10px 16px;font-size:13px;font-weight:850;color:#2A181D;box-shadow:0 12px 30px rgba(30,23,27,.12);transition:opacity .3s ease,transform .42s cubic-bezier(.34,1.56,.64,1)}
  .nav.chips-open .nav-chips{pointer-events:auto;background:rgba(250,243,245,.72);box-shadow:0 16px 40px rgba(30,23,27,.1);-webkit-backdrop-filter:blur(12px) saturate(1.05);backdrop-filter:blur(12px) saturate(1.05)}
  .nav.chips-open .nav-chips a{opacity:1;transform:none}
  .nav-chips a.nav-store{width:46px;height:46px;padding:0;border-radius:50%;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(30,23,27,.22)}
  .nav-chips a.nav-store svg{height:23px;width:auto;display:block}
  .nav.chips-open .nav-links a:nth-child(1){transition-delay:.04s}
  .nav.chips-open .nav-links a:nth-child(2){transition-delay:.08s}
  .nav.chips-open .nav-links a:nth-child(3){transition-delay:.12s}
  .nav.chips-open .nav-links a:nth-child(4){transition-delay:.16s}
  .nav.chips-open .nav-links a:nth-child(5){transition-delay:.20s}
  .nav.chips-open .nav-links a:nth-child(6){transition-delay:.24s}
  .nav.chips-open .nav-stores a:nth-child(1){transition-delay:.10s}
  .nav.chips-open .nav-stores a:nth-child(2){transition-delay:.16s}
}
@keyframes snakeSpin{to{--snakeA:360deg}}
@keyframes btnPulse{0%,100%{transform:scale(1);box-shadow:0 14px 34px rgba(30,23,27,.18),0 0 0 0 rgba(197,92,99,.5)}50%{transform:scale(1.045);box-shadow:0 18px 40px rgba(30,23,27,.24),0 0 0 14px rgba(197,92,99,0)}}
@keyframes glowPulse{0%,100%{box-shadow:0 8px 22px rgba(30,23,27,.18),0 0 0 0 rgba(197,92,99,.55)}50%{box-shadow:0 8px 22px rgba(30,23,27,.18),0 0 0 12px rgba(197,92,99,0)}}
@media(prefers-reduced-motion:reduce){.run,.run::before,.btn.run,.try.run{animation:none}}
section[id]{scroll-margin-top:90px}
#proc{padding-bottom:74px}
/* Mesh gradient pozadí úvodní sekce (Stripe styl) */
#proc::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  radial-gradient(58% 48% at 12% 16%, rgba(197,92,99,.20), transparent 60%),
  radial-gradient(54% 46% at 90% 22%, rgba(229,167,174,.26), transparent 62%),
  radial-gradient(52% 50% at 78% 88%, rgba(208,121,129,.18), transparent 60%),
  radial-gradient(48% 46% at 16% 90%, rgba(240,205,212,.24), transparent 60%),
  radial-gradient(60% 55% at 50% 45%, rgba(255,251,235,.5), transparent 72%);
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 15%,#000 82%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0,#000 15%,#000 82%,transparent 100%)}
/* Důvod 01 · svislý tok se šipkami */
.art.flow-art{min-height:auto;display:flex;align-items:center;justify-content:center;padding:10px 0}
.flow{position:relative;z-index:2;display:grid;gap:0;width:360px;max-width:100%;margin:0 auto}
.flow-card{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px 18px;box-shadow:0 14px 40px rgba(30,23,27,.06)}
.flow-card .fno{flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--mint);color:var(--deep);display:grid;place-items:center;font-weight:900;font-size:14px}
.flow-card strong{display:block;font-size:16px;letter-spacing:-.02em;color:#2A181D;margin-bottom:8px;line-height:1.2}
.flow-arrow{display:flex;justify-content:center;color:var(--e);font-size:22px;font-weight:900;line-height:1;padding:9px 0}
.fchip{display:inline-block;border-radius:12px;background:var(--soft);color:var(--deep);padding:7px 12px;font-size:11px;font-weight:900}
.fchip.red{background:#fef2f2;color:#dc2626}
.fchip.green{background:#f7e1e3;color:#8A3644}
/* Úvod pod hero · dvojbox s překryvem (zelený nepřekrývá text, parallax 3D) */
.intro-compose{position:relative;max-width:960px;margin:0 auto;padding-bottom:46px;isolation:isolate}
/* (orby nahrazeny mesh gradientem na pozadí sekce #proc) */
.ic-main{width:86%;position:relative;overflow:hidden;display:flex;align-items:center;min-height:300px;background:linear-gradient(135deg,rgba(255,243,245,.82) 0%,rgba(255,255,255,.74) 58%,rgba(242,227,231,.82) 100%);border:1px solid rgba(255,255,255,.7);border-radius:30px;padding:48px 52px 62px;box-shadow:0 24px 70px rgba(43,27,44,.10),inset 0 1px 0 rgba(255,255,255,.7);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);will-change:transform}
.ic-main p{margin:0;position:relative;z-index:2;max-width:410px;font-size:clamp(17px,1.95vw,21px);line-height:1.5;color:#5a4648;font-weight:500}
.ic-head{margin:0;font-size:clamp(24px,2.8vw,34px);line-height:1.12;letter-spacing:-.04em;font-weight:800;color:var(--deep)}
.ic-main .ic-sub{margin:12px 0 0;font-size:clamp(16px,1.7vw,19px);line-height:1.4;color:#2A181D;font-weight:600}
.ic-text{position:relative;z-index:2;max-width:400px}
.ic-photo{position:absolute;right:0;top:-100%;height:210%;width:42%;z-index:1;object-fit:cover;object-position:40% 50%;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.45) 22%,#000 44%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.45) 22%,#000 44%)}
/* #proc dvojbox: na mobilu zachováváme překryv (řeší @media 840 níže) */
.ic-main .ic-line2{margin-top:13px}
.ic-bridge{position:absolute;right:0;bottom:-24px;width:44%;background:radial-gradient(120% 80% at 18% -10%,rgba(255,255,255,.22),transparent 52%),linear-gradient(140deg,#C55C63,#8A3644);color:#fff;border-radius:26px;padding:28px 32px;box-shadow:0 50px 100px rgba(126,50,63,.40),0 18px 40px rgba(126,50,63,.26),inset 0 1px 0 rgba(255,255,255,.22);z-index:3;will-change:transform}
.ic-bridge .app-name{color:#F3D7DC}
.ic-bridge .ic-eyebrow{display:block;font-size:clamp(20px,2.2vw,27px);line-height:1.2;font-weight:800;letter-spacing:-.025em;color:#fff;margin-bottom:8px}
.ic-bridge .big-num{color:#F8E7EA;font-weight:900;font-size:1.4em;letter-spacing:-.03em}
.ic-bridge strong{display:block;font-size:clamp(18px,2vw,24px);line-height:1.25;letter-spacing:-.02em;font-weight:800}
@media(max-width:840px){
  .intro-compose{padding-bottom:78px}
  .ic-main{width:100%;display:block;min-height:0;padding:30px 24px 90px}
  .ic-main p{max-width:none}
  .ic-photo{display:block;top:-24%;height:126%;width:50%}
  .ic-bridge{position:absolute;left:auto;right:0;bottom:0;width:84%;padding:22px 24px}
}
@media(max-width:480px){
  .ic-main{padding:26px 20px 82px}
  .ic-bridge{width:91%;padding:20px 20px}
}
/* Telefon: diář NEpřes pravou půlku (kazil kontrast textu), ale jako pruh přes spodní část boxu, fade vzhůru */
@media(max-width:760px){
  .ic-main{padding:28px 22px 132px}
  .ic-text{max-width:none}
  .ic-photo{top:auto;bottom:0;left:0;right:auto;width:100%;height:58%;object-position:50% 100%;
    -webkit-mask-image:linear-gradient(to top,#000 0%,#000 20%,rgba(0,0,0,.34) 56%,transparent 85%);
            mask-image:linear-gradient(to top,#000 0%,#000 20%,rgba(0,0,0,.34) 56%,transparent 85%)}
}
/* Důvod 1 · vede benefit, pod ním punchline */
.reason-lead{margin:0 0 14px;font-size:clamp(17px,1.8vw,20px);font-weight:700;letter-spacing:-.02em;color:#9F404D;line-height:1.3}
/* Velké číslo důvodu jako jemný vodoznak v pozadí textu (parallax jinou rychlostí než odstavec) */
.scene-grid .copy{position:relative}
.copy>*{position:relative;z-index:1}
.reason-num{position:absolute;left:-72px;top:-78px;z-index:0;margin:0;font-size:clamp(150px,17vw,240px);line-height:1;font-weight:900;letter-spacing:-.06em;color:rgba(197,92,99,.22);pointer-events:none;user-select:none}
/* Chip pod obrázkem: art = sloupec [vizuál + chip]; scéna drží výšku, chip vycentrovaný pod ní */
.art-stage{position:relative;width:100%;min-height:430px;display:flex;align-items:center;justify-content:center}
/* Realistické rámečky zařízení (Důvod 3): tablet vzadu + telefon vepředu */
.devices .device{position:absolute;background:linear-gradient(160deg,#1E171B,#070a0d);border:1px solid #2C2026;box-shadow:0 30px 70px rgba(43,27,44,.22)}
.devices .screen{display:block;overflow:hidden;background:#000;line-height:0}
.devices .screen img{display:block;width:100%;height:auto}
.device.tablet{left:-8px;top:44px;width:404px;border-radius:26px;padding:11px;z-index:1;rotate:-2.5deg}
.device.tablet .screen{border-radius:15px}
.device.phone{right:-2px;bottom:2px;width:156px;border-radius:40px;padding:9px;z-index:2;rotate:4deg}
.device.phone .screen{border-radius:31px}
.device.phone .notch{position:absolute;top:15px;left:50%;transform:translateX(-50%);width:52px;height:15px;border-radius:999px;background:#070a0d;z-index:3}
@media(max-width:900px){.device.tablet{left:0;top:0;width:84%;rotate:-1.5deg}.device.phone{right:0;bottom:-12px;width:33%}}
/* Hotové mockupy zařízení (Důvod 3) — už mají rámeček i stín */
.mocks .mock{position:absolute;height:auto;display:block}
.mock.tablet{right:28px;top:48px;width:404px;z-index:1}
.mock.phone{left:-52px;top:52px;width:182px;z-index:2}
@media(max-width:900px){.mock.tablet{right:0;top:0;width:80%}.mock.phone{left:0;top:auto;bottom:-10px;width:38%}}
.art .reason-point{margin-top:36px;position:relative;z-index:8}
.section:has(.scene-grid){padding:62px 0}   /* menší whitespace mezi důvody (cca -30 %) */
@media(max-width:900px){.art-stage{min-height:360px}}
.leaf-wave{display:none}
.r2 .leaf-wave{display:block;position:absolute;right:50px;top:-52px;width:92px;height:60px;z-index:4;color:#8A3644;opacity:.5;pointer-events:none}   /* subtilní voice vlnka v pravém horním rohu leaf-bg (reason 2) — desktop i mobil, evokuje mluvení/hlas */
@media(max-width:760px){.r2 .leaf-wave{display:block;position:absolute;right:50px;top:-52px;width:92px;height:60px;z-index:4;color:#8A3644;opacity:.5;pointer-events:none}}
/* Telefon: důvod 1 — text (nadpis + odstavec) hned pod „Máme 3 důvody", diagram až pod něj; shora mezera, ať je vidět podsazená „1." */
@media(max-width:760px){
  .r1 .copy{order:-1;margin-top:30px}
  .r3 .copy{order:-1}   /* trojka: text nad obrázky tabletu/telefonu */
  .r1 .reason-num,.r2 .reason-num,.r3 .reason-num{left:2px;top:-60px}
  .r1 .copy h2,.r2 .copy h2,.r3 .copy h2{padding-left:50px}   /* nadpis začíná zhruba v půlce čísla; číslo u kraje, podsazené (box-sizing:border-box → bez přetečení) */
  .r1 .copy p,.r2 .copy p,.r3 .copy p{padding-left:90px}     /* odstavec odsazený víc doprava (cca 100px od kraje) */
  /* trojka: tablet + telefon blíž k sobě (telefon výš k tabletu, míň prázdna pod ním) */
  .r3 .mocks{min-height:300px}
  .r3 .mock.phone{bottom:24px}
}

/* === KONTAKTNÍ SEKCE nad patičkou (vždy viditelný formulář: startovací hovor / dotaz) === */
#kontakt{position:relative;padding:18px 0 72px}
.contact-box{display:grid;grid-template-columns:.82fr 1.08fr;gap:46px;align-items:center;background:linear-gradient(135deg,#FFF3F5,#ffffff 55%,#f7e6e8);border:1px solid rgba(197,92,99,.18);border-radius:32px;padding:46px 48px;box-shadow:0 24px 70px rgba(43,27,44,.09)}
.contact-kicker{font-size:13px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#9F404D;margin:0 0 12px}
.contact-copy h2{font-size:clamp(28px,3.4vw,40px);line-height:1.08;letter-spacing:-.04em;color:#2A181D;margin:0 0 14px}
.contact-sub{font-size:15.5px;line-height:1.62;color:#695A60;max-width:430px;margin:0}
.contact-form{display:grid;gap:14px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form label{display:block;font-size:13px;font-weight:800;color:#433335;margin-bottom:6px}
.cf-req{color:#9F404D}
.contact-form input,.contact-form textarea{width:100%;font:inherit;font-size:16px;color:#211617;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;transition:border-color .18s ease,box-shadow .18s ease}
.contact-form textarea{min-height:88px;resize:vertical;line-height:1.5}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--e);box-shadow:0 0 0 4px rgba(197,92,99,.14)}
.cf-submit{height:52px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-weight:900;font-size:15px;cursor:pointer;box-shadow:0 14px 34px rgba(30,23,27,.18);transition:transform .18s ease,opacity .18s ease}
.cf-submit:hover{transform:translateY(-2px)}
.cf-submit:disabled{opacity:.6;transform:none;cursor:default}
.cf-msg{display:none;border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.5;font-weight:600}
.cf-msg.ok{display:block;background:var(--soft);border:1px solid var(--mint);color:#4A222B}
.cf-msg.err{display:block;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}
@media(max-width:840px){.contact-box{grid-template-columns:1fr;gap:24px;padding:32px 24px}}
@media(max-width:480px){.cf-row{grid-template-columns:1fr}}

/* ============================================================
   Důvod 1 · REZERVACE — vzorový web + rezervační modal + telefon na ploše
   (nová první sekce; celé UI ručně stavěné v brand stylu, jako zbytek webu)
   ============================================================ */
.rbook .art-stage{min-height:470px}
.scene-grid .copy h2 .hl{color:var(--ed)}  /* druhá věta nadpisu v naší emerald green */
.bk-scene{position:relative;width:100%;max-width:496px;height:438px;margin:0 auto}

/* okno prohlížeče se vzorovým webem maséra (pozadí scény) */
.bk-browser{position:absolute;left:0;top:22px;width:300px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 16px 44px rgba(30,23,27,.10);overflow:hidden;z-index:1}
.bk-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;background:#f8f3f3;border-bottom:1px solid var(--line)}
.bk-dot{width:9px;height:9px;border-radius:50%}
.bk-dot:nth-child(1){background:#f3b6b1}.bk-dot:nth-child(2){background:#f7d99a}.bk-dot:nth-child(3){background:#e3aeb3}
.bk-url{display:inline-flex;align-items:center;gap:5px;margin-left:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px 11px;font-size:11px;font-weight:800;color:var(--mut)}
.bk-url svg{color:#b39b9d}
.bk-site{display:flex;align-items:center;gap:9px;padding:13px 14px;border-bottom:1px solid #f4eeef}
.bk-logo{flex:0 0 auto;width:24px;height:24px;border-radius:7px;background:var(--soft);display:grid;place-items:center;overflow:hidden}
.bk-logo img{width:16px;height:16px;object-fit:contain}
.bk-name{font-weight:900;font-size:13px;color:#2A181D;letter-spacing:-.02em}
.bk-menu{display:flex;gap:8px;margin-left:auto}
.bk-menu i{width:15px;height:4px;border-radius:999px;background:#ede2e3}
.bk-sitecta{background:var(--ed);color:#fff;font-size:10.5px;font-weight:900;border-radius:999px;padding:6px 11px}
.bk-hero{display:flex;flex-direction:column;gap:9px;padding:18px 14px 24px;background:linear-gradient(180deg,#fbf7f7,#fff)}
.bk-h1{width:68%;height:13px;border-radius:999px;background:#e8d7d9}
.bk-h2{width:46%;height:9px;border-radius:999px;background:#f1e7e8}

/* vyskakovací rezervační formulář (hero prvek scény, „popne“ se dopředu) */
.bk-modal{position:absolute;left:108px;top:54px;width:246px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 72px rgba(43,27,44,.22);padding:15px 16px;z-index:5}
.bk-mhead{display:flex;align-items:center;gap:8px;margin-bottom:13px}
.bk-mlogo{flex:0 0 auto;width:24px;height:24px;border-radius:7px;background:var(--soft);display:grid;place-items:center;overflow:hidden}
.bk-mlogo img{width:16px;height:16px;object-fit:contain}
.bk-mhead b{font-size:13.5px;color:#2A181D;letter-spacing:-.02em}
.bk-x{margin-left:auto;color:#c5b6b8;font-size:19px;line-height:1;font-weight:400}
.bk-svc{display:flex;align-items:center;gap:10px;background:var(--soft);border:1px solid var(--mint);border-radius:13px;padding:9px 11px;margin-bottom:14px}
.bk-ok{flex:0 0 auto;width:20px;height:20px;border-radius:50%;background:var(--ed);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900}
.bk-svc-t b{display:block;font-size:12.5px;color:#2A181D;line-height:1.2}
.bk-svc-t span{font-size:11px;color:var(--mut);font-weight:700}
.bk-flabel{font-size:9.5px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:var(--mut);margin:0 0 7px}
.bk-days{display:flex;gap:6px;margin-bottom:13px}
.bk-days span{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 0;border:1px solid var(--line);border-radius:10px;font-size:9.5px;font-weight:800;color:var(--mut)}
.bk-days span i{font-style:normal;font-size:13px;font-weight:900;color:#2A181D}
.bk-days span.on{background:var(--ed);border-color:var(--ed);color:#fff}
.bk-days span.on i{color:#fff}
.bk-times{display:flex;gap:6px;margin-bottom:15px}
.bk-times span{flex:1;text-align:center;padding:8px 0;border:1px solid var(--line);border-radius:10px;font-size:11px;font-weight:850;color:#2A181D}
.bk-times span.on{background:var(--ed);border-color:var(--ed);color:#fff}
.bk-confirm{background:var(--ink);color:#fff;text-align:center;border-radius:12px;padding:11px;font-size:13px;font-weight:900}

/* telefon na ploše klienta (vykukuje vpravo dole, jemně se pootáčí se scrollem přes data-rot) */
.bk-phone{position:absolute;right:0;bottom:-6px;width:144px;background:#210c0e;border-radius:30px;padding:7px;box-shadow:0 28px 60px rgba(43,27,44,.32);z-index:6}
.bk-pscreen{background:#fff;border-radius:24px;overflow:hidden;padding:12px 11px 14px}
.bk-ptop{display:flex;align-items:center;gap:7px;margin-bottom:11px}
.bk-plogo{flex:0 0 auto;width:22px;height:22px;border-radius:7px;background:var(--soft);display:grid;place-items:center;overflow:hidden}
.bk-plogo img{width:14px;height:14px;object-fit:contain}
.bk-pname b{display:block;font-size:10.5px;color:#2A181D;line-height:1.15}
.bk-pname span{font-size:8px;color:var(--mut);font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.bk-pbtn{background:var(--ed);color:#fff;text-align:center;border-radius:10px;padding:9px;font-size:10px;font-weight:900;margin-bottom:11px}
.bk-plabel{font-size:8px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:var(--mut);margin-bottom:6px}
.bk-pappt{display:flex;align-items:center;gap:8px;background:#faf6f6;border:1px solid #f4eeef;border-radius:11px;padding:7px 8px}
.bk-pd{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:29px;height:29px;border-radius:8px;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:900;color:#2A181D;line-height:1}
.bk-pd i{font-style:normal;font-size:7px;font-weight:800;color:var(--mut);text-transform:uppercase;margin-top:1px}
.bk-pappt-t b{display:block;font-size:10px;color:#2A181D;line-height:1.15}
.bk-pappt-t span{font-size:8.5px;color:var(--mut);font-weight:700}

/* tři způsoby rezervace (v copy sloupci pod odstavcem) */
.bk-ways{display:flex;flex-direction:column;gap:14px;margin:24px 0 6px}
.bk-way{display:flex;gap:12px;align-items:flex-start}
.bk-wic{flex:0 0 auto;width:38px;height:38px;border-radius:11px;background:var(--soft);border:1px solid var(--mint);color:var(--deep);display:grid;place-items:center}
.bk-way>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.bk-whead{display:flex;align-items:center;gap:12px;flex-wrap:nowrap}
.bk-way b{display:block;font-size:17px;color:#2A181D;letter-spacing:-.02em;line-height:1.25;min-width:0}
.bk-way span{font-size:15px;color:#695A60;line-height:1.55}

@media(max-width:900px){
  .rbook .art-stage{min-height:480px}
  .bk-scene{max-width:440px;height:404px}
  .bk-browser{width:64%;top:14px}
  .bk-modal{width:57%;left:20%;top:48px}
  .bk-phone{width:33%}
}
@media(max-width:760px){
  .rbook .copy{order:-1;margin-top:30px}
  .rbook .reason-num{left:2px;top:-60px}
  .rbook .copy h2{padding-left:50px}
  .rbook .copy p{padding-left:90px}
  .bk-scene{max-width:380px;height:392px;margin-top:6px}
  .bk-ways{margin-top:22px}
}
@media(max-width:420px){
  .bk-scene{max-width:330px;height:360px}
  .bk-browser{width:68%}
  .bk-modal{width:62%;left:26%}
  .bk-phone{width:37%;bottom:-2px}
}

/* klikací mini odznaky App Store / Google Play na řádku s nadpisem „v aplikaci na ploše“ */
.bk-stores{display:flex;gap:8px;margin:4px 0 2px}
.bk-stores .bk-store{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:5px 10px;font-size:11px;font-weight:800;color:#433335;line-height:1;transition:border-color .15s ease,background .15s ease}
.bk-stores .bk-store:hover{border-color:var(--e);background:var(--soft);color:#2A181D}
.bk-stores .bk-store svg{width:12px;height:13px;color:#2A181D}

/* odznaky App Store / Google Play jsou teď v art sloupci (vlevo u vizuálu) */
.art .bk-stores{justify-content:center;margin-top:18px}

/* Důvod 1 · scéna: video rezervačního procesu (vzadu, pomalý parallax) + foto telefonu v ruce (vepředu, rychlejší) — zrcadlí dvojku */
.rez-video{position:absolute;display:block;height:auto;right:0;top:8px;width:272px;max-width:56%;border-radius:22px;border:1px solid var(--line);box-shadow:0 26px 64px rgba(43,27,44,.18);background:#f8f3f3;z-index:1}
.rez-phone{position:absolute;left:74px;bottom:-6px;width:196px;height:326px;overflow:hidden;border-radius:30px;box-shadow:0 30px 60px rgba(43,27,44,.30);z-index:2;background:#dfe7ea}
.rez-phone img{display:block;width:100%;height:100%;object-fit:cover;object-position:53% 45%;transform:scale(1.5);transform-origin:53% 45%}
.rbook .leaf-bg{left:60px;top:20px;width:384px;height:420px}
.rbook .art .reason-point{margin-top:66px}  /* výchozí pozice čipu níž (parallax pak jede odsud) */
@media(max-width:900px){
  .rez-video{width:50%;max-width:272px;top:6px}
  .rez-phone{width:47%;max-width:224px;left:6%;bottom:0}  /* širší + posun doprava → pravý okraj fotky přejede přes video (~3mm 3D překryv) */
}
@media(max-width:420px){
  .rez-video{width:54%}
  .rez-phone{width:48%;left:2%}
}

/* ─── Demo odkaz (rozmnožovák app.maserapp.cz/demo/start) ─── v143 */
.demo-link{display:inline-flex;align-items:center;gap:7px;margin-top:13px;padding:9px 14px;border-radius:999px;font-size:12.5px;font-weight:850;color:#2A181D;background:rgba(255,255,255,.66);border:1px solid rgba(197,92,99,.28);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 22px rgba(30,23,27,.10)}
.demo-link b{color:var(--deep);font-weight:900}
.demo-link:hover{background:rgba(255,255,255,.88)}
.step-demo{display:block;margin-top:9px;font-size:12px;font-weight:850;color:#f0c1c6;text-decoration:underline;text-underline-offset:3px}
.step-demo:hover{color:#fff}

/* ─── v144: hero hierarchie — demo primární, registrace outline se stackem ─── */
.btn.outline.cta-stack .l2{color:inherit;opacity:.72}

/* ─── v145: hero odkaz "Spustit aplikaci" pro stávající uživatele; barvy dědí logiku .hero-photo .hero-copy p (tmavá na desktopu, bílá se stínem na mobilu/tabletu na výšku) ─── */
.hero-applink{display:inline-block;margin-top:13px;font-size:13px;font-weight:800;color:#302425;text-decoration:underline;text-underline-offset:3px}
.hero-applink:hover{opacity:.72}
@media(min-width:761px) and (max-width:1024px) and (orientation:portrait){.hero-applink{color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.7),0 1px 3px rgba(0,0,0,.55)}}
@media(max-width:760px){.hero-applink{color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.72),0 1px 3px rgba(0,0,0,.6)}}

/* ─── v146: hero odkaz vycentrovaný pod demo tlačítko (sloupeček) + play trojúhelník u "Spustit aplikaci" v liště ─── */
.hero .actions{align-items:flex-start}
.hero-cta-col{display:inline-flex;flex-direction:column;align-items:center}
.links-app{display:inline-flex;align-items:center;gap:6px}
.links-app .play-ico{width:11px;height:11px;flex:0 0 auto}

/* ─── v147: odkaz "Nebo demo bez registrace" čitelný na světlé kartě v #prechod (base .step-demo má mint pro tmavé pozadí) ─── */
.steps.light .step .step-demo{color:var(--deep)}
.steps.light .step .step-demo:hover{color:var(--ed)}
