/* =====================================================================
   RENOVIO REALITY — „Architektonické studio o půlnoci"
   Hluboká noc + mosaz · filmové video · živý Renda
   ===================================================================== */

:root{
  --ink-0:#070b12;
  --ink-1:#0b1018;
  --ink-2:#0f1722;
  --panel:#101a28;
  --panel-2:#13202f;
  --paper:#eef2f7;
  --muted:#92a3ba;
  --faint:#5d6f88;
  --line:rgba(150,175,210,.12);
  --line-2:rgba(150,175,210,.22);
  --brass:#c9a25b;
  --brass-hi:#f1dca8;
  --brass-deep:#9c7836;
  --r:14px;
  --r-lg:22px;
  --wrap:1320px;
  /* světlé sekce (beton/omítka) */
  --lt-bg:#efece5;
  --lt-bg2:#e7e2d8;
  --lt-card:#ffffff;
  --lt-ink:#14202e;
  --lt-muted:#4f5f70;
  --lt-line:rgba(20,32,46,.12);
  --lt-line2:rgba(20,32,46,.2);
  --brass-ink:#8f6d2c;
  --ease:cubic-bezier(.22,.7,.3,1);
  --shadow:0 40px 90px -40px rgba(0,0,0,.85);
  --display:"Space Grotesk",sans-serif;
  --serif:"Fraunces",Georgia,serif;
  --body:"Inter",system-ui,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  margin:0;background:var(--ink-0);color:var(--paper);
  font-family:var(--body);line-height:1.62;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

/* filmové zrno přes celou stránku */
.grain{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

h1,h2,h3{font-family:var(--display);line-height:1.06;margin:0;letter-spacing:-.02em;font-weight:600;color:var(--paper)}
em{font-style:normal}
p{margin:0}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.wrap{width:min(var(--wrap),92vw);margin-inline:auto;position:relative;z-index:1}
.wrap--narrow{width:min(800px,92vw)}

.skip{position:absolute;left:-9999px;top:0;background:var(--brass);color:#1a1206;padding:.6rem 1rem;z-index:100;font-weight:700}
.skip:focus{left:0}

/* ---------- tlačítka ---------- */
.btn{display:inline-flex;align-items:center;gap:.55rem;padding:.95rem 1.5rem;border-radius:999px;
  font-weight:600;font-size:.97rem;font-family:var(--body);border:1px solid transparent;cursor:pointer;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s,color .3s,border-color .3s}
.btn--gold{background:linear-gradient(180deg,var(--brass-hi),var(--brass));color:#1c1407;
  box-shadow:0 14px 34px -14px rgba(201,162,91,.7)}
/* magnetické přitahování ke kurzoru — posun drží CSS proměnné,
   takže se nepere s :hover ani :active (dřív se přepisoval celý transform) */
.btn--gold{--mx:0px;--my:0px;transform:translate(var(--mx),var(--my))}
.btn--gold:hover{transform:translate(var(--mx),calc(var(--my) - 2px));box-shadow:0 20px 44px -14px rgba(201,162,91,.85)}
/* squish — tlačítko se pod prstem/kurzorem zmáčkne */
.btn--gold:active{transform:translate(var(--mx),var(--my)) scale(.955);transition-duration:.1s}
/* kurzor v okolí: tlačítko sleduje pohyb svižně a zesílí záři (upozorní na sebe) */
.btn--gold.is-magnet{transition:transform .2s linear,box-shadow .35s var(--ease);
  box-shadow:0 18px 42px -12px rgba(201,162,91,.85),0 0 0 1px rgba(241,220,168,.3)}
.btn--gold.is-magnet:hover{box-shadow:0 22px 48px -12px rgba(201,162,91,.95),0 0 0 1px rgba(241,220,168,.45)}
.btn--ghost:active,.btn--mail:active,.btn--wa:active{transform:scale(.955);transition-duration:.1s}
.endcta__page:active{transform:scale(.97);transition-duration:.1s}
.card:active,.vid-card:active{transform:scale(.99);transition-duration:.12s}
/* světelný přejezd přes tlačítko (sjednoceno s podstránkami) */
.btn--gold{position:relative;overflow:hidden;isolation:isolate}
.btn--gold::after{content:"";position:absolute;top:0;left:-130%;width:55%;height:100%;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);
  transform:skewX(-20deg);transition:left .65s var(--ease)}
.btn--gold:hover::after{left:150%}
/* ghost tlačítko — jemné prosvětlení okraje */
.btn--ghost{position:relative;overflow:hidden}
.btn--ghost::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  background:radial-gradient(120px circle at 50% 120%,rgba(241,220,168,.22),transparent 70%);
  opacity:0;transition:opacity .35s var(--ease)}
.btn--ghost:hover::after{opacity:1}
@media (prefers-reduced-motion:reduce){.btn--gold::after,.btn--ghost::after{display:none}}
.btn--ghost{border-color:var(--line-2);color:var(--paper);background:rgba(255,255,255,.02);backdrop-filter:blur(6px)}
.btn--ghost:hover{border-color:var(--brass);color:var(--brass-hi);transform:translateY(-2px)}

/* ---------- postup stavby ---------- */
.siteprogress{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;background:rgba(255,255,255,.05)}
.siteprogress__bar{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--brass-deep),var(--brass-hi));
  box-shadow:0 0 14px rgba(201,162,91,.9);position:relative}
.siteprogress__bar::after{content:"";position:absolute;right:-3px;top:50%;width:8px;height:8px;border-radius:50%;
  transform:translateY(-50%);background:var(--brass-hi);box-shadow:0 0 0 0 rgba(241,220,168,.7);animation:pulse 2.2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(241,220,168,.55)}70%{box-shadow:0 0 0 9px rgba(241,220,168,0)}100%{box-shadow:0 0 0 0 rgba(241,220,168,0)}}

/* ---------- fázová lišta ---------- */
.phases{position:fixed;right:26px;top:50%;transform:translateY(-50%);z-index:40}
.phases__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.25rem}
.phases__list li{display:flex;align-items:center;justify-content:flex-end;gap:.7rem;opacity:.4;transition:opacity .4s}
.phases__dot{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--line-2);transition:all .4s;flex:none}
.phases__lbl{font:600 .68rem/1 var(--mono);letter-spacing:.05em;color:var(--muted);opacity:0;transform:translateX(8px);transition:all .4s;white-space:nowrap}
.phases__list li.is-active{opacity:1}
.phases__list li.is-active .phases__dot{border-color:var(--brass);background:var(--brass);box-shadow:0 0 16px rgba(201,162,91,.8)}
.phases__list li.is-active .phases__lbl{opacity:1;transform:translateX(0);color:var(--paper)}
.phases__list li.is-done .phases__dot{border-color:var(--brass-deep);background:var(--brass-deep)}
@media (max-width:1240px){.phases{display:none}}

/* ---------- navigace ---------- */
.nav{position:sticky;top:0;z-index:50;transition:background .4s,border-color .4s,backdrop-filter .4s;border-bottom:1px solid transparent}
.nav.is-scrolled{background:rgba(7,11,18,.72);backdrop-filter:blur(16px) saturate(1.2);border-bottom-color:var(--line)}
.nav__inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;gap:1rem}
.nav__brand{display:flex;align-items:center;gap:.65rem}
.nav__mark{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;
  background:linear-gradient(155deg,var(--brass-hi),var(--brass-deep));color:#1c1407;font-family:var(--display);font-weight:700;font-size:1.25rem;
  box-shadow:0 10px 26px -12px rgba(201,162,91,.8)}
.nav__name{font-family:var(--display);font-weight:700;letter-spacing:.02em;line-height:.95;font-size:1.05rem}
.nav__name small{display:block;font-size:.6rem;letter-spacing:.46em;color:var(--brass);font-weight:600}
.nav__links{display:flex;gap:1.7rem}
.nav__links a{color:var(--muted);font-weight:500;font-size:.93rem;position:relative;padding:.2rem 0;transition:color .25s}
.nav__links a::after{content:"";position:absolute;left:0;bottom:-3px;height:1.5px;width:0;background:var(--brass);transition:width .35s var(--ease)}
.nav__links a:hover{color:var(--paper)}
.nav__links a:hover::after{width:100%}
.nav__cta{padding:.6rem 1.05rem;font-size:.9rem}
@media (max-width:900px){.nav__links{display:none}}

/* ===================== HERO ===================== */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:var(--ink-0)}
.hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;filter:saturate(1.05) contrast(1.02)}
.hero__veil{position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(7,11,18,.55) 0%,rgba(7,11,18,.35) 30%,rgba(7,11,18,.8) 100%),
    radial-gradient(120% 90% at 20% 30%,rgba(7,11,18,.2),rgba(7,11,18,.92) 90%)}
.hero__inner{display:grid;grid-template-columns:1.18fr .82fr;gap:3rem;align-items:center;padding:7rem 0 5rem}

.status{display:inline-flex;align-items:center;gap:.55rem;font:600 .76rem/1 var(--mono);letter-spacing:.08em;
  text-transform:uppercase;color:var(--muted);padding:.5rem .8rem;border:1px solid var(--line);border-radius:999px;
  background:rgba(11,16,24,.5);backdrop-filter:blur(6px)}
.status i{color:var(--faint);font-style:normal}
.status__dot{width:8px;height:8px;border-radius:50%;background:#67c98b;box-shadow:0 0 0 0 rgba(103,201,139,.7);animation:pulse 2.4s infinite}
.status__live{color:var(--brass-hi)}

.hero__title{font-size:clamp(2.5rem,6.4vw,5.2rem);font-weight:600;margin:1.4rem 0 0;letter-spacing:-.03em}
.hero__title .line{display:block;overflow:hidden;padding-bottom:.04em}
.hero__title em{font-family:var(--serif);font-style:italic;font-weight:500;
  background:linear-gradient(100deg,var(--brass) 10%,var(--brass-hi) 50%,var(--brass) 90%);
  -webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% auto;animation:sheen 7s linear infinite}
@keyframes sheen{to{background-position:200% center}}

.hero__sub{color:var(--muted);font-size:1.12rem;max-width:48ch;margin-top:1.5rem}
.hero__cta{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.8rem}
.hero__trust{list-style:none;display:flex;gap:2.2rem;padding:0;margin:2.4rem 0 0;flex-wrap:wrap}
.hero__trust li{display:flex;flex-direction:column;gap:.15rem;font-size:.82rem;color:var(--muted);max-width:13ch}
.hero__trust b{font-family:var(--display);font-weight:700;font-size:1.7rem;color:var(--brass-hi);line-height:1}

/* Renda — živé video */
.renda{margin:0;position:relative}
.renda__media{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:3/4;
  border:1px solid var(--line-2);box-shadow:var(--shadow),0 0 0 1px rgba(201,162,91,.18) inset;background:var(--panel)}
.renda__media::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,transparent 50%,rgba(7,11,18,.88))}
.renda__media::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(241,220,168,.12)}
.renda__vid{width:100%;height:100%;object-fit:cover;display:block}
.renda__plate{position:absolute;left:18px;bottom:16px;z-index:4;display:flex;flex-direction:column;
  font:600 .72rem/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.renda__plate i{font-family:var(--serif);font-style:italic;font-weight:500;font-size:1.5rem;letter-spacing:0;text-transform:none;color:var(--brass-hi);margin-bottom:.1rem}
.renda__say{margin-top:1.1rem;font-family:var(--serif);font-style:italic;font-size:1.12rem;line-height:1.45;color:var(--paper);opacity:.92;max-width:34ch}
@media (max-width:900px){
  .hero__inner{grid-template-columns:1fr;gap:2rem;padding:6rem 0 4rem}
  .renda{max-width:340px;margin-inline:auto;width:100%}
}

.hero__cue{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:4;width:26px;height:42px;border:1.5px solid var(--line-2);border-radius:14px}
.hero__cue span{position:absolute;left:50%;top:9px;width:3px;height:8px;border-radius:2px;background:var(--brass-hi);transform:translateX(-50%);animation:scrolldot 1.8s var(--ease) infinite}
@keyframes scrolldot{0%{opacity:0;transform:translate(-50%,0)}30%{opacity:1}100%{opacity:0;transform:translate(-50%,14px)}}

/* ---------- pás ---------- */
.marquee{position:relative;z-index:1;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--ink-1);overflow:hidden;padding:1rem 0}
.marquee__track{display:flex;align-items:center;gap:1.4rem;width:max-content;animation:marq 42s linear infinite;will-change:transform}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee__track span{font:600 .9rem/1 var(--display);color:var(--paper);white-space:nowrap;opacity:.85}
.marquee__track i{color:var(--brass);font-style:normal;opacity:.55}
@keyframes marq{to{transform:translateX(-50%)}}

/* ===================== SEKCE ===================== */
.sec{position:relative;z-index:1;padding:clamp(4rem,9vw,7.5rem) 0}
.sec--soft{background:linear-gradient(180deg,var(--ink-0),var(--ink-1) 50%,var(--ink-0))}

.head{max-width:760px;margin-bottom:3rem}
.eyebrow{display:inline-block;font:600 .74rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin-bottom:1.1rem}
.head h2,.kontakt h2{font-size:clamp(1.9rem,4.2vw,3.1rem);font-weight:600;letter-spacing:-.025em}
h2 em,.kontakt h2 em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--brass-hi)}
.lead{color:var(--muted);font-size:1.1rem;margin-top:1.1rem;max-width:60ch}

/* ---------- karty ---------- */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
@media (max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.cards{grid-template-columns:1fr}}
.card{position:relative;background:linear-gradient(180deg,var(--panel),var(--ink-1));border:1px solid var(--line);
  border-radius:var(--r);padding:1.6rem 1.4rem;overflow:hidden;transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.card::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(241,220,168,.5),transparent);opacity:0;transition:opacity .35s}
.card:hover{transform:translateY(-6px);border-color:var(--line-2);box-shadow:var(--shadow)}
.card:hover::after{opacity:1}
.card__no{font:600 .7rem/1 var(--mono);color:var(--faint);letter-spacing:.1em;position:absolute;top:1.2rem;right:1.3rem}
.card__ic{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;margin-bottom:1rem;
  background:rgba(201,162,91,.10);border:1px solid rgba(201,162,91,.24);color:var(--brass-hi)}
.card__ic svg{width:24px;height:24px}
.card h3{font-size:1.08rem;margin-bottom:.4rem;font-weight:600}
.card p{color:var(--muted);font-size:.92rem}
.card--feat{background:linear-gradient(180deg,#17263a,var(--ink-1));border-color:rgba(201,162,91,.34)}
.card--feat .card__ic{background:rgba(201,162,91,.2)}

.hint{margin-top:2.2rem;padding:1.3rem 1.5rem;border-radius:var(--r);border:1px solid var(--line);
  background:linear-gradient(110deg,rgba(201,162,91,.07),transparent)}
.hint p{color:var(--muted);font-size:1rem}
.hint b{color:var(--paper)}
.hint a{color:var(--brass-hi);font-weight:600;white-space:nowrap}
.hint__more{margin-top:.6rem;font-size:.95rem}

/* ---------- jak to funguje ---------- */
.flow{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;counter-reset:f}
@media (max-width:820px){.flow{grid-template-columns:1fr}}
.flow__step{position:relative;padding:2rem 1.6rem 1.7rem;border:1px solid var(--line);border-radius:var(--r);background:var(--panel);transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.flow__step:hover{transform:translateY(-7px);border-color:rgba(241,220,168,.55);box-shadow:0 32px 64px -30px rgba(0,0,0,.6),0 0 42px -16px rgba(241,220,168,.45)}
.flow__step:hover h3{color:var(--brass-hi);text-shadow:0 0 20px rgba(241,220,168,.55)}
.flow__step:hover .flow__n{box-shadow:0 0 28px -3px rgba(241,220,168,.85)}
.flow__n{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;font-family:var(--display);font-weight:700;font-size:1.2rem;
  background:linear-gradient(155deg,var(--brass-hi),var(--brass-deep));color:#1c1407;margin-bottom:1.1rem}
.flow__step h3{font-size:1.12rem;margin-bottom:.45rem;font-weight:600;color:var(--paper);transition:color .3s,text-shadow .3s}
.flow__n{transition:box-shadow .35s}
.flow__step p{color:var(--muted);font-size:.95rem}

/* ---------- proč my ---------- */
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
@media (max-width:820px){.why{grid-template-columns:1fr}}
.why__item{padding:1.6rem;border:1px solid var(--line);border-left:2px solid var(--brass);background:var(--panel);border-radius:0 var(--r) var(--r) 0;transition:transform .35s var(--ease),box-shadow .35s,border-left-width .25s}
.why__item:hover{transform:translateY(-6px);border-left-width:5px;box-shadow:0 30px 60px -30px rgba(0,0,0,.55),0 0 42px -18px rgba(241,220,168,.4)}
.why__item:hover h3{color:var(--brass-hi);text-shadow:0 0 18px rgba(241,220,168,.5)}
.sec--light .why__item:hover{box-shadow:0 30px 60px -32px rgba(20,32,46,.45)}
.sec--light .why__item:hover h3{color:var(--brass-ink);text-shadow:0 0 16px rgba(201,162,91,.35)}
.why__item h3{font-size:1.15rem;margin-bottom:.45rem;font-weight:600}
.why__item p{color:var(--muted);font-size:.96rem}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.6rem;padding-top:2.4rem;border-top:1px solid var(--line)}
@media (max-width:640px){.stats{grid-template-columns:1fr;text-align:center}}
.stat b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(2.4rem,4.5vw,3.4rem);color:var(--brass-hi);line-height:1}
.stat .stat--word{font-size:clamp(1.6rem,3vw,2.2rem)}
.stat span{color:var(--muted);font-size:.92rem;margin-top:.4rem;display:block}

/* ---------- realizace ---------- */
.proj{border:1px solid var(--line);border-radius:var(--r-lg);padding:1.8rem;background:var(--panel);margin-bottom:1.4rem;overflow:hidden}
.proj__head{max-width:64ch;margin-bottom:1.4rem}
.proj__tag{font:600 .72rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brass)}
.proj h3{font-size:clamp(1.35rem,2.8vw,2rem);margin:.7rem 0 .55rem;font-weight:600}
.proj__desc{color:var(--muted)}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
@media (max-width:620px){.ba{grid-template-columns:1fr}}
.ba figure{position:relative;margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.ba img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.ba figcaption{position:absolute;top:11px;left:11px;z-index:2;font:600 .7rem/1 var(--mono);letter-spacing:.1em;
  text-transform:uppercase;background:rgba(7,11,18,.78);color:#fff;padding:.35rem .6rem;border-radius:7px;backdrop-filter:blur(4px)}
.ba .is-after figcaption{color:var(--brass-hi)}
.ba .is-after{clip-path:inset(0 0 0 0);transition:clip-path 1.2s var(--ease)}
[data-ba]:not(.is-built) .is-after{clip-path:inset(0 100% 0 0)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin-top:.9rem}
.gallery img{border-radius:12px;border:1px solid var(--line);aspect-ratio:4/3;object-fit:cover;width:100%}
@media (max-width:620px){.gallery{grid-template-columns:1fr 1fr}}

/* ---------- Renda radí ---------- */
.radi{background:linear-gradient(180deg,var(--ink-1),var(--ink-0))}
.radi__wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem;align-items:center}
@media (max-width:900px){.radi__wrap{grid-template-columns:1fr;gap:2rem}}
.radi__intro .btn{margin-top:1.6rem}
.radi__stage{display:grid;grid-template-columns:auto 1fr;gap:1.6rem;align-items:center;
  padding:1.8rem;border:1px solid var(--line);border-radius:var(--r-lg);background:rgba(16,26,40,.6);
  box-shadow:var(--shadow)}
@media (max-width:640px){.radi__stage{grid-template-columns:1fr;text-align:center}
.radi__stage .radi__tipbox,.radi__stage .radi__tip,.radi__stage .radi__cat{text-align:center!important}}
.radi__avatar{width:120px;height:120px;border-radius:50%;overflow:hidden;flex:none;justify-self:center;
  border:1px solid rgba(201,162,91,.4);box-shadow:0 0 0 5px rgba(201,162,91,.08)}
.radi__vid{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.radi__cat{display:inline-block;font:600 .68rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin-bottom:.8rem}
.radi__tip{margin:0;font-family:var(--serif);font-style:italic;font-size:1.3rem;line-height:1.45;color:var(--paper);min-height:5.6em;transition:opacity .4s}
@media (max-width:640px){.radi__tip{min-height:8em}}
.radi__dots{display:flex;gap:.4rem;margin-top:1.1rem}
@media (max-width:640px){.radi__dots{justify-content:center}}
.radi__dots b{width:6px;height:6px;border-radius:50%;background:var(--line-2);transition:all .3s;cursor:pointer}
.radi__dots b.on{background:var(--brass);width:20px;border-radius:3px}
.radi__count{font:600 .82rem/1 var(--mono);letter-spacing:.12em;color:var(--muted)}
.radi__count b{color:var(--brass-hi)}
.radi__tipbox{cursor:pointer}

/* ---------- reference ---------- */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media (max-width:820px){.quotes{grid-template-columns:1fr}}
.quote{margin:0;padding:1.7rem;border:1px solid var(--line);border-radius:var(--r);background:var(--panel)}
@media (min-width:821px){
.quote{text-align:center;display:flex;flex-direction:column;justify-content:flex-start}
.quote blockquote{margin-bottom:1.1rem}
.quote figcaption{margin-top:auto}
}
.quote blockquote{margin:0 0 1.1rem;font-family:var(--serif);font-style:italic;font-size:1.18rem;line-height:1.5}
.quote blockquote::before{content:"„";color:var(--brass);font-size:1.3em;line-height:0;vertical-align:-.35em;margin-right:.05em}
.quote figcaption b{display:block;font-family:var(--display);font-weight:600;font-size:.98rem}
.quote figcaption span{color:var(--muted);font-size:.84rem}

/* ---------- FAQ ---------- */
.faq details{border:1px solid var(--line);border-radius:12px;background:var(--panel);margin-bottom:.7rem;overflow:hidden}
.faq summary{cursor:pointer;padding:1.1rem 1.3rem;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--display);font-size:1.4rem;color:var(--brass);transition:transform .3s;line-height:1}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq__a{padding:0 1.3rem 1.2rem;color:var(--muted)}

/* ---------- kontakt ---------- */
.kontakt{display:grid;grid-template-columns:1fr 1fr;gap:2.6rem;align-items:start}
@media (max-width:820px){.kontakt{grid-template-columns:1fr}}
.kontakt__list{list-style:none;padding:0;margin:1.6rem 0 0;display:flex;flex-direction:column;gap:.6rem}
.kontakt__list a{color:var(--brass-hi);font-weight:600;font-size:1.15rem}
.form{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.8rem;box-shadow:var(--shadow)}
.hp{position:absolute;left:-9999px}
.field{display:block;margin-bottom:1.1rem}
.field span{display:block;font-size:.82rem;color:var(--muted);margin-bottom:.4rem;font-family:var(--mono);letter-spacing:.03em}
.field input,.field textarea{width:100%;background:var(--ink-1);border:1px solid var(--line-2);border-radius:10px;
  padding:.85rem .95rem;color:var(--paper);font-family:inherit;font-size:.98rem;transition:border-color .25s,box-shadow .25s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 3px rgba(201,162,91,.15)}
.form__submit{width:100%;justify-content:center;margin-top:.4rem}
.form__note{font-size:.82rem;color:var(--muted);margin-top:.8rem;text-align:center}

/* ---------- patička ---------- */
.footer{position:relative;z-index:1;border-top:1px solid var(--line);background:var(--ink-0);padding:2.6rem 0}
.footer__inner{display:flex;flex-direction:column;gap:.5rem;align-items:center;text-align:center}
.footer__brand{display:flex;align-items:center;gap:.6rem;font-family:var(--display);font-weight:600}
.footer__note{color:var(--muted);font-size:.9rem}
.footer__legal{color:var(--faint);font-size:.78rem;font-family:var(--mono)}
.footer__copy{color:var(--faint);font-size:.8rem}

/* ===================== SVĚTLÉ SEKCE (beton/omítka) ===================== */
.sec--light{background:linear-gradient(180deg,var(--lt-bg),var(--lt-bg2));color:var(--lt-ink)}
.sec--light .eyebrow,.sec--light .proj__tag{color:var(--brass-ink)}
.sec--light h2,.sec--light h3{color:var(--lt-ink)}
.sec--light h2 em{color:var(--brass-ink)}
.sec--light .lead{color:var(--lt-muted)}
.sec--light .card{background:linear-gradient(180deg,#fff,#f7f4ee);border-color:var(--lt-line)}
.sec--light .card p{color:var(--lt-muted)}
.sec--light .card__no{color:rgba(20,32,46,.34)}
.sec--light .card__ic{background:rgba(154,119,51,.12);border-color:rgba(154,119,51,.32);color:var(--brass-ink)}
.sec--light .card--feat{background:linear-gradient(180deg,#fff,#f3ecdd);border-color:rgba(154,119,51,.42)}
.sec--light .card:hover{box-shadow:0 30px 60px -34px rgba(20,32,46,.45)}
.sec--light .hint{border-color:var(--lt-line);background:linear-gradient(110deg,rgba(154,119,51,.12),transparent)}
.sec--light .hint p{color:var(--lt-muted)}.sec--light .hint b{color:var(--lt-ink)}.sec--light .hint a{color:var(--brass-ink)}
.sec--light .flow__step{background:#fff;border-color:var(--lt-line)}.sec--light .flow__step p{color:var(--lt-muted)}
.sec--light .why__item{background:#fff;border-color:var(--lt-line);border-left-color:var(--brass)}.sec--light .why__item p{color:var(--lt-muted)}
.sec--light .stats{border-top-color:var(--lt-line)}.sec--light .stat b{color:var(--brass-ink)}.sec--light .stat span{color:var(--lt-muted)}
.sec--light .proj{background:#fff;border-color:var(--lt-line)}.sec--light .proj__desc{color:var(--lt-muted)}
.sec--light .ba figure,.sec--light .gallery img{border-color:var(--lt-line)}
.sec--light .quote{background:#fff;border-color:var(--lt-line)}.sec--light .quote blockquote{color:var(--lt-ink)}.sec--light .quote figcaption span{color:var(--lt-muted)}
.sec--light .faq details{background:#fff;border-color:var(--lt-line)}.sec--light .faq summary{color:var(--lt-ink)}.sec--light .faq__a{color:var(--lt-muted)}
.sec--light .kontakt__list a{color:var(--brass-ink)}
.sec--light .form{background:#fff;border-color:var(--lt-line)}
.sec--light .field span{color:var(--lt-muted)}
.sec--light .field input,.sec--light .field textarea{background:#f4f1ea;border-color:var(--lt-line2);color:var(--lt-ink)}
.sec--light .btn--ghost{color:var(--lt-ink);border-color:var(--lt-line2)}
.sec--light .btn--ghost:hover{color:var(--brass-ink);border-color:var(--brass)}
.sec--light .vid-card{background:#fff;border-color:var(--lt-line)}
.sec--light .vid-card figcaption b{color:var(--lt-ink)}
.sec--light .vid-card figcaption span{color:var(--lt-muted)}

/* ===================== KURZOR — spotlight na kartách ===================== */
.card::before{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .4s;pointer-events:none;z-index:0;
  background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(241,220,168,.18),transparent 62%)}
.card:hover::before{opacity:1}
.card>*{position:relative;z-index:1}
.sec--light .card::before{background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(154,119,51,.14),transparent 62%)}

/* ===================== KARTY SLUŽEB — materiálové dlaždice ===================== */
.cards--tiles{perspective:1200px}
#sluzby.sec--light{background:radial-gradient(820px 440px at 82% 4%,rgba(201,162,91,.14),transparent 60%),radial-gradient(640px 380px at 8% 96%,rgba(93,155,209,.12),transparent 60%),linear-gradient(180deg,var(--lt-bg),var(--lt-bg2))}
/* luxusní kouřové sklo */
.cards--tiles .card{
  /* Sklo kreslíme jen přechodem, bez rozostření pozadí.
     Průhledná je jen horní pětina dlaždice a právě v tom pruhu prohlížeč
     při posouvání znovu rozmazával pozadí sekce — vznikala tam pohyblivá
     čára. Pozadí za dlaždicemi je skoro hladké, takže rozostření stejně
     nebylo poznat. Odpadá i will-change, které si vynucovalo vlastní
     vykreslovací vrstvu a artefakt zhoršovalo. */
  background:linear-gradient(150deg,rgba(255,255,255,.11),rgba(255,255,255,.03) 18%,rgba(7,10,17,.86) 46%,rgba(2,4,9,.96));
  border:1px solid rgba(255,255,255,.16);border-radius:18px;overflow:hidden;min-height:235px;
  display:flex;flex-direction:column;justify-content:flex-end;
  backface-visibility:hidden;-webkit-backface-visibility:hidden;
  box-shadow:0 22px 55px -26px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.38),inset 0 -22px 34px -22px rgba(8,12,20,.6);
  transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .4s}
.cards--tiles .card h3{color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.5)}
.cards--tiles .card p{color:#eef2f8;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.cards--tiles .card__no{color:rgba(255,255,255,.6)}
.cards--tiles .card__ic{background:rgba(255,255,255,.05);border-color:rgba(255,222,150,.5);color:#ffdf9e;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 0 20px -4px rgba(255,205,110,.6)}
.cards--tiles .card__ic svg{stroke-width:1.7;filter:drop-shadow(0 0 3px rgba(255,216,135,.95)) drop-shadow(0 0 9px rgba(255,196,90,.7))}
.cards--tiles .card:hover .card__ic{color:#fff1cf;border-color:rgba(255,228,165,.85);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 0 30px -2px rgba(255,205,110,.9)}
.cards--tiles .card:hover .card__ic svg{filter:drop-shadow(0 0 5px rgba(255,226,150,1)) drop-shadow(0 0 16px rgba(255,196,90,.95))}
.cards--tiles .card--feat{border-color:rgba(241,220,168,.55);box-shadow:0 22px 55px -26px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.55),0 0 0 1px rgba(241,220,168,.3)}
/* diagonální lesk skla */
.cards--tiles .card::after{top:0;left:0;right:auto;bottom:auto;width:100%;height:55%;
  background:linear-gradient(155deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,0) 62%);opacity:1}
/* nasvit „žárovkou" za sklem */
.cards--tiles .card::before{z-index:0;opacity:0;
  background:radial-gradient(470px circle at 50% 46%,rgba(255,241,208,.5),rgba(241,220,168,.18) 33%,transparent 64%)}
/* hover: vysunutí dopředu + rozsvícení */
.cards--tiles .card:hover{
  transform:translateY(-14px) translateZ(60px) scale(1.02);
  border-color:rgba(241,220,168,.85);
  box-shadow:0 55px 100px -30px rgba(0,0,0,.7),0 0 85px -4px rgba(241,220,168,.55),inset 0 1px 0 rgba(255,255,255,.65);
  animation:bulbOn .6s var(--ease) forwards}
.cards--tiles .card:hover::before{opacity:1;animation:bulbFlicker .6s var(--ease)}
@keyframes bulbOn{0%{filter:brightness(.92)}12%{filter:brightness(1.22) saturate(1.12)}26%{filter:brightness(1)}44%{filter:brightness(1.2) saturate(1.12)}100%{filter:brightness(1.05) saturate(1.06)}}
@keyframes bulbFlicker{0%{opacity:0}12%{opacity:1}26%{opacity:.4}44%{opacity:1}100%{opacity:1}}

/* ===================== ROZSVÍCENÍ NADPISU (šňůra → zásuvka) ===================== */
.elec{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap;margin-bottom:1.1rem}
.elec__plug{width:64px;height:46px;flex:none;color:var(--brass)}
.elec__plug .plug{transition:none}
.reveal-ready .elec h2{color:var(--faint);text-shadow:none;transition:color .25s,text-shadow .25s}
.elec h2.is-lit{color:var(--paper);text-shadow:0 0 22px rgba(241,220,168,.6),0 0 6px rgba(241,220,168,.45);animation:flick .55s var(--ease)}
.sec--light .elec h2.is-lit{color:var(--lt-ink);text-shadow:0 0 22px rgba(201,162,91,.5)}
.elec h2.is-lit em{text-shadow:0 0 26px rgba(241,220,168,.85)}
@keyframes flick{0%{opacity:.25}12%{opacity:1}22%{opacity:.4}34%{opacity:1}48%{opacity:.65}62%{opacity:1}}

/* ===================== CIHLOVÁ ZEĎ (skládání textu) ===================== */
.brick{display:flex;flex-wrap:wrap;gap:.04em .28em}
.brick .w{display:inline-block;overflow:hidden;padding-bottom:.04em}
.brick .w>span{display:inline-block;will-change:transform}

/* ===================== VIDEO GALERIE (spektrum činností) ===================== */
.vids{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media (max-width:760px){.vids{grid-template-columns:1fr}}
.vid-card{position:relative;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--panel)}
.vid-card video{width:100%;height:100%;object-fit:cover;aspect-ratio:16/9;display:block}
.vid-card figcaption{position:absolute;left:0;right:0;bottom:0;padding:1rem 1.1rem;display:flex;flex-direction:column;
  background:linear-gradient(0deg,rgba(7,11,18,.9),transparent)}
.vid-card figcaption b{font-family:var(--display);font-weight:600;font-size:1.02rem;color:#fff}
.vid-card figcaption span{font-size:.85rem;color:#d7dde6}

/* ===================== TOAST ===================== */
.toast{position:fixed;top:84px;right:22px;z-index:90;width:min(360px,90vw);display:flex;gap:.8rem;align-items:flex-start;
  padding:.95rem 1.1rem;border-radius:14px;background:rgba(13,20,32,.94);border:1px solid var(--line-2);
  box-shadow:var(--shadow);backdrop-filter:blur(10px);transform:translateX(130%);opacity:0;transition:transform .55s var(--ease),opacity .4s}
.toast.show{transform:translateX(0);opacity:1}
.toast__ic{flex:none;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:rgba(201,162,91,.16);color:var(--brass-hi)}
.toast__tx{font-size:.9rem;line-height:1.4;color:var(--paper)}
.toast__tx b{font-family:var(--serif);font-style:italic;color:var(--brass-hi)}

/* ===================== PLOVOUCÍ RENDA — PRŮVODCE ===================== */
.guide{position:fixed;left:20px;bottom:20px;z-index:85;display:flex;align-items:flex-end;gap:.7rem;max-width:330px;
  transform:translateY(150%);opacity:0;transition:transform .6s var(--ease),opacity .5s}
.guide.show{transform:translateY(0);opacity:1}
.guide__av{width:62px;height:62px;border-radius:50%;overflow:hidden;flex:none;border:2px solid var(--brass);box-shadow:var(--shadow);background:var(--panel)}
.guide__av video{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.guide__bubble{position:relative;background:#fff;color:#14202e;padding:.7rem .9rem;border-radius:14px 14px 14px 4px;
  font-size:.9rem;line-height:1.42;box-shadow:var(--shadow)}
.guide__bubble b{font-family:var(--serif);font-style:italic;color:var(--brass-ink)}
.guide__close{position:absolute;top:-9px;right:-9px;width:22px;height:22px;border-radius:50%;background:var(--ink-2);color:var(--paper);
  border:1px solid var(--line-2);cursor:pointer;font-size:.85rem;line-height:1;display:grid;place-items:center}
@media (max-width:520px){.guide{max-width:240px;left:12px;bottom:12px}}

/* ===================== POROVNÁNÍ (jedna firma vs. sami) ===================== */
.compare{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
@media(max-width:760px){.compare{grid-template-columns:1fr}}
.compare__col{border:1px solid var(--line);border-radius:var(--r-lg);padding:1.7rem;background:var(--panel)}
.compare__col--us{border-color:rgba(241,220,168,.45);background:linear-gradient(180deg,#16243c,var(--ink-1));box-shadow:0 0 0 1px rgba(241,220,168,.16),var(--shadow)}
.compare__tag{font:600 .72rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.compare__col--us .compare__tag{color:var(--brass-hi)}
.compare__col h3{font-size:1.3rem;margin:.6rem 0 1.2rem}
.compare__list{list-style:none;margin:0;padding:0}
.compare__list li{display:flex;gap:.7rem;align-items:flex-start;padding:.65rem 0;font-size:.96rem;color:var(--muted);border-top:1px solid var(--line)}
.compare__list li:first-child{border-top:0}
.compare__col--us .compare__list li{color:var(--paper)}
.compare__ic{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;margin-top:1px}
.compare__ic--x{background:rgba(243,100,70,.14);color:#f3866a}
.compare__ic--ok{background:rgba(241,220,168,.16);color:var(--brass-hi)}
.compare__ic svg{width:13px;height:13px}

/* ===================== ŽIVÁ MAPA PŮSOBNOSTI ===================== */
.rmap{position:relative;width:100%;max-width:940px;margin:clamp(20px,4vw,40px) auto 0;aspect-ratio:1000/601}
.rmap__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.rmap__land{fill:url(#rmLand);stroke:rgba(201,162,91,.5);stroke-width:1.4;filter:drop-shadow(0 24px 60px rgba(0,0,0,.6))}
.rmap__area{position:absolute;left:80%;top:53%;width:46%;aspect-ratio:1.1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse at center,rgba(201,162,91,.22),rgba(201,162,91,.06) 46%,transparent 72%);pointer-events:none;z-index:1;filter:blur(2px)}
.rmap__radar{position:absolute;width:52%;aspect-ratio:1;left:79%;top:54%;border-radius:50%;background:conic-gradient(from 0deg,rgba(201,162,91,.22),rgba(201,162,91,.02) 26%,transparent 52%);pointer-events:none;z-index:1;animation:rmRadar 8s linear infinite;transform-origin:center}
@keyframes rmRadar{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
.rnode{position:absolute;transform:translate(-50%,-50%);z-index:4}
.rnode .dot{display:block;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f3ce8a,#c08a2d);box-shadow:0 0 0 4px rgba(201,162,91,.16),0 0 14px 2px rgba(201,162,91,.5);position:relative}
.rnode--sec .dot{width:8px;height:8px;box-shadow:0 0 0 3px rgba(201,162,91,.12),0 0 10px 1px rgba(201,162,91,.4)}
.rnode .dot::after{content:"";position:absolute;inset:-3px;border-radius:50%;border:1px solid rgba(201,162,91,.55);opacity:0;animation:rmPing 2.8s ease-out infinite}
.rnode--sec .dot::after{animation-duration:3.6s}
@keyframes rmPing{0%{transform:scale(.55);opacity:.85}70%{opacity:0}100%{transform:scale(2.8);opacity:0}}
.rnode .nm{position:absolute;left:50%;top:-10px;transform:translate(-50%,-100%);white-space:nowrap;font:700 12px/1 "Inter",sans-serif;color:rgba(255,255,255,.9);text-shadow:0 2px 10px rgba(0,0,0,.95);pointer-events:none}
.rnode--pri .nm{font-family:var(--serif);font-weight:600;font-size:15px;color:#fff}
.rnode--sec .nm{opacity:0;transition:opacity .2s}
.rnode--sec:hover .nm{opacity:1;color:var(--brass-hi)}
.rmap-legend{display:flex;gap:1.6rem;justify-content:center;flex-wrap:wrap;margin-top:1.8rem}
.rmap-legend span{display:flex;align-items:center;gap:.55rem;font-size:.92rem;color:var(--muted)}
.rmap-legend b{width:10px;height:10px;border-radius:50%;background:var(--brass);box-shadow:0 0 10px rgba(201,162,91,.6)}

/* ===================== SPODNÍ CTA (telefon/e-mail/WhatsApp + stránky) ===================== */
.endcta{text-align:center}
.endcta__btns{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center;margin-top:1.6rem}
.btn--wa{background:#25d366;color:#0a2e16;box-shadow:0 12px 30px -12px rgba(37,211,102,.6)}
.btn--wa:hover{transform:translateY(-2px);box-shadow:0 18px 40px -12px rgba(37,211,102,.75)}
.btn--mail{border:1px solid var(--line-2);color:var(--paper);background:rgba(255,255,255,.03)}
.btn--mail:hover{border-color:var(--brass);color:var(--brass-hi);transform:translateY(-2px)}
.endcta__pages{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:center;margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.endcta__page{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.1rem;border:1px solid var(--line);border-radius:12px;color:var(--muted);font-weight:600;font-size:.94rem;transition:all .25s var(--ease)}
.endcta__page:hover{border-color:var(--brass);color:var(--brass-hi);transform:translateY(-2px)}
.endcta__page svg{width:16px;height:16px;color:var(--brass)}

/* ===================== HOVER — přeneseno z Tuzemské realitní ===================== */
/* 1) video karty: záběr se přiblíží, karta se zvedne do mosazné záře */
.vid-card{transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .35s}
.vid-card video{transition:transform .8s var(--ease),filter .45s}
.vid-card figcaption{transition:transform .45s var(--ease),background .45s}
.vid-card:hover{transform:translateY(-6px);border-color:rgba(241,220,168,.5);
  box-shadow:0 42px 80px -34px rgba(0,0,0,.8),0 0 62px -20px rgba(201,162,91,.5)}
.vid-card:hover video{transform:scale(1.07);filter:saturate(1.12) brightness(1.06)}
.vid-card:hover figcaption{transform:translateY(-3px)}

/* 2) fotky realizací: pomalé přiblížení jako v dokumentu */
.ba img{transition:transform .8s var(--ease),filter .45s}
.ba figure:hover img{transform:scale(1.06);filter:brightness(1.05)}
.ba figure{transition:box-shadow .4s,border-color .35s}
.ba figure:hover{border-color:rgba(201,162,91,.45);box-shadow:0 26px 54px -30px rgba(0,0,0,.6)}
.gallery img{position:relative;transition:transform .5s var(--ease),box-shadow .4s,border-color .35s}
.gallery img:hover{transform:translateY(-4px) scale(1.02);z-index:1;
  border-color:rgba(201,162,91,.5);box-shadow:0 26px 50px -28px rgba(0,0,0,.7)}

/* 3) reference: karta se nadzvedne, uvozovka se rozsvítí */
.quote{transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s}
.quote blockquote::before{transition:color .35s,text-shadow .35s}
.quote:hover{transform:translateY(-5px);border-color:rgba(201,162,91,.45)}
.sec--light .quote:hover{box-shadow:0 30px 60px -32px rgba(20,32,46,.45)}
.sec:not(.sec--light) .quote:hover{box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.quote:hover blockquote::before{text-shadow:0 0 22px rgba(201,162,91,.65)}

/* 4) mapa: tečka města se zvětší a rozzáří (dřív jen u malých měst) */
.rnode{cursor:default}
.rnode .dot{transition:transform .3s var(--ease),box-shadow .3s}
.rnode .nm{transition:color .25s,opacity .2s}
.rnode:hover .dot{transform:scale(1.35);
  box-shadow:0 0 0 5px rgba(201,162,91,.2),0 0 26px 6px rgba(201,162,91,.75)}
.rnode:hover .nm{color:var(--brass-hi);opacity:1}

/* 5) odkazy se šipkou: šipka popojede */
.endcta__page svg,.hint a{transition:transform .3s var(--ease),color .25s}
.endcta__page:hover svg{transform:translate(3px,-3px)}

/* 6) velké karty realizací: jemné zvýraznění rámu */
.proj{transition:border-color .4s,box-shadow .4s}
.proj:hover{border-color:var(--line-2);box-shadow:0 34px 74px -44px rgba(0,0,0,.7)}

@media (prefers-reduced-motion:reduce){
  .vid-card,.vid-card video,.ba img,.gallery img,.quote,.rnode .dot,.proj{transition:none!important}
  .vid-card:hover,.quote:hover,.gallery img:hover{transform:none!important}
  .vid-card:hover video,.ba figure:hover img{transform:none!important}
}

/* ===================== DOTYKOVÉ TERČE (min. 44 px) ===================== */
@media (pointer:coarse){
  .hint a,.bubble a,.kontakt__list a,.footer a,.faq summary{
    display:inline-flex;align-items:center;min-height:44px}
  .faq summary{min-height:52px}
  .endcta__page{min-height:46px}
  .btn{min-height:46px}
  .radi__dots b{min-width:16px;min-height:16px}
  /* zavírací křížek průvodce a šipka dolů — nejmenší ovládací prvky */
  .guide__close{width:44px;height:44px;top:-14px;right:-14px;font-size:1.1rem}
  .hero__cue{width:44px;height:52px}
}

/* ===================== REVEAL ===================== */
.reveal-ready [data-reveal]{opacity:0;transform:translateY(22px)}
.reveal-ready .hero__title .line>span{display:block;will-change:transform}

@media (prefers-reduced-motion:reduce){
  .siteprogress__bar::after,.status__dot,.hero__cue span,.marquee__track,.hero__title em,.renda__plate i,.rmap__radar,.rnode .dot::after{animation:none!important}
  .reveal-ready [data-reveal]{opacity:1;transform:none}
}
