/* ===========================================================
   Turan Asia — общий стиль сайта (на основе Дизайна 3)
   Фирменные цвета: синий #004283 + золото #c8893f
   =========================================================== */
:root{
  --pri:#004283;--pri-dark:#00305f;--accent:#c8893f;--ink:#0f172a;--muted:#64748b;
  --line:#e8ecf4;--bg:#ffffff;--alt:#f4f7fb;--navy:#0f172a;
  --r:18px;--r-sm:12px;--shadow:0 18px 44px rgba(20,30,70,.12);--shadow-sm:0 8px 24px rgba(20,30,70,.08);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased}
img{display:block;width:100%;height:100%;object-fit:cover}
a{text-decoration:none;color:inherit}
.dm{font-family:'Montserrat',sans-serif}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px}
.btn{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:11px;padding:14px 24px;font-family:'Inter',sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:.2s}
.btn-pri{background:var(--pri);color:#fff}
.btn-pri:hover{background:var(--pri-dark)}
.btn-light{background:#fff;color:var(--pri);border:1.5px solid var(--pri)}
.btn-light:hover{background:var(--pri);color:#fff}
.btn-gold{background:var(--accent);color:#fff}
.btn-gold:hover{filter:brightness(.94)}
.btn-block{width:100%;justify-content:center}
.ic{width:16px;height:16px;flex:none}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:#e7eef6;color:var(--pri);font-size:12.5px;font-weight:600;padding:7px 14px;border-radius:50px}
.sec{padding:70px 0}
.sec.tight{padding:48px 0}
.sec-h{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:34px;gap:16px;flex-wrap:wrap}
.sec-h h2{font-size:34px;font-weight:700;letter-spacing:-.02em}
.sec-h p{color:var(--muted);margin-top:8px;font-size:15px}
.sec-h a{color:var(--pri);font-weight:600;font-size:14px}
.center{text-align:center}

/* ===== nav ===== */
header{position:sticky;top:0;z-index:50;background:#004283;border-bottom:1px solid rgba(255,255,255,.12)}
/* Логотип и меню прижаты влево, языки и кнопка — вправо.
   space-between растаскивал три блока по всей ширине, и меню уезжало вправо. */
.nav{display:flex;align-items:center;gap:30px;padding:14px 20px;max-width:1400px;margin:0 auto}
.logo{display:flex;align-items:center;gap:11px}
.logo-mark{height:42px;width:auto;display:block}
.logo-word{height:27px;width:auto;display:block}
.logo-img{height:70px;width:auto;display:block}
.fg .logo-img{height:77px}
.logo-on-light img{filter:none;opacity:1}
.menu{display:flex;gap:22px;list-style:none}
.menu a{font-size:15px;font-weight:500;color:#cdd9ea;white-space:nowrap}
.menu a:hover{color:#fff}
.menu a.active{color:var(--accent)}
.nav-r{display:flex;align-items:center;gap:22px;margin-left:auto}
.nav-r .btn-pri{background:#fff;color:var(--pri)}
.nav-r .btn-pri:hover{background:#e9eff6;color:var(--pri-dark)}
.lang{display:flex;gap:9px;font-size:13px;font-weight:600;color:rgba(255,255,255,.7);padding-left:22px;border-left:1px solid rgba(255,255,255,.18)}
.lang span{cursor:pointer;user-select:none;-webkit-user-select:none;transition:color .15s}
.lang span:hover{color:#fff}
.lang .on{color:#fff}
.burger{display:none;width:26px;height:26px;color:#fff;cursor:pointer}

/* ===== page banner (subpages) ===== */
.pagehero{position:relative;color:#fff;padding:74px 0 60px;overflow:hidden}
.pagehero::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(0,40,80,.84),rgba(0,40,80,.5)),var(--ph,#012a52) center/cover;z-index:0}
.pagehero .wrap{position:relative;z-index:2}
.pagehero h1{font-size:44px;font-weight:800;letter-spacing:-.02em}
.pagehero p{opacity:.92;margin-top:10px;max-width:600px;font-size:17px}
.crumbs{display:flex;gap:8px;align-items:center;font-size:13px;opacity:.85;margin-bottom:16px}
.crumbs a:hover{text-decoration:underline}

/* кнопки категорий туров */
.gseg{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px}
.gseg[hidden]{display:none}
.gseg button{border:1px solid var(--line);background:#fff;border-radius:50px;padding:9px 18px;
  font:inherit;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;transition:.18s}
.gseg button:hover{border-color:var(--pri);color:var(--pri)}
.gseg button.on{background:var(--pri);border-color:var(--pri);color:#fff}
body.dark .gseg button{background:#0c2b49;color:#c2d0e4}
body.dark .gseg button.on{background:var(--pri);color:#fff}

/* Страница экскурсии: одна колонка, без боковой панели */
.exc-page{max-width:860px;margin:30px auto 0}
.exc-page .lead-p{color:var(--muted);font-size:17px;line-height:1.7}

/* Рассказ о космодроме — колонка текста перед вопросами */
.btext{max-width:820px;margin:0 auto}
.btext p{color:var(--muted);font-size:16px;line-height:1.75}
.btext p + p{margin-top:16px}

/* Вступление к программе — до разбивки по дням.
   Цвет берём из темы: раньше он был прописан прямо в разметке
   и на тёмном фоне текст сливался. */
.prog-pre{color:var(--muted);margin-bottom:18px}

/* Экскурсии в программе тура */
.exc-list{display:grid;gap:14px}
/* внутри ленты дней блок прижимается к тексту дня */
.prog .exc-list{margin-top:12px}
.exc{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:start;
  border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff}
.exc:not(:has(.exc-ph)){grid-template-columns:1fr}
.exc{color:inherit;text-decoration:none;transition:.18s}
a.exc:hover{border-color:var(--pri);box-shadow:var(--shadow-sm)}
a.exc:hover .exc-b b{color:var(--pri)}
.exc-ph{border-radius:10px;overflow:hidden;height:82px}
.exc-ph img{width:100%;height:100%;object-fit:cover;display:block}
.exc-b b{display:block;font-size:15px;font-weight:700;margin-bottom:3px}
.exc-h{display:inline-block;font-size:12px;color:var(--pri);font-weight:600;margin-bottom:5px}
.exc-b p{color:var(--muted);font-size:14px;line-height:1.55;margin:0}
body.dark .exc{background:#0c2b49}
@media(max-width:560px){.exc{grid-template-columns:1fr}.exc-ph{height:140px}}

/* Условия, пришедшие из поиска на главной */
.fnote{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;
  padding:11px 16px;border-radius:12px;background:var(--alt);border:1px solid var(--line);
  font-size:14px;color:var(--muted)}
.fnote a{color:var(--pri);font-weight:600}
.fnote a:hover{text-decoration:underline}
body.dark .fnote{background:#0c2b49}

/* Рассказ о выбранной категории — над списком туров */
.catnote{display:grid;grid-template-columns:260px 1fr;gap:22px;align-items:center;
  background:var(--alt);border:1px solid var(--line);border-radius:18px;
  overflow:hidden;margin-bottom:24px}
.catnote[hidden]{display:none}
.catnote-ph{height:100%;min-height:170px}
.catnote-ph img{width:100%;height:100%;min-height:170px;object-fit:cover;display:block}
.catnote-b{padding:20px 24px 20px 0}
.catnote:not(:has(.catnote-ph)){grid-template-columns:1fr}
.catnote:not(:has(.catnote-ph)) .catnote-b{padding:20px 24px}
.catnote h3{font-family:'Montserrat',sans-serif;font-size:21px;font-weight:700;margin-bottom:8px}
.catnote p{color:var(--muted);font-size:15px;line-height:1.6}
body.dark .catnote{background:#0c2b49}
@media(max-width:760px){
  .catnote{grid-template-columns:1fr}
  .catnote-ph{min-height:150px}
  .catnote-ph img{min-height:150px;max-height:200px}
  .catnote-b{padding:16px 18px}
}

/* Снимок рядом с текстом превращается в карусель, когда фото несколько.
   Миниатюр нет — только плавная смена и точки для ручного переключения. */
.media-slides{position:relative}
.media-slides .hs{position:absolute;inset:0;background-size:cover;background-position:center;
  opacity:0;transition:opacity 1.1s ease}
.media-slides .hs.on{opacity:1}
.media-slides .hdots{position:absolute;left:0;right:0;bottom:14px;z-index:2;
  display:flex;gap:7px;justify-content:center}
.media-slides .hdots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55);
  cursor:pointer;transition:.2s}
.media-slides .hdots i.on{background:#fff;width:22px;border-radius:5px}

/* ===== search card / filters ===== */
.searchbar{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm);display:flex;padding:10px}
.searchbar .f{flex:1;padding:12px 18px;border-right:1px solid var(--line)}
.searchbar .f label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}
.searchbar .f .v{margin-top:4px;color:#334155;font-size:15px}
.searchbar .go{align-self:center;margin:0 6px 0 12px}

.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm);padding:14px;margin-bottom:28px}
.filters .fsearch{flex:1;min-width:200px;display:flex;align-items:center;gap:8px;background:var(--alt);border:1px solid var(--line);border-radius:10px;padding:10px 14px;color:var(--muted)}
.filters .fsearch input{border:none;background:none;outline:none;font:inherit;color:var(--ink);width:100%}
.filters select{border:1px solid var(--line);border-radius:10px;padding:11px 12px;font:inherit;color:var(--ink);background:#fff;cursor:pointer}
.seg{display:flex;background:var(--alt);border:1px solid var(--line);border-radius:10px;padding:3px}
.seg button{border:none;background:none;padding:9px 15px;border-radius:8px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;font-size:13px}
.seg button.on{background:#fff;color:var(--pri);box-shadow:var(--shadow-sm)}

/* ===== tour cards grid ===== */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm);transition:.25s}
.tc:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.tc .ph{position:relative;height:200px;flex:none}
.tc .pill{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);color:#0f172a;font-size:12px;font-weight:600;padding:6px 12px;border-radius:50px}
.tc .tag{position:absolute;top:14px;right:14px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;padding:5px 10px;border-radius:50px}
.tc .b{padding:20px;display:flex;flex-direction:column;flex:1}
.tc .b h4{font-size:18px;font-weight:700}
.tc .b .d{color:var(--muted);font-size:13.5px;margin:6px 0 16px}
.tc .b .foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px}
.tc .b .foot .p small{color:var(--muted);font-size:12px}
.tc .b .foot .p b{display:block;font-size:18px;font-weight:800;font-family:'Montserrat',sans-serif}
.tc .b .foot .btn{padding:9px 16px;font-size:13px}

/* bento (home) */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:200px 200px;gap:16px}
.bento a{position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm)}
.bento a img{transition:.5s}.bento a:hover img{transform:scale(1.06)}
.bento a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(10,15,35,.78))}
.bento a .cap{position:absolute;left:18px;bottom:16px;z-index:2;color:#fff}
.bento a .cap b{font-size:18px;font-weight:700}.bento a .cap small{display:block;opacity:.85;font-size:12.5px;margin-top:2px}
.bento .big{grid-row:span 2;grid-column:span 2}

.pager{display:flex;gap:8px;justify-content:center;margin-top:42px}
.pager a{min-width:42px;height:42px;border:1px solid var(--line);border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-weight:600;color:var(--ink)}
.pager a:hover{border-color:var(--pri);color:var(--pri)}
.pager a.on{background:var(--pri);color:#fff;border-color:var(--pri)}

/* ===== tour detail ===== */
.detail{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;align-items:start}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:6px}
.gallery .gmain{grid-column:span 4;height:400px;border-radius:var(--r);overflow:hidden;cursor:pointer}
.gallery .gthumb{height:96px;border-radius:10px;overflow:hidden;cursor:pointer;position:relative}
.gallery .gmain img,.gallery .gthumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.gallery .gmain:hover img,.gallery .gthumb:hover img{transform:scale(1.04)}
.gallery .gmain{position:relative}
/* «+N» на последней миниатюре, если фото не поместились */
.gallery .gmore{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(0,32,70,.55);color:#fff;font-weight:700;font-size:18px;letter-spacing:.5px}
/* видео в общей ленте: кнопка «плей» поверх превью */
.gallery .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
.gallery .play svg{width:34px;height:34px;color:#fff;background:rgba(0,32,70,.6);border-radius:50%;
  padding:8px 7px 8px 10px;box-shadow:0 4px 14px rgba(0,0,0,.3);transition:background .2s ease}
.gallery .gmain .play svg{width:58px;height:58px;padding:14px 12px 14px 17px}
.gallery .gmain:hover .play svg,.gallery .gthumb:hover .play svg{background:var(--pri)}
/* видео без картинки-превью (Vimeo, загруженный файл) */
.gallery .vid-bg{position:absolute;inset:0;background:linear-gradient(140deg,#0b2c4d,#004283)}

/* ===== полноэкранный просмотр фото ===== */
.lbx{position:fixed;inset:0;z-index:1000;background:rgba(8,16,32,.94);
  display:flex;align-items:center;justify-content:center;padding:56px 72px}
.lbx[hidden]{display:none}
.lbx-stage{max-width:100%;max-height:100%;width:100%;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:14px}
.lbx-cap{color:#fff;text-align:center;max-width:900px;font-size:15px;line-height:1.5;margin:0;
  text-shadow:0 1px 3px rgba(0,0,0,.6)}
.lbx img,.lbx video{max-width:100%;max-height:calc(100vh - 112px);object-fit:contain;border-radius:8px;
  box-shadow:0 30px 80px rgba(0,0,0,.5)}
/* встроенный плеер: 16:9, но не выше экрана */
.lbx-video{width:min(100%,1100px);aspect-ratio:16/9;max-height:calc(100vh - 112px);
  border-radius:8px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.5);background:#000}
.lbx-video iframe{width:100%;height:100%;display:block;border:0}
.lbx-link{color:#fff;text-align:center;word-break:break-all}
.lbx-link a{color:#9cc6f0;text-decoration:underline}
.lbx-btn{position:absolute;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);
  color:#fff;border-radius:50%;cursor:pointer;line-height:1;display:flex;align-items:center;
  justify-content:center;transition:background .2s ease}
.lbx-btn:hover{background:rgba(255,255,255,.22)}
.lbx-close{top:18px;right:18px;width:44px;height:44px;font-size:28px}
.lbx-prev,.lbx-next{top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:34px;padding-bottom:4px}
.lbx-prev{left:16px}
.lbx-next{right:16px}
.lbx-count{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);
  color:rgba(255,255,255,.8);font-size:14px;letter-spacing:.5px}
@media(max-width:600px){
  .lbx{padding:64px 12px}
  .lbx-prev,.lbx-next{width:42px;height:42px;font-size:28px}
  .lbx-prev{left:6px}.lbx-next{right:6px}
}
.meta-row{display:flex;gap:24px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin:16px 0 22px}
.meta-row span{display:flex;align-items:center;gap:7px}
.block{margin-bottom:30px}
.block h3{font-size:20px;font-weight:700;margin-bottom:14px}
.prog{list-style:none;border-left:2px solid var(--line);margin-left:8px}
.prog li{position:relative;padding:0 0 20px 24px}
.prog li::before{content:"";position:absolute;left:-7px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--pri);border:2px solid #fff}
.prog li b{display:block;font-weight:700;margin-bottom:3px}
.prog li p{color:var(--muted);font-size:14px}
.inc-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.inc-grid ul{list-style:none}
.inc-grid li{display:flex;gap:9px;align-items:flex-start;margin-bottom:10px;font-size:14px}
.inc li::before{content:"✓";color:#16a34a;font-weight:800}
.exc li::before{content:"✕";color:#dc2626;font-weight:800}
.book{position:sticky;top:88px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:24px}
.book .from{color:var(--muted);font-size:13px}
.book .price{font-size:30px;font-weight:800;font-family:'Montserrat',sans-serif;margin-bottom:4px}
.book .note{font-size:12.5px;color:var(--muted);margin-top:14px;text-align:center}
.book .wapp{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;background:#25d366;color:#fff;border-radius:11px;padding:12px;font-weight:600}

/* ===== forms ===== */
.field{margin-bottom:14px}
.field label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font:inherit;color:var(--ink);outline:none;background:#fff}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--pri);box-shadow:0 0 0 3px #e7eef6}
.field textarea{min-height:96px;resize:vertical}
.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm);padding:28px}


/* ===== accordion (разделы карточки тура) ===== */
.acc details{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:#fff;overflow:hidden;transition:box-shadow .18s}
.acc details[open]{box-shadow:var(--shadow-sm)}
.acc summary{padding:18px 20px;font-weight:700;font-size:20px;color:var(--pri);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;user-select:none;-webkit-user-select:none}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";color:var(--pri);font-size:24px;line-height:1;font-weight:400;flex:none}
.acc details[open] summary::after{content:"–"}
.acc summary:hover{color:var(--pri-dark)}
.acc .acc-b{padding:0 20px 20px;color:#475569}
.acc .acc-b .prog{margin-top:4px}
body.dark .acc details{background:#0c2b49}
body.dark .acc .acc-b{color:#c2d0e4}
body.dark .acc summary{color:#7fb0e6}
body.dark .acc summary:hover{color:#a8cbf0}

/* ===== FAQ accordion ===== */
.faq{max-width:840px;margin:0 auto}
.faq details{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:#fff;overflow:hidden}
.faq summary{padding:18px 20px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--pri);font-size:22px;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 20px 18px;color:var(--muted);font-size:14.5px}

/* ===== gallery grid ===== */
.ggrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ggrid a{height:230px;border-radius:var(--r);overflow:hidden;cursor:pointer}
.ggrid a img{transition:.5s}.ggrid a:hover img{transform:scale(1.05)}

/* ===== launches (Baikonur) ===== */
.launch{display:grid;grid-template-columns:280px 1fr auto;gap:24px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:18px}
.launch .lph{height:170px}
.launch .lb{padding:18px 0}
.launch .lb .date{display:inline-flex;align-items:center;gap:7px;background:#e7eef6;color:var(--pri);font-weight:700;font-size:13px;padding:6px 12px;border-radius:50px}
.launch .lb h4{font-size:20px;font-weight:700;margin:10px 0 6px}
.launch .lb p{color:var(--muted);font-size:14px}
.launch .lr{padding:18px 24px 18px 0;text-align:right}
.launch .lr .price{font-size:22px;font-weight:800;font-family:'Montserrat',sans-serif}
.launch .lr .seats{font-size:12.5px;color:var(--muted);margin-bottom:10px}

/* ===== stats / why / cta (shared) ===== */
.statband{background:var(--pri);color:#fff;border-radius:24px;padding:40px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.statband b{font-size:38px;font-weight:800;font-family:'Montserrat',sans-serif;display:block}
.statband span{opacity:.85;font-size:14px}
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.wc{background:var(--alt);border-radius:var(--r);padding:26px}
.wc .chip{width:48px;height:48px;border-radius:14px;background:#fff;color:var(--pri);display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:var(--shadow-sm)}
.wc h4{font-size:16px;font-weight:700;margin-bottom:7px}
.wc p{font-size:13.5px;color:var(--muted)}
.cta{position:relative;border-radius:24px;overflow:hidden;color:#fff;text-align:center;padding:64px 30px}
.cta::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(0,66,131,.94),rgba(176,138,62,.9)),url('https://images.unsplash.com/photo-1469474968028-56623f02e42e?auto=format&fit=crop&w=1600&q=80') center/cover}
.cta-in{position:relative;z-index:2}
.cta h2{font-size:38px;font-weight:800;letter-spacing:-.02em;margin-bottom:12px}
.cta p{opacity:.92;max-width:520px;margin:0 auto 26px}
.cta .btn{background:#fff;color:var(--pri)}

/* ===== about / split ===== */
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.split.r{grid-template-columns:1fr 1fr}
.media{border-radius:var(--r);overflow:hidden;height:420px;box-shadow:var(--shadow)}
.lead-p{font-size:17px;color:#475569;margin-bottom:14px}
.lics{display:flex;flex-direction:column;gap:14px}
.lic{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.lic .lg{width:54px;height:38px;background:var(--alt);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;color:var(--pri);flex:none}
.lic b{font-size:14px}.lic small{display:block;color:var(--muted);font-size:12.5px}

/* ===== reviews ===== */
.rev-tabs{display:flex;gap:8px;justify-content:center;margin-bottom:34px}
.rev-tabs button{border:1px solid var(--line);background:#fff;border-radius:50px;padding:9px 18px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer}
.rev-tabs button.on{background:var(--pri);color:#fff;border-color:var(--pri)}
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rev-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm);overflow:hidden}
.rev-card .rc-b{padding:22px}
.rev-card .top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.rev-card .av{width:46px;height:46px;border-radius:50%;overflow:hidden;flex:none}
.rev-card .top b{font-size:15px}.rev-card .top small{display:block;color:var(--muted);font-size:12.5px}
.rev-card .stars{color:var(--accent);font-size:14px}
.rev-card p{color:#475569;font-size:14px;font-style:italic}
.rev-card .ph{position:relative;height:200px}
.rev-card .ph .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.rev-card .ph .play span{width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.9);color:var(--pri);display:flex;align-items:center;justify-content:center;font-size:20px;padding-left:4px}

/* ===== contacts ===== */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.cinfo .row{display:flex;gap:13px;margin-bottom:18px}
.cinfo .row .ico{width:42px;height:42px;border-radius:12px;background:#e7eef6;color:var(--pri);display:flex;align-items:center;justify-content:center;flex:none}
.cinfo .row b{display:block;font-size:15px}.cinfo .row span{color:var(--muted);font-size:14px}
.cmap{height:340px;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);margin-top:30px}
.socials{display:flex;gap:10px;margin-top:8px}
.socials a{width:42px;height:42px;border-radius:12px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--pri)}
.socials a:hover{background:var(--pri);color:#fff;border-color:var(--pri)}

/* ===== страница одного фото или ролика ===== */
.media-one{border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);background:#0b1a2c;
  display:flex;align-items:center;justify-content:center;max-height:78vh}
.media-one img,.media-one video{width:auto;max-width:100%;max-height:78vh;height:auto;object-fit:contain;display:block}
.media-one.video{aspect-ratio:16/9;width:100%}
.media-one.video iframe{width:100%;height:100%;border:0;display:block}

/* ===== галерея: список альбомов ===== */
.albums{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.album{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm);transition:.25s}
.album:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.album .ph{display:block;height:210px;flex:none;overflow:hidden}
.album .ph img{transition:transform .5s ease}
.album:hover .ph img{transform:scale(1.05)}
.album .b{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.album .b b{font-size:17px;font-weight:700}
.album .b small{display:block;color:var(--muted);font-size:13.5px;margin-top:5px}
.album .cnt{margin-top:auto;padding-top:14px;color:var(--pri);font-size:13px;font-weight:600}
body.dark .album{background:#0c2b49}
@media(max-width:980px){.albums{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.albums{grid-template-columns:1fr}}

/* ===== список документов + согласие в форме ===== */
.doclist{display:flex;flex-direction:column;gap:12px}
.doc{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);
  border-radius:var(--r-sm);padding:16px 18px;transition:.2s}
.doc:hover{border-color:var(--pri);box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.doc-ic{width:38px;height:38px;border-radius:10px;background:#e7eef6;color:var(--pri);flex:none;
  display:flex;align-items:center;justify-content:center}
.doc-ic svg{width:19px;height:19px}
.doc b{display:block;font-size:15px;font-weight:700;color:var(--ink)}
.doc small{display:block;color:var(--muted);font-size:13px;margin-top:2px;line-height:1.45}

.agree{display:flex;gap:10px;align-items:flex-start;margin:4px 0 16px;font-size:13.5px;
  color:var(--muted);line-height:1.5;cursor:pointer}
.agree input{width:18px;height:18px;margin-top:1px;flex:none;accent-color:var(--pri);cursor:pointer}
.agree a{color:var(--pri);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn:disabled:hover{background:var(--pri)}
body.dark .doc{background:#0c2b49}
body.dark .doc b{color:var(--ink)}

/* ===== юридические тексты (условия, политика) ===== */
.legal{max-width:840px;margin:0 auto;font-size:15.5px;line-height:1.75;color:#334155}
.legal h2{font-size:24px;font-weight:800;color:var(--pri);margin:40px 0 14px;scroll-margin-top:96px}
.legal h2:first-of-type{margin-top:0}
.legal h3{font-size:17px;font-weight:700;color:var(--ink);margin:24px 0 8px}
.legal p{margin-bottom:14px}
.legal ul{margin:0 0 14px 20px}
.legal li{margin-bottom:9px}
.legal a{color:var(--pri);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.legal-toc{background:var(--alt);border:1px solid var(--line);border-radius:var(--r);padding:22px 26px;margin-bottom:40px}
.legal-toc b{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:12px}
.legal-toc ol{margin-left:18px}
.legal-toc li{margin-bottom:6px;font-size:14.5px}
.legal-toc a{font-weight:500;text-decoration:none;color:var(--ink)}
.legal-toc a:hover{color:var(--pri);text-decoration:underline}
.legal-note{background:#fdf5e9;border:1px solid #eddcbe;border-left:4px solid var(--accent);border-radius:10px;padding:16px 20px;margin-bottom:14px}
.legal-note p{margin:0;font-size:14.5px}
/* вступление к оферте */
.legal-lead{background:var(--alt);border-left:4px solid var(--pri);border-radius:10px;padding:20px 24px;margin-bottom:36px}
.legal-lead p:last-child{margin-bottom:0}
/* реквизиты — плотным списком */
.req-line{margin-bottom:7px}
/* строки бланка заявки */
.form-line{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;
  color:var(--muted);word-break:break-word;margin-bottom:10px}
.table-wrap{overflow-x:auto;margin:14px 0 22px}
.form-table{border-collapse:collapse;width:100%;min-width:640px;font-size:13.5px}
.form-table th,.form-table td{border:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}
.form-table th{background:var(--alt);font-weight:600;color:var(--ink);white-space:nowrap}
.form-table td{height:34px}
body.dark .legal-lead{background:#0b2746}
body.dark .form-table th{background:#11375c}
.legal-upd{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:13.5px}
body.dark .legal{color:#c2d0e4}
body.dark .legal h3{color:var(--ink)}
body.dark .legal-toc{background:#0b2746}
body.dark .legal-toc a{color:var(--ink)}
body.dark .legal-note{background:#2a2214;border-color:#4a3c22}

/* ===== coming soon ===== */
.soon{text-align:center;max-width:640px;margin:0 auto;padding:80px 20px}
.soon .big{width:88px;height:88px;border-radius:24px;background:#e7eef6;color:var(--pri);display:flex;align-items:center;justify-content:center;margin:0 auto 24px}
.soon h1{font-size:36px;font-weight:800;margin-bottom:12px}
.soon p{color:var(--muted);font-size:16px;margin-bottom:26px}

/* ===== footer ===== */
footer{background:var(--pri);color:#cdd9ea;margin-top:20px}
.fg{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;padding:56px 0 30px}
.fg h5{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}
.fg .logo{margin-bottom:14px}
.fg .logo-mark{height:46px}.fg .logo-word{height:30px}
.fg p{font-size:13.5px;opacity:.75;line-height:1.6;max-width:250px}
.fg ul{list-style:none}.fg li{font-size:14px;opacity:.8;margin-bottom:9px}
.fg .ct{font-size:13.5px;opacity:.8;margin-bottom:9px}
.fbar{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;display:flex;justify-content:space-between;font-size:12.5px;opacity:.65;flex-wrap:wrap;gap:10px}
.fbar .l{display:flex;gap:22px}

/* ===== responsive ===== */
/* Семь пунктов меню + языки перестают помещаться раньше, чем срабатывает
   основная мобильная граница, поэтому шапка перестраивается отдельно. */
@media(max-width:1320px){
  /* «Связаться» дублирует пункт «Контакты» — освобождаем место меню */
  .nav-r .btn-pri{display:none}
}
@media(max-width:1180px){
  .menu{display:none}.burger{display:block}
  header.open .menu{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:#004283;padding:6px 0;box-shadow:0 14px 30px rgba(0,0,0,.25);gap:0;border-top:1px solid rgba(255,255,255,.12)}
  header.open .menu a{padding:13px 28px}
  /* Переключатель языка остаётся в шапке: прятать его в бургер неудобно */
  .nav{gap:14px;padding:12px 18px}
  .nav-r{gap:14px}
  .lang{padding-left:0;border-left:none;gap:2px}
  .lang span{padding:7px 6px;border-radius:7px}   /* палец попадает уверенно */
  .lang .on{background:rgba(255,255,255,.14)}
  .logo-img{height:54px}
}
@media(max-width:980px){
  .tgrid{grid-template-columns:1fr 1fr}
  .statband{grid-template-columns:1fr 1fr;gap:28px 12px}
  .why{grid-template-columns:1fr 1fr}.fg{grid-template-columns:1fr 1fr}
  .bento{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}.bento .big{grid-column:span 2}.bento a{height:190px}
  .detail{grid-template-columns:1fr}
  .book{position:static}
  .contact-grid,.split,.split.r{grid-template-columns:1fr;gap:30px}
  .rgrid{grid-template-columns:1fr 1fr}
  .launch{grid-template-columns:1fr}.launch .lph{height:200px}.launch .lr{text-align:left;padding:0 18px 18px}
  .searchbar{flex-wrap:wrap}.searchbar .f{flex:1 1 40%;border:none}
  .pagehero h1{font-size:34px}
}
@media(max-width:600px){
  /* «Связаться» дублируется пунктом меню — уступаем место языкам */
  .nav-r .btn-pri{display:none}
  .nav{gap:10px;padding:10px 16px}
  .nav-r{gap:10px}
  .logo-img{height:46px}
  .tgrid,.rgrid,.ggrid,.inc-grid{grid-template-columns:1fr}
  .bento{grid-template-columns:1fr}.bento .big{grid-column:auto}
  .why,.fg{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(3,1fr)}
  .cta h2{font-size:28px}.sec{padding:52px 0}
}

/* ===== Тёмная тема (синий фон) ===== */
.theme-btn{width:38px;height:38px;border-radius:9px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.theme-btn:hover{background:rgba(255,255,255,.12)}
.theme-btn.on{background:rgba(200,137,63,.2);border-color:var(--accent);color:var(--accent)}
.theme-btn svg{width:18px;height:18px}
body.dark{--bg:#06203a;--ink:#e9eff7;--muted:#9fb1c9;--line:rgba(255,255,255,.12);--alt:#0b2c4d;background:#06203a}
body.dark .tc,
body.dark .searchbar,
body.dark .filters,
body.dark .filters select,
body.dark .form-card,
body.dark .book,
body.dark .rev-card,
body.dark .lic,
body.dark .field input,
body.dark .field select,
body.dark .field textarea,
body.dark .hero-art .chip{background:#0c2b49;color:var(--ink)}
body.dark .wc,
body.dark .seg{background:#0b2746}
body.dark .wc .chip,
body.dark .filters .fsearch,
body.dark .lic .lg,
body.dark .cinfo .row .ico,
body.dark th,
body.dark .seg button.on{background:#11375c;color:#cfe0f5}
body.dark .btn-light{background:#0c2b49;color:var(--ink);border-color:var(--line)}
body.dark .faq details{background:#0c2b49}
/* Карточка запуска Байконура: белый фон, а текст наследуется из темы —
   без этого правила заголовок и цена сливались с подложкой. */
body.dark .launch{background:#0c2b49}
body.dark .launch .lb .date{background:rgba(90,160,225,.18);color:#bcd6f2}
body.dark .rev-tabs button{background:#0c2b49;color:#c2d0e4}
body.dark .rev-tabs button.on{background:var(--pri);color:#fff;border-color:var(--pri)}
body.dark .eyebrow{background:rgba(90,160,225,.18);color:#bcd6f2}
body.dark .searchbar .f .v,
body.dark .lead-p,
body.dark .rev-card p{color:#c2d0e4}
body.dark .socials a{color:#bcd6f2}
body.dark .pager a{color:var(--ink)}
body.dark .sec-h a{color:#7fb0e6}

/* очень узкие экраны (320–380 px) */
@media(max-width:380px){
  .nav{gap:8px;padding:10px 12px}
  .nav-r{gap:8px}
  .logo-img{height:40px}
  .lang{font-size:12px}
  .lang span{padding:6px 4px}
  .theme-btn{width:34px;height:34px}
}
