/* ===========================================================================
   musorovoz.css — визуальная тема сайта MUSOROVOZ в стиле Kärcher.
   Жёлтый #FFCC00 — акцент; графит/чёрный текст; белый и светло-серый фон.
   Префикс классов mv-*. Подключается после bootstrap.min.css.
   Контент/HTML не зависят от этого файла — меняются только цвета и оформление.
   =========================================================================== */
:root{
  --mv-yellow:#FFCC00; --mv-yellow-d:#E6B800; --mv-yellow-soft:#FFF6CC;
  --mv-dark:#111111; --mv-graphite:#2B2B2B;
  --mv-gray:#F5F5F5; --mv-gray2:#E2E2E2; --mv-border:#D8D8D8;
  /* legacy-алиасы на случай старых ссылок на переменные */
  --mv-teal:#E6B800; --mv-teal-dark:#E6B800;
}

/* ---- Topbar / Header ---- */
.mv-topbar{background:var(--mv-graphite);color:#d6d6d6;font-size:14px;}
.mv-topbar a{color:#d6d6d6;text-decoration:none;}
.mv-topbar a:hover{color:var(--mv-yellow);}
.mv-header{position:sticky;top:0;z-index:1030;background:#fff;border-bottom:3px solid var(--mv-yellow);box-shadow:0 1px 8px rgba(0,0,0,.06);}
.mv-logo{font-family:'Inter',sans-serif;font-weight:900;font-size:26px;letter-spacing:1px;color:var(--mv-dark);text-decoration:none;}
.mv-logo span{color:var(--mv-yellow-d);}
.mv-logo small{display:block;font-size:10px;font-weight:600;letter-spacing:3px;color:#8a8a8a;text-transform:uppercase;}
.mv-nav a{color:var(--mv-dark);text-decoration:none;font-weight:600;font-size:15px;padding:8px 12px;border-radius:4px;transition:.15s;}
.mv-nav a:hover{color:var(--mv-dark);background:var(--mv-yellow-soft);box-shadow:inset 0 -3px 0 var(--mv-yellow);}
.mv-btn-call{background:var(--mv-yellow);color:var(--mv-dark)!important;border-radius:6px;padding:11px 22px;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;border:none;cursor:pointer;transition:.15s;}
.mv-btn-call:hover{background:var(--mv-yellow-d);}
.mv-btn-wa{background:#25D366;color:#fff!important;border-radius:6px;padding:11px 18px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:8px;}
.mv-btn-wa:hover{background:#1da851;}

/* ---- Hero (главная) ---- */
.mv-hero{position:relative;background:linear-gradient(120deg,rgba(17,17,17,.86) 0%,rgba(17,17,17,.55) 100%),url('/images/loading-process.jpg') center/cover no-repeat;color:#fff;padding:70px 0 80px;}
.mv-hero h1{font-weight:900;font-size:clamp(28px,4vw,46px);line-height:1.12;margin-bottom:18px;}
.mv-hero .lead{font-size:clamp(16px,1.6vw,19px);color:#e8e8e8;max-width:640px;}
.mv-hero-props{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;}
.mv-hero-prop{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,204,0,.45);border-radius:6px;padding:12px 16px;font-weight:600;font-size:14px;}
.mv-hero-prop i{color:var(--mv-yellow);font-size:20px;}
.mv-hero-card{background:#fff;color:#222;border-radius:10px;padding:26px;box-shadow:0 20px 50px rgba(0,0,0,.30);border-top:4px solid var(--mv-yellow);}
.mv-badge{display:inline-flex;align-items:center;gap:8px;background:var(--mv-yellow);border:none;color:var(--mv-dark);border-radius:4px;padding:7px 16px;font-weight:800;font-size:13px;margin-bottom:18px;}

/* ---- Внутренний hero (страницы услуг) ---- */
.mv-page-hero{background:linear-gradient(120deg,rgba(17,17,17,.90) 0%,rgba(17,17,17,.65) 100%),url('/images/loading-process.jpg') center/cover no-repeat;color:#fff;padding:46px 0 50px;}
.mv-page-hero h1{font-weight:900;font-size:clamp(26px,3.4vw,40px);line-height:1.15;margin:10px 0 14px;}
.mv-page-hero .lead{color:#e8e8e8;font-size:clamp(15px,1.5vw,18px);max-width:760px;}
.mv-breadcrumb{font-size:13px;color:#bdbdbd;}
.mv-breadcrumb a{color:#e0e0e0;text-decoration:none;}
.mv-breadcrumb a:hover{color:var(--mv-yellow);}

/* ---- Карточки услуг ---- */
.mv-service{display:block;height:100%;background:#fff;border:1px solid var(--mv-border);border-top:3px solid var(--mv-yellow);border-radius:8px;padding:26px;text-decoration:none;color:#222;transition:.18s;}
.mv-service:hover{border-color:var(--mv-yellow);box-shadow:0 10px 26px rgba(0,0,0,.10);transform:translateY(-3px);}
.mv-service i{font-size:30px;color:var(--mv-graphite);margin-bottom:14px;}
.mv-service h3{font-size:18px;font-weight:800;margin-bottom:8px;color:var(--mv-dark);}
.mv-service p{font-size:14px;color:#666;margin:0;}
.mv-service .mv-more{display:inline-block;margin-top:14px;color:var(--mv-dark);font-weight:800;font-size:14px;border-bottom:2px solid var(--mv-yellow);}

/* ---- Секции / заголовки ---- */
.mv-section{padding:64px 0;}
.mv-section--alt{background:var(--mv-gray);}
.mv-h2{font-weight:900;font-size:clamp(24px,3vw,36px);color:var(--mv-dark);margin-bottom:10px;}
.mv-h2 span{color:var(--mv-dark);box-shadow:inset 0 -12px 0 var(--mv-yellow);}
.mv-sub{color:#666;max-width:720px;margin:0 auto 38px;}

/* ---- Текстовые блоки ---- */
.mv-prose{color:#3a3a3a;font-size:16px;line-height:1.75;}
.mv-prose h2{font-weight:800;font-size:clamp(22px,2.4vw,28px);color:var(--mv-dark);margin:6px 0 14px;}
.mv-prose h3{font-weight:800;font-size:19px;color:var(--mv-dark);margin:22px 0 10px;}
.mv-prose p{margin-bottom:14px;}
.mv-prose ul{padding-left:0;list-style:none;margin-bottom:16px;}
.mv-prose ul li{position:relative;padding-left:30px;margin-bottom:9px;}
.mv-prose ul li::before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--mv-yellow-d);position:absolute;left:0;top:1px;}
.mv-prose a{color:var(--mv-dark);font-weight:600;text-decoration:underline;text-decoration-color:var(--mv-yellow);text-underline-offset:3px;}

/* ---- Чек-листы можно/нельзя ---- */
.mv-checklist{list-style:none;padding:0;margin:0;}
.mv-checklist li{position:relative;padding:8px 0 8px 32px;border-bottom:1px solid var(--mv-gray2);font-size:15px;color:#333;}
.mv-checklist.yes li::before{content:"\f00c";color:#2E7D32;}
.mv-checklist.no  li::before{content:"\f00d";color:#c62828;}
.mv-checklist li::before{font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:4px;top:9px;}

/* ---- Преимущества ---- */
.mv-trust{background:#fff;border-radius:8px;padding:28px;height:100%;border:1px solid var(--mv-border);}
.mv-trust .ico{width:56px;height:56px;border-radius:8px;background:var(--mv-yellow);color:var(--mv-dark);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px;}
.mv-trust h3{font-size:17px;font-weight:800;margin-bottom:8px;color:var(--mv-dark);}
.mv-trust p{font-size:14px;color:#666;margin:0;}

/* ---- Автопарк ---- */
.mv-fleet-card{background:#fff;border:1px solid var(--mv-border);border-radius:8px;overflow:hidden;height:100%;}
.mv-fleet-card img{width:100%;height:180px;object-fit:cover;display:block;background:#e2e2e2;}
.mv-fleet-card .body{padding:18px;}
.mv-fleet-card h3{font-size:17px;font-weight:800;margin-bottom:4px;color:var(--mv-dark);}
.mv-fleet-card .spec{font-size:13px;color:#666;}
.mv-fleet-card .price{color:var(--mv-dark);font-weight:900;margin-top:8px;border-left:3px solid var(--mv-yellow);padding-left:8px;}

/* ---- Цены ---- */
.mv-price-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;border:1px solid var(--mv-border);}
.mv-price-table th{background:var(--mv-graphite);color:#fff;padding:14px 16px;text-align:left;font-size:14px;}
.mv-price-table td{padding:13px 16px;border-top:1px solid var(--mv-gray2);font-size:14px;}
.mv-price-table tr:nth-child(even) td{background:var(--mv-gray);}
.mv-price-cat td{background:var(--mv-yellow-soft)!important;font-weight:800;color:var(--mv-dark);}
.mv-price-val{font-weight:900;color:var(--mv-dark);white-space:nowrap;}

/* ---- Этапы ---- */
.mv-step{background:#fff;border-radius:8px;padding:24px;height:100%;border:1px solid var(--mv-border);position:relative;}
.mv-step .num{position:absolute;top:-14px;left:24px;width:34px;height:34px;border-radius:50%;background:var(--mv-yellow);color:var(--mv-dark);display:flex;align-items:center;justify-content:center;font-weight:900;}
.mv-step i{font-size:24px;color:var(--mv-graphite);margin:10px 0;}
.mv-step h3{font-size:16px;font-weight:800;margin-bottom:6px;color:var(--mv-dark);}
.mv-step p{font-size:13.5px;color:#666;margin:0;}

/* ---- CTA ---- */
.mv-cta{background:var(--mv-graphite);color:#fff;border-radius:10px;padding:46px;text-align:center;border-top:5px solid var(--mv-yellow);}
.mv-cta h2{font-weight:900;font-size:clamp(24px,3vw,34px);margin-bottom:12px;}

/* ---- Footer ---- */
.mv-footer{background:var(--mv-dark);color:#9a9a9a;padding:54px 0 26px;}
.mv-footer h4{color:#fff;font-size:16px;font-weight:800;margin-bottom:16px;border-left:3px solid var(--mv-yellow);padding-left:10px;}
.mv-footer a{color:#9a9a9a;text-decoration:none;}
.mv-footer a:hover{color:var(--mv-yellow);}
.mv-footer .li{display:block;padding:5px 0;font-size:14px;}
.mv-footer .copy{border-top:1px solid #2b2b2b;margin-top:32px;padding-top:20px;font-size:13px;color:#777;}

/* ---- Accordion (FAQ) ---- */
.accordion-button:not(.collapsed){background:var(--mv-yellow-soft);color:var(--mv-dark);box-shadow:inset 3px 0 0 var(--mv-yellow);}
.accordion-button:focus{box-shadow:0 0 0 .2rem rgba(255,204,0,.40);}

/* ---- Калькулятор стоимости (полная версия, логика из almatytrans) ---- */
.mv-calc-widget{background:#fff;border:1px solid var(--mv-border);border-top:4px solid var(--mv-yellow);border-radius:10px;overflow:hidden;}
.mv-calc-grid{display:flex;gap:0;align-items:stretch;}
.mv-calc-left{flex:1 1 320px;padding:28px 28px 28px;min-width:0;}
.mv-calc-right{width:320px;flex-shrink:0;background:var(--mv-gray);border-left:1px solid var(--mv-border);padding:28px;display:flex;flex-direction:column;gap:14px;}
.mv-calc-lbl{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#888;margin-bottom:6px;}
.mv-calc-inp{width:100%;padding:11px 14px;border:1.5px solid var(--mv-border);border-radius:6px;font-size:15px;font-family:inherit;background:#fff;color:var(--mv-dark);}
.mv-calc-inp:focus{outline:none;border-color:var(--mv-yellow);box-shadow:0 0 0 3px rgba(255,204,0,.30);}
.mv-calc-row{margin-bottom:16px;}
.mv-calc-chk-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;}
.mv-calc-chk{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--mv-dark);cursor:pointer;padding:9px 14px;border:1.5px solid var(--mv-border);border-radius:8px;background:#fff;transition:.15s;}
.mv-calc-chk:has(input:checked){border-color:var(--mv-yellow);background:var(--mv-yellow-soft);}
.mv-calc-chk input{width:16px;height:16px;accent-color:var(--mv-yellow);}
.mv-calc-client{display:flex;gap:8px;margin-bottom:0;}
.mv-calc-client label{flex:1;display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;cursor:pointer;padding:9px 14px;border:1.5px solid var(--mv-border);border-radius:8px;background:#fff;transition:.15s;}
.mv-calc-client label:has(input:checked){border-color:var(--mv-yellow);background:var(--mv-yellow-soft);}
.mv-calc-client input{accent-color:var(--mv-yellow);}
/* result panel */
.mv-calc-res-lbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#888;}
.mv-calc-total-wrap{display:flex;align-items:baseline;gap:6px;}
.mv-calc-total{font-size:44px;font-weight:900;color:var(--mv-dark);line-height:1;}
.mv-calc-currency{font-size:22px;font-weight:800;color:var(--mv-dark);}
.mv-calc-bill-lbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#888;margin-bottom:8px;}
.mv-calc-bill{flex:1;}
.mv-cb-row{display:flex;justify-content:space-between;font-size:13px;color:#555;padding:3px 0;}
.mv-cb-row span:last-child{font-weight:700;color:var(--mv-dark);white-space:nowrap;margin-left:8px;}
.mv-cb-accent{color:var(--mv-yellow-d)!important;}
.mv-cb-accent span:last-child{color:var(--mv-yellow-d)!important;}
.mv-cb-warn{color:#e53e3e!important;font-size:11px;}
.mv-calc-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto;}
.mv-calc-wa{background:#25D366;color:#fff!important;border-radius:8px;padding:12px 16px;font-weight:800;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;transition:.15s;}
.mv-calc-wa:hover{background:#1da851;}
.mv-calc-note{font-size:11px;color:#aaa;text-align:center;line-height:1.4;}
@media(max-width:860px){.mv-calc-grid{flex-direction:column;}.mv-calc-right{width:100%;border-left:none;border-top:1px solid var(--mv-border);}}

/* ====== Таблица цен (almatytrans-логика, Kärcher-стиль) ====== */
.mv-pricing{font-family:'Inter',sans-serif;color:#333;background:#fff;padding:48px 0;}
.mv-pricing .top-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;}
.mv-pricing .top-tab{width:100%;padding:18px 12px;border:2px solid var(--mv-border);background:#fff;color:var(--mv-graphite);font-family:'Inter',sans-serif;font-size:15px;font-weight:700;cursor:pointer;transition:.15s;border-radius:6px;text-align:center;}
.mv-pricing .top-tab.active{background:var(--mv-yellow);border-color:var(--mv-yellow);color:var(--mv-dark);}
.mv-pricing .top-tab:hover:not(.active){background:var(--mv-yellow-soft);border-color:var(--mv-yellow);}
.mv-pricing .table-container{position:relative;overflow:hidden;border:1px solid var(--mv-border);background:#fff;border-radius:10px;}
.mv-pricing table{display:none;width:100%;border-collapse:collapse;font-size:14px;margin-bottom:0;}
.mv-pricing table.active-table{display:table;}
.mv-pricing th,.mv-pricing td{padding:14px 12px;border:2px solid #fff;text-align:center;vertical-align:middle;}
.mv-pricing th{position:sticky;top:0;background:var(--mv-graphite);color:#fff;font-weight:700;font-size:13px;z-index:10;}
.mv-pricing .data-row{cursor:default;transition:.15s;}
.mv-pricing .data-row:hover{filter:brightness(.97);}
.mv-pricing .row-even{background:var(--mv-gray);}
.mv-pricing .row-odd{background:#fff;}
.mv-pricing .category-row td{background:var(--mv-gray2);font-weight:800;text-align:center;color:var(--mv-graphite);text-transform:uppercase;font-size:11px;letter-spacing:1.2px;}
.mv-pricing .price-val{font-weight:800;color:var(--mv-dark);}
/* переключатель физ/юр */
.mv-pricing .mv-type-footer{background:#fff;padding:14px 20px;border-top:1px solid var(--mv-border);}
.mv-pricing .mv-type-wrap{display:flex;background:var(--mv-gray);border:1px solid var(--mv-border);border-radius:50px;padding:4px;max-width:400px;margin:0 auto;}
.mv-pricing .mv-type-btn{flex:1;padding:13px 20px;border:none;background:transparent;color:#666;font-family:'Inter',sans-serif;font-size:15px;font-weight:700;border-radius:50px;cursor:pointer;transition:.2s;}
.mv-pricing .mv-type-btn.active{background:var(--mv-yellow);color:var(--mv-dark);box-shadow:0 4px 12px rgba(255,204,0,.35);}
@media(max-width:600px){
  .mv-pricing .top-tabs{grid-template-columns:1fr;}
  .mv-pricing .top-tab{padding:14px;}
  .mv-pricing td:first-child{min-width:110px;}
}

/* ---- Мессенджер-воронка (плавающие кнопки) ---- */
.mv-fab{position:fixed;right:18px;bottom:18px;z-index:9998;display:flex;flex-direction:column;gap:12px;}
.mv-fab-btn{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;text-decoration:none;border:none;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.25);transition:transform .15s;}
.mv-fab-btn:hover{transform:translateY(-3px);color:#fff;}
.mv-fab-btn.wa{background:#25D366;}
.mv-fab-btn.tg{background:#229ED9;}
.mv-fab-btn.photo{background:var(--mv-yellow);color:var(--mv-dark);}
.mv-fab-btn.photo:hover{color:var(--mv-dark);}
@media print{.mv-fab{display:none!important;}}

/* ---- Галерея «наши работы» (плейсхолдеры) ---- */
.mv-work{background:#fff;border:1px solid var(--mv-border);border-radius:10px;overflow:hidden;height:100%;}
.mv-work-ph{height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:repeating-linear-gradient(45deg,#f0f0f0,#f0f0f0 12px,#eaeaea 12px,#eaeaea 24px);color:#9a9a9a;font-size:13px;}
.mv-work-ph i{font-size:30px;color:#c4c4c4;}
.mv-work-cap{padding:14px 16px;font-weight:700;font-size:14px;color:var(--mv-dark);}
