/* ══════════════════════════════════════════════════════════════════
   SMĚR 1 — samostatný brand „OTTEVA REALITY"
   Vlastní tvář: živý 3D byt hned v heru, jeden tmavý pás pro majitele.
   Tokeny ze `_spolecne/zaklad.css`, žádné nové barvy mimo paletu.
   ══════════════════════════════════════════════════════════════════ */

/* ── navigace ───────────────────────────────────────────────────── */
.nav{position:fixed;top:0;left:0;right:0;z-index:60;
  transition:background .5s var(--tah),box-shadow .5s var(--tah)}
.nav.pri-scrollu{background:rgba(249,246,241,.9);
  -webkit-backdrop-filter:saturate(1.4) blur(18px);backdrop-filter:saturate(1.4) blur(18px);
  box-shadow:0 1px 0 rgba(232,222,203,.9),0 .6rem 1.6rem rgba(46,42,37,.05)}
.nav-in{min-height:var(--nav-v);display:flex;align-items:center;gap:1.6rem}
.logo{font-family:Outfit,Inter,sans-serif;font-size:.9rem;letter-spacing:.4em;
  text-indent:.4em;text-transform:uppercase;text-decoration:none;flex:0 0 auto}
.logo span{color:var(--zlato)}
.menu{display:flex;gap:1.7rem;margin-left:auto}
.menu a{text-decoration:none;font-size:.9rem;color:var(--tlumene);position:relative;
  padding:.2rem 0;transition:color .35s var(--tah)}
.menu a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;
  background:var(--zlato);transition:right .45s var(--tah)}
.menu a:hover{color:var(--inkoust)}
.menu a:hover::after{right:0}
/* obě skupiny mají `margin-left:auto` — volné místo se rozdělí mezi ně;
   když se menu na mobilu schová, tlačítka zůstanou vpravo */
.nav-akce{display:flex;align-items:center;gap:.55rem;flex:0 0 auto;margin-left:auto}

/* ── hero ───────────────────────────────────────────────────────── */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;
  overflow:hidden;padding:calc(var(--nav-v) + 2rem) 0 3rem}
.hero-scena{position:absolute;inset:0;z-index:0;background:var(--krem)}
.hero-scena iframe{width:100%;height:100%;border:0;display:block}
.hero-scena img{width:100%;height:100%;object-fit:cover}
/* závoj musí být silný přes celý sloupec s textem (do ~55 % šířky) a teprve
   pak pustit fotku — změřeno na snímku, při slabším závoji je podtext nečitelný */
.hero-zavoj{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(100deg,
      rgba(249,246,241,.99) 0%, rgba(249,246,241,.98) 44%,
      rgba(249,246,241,.82) 62%, rgba(249,246,241,.26) 80%, rgba(249,246,241,0) 96%),
    linear-gradient(rgba(249,246,241,.88), rgba(249,246,241,0) 20%)}
.hero-text{position:relative;z-index:2;max-width:44rem}
.hero-text .podtext{color:rgba(46,42,37,.80)}
.hero-text .znacka{display:block;margin-bottom:1.5rem}
.hero-text h1{max-width:20ch}
.hero-akce{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2.1rem}
.hero-zive{display:flex;align-items:center;gap:.6rem;margin-top:1.9rem;
  font-size:.88rem;color:rgba(46,42,37,.78);max-width:46ch}
.hero-zive .tep{flex:0 0 auto;width:.5rem;height:.5rem;border-radius:50%;
  background:var(--zlato);animation:tep 1.8s ease-in-out infinite}
@keyframes tep{0%,100%{opacity:.25;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}

/* ── pás čísel ──────────────────────────────────────────────────── */
.pas{border-top:1px solid var(--linka);border-bottom:1px solid var(--linka);
  background:var(--list)}
.pas-mriz{display:grid;grid-template-columns:repeat(4,1fr);
  padding:clamp(1.6rem,3vw,2.4rem) 0}
.pas-mriz div{padding:0 1.4rem;border-left:1px solid var(--linka)}
.pas-mriz div:first-child{border-left:0;padding-left:0}
.pas-mriz b{display:block;font-family:Outfit,Inter,sans-serif;font-weight:400;
  font-size:clamp(1.5rem,2.8vw,2.1rem);color:var(--zlato);line-height:1.1}
.pas-mriz span{display:block;margin-top:.45rem;font-size:.88rem;color:var(--tlumene)}

/* ── úseky ──────────────────────────────────────────────────────── */
.usek{padding:clamp(4rem,8.5vw,7.5rem) 0}
.hlava{display:grid;grid-template-columns:1.15fr .85fr;gap:2.5rem;align-items:end;
  margin-bottom:clamp(2.2rem,4.5vw,3.4rem)}
.hlava .podtext{margin-top:0}

.mriz-inzeratu{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem}
.pod-mrizi{margin-top:1.4rem}

/* tmavý pás pro majitele */
.tmavy{background:#24211D;color:var(--krem);position:relative;overflow:hidden}
.tmavy::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(52% 60% at 78% 22%, rgba(197,160,89,.16), transparent 70%)}
.tmavy .obal{position:relative;z-index:1}
.tmavy h2{color:var(--krem)}
.svetly{color:rgba(249,246,241,.64)!important}
.majitel-mriz{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(2rem,5vw,4rem);
  align-items:start}
.majitel-obraz{width:100%;border-radius:1.1rem;border:1px solid rgba(197,160,89,.28);
  margin-bottom:1.4rem;aspect-ratio:16/9;object-fit:cover}
.body{margin-top:2.2rem;display:grid;gap:1.35rem}
.body li{border-top:1px solid rgba(197,160,89,.26);padding-top:1.1rem}
.body b{display:block;font-family:Outfit,Inter,sans-serif;font-weight:400;
  font-size:1.08rem;color:var(--zlato);margin-bottom:.3rem}
.body span{display:block;color:rgba(249,246,241,.62);font-size:.96rem;max-width:46ch}
.body-svetle li{border-top-color:var(--linka)}
.body-svetle span{color:var(--tlumene)}
.tmavy .drobne{color:rgba(249,246,241,.42);margin-top:2rem;max-width:52ch}

/* pro zájemce */
.zajemce-mriz{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4rem);
  align-items:start}

/* pás OTTEVA */
.otteva-pas{background:var(--list);border-top:1px solid var(--linka);
  padding:clamp(3rem,6vw,5rem) 0}
.otteva-mriz{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);
  align-items:center}
.otteva-mriz .znacka{display:block;margin-bottom:1.1rem}
.otteva-mriz h3{font-size:clamp(1.3rem,2.4vw,1.7rem)}
.otteva-mriz .odkaz-zlat{margin-top:1.6rem}
.otteva-mriz img{border-radius:1.1rem;border:1px solid var(--linka);
  aspect-ratio:16/9;object-fit:cover}

/* pata */
.pata{border-top:1px solid var(--linka);padding:2.4rem 0 3rem}
.pata-in{display:flex;justify-content:space-between;gap:2rem;align-items:flex-start}
.pata .drobne{max-width:48ch;text-align:right}

/* ── mobil ──────────────────────────────────────────────────────── */
@media (max-width:1100px){
  .mriz-inzeratu{grid-template-columns:repeat(2,1fr)}
  .hlava{grid-template-columns:1fr;align-items:start}
}
@media (max-width:760px){
  .logo{font-size:.76rem;letter-spacing:.24em;text-indent:.24em}
  .hero{min-height:auto;padding:calc(var(--nav-v) + 1.5rem) 0 2.5rem}
  .hero-scena{position:relative;inset:auto;height:52vh;min-height:20rem;
    border-radius:1.1rem;overflow:hidden;margin-bottom:1.8rem}
  .hero-zavoj{display:none}
  .hero-text{max-width:none}
  .hero{display:block}
  .pas-mriz{grid-template-columns:1fr 1fr;gap:1.4rem 0}
  .pas-mriz div{padding:0 1rem;border-left:0}
  .pas-mriz div:nth-child(2n){border-left:1px solid var(--linka)}
  .mriz-inzeratu{grid-template-columns:1fr}
  .majitel-mriz,.zajemce-mriz,.otteva-mriz{grid-template-columns:1fr}
  .otteva-mriz img{order:-1}
  .pata-in{flex-direction:column}
  .pata .drobne{text-align:left}
}
