/* ============================================================
   Уфа-Бетон — стили главной (hero 2 колонки + форма).
   Отдельный файл, чтобы не править замусоренный style2.css.
   Подключается после color.css в connect_js_css.php.
   ============================================================ */
:root{
  --ufa-orange:#dc901e;
  --ufa-orange-d:#c47d12;
  --ufa-navy:#143258;
  --ufa-navy-d:#0e2440;
}

/* <picture> от ufa_pic() не должна создавать свой бокс — img ведёт себя как прямой потомок */
picture{display:contents;}

/* ======================= ШАПКА ======================= */
/* Sticky-шапка (десктоп): прилипает при прокрутке */
@media (min-width:768px){
  .abs_h{
    position:sticky; top:0; z-index:1000;
    background:#fff;
    transition:box-shadow .2s ease;
  }
  /* нейтрализуем старый JS (.wow=fixed, .wow_no=opacity:0) — компактностью управляем сами */
  .header_slick.wow,
  .header_slick.wow_no{ position:static !important; opacity:1 !important; box-shadow:none !important; }
  /* компактный режим при скролле (класс .uheader-min вешает мини-JS в header.php):
     прячем тёмный топ-бар и строку с логотипом/поиском — остаётся только полоса меню */
  .abs_h.uheader-min .header_slick{ display:none !important; }
  .abs_h.uheader-min .bbtm_logo{ display:none !important; }
  .abs_h.uheader-min{ box-shadow:0 3px 14px rgba(20,40,70,.1); }
}

/* Полировка поиска — скруглить, оранжевый фокус */
.header_search{
  border:1px solid #d7dee6; border-radius:10px;
  transition:border-color .15s, box-shadow .15s;
}
.header_search:focus{
  border-color:var(--ufa-orange); box-shadow:0 0 0 3px rgba(220,144,30,.15); outline:none;
}
/* логотип — ссылка не должна менять размер картинки */
.big_logo a{ display:inline-flex; align-items:center; line-height:0; }
.big_logo a img, .bl_img{ max-width:100%; height:auto; }
/* ссылки под поиском */
.links_block a{ transition:color .15s; }
.links_block a:hover{ color:var(--ufa-orange); }
/* телефон в правой части шапки — ховер (без утолщения, чтобы номер не обрезался) */
.big_phone a:hover{ color:var(--ufa-orange); }

/* ---------- HERO ---------- */
.ufa_hero{ padding:22px 0 30px; }
.ufa_hero_grid{
  display:grid;
  grid-template-columns:1.55fr 1fr;
  gap:24px;
  align-items:stretch;
}

/* левый блок — фото с УТП */
.ufa_hero_left{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  min-height:440px;
  background:url('/assets/img/beton/ufa-gl.jpg') center center / cover no-repeat;
  display:flex;
  align-items:flex-end;
}
.ufa_hero_left_overlay{
  position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(13,28,52,.88) 0%, rgba(13,28,52,.58) 45%, rgba(13,28,52,.12) 100%);
}
.ufa_hero_left_in{
  position:relative; z-index:2;
  padding:36px 40px;
  max-width:580px;
  color:#fff;
}
.ufa_hero_title{
  font-size:38px; line-height:1.12; font-weight:800;
  margin:0 0 18px; color:#fff;
}
.ufa_hero_utp{ list-style:none; padding:0; margin:0 0 26px; }
.ufa_hero_utp li{
  position:relative; padding-left:30px; margin-bottom:12px;
  font-size:17px; line-height:1.35; color:#eef2f7;
}
.ufa_hero_utp li::before{
  content:""; position:absolute; left:0; top:2px; width:19px; height:19px; border-radius:50%;
  background:var(--ufa-orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/11px no-repeat;
}
.ufa_hero_btn{
  display:inline-flex; align-items:center; gap:10px;
  background:var(--ufa-orange); color:#fff !important;
  font-weight:700; text-transform:uppercase; letter-spacing:.5px; font-size:14px;
  padding:15px 28px; border-radius:8px; text-decoration:none; transition:background .2s;
}
.ufa_hero_btn:hover{ background:var(--ufa-orange-d); }
.ufa_hero_btn svg{ fill:#fff; }

/* правый блок — форма */
.ufa_hero_form{
  background:#fff; border:1px solid #e7ebf0; border-radius:16px;
  padding:28px 26px; box-shadow:0 10px 30px rgba(20,40,70,.08);
  display:flex; flex-direction:column;
}
.ufa_hero_badge{
  align-self:flex-start; background:#eaf1f8; color:var(--ufa-navy);
  font-weight:700; font-size:12px; text-transform:uppercase; letter-spacing:.4px;
  padding:7px 14px; border-radius:20px; margin-bottom:14px;
}
.ufa_hero_form_h{ font-size:23px; font-weight:800; color:var(--ufa-navy); line-height:1.15; margin-bottom:8px; }
.ufa_hero_form_sub{ color:#6a7686; font-size:14px; line-height:1.4; margin-bottom:18px; }
.ufa_hero_inp{
  width:100%; border:1px solid #d7dee6; border-radius:10px;
  padding:13px 15px; font-size:15px; margin-bottom:12px; outline:none;
  transition:border-color .15s, box-shadow .15s; background:#fff; font-family:inherit;
}
.ufa_hero_inp:focus{ border-color:var(--ufa-orange); box-shadow:0 0 0 3px rgba(220,144,30,.15); }
.ufa_hero_area{ resize:vertical; min-height:62px; }

/* телефон с флагом РФ и префиксом +7 */
.ufa_hero_phone{
  display:flex; border:1px solid #d7dee6; border-radius:10px; background:#fff; overflow:hidden;
  margin-bottom:12px; transition:border-color .15s, box-shadow .15s;
}
.ufa_hero_phone:focus-within{ border-color:var(--ufa-orange); box-shadow:0 0 0 3px rgba(220,144,30,.15); }
.ufa_hero_phone_pre{
  display:flex; align-items:center; gap:7px; padding:0 13px;
  background:#f2f5f8; font-weight:700; font-size:15px; color:var(--ufa-navy);
}
.ufa_hero_phone input{
  flex:1; min-width:0; border:0; background:transparent; padding:13px 14px;
  font-size:15px; font-family:inherit; outline:none;
}
.ufa_ru_flag{
  width:22px; height:15px; border-radius:2px; display:block; border:1px solid #d7dde4;
  background:linear-gradient(#fff 0 33.33%, #0039a6 33.33% 66.66%, #d52b1e 66.66%);
}
.ufa_hero_consent{
  display:flex; gap:9px; align-items:flex-start;
  font-size:12.5px; color:#6a7686; line-height:1.35; margin:2px 0 16px; cursor:pointer;
}
.ufa_hero_consent input{ margin-top:2px; flex:0 0 auto; }
.ufa_hero_consent a{ color:var(--ufa-navy); text-decoration:underline; }
.ufa_hero_send{
  background:var(--ufa-navy); color:#fff; border:0; border-radius:10px;
  padding:15px; font-size:16px; font-weight:700; cursor:pointer; transition:background .2s; width:100%;
}
.ufa_hero_send:hover{ background:var(--ufa-navy-d); }
.ufa_hero_send:disabled{ opacity:.6; cursor:default; }

/* ---------- плавающая кнопка «задать вопрос» (фиксируем в углу экрана) ---------- */
.whatsapp{
  position:fixed !important; right:22px; bottom:22px; top:auto; left:auto;
  width:auto; height:auto; z-index:900;
}
.whatsapp-button{ position:static !important; margin:0 !important; }

/* ---------- таблица цен на главной ---------- */
.ceni{
  border:1px solid #e7ebf0; border-radius:14px; overflow:hidden;
  box-shadow:0 8px 26px rgba(20,40,70,.06); background:#fff;
}
.ceni .beton_pr_row{ align-items:center; transition:background .15s; }
.ceni .beton_pr_row:not(.head){ border-top:1px solid #eef1f5; }
.ceni .beton_pr_row:not(.head):hover{ background:#fff7ee; }
.ceni .beton_pr_row.head{ background:var(--ufa-navy); border:0; }
.ceni .beton_pr_row.head > div{
  color:#fff !important; font-weight:700; text-transform:uppercase; letter-spacing:.4px; font-size:13px;
}
.ceni .beton_pr_mark a{ font-weight:800; color:var(--ufa-navy); font-size:18px; }
.ceni .beton_pr_mark a:hover{ color:var(--ufa-orange); }
.ceni .beton_pr_price{ font-weight:800; color:var(--ufa-navy); font-size:16px; white-space:nowrap; }
/* счётчик количества */
.ceni .beton_pr_minus, .ceni .beton_pr_plus{
  width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center;
  border-radius:8px; background:#f1f4f8; color:var(--ufa-navy); font-size:20px; font-weight:700;
  cursor:pointer; user-select:none; transition:.15s;
}
.ceni .beton_pr_minus:hover, .ceni .beton_pr_plus:hover{ background:var(--ufa-orange); color:#fff; }
.ceni .counter_beton_pr{
  width:50px; text-align:center; border:1px solid #d7dee6; border-radius:8px; height:34px;
  margin:0 6px; font-weight:700; outline:none;
}
.ceni .counter_beton_pr:focus{ border-color:var(--ufa-orange); }
/* чекбокс «заказать» */
.ceni .input_var{ width:20px; height:20px; accent-color:var(--ufa-orange); cursor:pointer; }
/* кнопка «Отправить запрос» */
.send_zapros{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  background:var(--ufa-orange); color:#fff; font-weight:700; text-transform:uppercase; letter-spacing:.4px;
  padding:14px 32px; border-radius:10px; cursor:pointer; transition:background .2s; margin:20px 0 10px;
}
.send_zapros:hover{ background:var(--ufa-orange-d); }
/* SEO-текст под таблицей */
.ceni ~ p, .send_block + p{ color:#5a6675; line-height:1.6; font-size:14.5px; margin-top:6px; }

/* ---------- Популярные категории (новая компактная сетка) ---------- */
.ufa_cats{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:14px;
}
.ufa_cat{
  position:relative; display:block; height:190px;
  border-radius:14px; overflow:hidden; text-decoration:none;
  box-shadow:0 6px 18px rgba(20,40,70,.10);
  transition:box-shadow .2s ease, transform .2s ease;
}
.ufa_cat_img{
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  transition:transform .45s ease;
}
.ufa_cat::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, transparent 42%, rgba(13,28,52,.40) 65%, rgba(13,28,52,.86) 100%);
}
.ufa_cat_t{
  position:absolute; left:0; right:0; bottom:0; z-index:2;
  padding:14px 16px; color:#fff; font-weight:700; font-size:16px;
  text-transform:uppercase; letter-spacing:.3px; line-height:1.2;
  text-shadow:0 1px 6px rgba(0,0,0,.4);
}
.ufa_cat:hover{ transform:translateY(-3px); box-shadow:0 14px 32px rgba(20,40,70,.22); }
.ufa_cat:hover .ufa_cat_img{ transform:scale(1.07); }
@media (max-width:991px){ .ufa_cats{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:575px){
  .ufa_cats{ grid-template-columns:repeat(2,1fr); gap:10px; }
  .ufa_cat{ height:140px; }
  .ufa_cat_t{ font-size:13px; padding:10px 12px; }
}

/* ---------- Модалка «Задать вопрос» (2-колоночная: форма + navy-панель) ---------- */
.exm_modal .modal-content{ position:relative; border:0; border-radius:18px; overflow:hidden; box-shadow:0 30px 70px rgba(13,28,52,.4); }
.exm_grid{ display:grid; grid-template-columns:1.12fr .88fr; }
.exm_close{
  position:absolute; top:14px; right:16px; z-index:6;
  background:transparent; border:0; color:#fff; font-size:30px; line-height:1; cursor:pointer; opacity:.85;
  transition:color .2s, opacity .2s;
}
.exm_close:hover{ opacity:1; color:var(--ufa-orange); }

/* левая часть — форма */
.exm_main{ padding:30px 30px 26px; background:#fff; }
.exm_title{ font-size:24px; font-weight:800; color:var(--ufa-navy); line-height:1.12; }
.exm_sub{ color:#6a7686; font-size:14px; line-height:1.45; margin:8px 0 20px; }
.exm_main .form_zakaz input,
.exm_main .form_zakaz textarea{
  width:100%; border:1px solid #d7dee6; border-radius:10px; padding:13px 15px; font-size:15px;
  margin-bottom:13px; background:#fff; outline:none; box-shadow:none; font-family:inherit;
  transition:border-color .15s, box-shadow .15s;
}
.exm_main .form_zakaz input:focus,
.exm_main .form_zakaz textarea:focus{ border-color:var(--ufa-orange); box-shadow:0 0 0 3px rgba(220,144,30,.15); }
.exm_main .commentariy{ min-height:88px; resize:vertical; }
.exm_main .container2{ font-size:12.5px; color:#6a7686; line-height:1.45; padding-left:30px; margin:2px 0 0; }
.exm_main .container2 a{ color:var(--ufa-navy); text-decoration:underline; }
.exm_main .checkmark2{ width:20px; height:20px; border:1px solid #c9d2dc; border-radius:5px; }
.exm_actions{ display:flex; gap:12px; margin-top:20px; }
.exm_actions .zapros{ background:var(--ufa-orange); color:#fff; border:0; border-radius:10px; padding:13px 30px; font-weight:700; cursor:pointer; transition:background .2s; }
.exm_actions .zapros:hover{ background:var(--ufa-orange-d); }
.exm_actions .exm_cancel{ background:#eef1f5; color:#5a6675; border:0; border-radius:10px; padding:13px 24px; font-weight:600; cursor:pointer; transition:background .2s; }
.exm_actions .exm_cancel:hover{ background:#e2e7ee; }

/* правая часть — navy с градиентом, свечением и полупрозрачными фигурами */
.exm_side{
  position:relative; overflow:hidden; color:#fff;
  background:
    radial-gradient(circle at 85% 12%, rgba(220,144,30,.22), transparent 42%),
    radial-gradient(circle at 10% 90%, rgba(80,140,220,.20), transparent 46%),
    linear-gradient(150deg, #1d426f 0%, #143258 48%, #0d2240 100%);
}
.exm_side::before{
  content:""; position:absolute; top:-55px; right:-45px; width:210px; height:210px;
  border:2px solid rgba(255,255,255,.07); border-radius:26px; transform:rotate(24deg);
}
.exm_side::after{
  content:""; position:absolute; bottom:-40px; left:-35px; width:150px; height:150px;
  border:2px solid rgba(255,255,255,.06); border-radius:50%;
}
.exm_side_in{ position:relative; z-index:2; padding:32px 28px; display:flex; flex-direction:column; gap:14px; height:100%; }
.exm_side_h{
  font-weight:800; text-transform:uppercase; font-size:17px; letter-spacing:.5px;
  padding-bottom:10px; border-bottom:2px solid var(--ufa-orange); align-self:flex-start;
}
.exm_side_block{ font-size:14px; line-height:1.55; color:#cdd6e2; }
.exm_side_city{ color:#fff; font-weight:700; font-size:15px; }
.exm_side_block b{ color:#fff; }
.exm_side a{ color:var(--ufa-orange); }
.exm_side_note{ color:#9fb0c6; font-size:13px; line-height:1.5; margin-top:auto; }

@media (max-width:767px){
  .exm_grid{ grid-template-columns:1fr; }
  .exm_side{ display:none; }
  .exm_main{ padding:26px 20px 22px; }
  .exm_close{ color:var(--ufa-navy); }
}

/* ---------- Типографика SEO-текста (.spl_text) — ТОЛЬКО оформление, контент не трогаем ---------- */
.spl_text{ color:#48566a; font-size:16px; line-height:1.75; max-width:1060px; }
.spl_text p{ margin:0 0 14px; }
.spl_text a{ color:var(--ufa-navy); text-decoration:underline; }
.spl_text a:hover{ color:var(--ufa-orange); }
.spl_text .spl_h2{
  color:var(--ufa-navy); font-size:23px; font-weight:800; line-height:1.25;
  margin:32px 0 14px; padding-left:14px; border-left:4px solid var(--ufa-orange);
}
.spl_text .spl_h3{ color:var(--ufa-navy); font-size:19px; font-weight:700; margin:24px 0 10px; }
.spl_text .spl_ul{ list-style:none; padding-left:0; margin:14px 0 18px; }
.spl_text .spl_ul li{ position:relative; padding-left:28px; margin-bottom:10px; line-height:1.55; }
.spl_text .spl_ul li:before{
  content:""; position:absolute; left:0; top:7px; width:16px; height:16px; border-radius:50%; margin:0;
  background:var(--ufa-orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/10px no-repeat;
}

/* ---------- Отзывы (виджет Яндекс.Карт + карточка) ---------- */
.ufa_reviews{ display:grid; grid-template-columns:minmax(0,600px) 1fr; gap:24px; align-items:start; }
.ufa_reviews_iframe{
  width:100%; height:720px; border:1px solid #e7ebf0; border-radius:14px;
  box-sizing:border-box; display:block; background:#fff; box-shadow:0 6px 20px rgba(20,40,70,.05);
}
.ufa_reviews_link{ display:inline-block; margin-top:10px; color:#9aa6b4; font-size:12.5px; text-decoration:none; }
.ufa_reviews_link:hover{ color:var(--ufa-orange); }
.ufa_reviews_side{
  background:#f6f8fa; border:1px solid #e7ebf0; border-radius:14px; padding:32px 28px;
}
.ufa_reviews_side_ic{
  width:58px; height:58px; border-radius:15px; background:rgba(220,144,30,.14); color:var(--ufa-orange);
  display:flex; align-items:center; justify-content:center; margin-bottom:18px;
}
.ufa_reviews_side_h{ font-size:23px; font-weight:800; color:#2f3a48; margin-bottom:12px; }
.ufa_reviews_side_t{ color:#5a6675; font-size:15px; line-height:1.6; margin-bottom:22px; }
@media (max-width:991px){ .ufa_reviews{ grid-template-columns:1fr; } }
@media (max-width:575px){ .ufa_reviews_iframe{ height:600px; } }

/* ---------- Блок «CTA + Декларация» ---------- */
.ufa_trust{ display:grid; grid-template-columns:1.55fr 1fr; gap:22px; align-items:stretch; }
.ufa_trust_main{
  position:relative; overflow:hidden; border-radius:16px; padding:36px 38px; color:#fff;
  display:flex; flex-direction:column; justify-content:center;
  background:
    radial-gradient(circle at 88% 12%, rgba(220,144,30,.22), transparent 45%),
    radial-gradient(circle at 8% 92%, rgba(80,140,220,.18), transparent 48%),
    linear-gradient(150deg, #1d426f 0%, #143258 50%, #0d2240 100%);
}
.ufa_trust_main::before{
  content:""; position:absolute; top:-50px; right:-40px; width:200px; height:200px;
  border:2px solid rgba(255,255,255,.07); border-radius:26px; transform:rotate(22deg);
}
.ufa_trust_kicker{ position:relative; z-index:2; text-transform:uppercase; letter-spacing:.6px; font-size:13px; font-weight:700; color:var(--ufa-orange); margin-bottom:10px; }
.ufa_trust_title{ position:relative; z-index:2; font-size:30px; font-weight:800; line-height:1.15; color:#fff; margin:0 0 14px; }
.ufa_trust_sub{ position:relative; z-index:2; color:#cdd6e2; font-size:15px; line-height:1.6; margin:0 0 24px; max-width:580px; }
.ufa_trust_btns{ position:relative; z-index:2; display:flex; gap:14px; flex-wrap:wrap; }
.ufa_btn_orange{ background:var(--ufa-orange); color:#fff !important; font-weight:700; text-transform:uppercase; letter-spacing:.4px; font-size:14px; padding:14px 28px; border-radius:9px; text-decoration:none; transition:background .2s; }
.ufa_btn_orange:hover{ background:var(--ufa-orange-d); }
.ufa_btn_ghost{ background:transparent; color:#fff !important; font-weight:700; text-transform:uppercase; letter-spacing:.4px; font-size:14px; padding:13px 26px; border-radius:9px; text-decoration:none; border:2px solid rgba(255,255,255,.4); transition:.2s; }
.ufa_btn_ghost:hover{ border-color:var(--ufa-orange); color:var(--ufa-orange) !important; }
.ufa_trust_doc{ background:#fff; border:1px solid #e7ebf0; border-radius:16px; padding:22px; box-shadow:0 8px 26px rgba(20,40,70,.06); display:flex; flex-direction:column; }
.ufa_trust_doc_h{ font-weight:800; text-transform:uppercase; font-size:15px; letter-spacing:.4px; color:var(--ufa-navy); text-align:center; padding-bottom:12px; border-bottom:2px solid var(--ufa-orange); margin-bottom:16px; align-self:center; }
.ufa_trust_doc_img{ display:block; border-radius:10px; overflow:hidden; border:1px solid #eef1f5; background:#f6f8fa; padding:8px; }
.ufa_trust_doc_img img{ width:100%; height:210px; object-fit:contain; object-position:center; display:block; transition:transform .25s ease; }
.ufa_trust_doc_img:hover img{ transform:scale(1.03); }
.ufa_trust_doc_note{ color:#6a7686; font-size:13.5px; line-height:1.5; text-align:center; margin-top:14px; }
.ufa_trust_doc_note b{ color:var(--ufa-navy); }
@media (max-width:991px){ .ufa_trust{ grid-template-columns:1fr; } }
@media (max-width:575px){ .ufa_trust_main{ padding:26px 22px; } .ufa_trust_title{ font-size:23px; } .ufa_trust_doc_img img{ height:200px; } }

/* ---------- Калькулятор бетона (вкладки) ---------- */
.ufa_calc{ border:1px solid #e7ebf0; border-radius:16px; overflow:hidden; box-shadow:0 8px 26px rgba(20,40,70,.06); background:#fff; }
.ufa_calc_tabs{ display:flex; border-bottom:1px solid #eef1f5; }
.ufa_calc_tab{
  flex:1; background:#f6f8fa; border:0; padding:16px 12px; font-weight:700; font-size:15px;
  color:#6a7686; cursor:pointer; transition:.15s; border-bottom:3px solid transparent;
}
.ufa_calc_tab:hover{ color:var(--ufa-navy); }
.ufa_calc_tab.active{ background:#fff; color:var(--ufa-navy); border-bottom-color:var(--ufa-orange); }
.ufa_calc_panel{ display:none; padding:28px; }
.ufa_calc_panel.active{ display:block; }
.ufa_calc_grid{ display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:center; }
.ufa_calc_visual img{ max-width:100%; height:auto; display:block; margin:0 auto; }
.ufa_calc_hint{ color:#6a7686; font-size:13.5px; line-height:1.55; margin-top:14px; }
.ufa_calc_hint b{ color:var(--ufa-navy); }
.ufa_calc_form label{ display:block; font-size:13px; color:var(--ufa-navy); font-weight:600; margin:0 0 6px; }
.ufa_ci{
  width:100%; border:1px solid #d7dee6; border-radius:10px; padding:12px 14px; font-size:15px;
  margin-bottom:14px; outline:none; transition:border-color .15s, box-shadow .15s; font-family:inherit;
}
.ufa_ci:focus{ border-color:var(--ufa-orange); box-shadow:0 0 0 3px rgba(220,144,30,.15); }
.ufa_calc_out{
  position:relative; overflow:hidden; border-radius:12px; padding:16px 18px; color:#fff; margin-top:2px;
  background:
    radial-gradient(circle at 90% 18%, rgba(220,144,30,.28), transparent 55%),
    linear-gradient(135deg, #1d426f 0%, #143258 55%, #0d2240 100%);
}
.ufa_calc_out_row{ display:flex; justify-content:space-between; align-items:baseline; gap:10px; }
.ufa_calc_out_row span{ color:#cdd6e2; font-size:14px; }
.ufa_calc_out_row b{ font-size:24px; font-weight:800; white-space:nowrap; }
.ufa_calc_out_row.sub{ margin-top:10px; padding-top:10px; border-top:1px solid rgba(255,255,255,.15); }
.ufa_calc_out_row.sub b{ font-size:17px; color:var(--ufa-orange); }
@media (max-width:767px){
  .ufa_calc_grid{ grid-template-columns:1fr; gap:18px; }
  .ufa_calc_panel{ padding:20px; }
  .ufa_calc_tab{ font-size:13.5px; padding:14px 8px; }
}

/* ---------- Преимущества «Почему выгодно» ---------- */
.ufa_adv_intro{ color:#5a6675; font-size:15px; line-height:1.6; max-width:940px; margin:0 0 22px; }
.ufa_adv_intro a{ color:var(--ufa-navy); }
.ufa_adv{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.ufa_adv_card{
  display:block; background:#fff; border:1px solid #e7ebf0; border-radius:14px; padding:24px 22px;
  text-decoration:none; box-shadow:0 4px 14px rgba(20,40,70,.05);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.ufa_adv_card:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(20,40,70,.12); border-color:#dfe6ee; }
.ufa_adv_ic{
  display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px;
  border-radius:13px; background:rgba(220,144,30,.12); color:var(--ufa-orange); margin-bottom:14px;
}
.ufa_adv_ic svg{ width:26px; height:26px; }
.ufa_adv_t{ display:block; font-weight:700; font-size:17px; color:var(--ufa-navy); margin-bottom:6px; line-height:1.25; }
.ufa_adv_d{ display:block; color:#6a7686; font-size:14px; line-height:1.5; }
a.ufa_adv_card:hover .ufa_adv_t{ color:var(--ufa-orange); }
@media (max-width:991px){ .ufa_adv{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:575px){ .ufa_adv{ grid-template-columns:1fr; gap:12px; } }

/* «Заказать звонок» вместо телефона (когда номер скрыт) — выглядит как ссылка */
.ufa_tel{ cursor:pointer; color:inherit; text-decoration:none; }
.ufa_tel:hover{ color:var(--ufa-orange); }

/* ---------- адаптив ---------- */
@media (max-width:991px){
  .ufa_hero_grid{ grid-template-columns:1fr; gap:16px; }
  .ufa_hero_left{ min-height:300px; }
  .ufa_hero_title{ font-size:28px; }
  .ufa_hero_utp li{ font-size:15px; }
}
@media (max-width:575px){
  .ufa_hero{ padding:14px 0 22px; }
  .ufa_hero_left_in{ padding:24px 20px; }
  .ufa_hero_title{ font-size:22px; margin-bottom:14px; }
  .ufa_hero_form{ padding:22px 18px; }
  .ufa_hero_form_h{ font-size:20px; }
}

/* ====================== ПОДВАЛ (footer) ====================== */
/* Единый тёмный фон с геометрическими фигурами вместо диагональной заливки */
.ufa_footer{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(1100px 480px at 12% -10%, rgba(220,144,30,.12), transparent 60%),
    linear-gradient(160deg, var(--ufa-navy) 0%, var(--ufa-navy-d) 70%, #0a1c33 100%);
  color:#e6edf6;
  border-top:3px solid var(--ufa-orange);
}
/* Геометрические фигуры на фоне */
.ufa_footer::before{
  content:"";
  position:absolute; right:-120px; top:-120px;
  width:420px; height:420px; border-radius:50%;
  background:radial-gradient(circle at 30% 30%, rgba(220,144,30,.18), transparent 62%);
  pointer-events:none;
}
.ufa_footer::after{
  content:"";
  position:absolute; left:38%; bottom:-160px;
  width:360px; height:360px;
  transform:rotate(35deg);
  background:linear-gradient(135deg, rgba(255,255,255,.05), transparent 70%);
  border-radius:60px;
  pointer-events:none;
}
.ufa_footer > .row{ position:relative; z-index:1; }
/* убираем кривую диагональ старой вёрстки + выравниваем правую часть */
.ufa_footer .black_footer{
  background:transparent !important; color:#e6edf6 !important;
  padding:14px 30px 26px !important;
}
.ufa_footer .black_footer > .container{ max-width:100%; margin:0; padding:0; }
.ufa_footer .spec_padding,
.ufa_footer .spec_padding2{ padding-left:0 !important; }
.ufa_footer .ffbox,
.ufa_footer .ffbox2{ justify-content:flex-start !important; }
/* «Помощь»: пункты слева группой, а не растянуты на всю ширину */
.ufa_footer .spec_padding > .col-md-4{ flex:0 0 auto; max-width:none; width:auto; margin:0 44px 0 0 !important; }
/* партнёры — на всю ширину, без обрезки колонкой */
.ufa_footer .black_footer > .col-md-4{ max-width:100%; flex:0 0 100%; padding:0 !important; }

/* Колонка компании */
.ufa_footer .foot_flex{
  background:transparent;
  flex-direction:column;
  align-items:flex-start;
  padding:28px 26px;
  gap:6px;
}
/* логотип на светлой плашке, чтобы был виден на тёмном фоне */
.ufa_footer .foot_flex .ffb:first-child{
  display:inline-block; background:#fff; padding:12px 16px;
  border-radius:12px; margin-bottom:10px; line-height:0;
  box-shadow:0 6px 16px rgba(0,0,0,.25);
}
.ufa_footer img.footer_logo{ width:150px; filter:none; opacity:1; margin:0; }
.ufa_footer .footer_contacts{ color:#aebccd; font-size:12px; line-height:1.55; }
.ufa_footer .footer_contacts_p{ color:#aebccd; }
.ufa_footer .footer_contacts a,
.ufa_footer .footer_cat_button a{
  color:#cdd8e6; text-decoration:none; transition:color .15s ease;
}
.ufa_footer .footer_contacts a:hover,
.ufa_footer .footer_cat_button a:hover{ color:var(--ufa-orange); }
.ufa_footer .footer_contacts.mt-4{ margin-top:10px !important; }

/* Заголовки разделов с оранжевым акцентом */
.ufa_footer .title_footer{
  position:relative; text-align:left;
  display:flex !important; justify-content:flex-start !important; align-items:center;
  color:#fff; font-size:14px; font-weight:700;
  letter-spacing:.04em; text-transform:uppercase;
  padding:0 0 10px 16px; margin:22px 0 14px;
}
.ufa_footer .title_footer::before{
  content:""; position:absolute; left:0; top:2px; bottom:12px;
  width:4px; border-radius:3px; background:var(--ufa-orange);
}

/* Марки бетона — компактные колонки */
.ufa_footer .footer_cat_button{ font-size:12.5px; line-height:1.4; }
.ufa_footer .footer_cat_button a[href*="tovarnyj_beton"]{ color:#fff; font-weight:600; font-size:14px; }
.ufa_footer .ffbox .footer_cat_button.mb-2{
  column-count:2; column-gap:26px;
}
.ufa_footer .ffbox .footer_cat_button.mb-2 a{ line-height:1.85; }

/* Кнопка «Заказать звонок» в подвале */
.ufa_footer .wide_button2{
  position:static !important; display:inline-flex; align-items:center; justify-content:center;
  margin-top:16px; padding:12px 26px; border-radius:10px;
  background:linear-gradient(135deg, var(--ufa-orange), #b9760f);
  color:#fff; font-weight:700; font-size:14px; cursor:pointer;
  box-shadow:0 8px 20px rgba(220,144,30,.28); transition:transform .15s ease, box-shadow .15s ease;
  width:auto; height:auto;
}
.ufa_footer .wide_button2:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(220,144,30,.4); }
.ufa_footer .wide_button2 span{ color:#fff; }

/* Нижняя полоса */
.ufa_footer_bottom{
  position:relative; overflow:hidden;
  background:linear-gradient(180deg, #0a1c33 0%, #07172a 100%) !important;
  border-top:1px solid rgba(255,255,255,.07);
}
.ufa_footer_bottom::before{
  content:""; position:absolute; right:-80px; bottom:-100px;
  width:300px; height:300px; transform:rotate(28deg);
  background:linear-gradient(135deg, rgba(220,144,30,.08), transparent 70%);
  border-radius:50px; pointer-events:none;
}
.ufa_footer_bottom .footer_black{ position:relative; z-index:1; }
.ufa_footer_bottom .social_row_bottom{ font-size:11.5px; line-height:1.6; color:#9fb0c3 !important; }
.ufa_footer_bottom .soc_thumb a{
  display:inline-flex; width:38px; height:38px; align-items:center; justify-content:center;
  border-radius:50%; background:rgba(255,255,255,.06); transition:background .15s ease;
}
.ufa_footer_bottom .soc_thumb a:hover{ background:var(--ufa-orange); }
.ufa_footer_bottom .soc_thumb svg path{ fill:#cdd8e6; }
.ufa_footer_bottom .soc_thumb a:hover svg path{ fill:#fff; }

@media (max-width:767px){
  .ufa_footer .foot_flex{ padding:22px 18px; }
  .ufa_footer .ffbox .footer_cat_button.mb-2{ column-count:1; }
  .ufa_footer .title_footer{ margin:18px 0 10px; }
  .ufa_footer .black_footer{ padding:0 16px 16px !important; }
}

/* ====================== Cookie-баннер (152-ФЗ) ====================== */
.ufa_cookie{
  position:fixed; left:16px; right:16px; bottom:16px; z-index:9999;
  display:flex; align-items:center; gap:18px;
  max-width:980px; margin:0 auto; padding:16px 20px;
  background:linear-gradient(160deg, var(--ufa-navy) 0%, var(--ufa-navy-d) 100%);
  color:#e6edf6; border:1px solid rgba(255,255,255,.10);
  border-radius:14px; box-shadow:0 14px 40px rgba(0,0,0,.35);
  animation:ufaCookieUp .35s ease;
}
@keyframes ufaCookieUp{ from{ transform:translateY(18px); opacity:0 } to{ transform:translateY(0); opacity:1 } }
.ufa_cookie_text{ font-size:13px; line-height:1.5; }
.ufa_cookie_text a{ color:var(--ufa-orange); text-decoration:underline; }
.ufa_cookie_text a:hover{ color:#ffb347; }
.ufa_cookie_btn{
  flex:0 0 auto; border:0; cursor:pointer; white-space:nowrap;
  padding:12px 30px; border-radius:10px;
  background:linear-gradient(135deg, var(--ufa-orange), #b9760f);
  color:#fff; font-weight:700; font-size:14px;
  box-shadow:0 8px 20px rgba(220,144,30,.28); transition:transform .15s ease, box-shadow .15s ease;
}
.ufa_cookie_btn:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(220,144,30,.4); }
@media (max-width:575px){
  .ufa_cookie{ flex-direction:column; align-items:stretch; gap:12px; padding:14px 16px; left:10px; right:10px; bottom:10px; }
  .ufa_cookie_btn{ width:100%; }
}

/* ====================== Юридические страницы (политика, cookie) ====================== */
.ufa_legal{ max-width:920px; margin:0 auto; padding:0 0 50px; }
/* шапка-карточка */
.ufa_legal_head{
  position:relative; overflow:hidden;
  background:linear-gradient(160deg, var(--ufa-navy) 0%, var(--ufa-navy-d) 100%);
  color:#fff; border-radius:16px; padding:34px 36px; margin:0 0 26px;
  box-shadow:0 14px 36px rgba(14,36,64,.25);
}
.ufa_legal_head::before{
  content:""; position:absolute; right:-90px; top:-90px; width:280px; height:280px; border-radius:50%;
  background:radial-gradient(circle at 30% 30%, rgba(220,144,30,.22), transparent 62%); pointer-events:none;
}
.ufa_legal_head::after{
  content:""; position:absolute; right:18%; bottom:-120px; width:240px; height:240px; transform:rotate(35deg);
  background:linear-gradient(135deg, rgba(255,255,255,.06), transparent 70%); border-radius:48px; pointer-events:none;
}
.ufa_legal_head h1,
.ufa_legal_head .spl_h1{ position:relative; z-index:1; color:#fff; margin:0 0 8px; font-size:28px; line-height:1.25; border:0; padding:0; }
.ufa_legal_meta{ position:relative; z-index:1; font-size:13px; color:#c7d3e2; }
.ufa_legal_meta b{ color:#fff; }
/* тело-карточка */
.ufa_legal_body{
  background:#fff; border:1px solid #e6ebf1; border-radius:16px;
  padding:30px 36px; box-shadow:0 8px 24px rgba(20,50,88,.06);
}
.ufa_legal_body p{ color:#34414f; font-size:15px; line-height:1.7; margin:0 0 14px; }
.ufa_legal_body a{ color:var(--ufa-orange); text-decoration:underline; word-break:break-word; }
.ufa_legal_body a:hover{ color:#b9760f; }
.ufa_legal_body h2,
.ufa_legal_body .spl_h2{
  color:var(--ufa-navy); font-size:19px; font-weight:700; line-height:1.3;
  margin:26px 0 12px; padding:0 0 0 14px; border-left:4px solid var(--ufa-orange);
}
.ufa_legal_body ul{ margin:0 0 16px; padding:0; list-style:none; }
.ufa_legal_body ul li{ position:relative; padding:0 0 0 22px; margin:0 0 9px; color:#34414f; font-size:15px; line-height:1.6; }
.ufa_legal_body ul li::before{
  content:""; position:absolute; left:4px; top:9px; width:7px; height:7px; border-radius:50%; background:var(--ufa-orange);
}
.ufa_legal_body ul ul{ margin:8px 0 4px; }
.ufa_legal_body ul ul li::before{ background:#9fb0c3; width:6px; height:6px; top:9px; }
/* блок реквизитов оператора */
.ufa_legal_operator{
  background:#fff7ec; border:1px solid #f3dcb6; border-radius:12px;
  padding:16px 20px; margin:0 0 22px; font-size:14.5px; line-height:1.7; color:#34414f;
}
.ufa_legal_operator b{ color:var(--ufa-navy); }
/* оглавление */
.ufa_legal_toc{
  background:#f5f8fb; border:1px solid #e3eaf2; border-radius:12px; padding:18px 22px; margin:0 0 24px;
}
.ufa_legal_toc_h{ font-weight:700; color:var(--ufa-navy); font-size:15px; margin:0 0 10px; }
.ufa_legal_toc ol{ margin:0; padding:0 0 0 18px; columns:2; column-gap:30px; }
.ufa_legal_toc li{ margin:0 0 7px; font-size:14px; line-height:1.45; }
.ufa_legal_toc a{ color:#34414f; text-decoration:none; }
.ufa_legal_toc a:hover{ color:var(--ufa-orange); text-decoration:underline; }
@media (max-width:575px){
  .ufa_legal_head{ padding:24px 20px; }
  .ufa_legal_head h1, .ufa_legal_head .spl_h1{ font-size:22px; }
  .ufa_legal_body{ padding:22px 18px; }
  .ufa_legal_toc ol{ columns:1; }
}
/* таблица реквизитов */
.ufa_reqs{ width:100%; border-collapse:collapse; background:#fff; border:1px solid #e6ebf1; font-size:14.5px; margin:0 0 10px; }
.ufa_reqs td{ padding:12px 16px; border-bottom:1px solid #eef2f6; color:#34414f; vertical-align:top; line-height:1.5; }
.ufa_reqs tr:last-child td{ border-bottom:0; }
.ufa_reqs td:first-child{ width:40%; font-weight:600; color:var(--ufa-navy); background:#f9fbfd; }
.ufa_reqs td a{ color:var(--ufa-orange); }
.ufa_reqs .ufa_reqs__group td{ background:var(--ufa-navy); color:#fff; font-weight:700; font-size:12.5px; text-transform:uppercase; letter-spacing:.04em; width:auto; }
/* галерея документов */
.ufa_docs{ display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:16px; margin:0 0 10px; }
.ufa_doc{ display:flex; flex-direction:column; border:1px solid #e6ebf1; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 6px 18px rgba(20,50,88,.06); transition:transform .15s ease, box-shadow .15s ease; text-decoration:none; }
.ufa_doc:hover{ transform:translateY(-3px); box-shadow:0 12px 26px rgba(20,50,88,.12); }
.ufa_doc__img{ height:230px; background:#f5f8fb; display:flex; align-items:center; justify-content:center; padding:14px; border-bottom:1px solid #eef2f6; }
.ufa_doc__img img{ max-width:100%; max-height:100%; object-fit:contain; }
.ufa_doc__cap{ padding:12px 14px; }
.ufa_doc__t{ font-size:14px; font-weight:700; color:var(--ufa-navy); margin:0 0 3px; }
.ufa_doc__s{ font-size:12.5px; color:var(--ufa-orange); font-weight:600; }
/* CTA-полоса документов */
.ufa_legal_cta{
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  margin-top:24px; padding:22px 24px; border-radius:14px; color:#fff;
  background:linear-gradient(135deg, var(--ufa-orange) 0%, #b9760f 100%); box-shadow:0 10px 26px rgba(220,144,30,.22);
}
.ufa_legal_cta__t{ font-size:17px; font-weight:800; margin:0 0 3px; }
.ufa_legal_cta__s{ font-size:13.5px; opacity:.95; margin:0; }
.ufa_legal_cta__btn{ flex:0 0 auto; background:#fff; color:var(--ufa-navy); font-weight:700; font-size:14.5px; padding:13px 28px; border-radius:10px; text-decoration:none; box-shadow:0 8px 18px rgba(0,0,0,.15); transition:transform .15s ease; }
.ufa_legal_cta__btn:hover{ transform:translateY(-2px); color:var(--ufa-navy); }

/* ====================== Страница лаборатории (.lb-*) ====================== */
.lb-hero{
  position:relative; overflow:hidden; color:#fff; padding:56px 0 48px;
  background:
    radial-gradient(900px 420px at 85% -20%, rgba(220,144,30,.18), transparent 60%),
    linear-gradient(150deg, var(--ufa-navy) 0%, var(--ufa-navy-d) 100%);
}
.lb-hero::after{
  content:""; position:absolute; right:-90px; bottom:-120px; width:300px; height:300px; transform:rotate(35deg);
  background:linear-gradient(135deg, rgba(255,255,255,.05), transparent 70%); border-radius:56px; pointer-events:none;
}
.lb-hero .container{ position:relative; z-index:1; }
.lb-hero__title{ font-size:30px; font-weight:800; line-height:1.25; margin-bottom:12px; color:#fff; }
.lb-hero__sub{ font-size:15px; color:rgba(255,255,255,.72); max-width:680px; margin:0; line-height:1.6; }
.lb-section{ padding:52px 0; background:#fff; }
.lb-section--gray{ background:#f5f8fb; }
.lb-stitle{ font-size:23px; font-weight:800; color:var(--ufa-navy); margin-bottom:12px; }
.lb-lead{ font-size:14.5px; color:#5d6b7a; margin-bottom:28px; max-width:760px; line-height:1.65; }
/* карточки характеристик */
.lb-props-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.lb-prop-card{
  background:#fff; border:1px solid #e6ebf1; border-radius:14px;
  box-shadow:0 6px 18px rgba(20,50,88,.07); padding:24px 18px;
  display:flex; flex-direction:column; gap:6px;
  border-top:3px solid var(--ufa-orange);
}
.lb-prop-card__icon{ font-size:28px; line-height:1; margin-bottom:4px; }
.lb-prop-card__title{ font-size:13px; font-weight:700; color:var(--ufa-navy); }
.lb-prop-card__val{ font-size:19px; font-weight:800; color:var(--ufa-orange); line-height:1.1; }
.lb-prop-card__desc{ font-size:12px; color:#8a97a6; }
/* split */
.lb-split{ display:grid; grid-template-columns:320px 1fr; gap:36px; align-items:center; }
.lb-split--reverse{ grid-template-columns:1fr 320px; }
.lb-split--reverse .lb-split__img{ order:2; }
.lb-split--reverse .lb-split__content{ order:1; }
.lb-img{ width:100%; height:250px; object-fit:cover; border-radius:14px; box-shadow:0 8px 22px rgba(14,36,64,.16); display:block; }
.lb-list{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:12px; }
.lb-list li{ font-size:14.5px; color:#34414f; line-height:1.55; padding-left:22px; position:relative; }
.lb-list li::before{ content:"\2014"; position:absolute; left:0; color:var(--ufa-orange); font-weight:700; }
.lb-list--check li::before{ content:"\2713"; }
.lb-list--compact{ gap:8px; }
.lb-list--compact li{ font-size:13.5px; }
/* карточки применения */
.lb-app-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.lb-app-card{
  background:#fff; border:1px solid #e6ebf1; border-radius:14px;
  box-shadow:0 6px 18px rgba(20,50,88,.07); padding:24px 22px;
  display:flex; flex-direction:column; gap:8px;
}
.lb-app-card__num{ font-size:30px; font-weight:900; color:#dce4ee; line-height:1; font-variant-numeric:tabular-nums; }
.lb-app-card__title{ font-size:16px; font-weight:700; color:var(--ufa-navy); }
.lb-app-card__desc{ font-size:13.5px; color:#5d6b7a; line-height:1.55; }
/* таблица испытаний (без цен) */
.lb-table-wrap{ border-radius:14px; overflow:hidden; box-shadow:0 6px 18px rgba(20,50,88,.07); border:1px solid #e6ebf1; }
.lb-table{ width:100%; border-collapse:collapse; background:#fff; font-size:13.5px; }
.lb-table thead th{
  background:var(--ufa-navy); color:#fff; font-weight:600; font-size:12px;
  text-transform:uppercase; letter-spacing:.04em; padding:13px 16px; text-align:left;
}
.lb-table .lb-table__num{ text-align:center; width:46px; }
.lb-table .lb-table__gost{ width:210px; font-size:11.5px; line-height:1.6; }
.lb-table__group td{
  background:var(--ufa-orange); color:#fff; font-weight:700; font-size:12px;
  text-transform:uppercase; letter-spacing:.05em; padding:11px 16px;
}
.lb-table tbody tr:not(.lb-table__group):nth-child(even){ background:#f5f8fb; }
.lb-table tbody td{ padding:12px 16px; color:#34414f; border-bottom:1px solid #eef2f6; vertical-align:top; line-height:1.5; }
.lb-table tbody .lb-table__num{ color:#9fb0c3; font-weight:600; vertical-align:middle; }
.lb-table tbody .lb-table__gost{ color:#7c8a99; font-size:11.5px; line-height:1.6; }
/* методы */
.lb-methods-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.lb-method-card{
  background:#fff; border:1px solid #e6ebf1; border-radius:14px;
  box-shadow:0 6px 18px rgba(20,50,88,.07); padding:28px 24px;
  display:flex; flex-direction:column; gap:14px;
}
.lb-method-card__title{ font-size:17px; font-weight:700; color:var(--ufa-navy); margin:0; }
.lb-method-card p{ font-size:13.5px; color:#5d6b7a; line-height:1.6; margin:0; }
.lb-method-card__sub{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:#9fb0c3; }
.lb-method-card__note{ font-size:12.5px; color:#7c8a99; line-height:1.55; border-top:1px solid #eef2f6; padding-top:14px; margin-top:4px; }
/* CTA-полоса */
.lb-cta{
  position:relative; overflow:hidden; border-radius:16px; padding:34px 36px; color:#fff;
  background:linear-gradient(135deg, var(--ufa-orange) 0%, #b9760f 100%);
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  box-shadow:0 14px 34px rgba(220,144,30,.25);
}
.lb-cta__h{ font-size:21px; font-weight:800; margin:0 0 6px; }
.lb-cta__p{ font-size:14px; opacity:.95; margin:0; max-width:560px; }
.lb-cta__btn{
  flex:0 0 auto; background:#fff; color:var(--ufa-navy); font-weight:700; font-size:15px;
  padding:14px 30px; border-radius:10px; border:0; cursor:pointer; text-decoration:none;
  box-shadow:0 8px 18px rgba(0,0,0,.15); transition:transform .15s ease;
}
.lb-cta__btn:hover{ transform:translateY(-2px); color:var(--ufa-navy); }
/* адаптив */
@media (max-width:1100px){ .lb-props-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:900px){
  .lb-split, .lb-split--reverse{ grid-template-columns:1fr; }
  .lb-split--reverse .lb-split__img{ order:-1; }
  .lb-split--reverse .lb-split__content{ order:0; }
  .lb-img{ height:210px; }
  .lb-methods-grid{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .lb-hero__title{ font-size:23px; }
  .lb-props-grid{ grid-template-columns:1fr 1fr; }
  .lb-app-grid{ grid-template-columns:1fr; }
  .lb-table .lb-table__gost{ display:none; }
  .lb-cta{ padding:24px 20px; }
}
@media (max-width:420px){ .lb-props-grid{ grid-template-columns:1fr; } }

/* ====================== Статьи (.art-*) ====================== */
.art-hero{
  position:relative; overflow:hidden; color:#fff; padding:50px 0 44px;
  background:
    radial-gradient(900px 420px at 88% -20%, rgba(220,144,30,.18), transparent 60%),
    linear-gradient(150deg, var(--ufa-navy) 0%, var(--ufa-navy-d) 100%);
}
.art-hero::after{
  content:""; position:absolute; right:-90px; bottom:-120px; width:300px; height:300px; transform:rotate(35deg);
  background:linear-gradient(135deg, rgba(255,255,255,.05), transparent 70%); border-radius:56px; pointer-events:none;
}
.art-hero .container{ position:relative; z-index:1; }
.art-hero__crumbs{ font-size:12.5px; color:rgba(255,255,255,.6); margin-bottom:14px; }
.art-hero__crumbs a{ color:rgba(255,255,255,.78); text-decoration:none; }
.art-hero__crumbs a:hover{ color:var(--ufa-orange); }
.art-hero__title{ font-size:30px; font-weight:800; line-height:1.25; margin:0 0 12px; color:#fff; max-width:880px; }
.art-hero__sub{ font-size:15px; color:rgba(255,255,255,.72); max-width:760px; margin:0; line-height:1.6; }

.art-wrap{ max-width:920px; margin:0 auto; padding:42px 0 50px; }
/* типографика прозы */
.art-prose p{ font-size:15.5px; line-height:1.75; color:#34414f; margin:0 0 16px; }
.art-prose h2{
  font-size:23px; font-weight:800; color:var(--ufa-navy); line-height:1.3;
  margin:34px 0 14px; padding:0 0 0 15px; border-left:4px solid var(--ufa-orange);
}
.art-prose h3{ font-size:18px; font-weight:700; color:var(--ufa-navy); margin:24px 0 10px; }
.art-prose ul{ list-style:none; padding:0; margin:0 0 18px; }
.art-prose ul li{ position:relative; padding:0 0 0 24px; margin:0 0 10px; font-size:15.5px; line-height:1.6; color:#34414f; }
.art-prose ul li::before{ content:""; position:absolute; left:5px; top:9px; width:7px; height:7px; border-radius:50%; background:var(--ufa-orange); }
.art-prose strong{ color:var(--ufa-navy); }
.art-prose a{ color:var(--ufa-orange); text-decoration:underline; }
/* таблица в статье */
.art-table-wrap{ border-radius:14px; overflow:hidden; box-shadow:0 6px 18px rgba(20,50,88,.07); border:1px solid #e6ebf1; margin:0 0 24px; }
.art-table{ width:100%; border-collapse:collapse; background:#fff; font-size:14px; }
.art-table thead th{ background:var(--ufa-navy); color:#fff; font-weight:600; font-size:12.5px; text-transform:uppercase; letter-spacing:.03em; padding:12px 16px; text-align:left; }
.art-table tbody td{ padding:11px 16px; color:#34414f; border-bottom:1px solid #eef2f6; }
.art-table tbody tr:nth-child(even){ background:#f5f8fb; }
.art-table tbody td:first-child{ font-weight:700; color:var(--ufa-navy); }
/* callout-факт */
.art-callout{
  display:flex; gap:16px; align-items:flex-start;
  background:#fff7ec; border:1px solid #f3dcb6; border-left:4px solid var(--ufa-orange);
  border-radius:12px; padding:18px 20px; margin:0 0 24px;
}
.art-callout__ic{ font-size:24px; line-height:1; flex:0 0 auto; }
.art-callout p{ margin:0; font-size:14.5px; line-height:1.6; color:#34414f; }
/* факт-карточки */
.art-facts{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin:0 0 24px; }
.art-fact{ background:#fff; border:1px solid #e6ebf1; border-top:3px solid var(--ufa-orange); border-radius:14px; padding:20px 20px; box-shadow:0 6px 18px rgba(20,50,88,.06); }
.art-fact__h{ font-size:15px; font-weight:700; color:var(--ufa-navy); margin:0 0 6px; }
.art-fact__p{ font-size:13.5px; line-height:1.55; color:#5d6b7a; margin:0; }

/* ПОДБОРКА товаров (перелинковка) */
.art-picks{
  position:relative; overflow:hidden; border-radius:18px; margin:36px 0;
  background:linear-gradient(160deg, #f5f8fb 0%, #eaf0f7 100%); border:1px solid #e1e9f2;
  padding:30px 30px 32px;
}
.art-picks__h{ font-size:21px; font-weight:800; color:var(--ufa-navy); margin:0 0 4px; }
.art-picks__sub{ font-size:14px; color:#5d6b7a; margin:0 0 22px; }
.art-picks__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.art-pick{
  display:flex; flex-direction:column; gap:8px;
  background:#fff; border:1px solid #e6ebf1; border-radius:14px; padding:18px 16px;
  text-decoration:none; transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.art-pick:hover{ transform:translateY(-3px); box-shadow:0 12px 26px rgba(20,50,88,.12); border-color:var(--ufa-orange); }
.art-pick__badge{
  align-self:flex-start; font-size:12px; font-weight:700; color:#fff; letter-spacing:.03em;
  background:linear-gradient(135deg, var(--ufa-orange), #b9760f); padding:4px 12px; border-radius:20px;
}
.art-pick__name{ font-size:16px; font-weight:800; color:var(--ufa-navy); }
.art-pick__desc{ font-size:12.5px; color:#5d6b7a; line-height:1.5; flex:1 1 auto; }
.art-pick__go{ font-size:13px; font-weight:700; color:var(--ufa-orange); }
.art-pick:hover .art-pick__go{ text-decoration:underline; }
.art-picks__all{
  display:inline-block; margin-top:20px; padding:13px 28px; border-radius:10px;
  background:linear-gradient(135deg, var(--ufa-orange), #b9760f); color:#fff; font-weight:700; font-size:14.5px;
  text-decoration:none; box-shadow:0 8px 20px rgba(220,144,30,.26); transition:transform .15s ease;
}
.art-picks__all:hover{ transform:translateY(-2px); color:#fff; }

@media (max-width:900px){
  .art-picks__grid{ grid-template-columns:repeat(2,1fr); }
  .art-facts{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .art-hero__title{ font-size:23px; }
  .art-wrap{ padding:28px 0 36px; }
  .art-picks{ padding:22px 18px; }
}
@media (max-width:460px){ .art-picks__grid{ grid-template-columns:1fr; } }

/* ====================== Страница доставки (.dv-*) ====================== */
.dv-hero{
  position:relative; overflow:hidden; color:#fff; padding:56px 0 52px;
  background:
    radial-gradient(900px 420px at 88% -20%, rgba(220,144,30,.18), transparent 60%),
    linear-gradient(150deg, var(--ufa-navy) 0%, var(--ufa-navy-d) 100%);
}
.dv-hero::after{ content:""; position:absolute; right:-90px; bottom:-120px; width:300px; height:300px; transform:rotate(35deg); background:linear-gradient(135deg, rgba(255,255,255,.05), transparent 70%); border-radius:56px; pointer-events:none; }
.dv-hero .container{ position:relative; z-index:1; }
.dv-hero-title{ font-size:34px; font-weight:800; color:#fff; margin-bottom:12px; line-height:1.2; }
.dv-hero-sub{ font-size:16px; color:rgba(255,255,255,.7); margin-bottom:34px; }
.dv-hero-stats{ display:flex; gap:32px; flex-wrap:wrap; }
.dv-stat{ display:flex; flex-direction:column; gap:4px; }
.dv-stat-num{ font-size:28px; font-weight:900; color:var(--ufa-orange); line-height:1; }
.dv-stat-label{ font-size:12px; color:rgba(255,255,255,.55); text-transform:uppercase; letter-spacing:.4px; }
.dv-section{ padding:52px 0; background:#fff; }
.dv-section--gray{ background:#f5f8fb; }
.dv-section .spl_h2{ font-size:23px; font-weight:800; color:var(--ufa-navy); padding:0; border:0; }
.dv-section .spl_text{ font-size:14.5px; color:#5d6b7a; line-height:1.65; }
/* ценовые карточки */
.dv-price-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.dv-price-card{ border-radius:14px; border:1px solid #e6ebf1; background:#fff; padding:20px 16px 18px; display:flex; flex-direction:column; gap:6px; position:relative; box-shadow:0 4px 14px rgba(20,50,88,.06); }
.dv-price-card--best{ border-color:var(--ufa-orange); box-shadow:0 6px 18px rgba(220,144,30,.16); }
.dv-price-dist{ font-size:13px; font-weight:700; color:#9fb0c3; text-transform:uppercase; letter-spacing:.5px; }
.dv-price-card--best .dv-price-dist{ color:var(--ufa-orange); }
.dv-price-val{ font-size:24px; font-weight:900; color:var(--ufa-navy); line-height:1; }
.dv-price-val span{ font-size:15px; font-weight:500; color:#8a97a6; }
.dv-price-note{ font-size:12px; color:#9fb0c3; line-height:1.4; }
.dv-price-badge{ position:absolute; top:-1px; right:-1px; background:var(--ufa-orange); color:#fff; font-size:11px; font-weight:700; padding:3px 10px; border-radius:0 14px 0 8px; }
.dv-extras{ display:flex; flex-wrap:wrap; gap:12px; }
.dv-extra-item{ display:flex; align-items:center; gap:10px; background:#f5f8fb; border:1px solid #e6ebf1; border-radius:10px; padding:12px 16px; font-size:14px; color:#34414f; flex:1 1 280px; }
.dv-extra-item svg{ flex-shrink:0; }
.dv-zones{ background:#f5f8fb; border:1px solid #e6ebf1; border-radius:12px; padding:16px 20px; font-size:14px; color:#34414f; line-height:1.7; }
.dv-zones b{ color:var(--ufa-navy); }
/* шаги */
.dv-steps-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.dv-step{ position:relative; background:#fff; border:1px solid #e6ebf1; border-top:3px solid var(--ufa-orange); border-radius:14px; padding:22px 18px; box-shadow:0 4px 14px rgba(20,50,88,.06); }
.dv-step__num{ font-size:13px; font-weight:800; color:#fff; background:var(--ufa-orange); width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin-bottom:12px; }
.dv-step__title{ font-size:15px; font-weight:700; color:var(--ufa-navy); margin-bottom:6px; }
.dv-step__text{ font-size:13px; color:#5d6b7a; line-height:1.55; }
/* требования */
.dv-req-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.dv-req-card{ background:#fff; border-radius:14px; border:1px solid #e6ebf1; box-shadow:0 4px 14px rgba(20,50,88,.06); padding:22px 18px; display:flex; flex-direction:column; gap:10px; }
.dv-req-icon{ line-height:1; }
.dv-req-title{ font-size:15px; font-weight:700; color:var(--ufa-navy); }
.dv-req-text{ font-size:13px; color:#5d6b7a; line-height:1.55; }
.dv-infobox{ background:#fff7ec; border:1px solid #f3dcb6; border-left:4px solid var(--ufa-orange); border-radius:12px; padding:16px 20px; font-size:14.5px; color:#34414f; line-height:1.6; }
.dv-infobox a{ color:var(--ufa-orange); font-weight:600; }
/* оплата */
.dv-pay-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.dv-pay-card{ background:#fff; border-radius:14px; border:1px solid #e6ebf1; box-shadow:0 4px 14px rgba(20,50,88,.06); padding:24px 20px; display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.dv-pay-icon{ width:40px; height:40px; object-fit:contain; }
.dv-pay-title{ font-size:16px; font-weight:700; color:var(--ufa-navy); }
.dv-pay-text{ font-size:13px; color:#5d6b7a; line-height:1.5; }
.dv-pay-note{ color:#9fb0c3; font-size:13px; margin-top:6px; }
/* CTA */
.dv-cta{ background:linear-gradient(135deg, var(--ufa-orange) 0%, #b9760f 100%); padding:40px 0; }
.dv-cta-inner{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.dv-cta-title{ font-size:23px; font-weight:800; color:#fff; margin-bottom:4px; }
.dv-cta-sub{ font-size:14px; color:rgba(255,255,255,.85); }
.dv-cta-actions{ display:flex; gap:12px; flex-wrap:wrap; }
.dv-cta-btn{ background:#fff; color:#b9760f; border:none; border-radius:10px; padding:12px 28px; font-size:16px; font-weight:800; cursor:pointer; text-decoration:none; display:inline-block; }
.dv-cta-btn--outline{ background:transparent; color:#fff; border:2px solid rgba(255,255,255,.6); }
@media (max-width:1100px){ .dv-price-grid{ grid-template-columns:repeat(3,1fr); } .dv-req-grid,.dv-steps-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:768px){ .dv-hero-title{ font-size:26px; } .dv-price-grid{ grid-template-columns:repeat(2,1fr); } .dv-pay-grid{ grid-template-columns:1fr; } .dv-cta-inner{ flex-direction:column; align-items:flex-start; } }
@media (max-width:480px){ .dv-price-grid{ grid-template-columns:1fr 1fr; } .dv-req-grid,.dv-steps-grid{ grid-template-columns:1fr; } .dv-hero-stats{ gap:20px; } }

/* ====================== Бетононасос (.bn-*) ====================== */
.bn-hero{
  position:relative; overflow:hidden; color:#fff; padding:56px 0 48px;
  background:
    radial-gradient(900px 420px at 88% -20%, rgba(220,144,30,.18), transparent 60%),
    linear-gradient(150deg, var(--ufa-navy) 0%, var(--ufa-navy-d) 100%);
}
.bn-hero::after{ content:""; position:absolute; right:-90px; bottom:-120px; width:300px; height:300px; transform:rotate(35deg); background:linear-gradient(135deg, rgba(255,255,255,.05), transparent 70%); border-radius:56px; pointer-events:none; }
.bn-hero .container{ position:relative; z-index:1; }
.bn-hero__title{ font-size:32px; font-weight:800; line-height:1.25; margin-bottom:12px; color:#fff; }
.bn-hero__sub{ font-size:16px; color:rgba(255,255,255,.72); margin-bottom:34px; max-width:640px; }
.bn-stats{ display:flex; gap:40px; flex-wrap:wrap; }
.bn-stat{ display:flex; flex-direction:column; gap:4px; }
.bn-stat__val{ font-size:30px; font-weight:800; color:var(--ufa-orange); line-height:1; }
.bn-stat__lbl{ font-size:11px; color:rgba(255,255,255,.6); text-transform:uppercase; letter-spacing:.04em; }
.bn-section{ padding:52px 0; background:#fff; }
.bn-section--gray{ background:#f5f8fb; }
.bn-stitle{ font-size:23px; font-weight:800; color:var(--ufa-navy); margin-bottom:24px; }
/* преимущества */
.bn-adv-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
.bn-adv-card{ background:#fff; border:1px solid #e6ebf1; border-top:3px solid var(--ufa-orange); border-radius:14px; box-shadow:0 4px 14px rgba(20,50,88,.06); padding:24px 16px; display:flex; flex-direction:column; align-items:center; text-align:center; gap:14px; }
.bn-adv-icon{ font-size:30px; line-height:1; color:var(--ufa-orange); }
.bn-adv-text{ font-size:13px; color:#34414f; line-height:1.5; }
/* интро split */
.bn-split{ display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:center; }
.bn-split img{ width:100%; height:280px; object-fit:cover; border-radius:14px; box-shadow:0 8px 22px rgba(14,36,64,.16); }
.bn-split p{ font-size:15px; color:#34414f; line-height:1.7; margin:0 0 12px; }
/* ценовые карточки */
.bn-price-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px; }
.bn-price-card{ position:relative; background:#fff; border:1px solid #e6ebf1; border-radius:14px; box-shadow:0 4px 14px rgba(20,50,88,.06); padding:22px 18px; display:flex; flex-direction:column; gap:6px; }
.bn-price-card--top{ border-color:var(--ufa-orange); box-shadow:0 6px 18px rgba(220,144,30,.16); }
.bn-price-card__badge{ position:absolute; top:-1px; right:-1px; background:var(--ufa-orange); color:#fff; font-size:11px; font-weight:700; padding:3px 10px; border-radius:0 14px 0 8px; }
.bn-price-card__boom{ font-size:13px; font-weight:700; color:#9fb0c3; text-transform:uppercase; letter-spacing:.5px; }
.bn-price-card--top .bn-price-card__boom{ color:var(--ufa-orange); }
.bn-price-card__val{ font-size:23px; font-weight:900; color:var(--ufa-navy); line-height:1.1; }
.bn-price-card__val span{ font-size:14px; font-weight:500; color:#8a97a6; }
.bn-price-card__note{ font-size:12px; color:#9fb0c3; }
/* примечания */
.bn-notes{ display:flex; flex-direction:column; gap:10px; }
.bn-note-item{ font-size:13.5px; color:#34414f; background:#fff7ec; border:1px solid #f3dcb6; border-radius:10px; padding:12px 16px; line-height:1.55; }
/* CTA */
.bn-cta{ background:linear-gradient(135deg, var(--ufa-orange) 0%, #b9760f 100%); padding:44px 0; }
.bn-cta__inner{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.bn-cta__text{ color:#fff; font-size:18px; line-height:1.55; }
.bn-cta__btn{ display:inline-block; background:#fff; color:#b9760f; font-weight:800; font-size:15px; padding:14px 32px; border-radius:10px; text-decoration:none; white-space:nowrap; }
@media (max-width:1100px){ .bn-adv-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:768px){ .bn-hero__title{ font-size:24px; } .bn-stats{ gap:24px; } .bn-stat__val{ font-size:24px; } .bn-adv-grid{ grid-template-columns:repeat(2,1fr); } .bn-split{ grid-template-columns:1fr; } .bn-split img{ height:220px; } .bn-cta__inner{ flex-direction:column; align-items:flex-start; } }

/* ====================== Контакты (.ct-*) ====================== */
.ct-wrap{ padding:42px 0 56px; }
.ct-grid{ display:grid; grid-template-columns:0.92fr 1.08fr; gap:26px; align-items:stretch; }
.ct-card{ background:#fff; border:1px solid #e6ebf1; border-radius:18px; box-shadow:0 8px 24px rgba(20,50,88,.07); padding:14px 28px 26px; display:flex; flex-direction:column; }
.ct-row{ display:flex; gap:15px; align-items:flex-start; padding:16px 0; border-bottom:1px solid #eef2f6; }
.ct-row:last-of-type{ border-bottom:0; }
.ct-ic{ flex:0 0 44px; width:44px; height:44px; border-radius:12px; background:#fff7ec; border:1px solid #f3dcb6; display:flex; align-items:center; justify-content:center; }
.ct-row__b{ min-width:0; }
.ct-row__l{ font-size:11.5px; color:#9fb0c3; text-transform:uppercase; letter-spacing:.05em; margin-bottom:3px; }
.ct-row__v{ font-size:16px; color:var(--ufa-navy); font-weight:700; line-height:1.4; }
.ct-row__v a{ color:inherit; text-decoration:none; }
.ct-row__v a:hover{ color:var(--ufa-orange); }
.ct-row__v .ufa_tel{ color:var(--ufa-navy); }
.ct-btn{ margin-top:22px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:15px 30px; border-radius:12px; background:linear-gradient(135deg, var(--ufa-orange), #b9760f); color:#fff; font-weight:700; font-size:15px; text-decoration:none; cursor:pointer; box-shadow:0 8px 20px rgba(220,144,30,.26); transition:transform .15s ease, box-shadow .15s ease; }
.ct-btn:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(220,144,30,.4); color:#fff; }
.ct-note{ font-size:13px; color:#8a97a6; margin-top:14px; line-height:1.55; }
.ct-note a{ color:var(--ufa-orange); }
.ct-map{ border-radius:18px; overflow:hidden; border:1px solid #e6ebf1; box-shadow:0 8px 24px rgba(20,50,88,.07); min-height:480px; }
.ct-map iframe{ width:100%; height:100%; min-height:480px; border:0; display:block; }
@media (max-width:900px){
  .ct-grid{ grid-template-columns:1fr; }
  .ct-map{ min-height:360px; order:-1; }
  .ct-map iframe{ min-height:360px; }
}

/* ====================== Корзина (right_sidebar) ====================== */
.right_sidebar{ background:#fff !important; }
.right_sidebar .container{ padding:18px 22px 24px; }
/* шапка */
.right_sidebar_header{ display:flex; align-items:center; justify-content:space-between; padding:0 0 16px; margin-bottom:6px; border-bottom:2px solid #eef2f6; }
.right_sidebar_title{ font-size:22px; font-weight:800; color:var(--ufa-navy); display:flex; align-items:baseline; gap:6px; }
.right_sidebar_title .cnt_tot{ color:var(--ufa-orange); font-weight:800; }
.right_sidebar_title span:last-child{ font-size:14px; font-weight:500; color:#9fb0c3; }
.right_sidebar_close{ width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background .15s ease; }
.right_sidebar_close:hover{ background:#f5f8fb; }
/* строка товара */
.right_sidebar .order_box{ padding:16px 0; border-bottom:1px solid #eef2f6; }
.right_sidebar .order_line{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.right_sidebar .order_mobile1{ display:flex; gap:14px; align-items:center; flex:1 1 240px; min-width:0; }
.right_sidebar .order_image{ flex:0 0 auto; }
.right_sidebar .order_image img{ width:68px; height:68px; object-fit:cover; border-radius:12px; border:1px solid #eef2f6; display:block; }
.right_sidebar .order_title{ font-size:14px; line-height:1.35; margin-bottom:4px; }
.right_sidebar .order_title a{ color:var(--ufa-navy); text-decoration:none; }
.right_sidebar .order_title a:hover{ color:var(--ufa-orange); }
.right_sidebar .order_title .bolder{ font-weight:700; }
.right_sidebar .order_format{ font-size:11px; color:#9fb0c3; text-transform:uppercase; letter-spacing:.04em; margin-bottom:6px; }
.right_sidebar .order_ed{ display:inline-block; background:var(--ufa-orange); color:#fff; font-size:11px; font-weight:700; padding:3px 12px; border-radius:20px; text-transform:uppercase; }
/* счётчик + сумма + удаление */
.right_sidebar .order_count_box{ display:flex; align-items:center; gap:16px; margin-left:auto; }
.right_sidebar .order_count{ display:flex; align-items:center; gap:0; border:1px solid #e6ebf1; border-radius:10px; overflow:hidden; }
.right_sidebar .order_count_plus,
.right_sidebar .order_count_minus{ width:34px; height:34px; display:flex; align-items:center; justify-content:center; cursor:pointer; font-size:18px; font-weight:700; color:var(--ufa-navy); background:#f5f8fb; user-select:none; transition:background .15s ease, color .15s ease; }
.right_sidebar .order_count_plus:hover,
.right_sidebar .order_count_minus:hover{ background:var(--ufa-orange); color:#fff; }
.right_sidebar .order_count_minus{ order:1; }
.right_sidebar .order_count_total{ order:2; width:46px; height:34px; text-align:center; border:0; border-left:1px solid #e6ebf1; border-right:1px solid #e6ebf1; font-size:15px; font-weight:700; color:var(--ufa-navy); background:#fff; -moz-appearance:textfield; }
.right_sidebar .order_count_plus{ order:3; }
.right_sidebar .order_count_total::-webkit-outer-spin-button,
.right_sidebar .order_count_total::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.right_sidebar .order_line_total{ font-size:16px; font-weight:800; color:var(--ufa-navy); white-space:nowrap; min-width:80px; text-align:right; }
.right_sidebar .delete_tovar{ cursor:pointer; opacity:.45; transition:opacity .15s ease; padding:4px; }
.right_sidebar .delete_tovar:hover{ opacity:1; }
/* итого */
.right_sidebar .cart_foot{ display:flex; align-items:center; justify-content:space-between; margin-top:18px; padding-top:18px; border-top:2px solid #eef2f6; }
.right_sidebar .cart_foot > span{ font-size:18px; color:#5d6b7a; }
.right_sidebar .final_price{ display:flex; align-items:center; gap:6px; font-size:26px; font-weight:900; color:var(--ufa-navy); }
.right_sidebar .final_price img{ width:18px; height:auto; }
/* кнопка оформления */
.right_sidebar .cart_boot{ margin-top:18px; }
.right_sidebar .oformit{ display:flex; align-items:center; justify-content:center; padding:16px; border-radius:12px; background:linear-gradient(135deg, var(--ufa-orange), #b9760f); color:#fff; font-weight:700; font-size:16px; cursor:pointer; box-shadow:0 8px 20px rgba(220,144,30,.28); transition:transform .15s ease, box-shadow .15s ease; }
.right_sidebar .oformit:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(220,144,30,.4); }
.right_sidebar .oformit span{ color:#fff; }
/* пустая корзина */
.right_sidebar .epsent_catalog{ text-align:center; color:#5d6b7a; font-size:15px; padding:40px 16px; line-height:1.6; }
.right_sidebar .epsent_catalog img{ display:block; margin:0 auto 14px; width:40px; opacity:.7; }
.right_sidebar .epsent_catalog a{ color:var(--ufa-orange); font-weight:600; }
@media (max-width:480px){
  .right_sidebar .order_count_box{ width:100%; justify-content:space-between; margin-left:0; margin-top:10px; }
}

/* ====================== Оформление заказа (.ufa_order) ====================== */
.ufa_order{ padding:30px 0 56px; }
.ufa_order .special_title{ font-size:30px !important; font-weight:800 !important; color:var(--ufa-navy) !important; text-align:left !important; padding:0 0 6px !important; margin:0 0 24px !important; }
.ufa_order .cart_right{ background:#fff; border:1px solid #e6ebf1; border-radius:18px; box-shadow:0 8px 24px rgba(20,50,88,.07); padding:26px 28px; }
/* поля формы */
.ufa_order .form_zakaz input[type="text"],
.ufa_order .form_zakaz .commentariy{ width:100%; margin:0 0 14px !important; padding:13px 16px; border:1px solid #e1e8f0; border-radius:11px; font-size:15px; color:var(--ufa-navy); background:#fff; transition:border-color .15s ease, box-shadow .15s ease; }
.ufa_order .form_zakaz .commentariy{ min-height:96px; resize:vertical; font-family:inherit; }
.ufa_order .form_zakaz input::placeholder,
.ufa_order .form_zakaz .commentariy::placeholder{ color:#9fb0c3; }
.ufa_order .form_zakaz input:focus,
.ufa_order .form_zakaz .commentariy:focus{ outline:none; border-color:var(--ufa-orange); box-shadow:0 0 0 3px rgba(220,144,30,.12); }
/* способ оплаты — radio */
.ufa_order .container_ch{ font-size:16px !important; color:var(--ufa-navy); padding:10px 12px 10px 40px !important; margin:0 0 8px !important; border:1px solid #e6ebf1; border-radius:11px; font-weight:600; transition:border-color .15s ease, background .15s ease; }
.ufa_order .container_ch:hover{ border-color:var(--ufa-orange); background:#fff9f0; }
.ufa_order .container_ch .checkmark{ top:50% !important; transform:translateY(-50%); left:13px !important; height:20px !important; width:20px !important; border:2px solid #c7d3e2 !important; border-radius:50% !important; background:#fff !important; }
.ufa_order .container_ch input:checked ~ .checkmark{ border-color:var(--ufa-orange) !important; }
.ufa_order .container_ch input:checked ~ .checkmark:after{ content:""; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:10px; height:10px; border-radius:50%; background:var(--ufa-orange); display:block; }
.ufa_order .container_ch .checkmark:after{ display:none; }
/* согласие — checkbox */
.ufa_order .container2{ font-size:12.5px !important; color:#5d6b7a; line-height:1.5; padding-left:34px !important; margin:16px 0 18px !important; }
.ufa_order .container2 a{ color:var(--ufa-orange); }
.ufa_order .container2 .checkmark2{ top:1px !important; height:22px !important; width:22px !important; border:2px solid #c7d3e2 !important; border-radius:6px !important; background:#fff !important; }
.ufa_order .container2 input:checked ~ .checkmark2{ background:var(--ufa-orange) !important; border-color:var(--ufa-orange) !important; }
.ufa_order .container2 .checkmark2:after{ left:7px !important; top:3px !important; width:6px !important; height:11px !important; border:solid #fff !important; border-width:0 2px 2px 0 !important; }
/* кнопка заказать */
.ufa_order .cart_buttons{ margin-top:8px; }
.ufa_order .cart_zakaz{ width:100%; border:0; cursor:pointer; padding:16px; border-radius:12px; background:linear-gradient(135deg, var(--ufa-orange), #b9760f); color:#fff; font-weight:700; font-size:16px; text-transform:none; box-shadow:0 8px 20px rgba(220,144,30,.28); transition:transform .15s ease, box-shadow .15s ease; }
.ufa_order .cart_zakaz:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(220,144,30,.4); }
/* правая колонка — содержание */
.ufa_order__sum .cart_right{ position:sticky; top:90px; }
.ufa_order .order_title_pre{ text-align:left !important; font-size:18px !important; font-weight:800 !important; color:var(--ufa-navy) !important; letter-spacing:.03em; padding-bottom:14px; border-bottom:2px solid #eef2f6; margin-bottom:6px; }
.ufa_order .order_box{ padding:14px 0; border-bottom:1px solid #eef2f6; }
.ufa_order .order_line{ display:flex; align-items:center; gap:14px; }
.ufa_order .order_mobile1{ display:flex; gap:14px; align-items:center; flex:1 1 auto; min-width:0; }
.ufa_order .order_image img{ width:60px; height:60px; object-fit:cover; border-radius:10px; border:1px solid #eef2f6; }
.ufa_order .order_title a{ color:var(--ufa-navy); text-decoration:none; font-size:14px; }
.ufa_order .order_title a:hover{ color:var(--ufa-orange); }
.ufa_order .order_title .bolder{ font-weight:700; }
.ufa_order .order_format{ font-size:11px; color:#9fb0c3; text-transform:uppercase; }
.ufa_order .order_ed{ display:inline-block; margin-top:5px; background:var(--ufa-orange); color:#fff; font-size:11px; font-weight:700; padding:3px 12px; border-radius:20px; }
.ufa_order .order_count_box{ margin-left:auto; }
.ufa_order .order_count_pre{ font-size:18px !important; font-weight:800 !important; color:var(--ufa-navy) !important; min-width:36px; text-align:right; }
.ufa_order .cart_foot_pre{ justify-content:space-between !important; margin:18px 0 0 !important; padding-top:18px; border-top:2px solid #eef2f6; }
.ufa_order .cart_foot_pre > span{ font-size:18px; color:#5d6b7a; }
.ufa_order .cart_foot_pre .final_price{ display:flex; align-items:center; gap:6px; font-size:26px; font-weight:900; color:var(--ufa-navy); }
.ufa_order .cart_foot_pre .final_price img{ width:18px; height:auto; }
@media (max-width:767px){
  .ufa_order__sum{ margin-top:18px; }
  .ufa_order__sum .cart_right{ position:static; }
  .ufa_order .special_title{ font-size:24px !important; }
}
