:root{
  --red:#e52233; --red-d:#c4162a; --ink:#181510; --dark:#151310;
  --tint:#f6f3ee; --muted:#6c665f; --line:#e7e2d8; --white:#fff;
}
*{box-sizing:border-box; margin:0; padding:0;}
body{font-family:-apple-system,"Helvetica Neue","Segoe UI",Arial,sans-serif; color:var(--ink); background:var(--white); line-height:1.65; -webkit-print-color-adjust:exact;}
h1,h2,h3,h4{font-family:"Avenir Next","Segoe UI",sans-serif; font-weight:600; letter-spacing:-.02em; line-height:1.13;}
.serif{font-family:Georgia,"Times New Roman",serif;}
.wrap{max-width:1120px; margin:0 auto; padding:0 44px;}
.narrow{max-width:760px; margin:0 auto; padding:0 44px;}
a{color:inherit; text-decoration:none;}
.eyebrow{font-size:12px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--red);}
.btn{display:inline-block; padding:15px 30px; font-size:14px; font-weight:700; letter-spacing:.04em; border-radius:2px; background:var(--red); color:#fff; transition:.2s;}
.btn:hover{background:var(--red-d);}
.btn.line{background:transparent; border:1.5px solid rgba(255,255,255,.6); color:#fff;}

.reveal{opacity:0; transform:translateY(22px); transition:opacity .8s ease, transform .8s ease;}
.reveal.in{opacity:1; transform:none;}

header{position:absolute; top:0; left:0; right:0; z-index:10;}
header.solid{background:var(--dark);}
.nav{display:flex; align-items:center; justify-content:space-between; padding:24px 44px; max-width:1240px; margin:0 auto;}
.brandwrap{display:flex; align-items:center; gap:14px;}
.nav .logo{height:38px; filter:brightness(0) invert(1);}
.badge-isotra{font-size:11px; font-weight:700; letter-spacing:.15em; color:#fff; border-left:1px solid rgba(255,255,255,.3); padding-left:14px;}
.badge-isotra b{color:var(--red);}
.menu{display:flex; gap:30px; font-size:14px; color:rgba(255,255,255,.9);}
.menu a:hover{color:#fff;}
.nav-phone{color:#fff; font-size:15px; font-weight:700;}

.subhero{position:relative; min-height:540px; display:flex; align-items:flex-end; color:#fff;}
.subhero::before{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,10,10,.42), rgba(10,10,10,.15) 42%, rgba(10,10,10,.72));}
.subhero .in{position:relative; padding-bottom:56px;}
.crumb{font-size:13px; color:rgba(255,255,255,.72); margin-bottom:18px;}
.subhero h1{font-size:56px; margin-bottom:14px;}
.subhero p{font-size:19px; color:rgba(255,255,255,.92); max-width:540px;}

.lead{padding:92px 0 20px;}
.lead .serif{font-size:27px; line-height:1.5; color:#2c2820; font-weight:400;}
.lead .serif b{color:var(--red); font-weight:400; font-style:italic;}

.stats{max-width:1120px; margin:0 auto; padding:56px 44px; display:grid; grid-template-columns:repeat(3,1fr); gap:40px; border-bottom:1px solid var(--line);}
.stat .num{font-size:44px; font-weight:600; font-family:"Avenir Next",sans-serif; letter-spacing:-.02em;}
.stat .num small{color:var(--red);}
.stat p{font-size:15px; color:var(--muted); margin-top:6px;}

section{padding:84px 0;}
section.tint{background:var(--tint);}
.sec-h{margin-bottom:16px;}
h2{font-size:34px;}
.sec-lead{font-size:17px; color:var(--muted); max-width:640px; margin-top:12px;}

.benefits{display:grid; grid-template-columns:repeat(2,1fr); gap:8px 46px; margin-top:36px;}
.ben{display:flex; gap:16px; padding:20px 0; border-top:1px solid var(--line);}
.ben .bi{color:var(--red); font-size:19px; min-width:24px; line-height:1.5;}
.ben h3{font-size:17px; margin-bottom:4px;}
.ben p{font-size:14.5px; color:var(--muted);}

.imgband{height:360px; background-size:cover; background-position:center;}

.cards3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:42px;}
.cards2{display:grid; grid-template-columns:repeat(2,1fr); gap:22px; margin-top:42px;}
.card{background:var(--white); border:1px solid var(--line); border-radius:10px; overflow:hidden;}
.card .cimg{height:210px; background-size:cover; background-position:center;}
.card .cbody{padding:26px 28px;}
.card .prof{background:var(--tint); height:120px; display:flex; align-items:center; justify-content:center; border-bottom:1px solid var(--line);}
.card .tagbig{font-size:26px; font-weight:600; font-family:"Avenir Next",sans-serif; color:var(--red); margin-bottom:8px;}
.card h3{font-size:18px; margin-bottom:8px;}
.card p{font-size:14.5px; color:var(--muted);}

.models{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:42px;}
.model{border:1px solid var(--line); border-radius:10px; overflow:hidden; background:#fff;}
.model .mimg{height:180px; background:var(--tint); display:flex; align-items:center; justify-content:center;}
.model .mimg img{max-height:150px; max-width:78%;}
.model .mb{padding:16px 18px 20px;}
.model h4{font-size:16px; margin-bottom:3px;}
.model span{font-size:13px; color:var(--muted);}

.controls{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:40px;}
.ctl{padding:24px 0; border-top:2px solid var(--ink);}
.ctl h3{font-size:18px; margin-bottom:8px;}
.ctl p{font-size:14.5px; color:var(--muted);}

/* WHY ISOTRA */
.why{background:var(--dark); color:#f0ede8;}
.why .eyebrow{color:var(--red);}
.why h2{color:#fff; margin:16px 0 0; max-width:640px;}
.why .lead-w{font-size:17px; color:#b0aaa0; margin-top:16px; max-width:640px;}
.why-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:34px 44px; margin-top:56px;}
.why-item{padding-top:22px; border-top:1px solid #322e28;}
.why-item h3{color:#fff; font-size:17px; margin-bottom:8px;}
.why-item p{font-size:14.5px; color:#a29c92; line-height:1.6;}
.why .close{margin-top:52px; font-size:16px; color:#d8d3c9; max-width:720px; border-left:2px solid var(--red); padding-left:20px;}

.price-wrap{display:flex; justify-content:center;}
.price-box{background:var(--dark); color:#fff; border-radius:14px; padding:40px 44px; max-width:480px; width:100%; text-align:center;}
.price-box .from{font-size:13px; color:#b3aea4; letter-spacing:.08em; text-transform:uppercase;}
.price-box .big{font-size:46px; font-weight:600; font-family:"Avenir Next",sans-serif; margin:8px 0 4px;}
.price-box .big small{color:var(--red);}
.price-box .note{font-size:13.5px; color:#9c968b; margin:12px 0 24px;}
.price-box .btn{width:100%; text-align:center;}

.faq{max-width:820px; margin:0 auto;}
details{border-bottom:1px solid var(--line); padding:22px 0;}
summary{font-size:18px; font-weight:600; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:20px;}
summary::-webkit-details-marker{display:none;}
summary::after{content:"+"; color:var(--red); font-size:24px;}
details[open] summary::after{content:"–";}
details p{font-size:15.5px; color:var(--muted); margin-top:14px;}

.cta{background:var(--red); color:#fff; text-align:center;}
.cta h2{color:#fff; font-size:40px; margin-bottom:12px;}
.cta p{color:#ffdfe2; font-size:18px; margin-bottom:28px;}
.cta .btn{background:#fff; color:var(--red);}
.cta .btn:hover{background:#f1f1f1;}

footer{background:var(--dark); color:#8a857c; padding:42px 0; font-size:14px;}
.foot{display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; align-items:center;}
.foot .fb{color:#fff; font-size:18px; font-weight:600;} .foot .fb b{color:var(--red);}

/* mobilní menu (hamburger) — tlačítko i panel injektuje site.js */
.navtoggle{display:none; flex-direction:column; justify-content:center; background:none; border:0; cursor:pointer; padding:8px; margin-left:16px; z-index:31;}
.navtoggle span{display:block; width:24px; height:2px; background:#fff; margin:4px 0; transition:transform .25s, opacity .25s;}
.navtoggle.open span:nth-child(1){transform:translateY(6px) rotate(45deg);}
.navtoggle.open span:nth-child(2){opacity:0;}
.navtoggle.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
.mobmenu{position:fixed; top:0; left:0; right:0; background:var(--dark); transform:translateY(-100%); transition:transform .28s ease; padding:84px 26px 30px; z-index:30; box-shadow:0 20px 40px rgba(0,0,0,.35);}
.mobmenu.open{transform:translateY(0);}
.mobmenu a{display:block; color:#fff; font-size:19px; padding:14px 0; border-bottom:1px solid rgba(255,255,255,.1);}
.mobmenu a:last-child{border-bottom:0;}
.mobmenu .mob-phone{color:var(--red); font-weight:700;}
body.menu-open{overflow:hidden;}

@media (max-width: 820px){
  html,body{max-width:100%; overflow-x:hidden;}
  .wrap,.narrow{padding:0 22px;}
  .nav{padding:16px 22px;}
  .menu,.badge-isotra{display:none;}
  .nav .nav-phone{display:none;}   /* telefon je v rozbaleném menu (mob-phone) */
  .navtoggle{display:flex;}
  .subhero{min-height:480px;}
  .subhero .in{padding-bottom:44px;}
  .subhero h1{font-size:34px;}
  .subhero p{font-size:16px;}
  .lead{padding:52px 0 6px;}
  .lead .serif{font-size:20px;}
  .stats{grid-template-columns:1fr; gap:24px; padding:38px 22px;}
  .stat .num{font-size:34px;}
  section{padding:54px 0;}
  h2{font-size:26px;}
  .sec-lead{font-size:15px;}
  .benefits{grid-template-columns:1fr; gap:0;}
  .cards2,.cards3,.controls,.why-grid{grid-template-columns:1fr; gap:16px;}
  .models{grid-template-columns:1fr 1fr; gap:12px;}
  .imgband{height:220px;}
  .why-grid{margin-top:36px;}
  .why-item{padding-top:16px;}
  .why .close{margin-top:34px; font-size:15px;}
  .price-box{padding:30px 24px;}
  .price-box .big{font-size:38px;}
  .cta h2{font-size:27px;}
  .foot{flex-direction:column; align-items:flex-start; gap:8px;}
}
