/* Garant: shared presentation and responsive layout, 2026-10-30. */
:root {
  --garant-ink: #172b3a;
  --garant-blue: #0a426a;
  --garant-yellow: #ffc513;
  --garant-muted: #536372;
  --garant-line: #dde5eb;
  --garant-surface: #f4f7f9;
}
body.layout-2 {
  font-family: Arial, "Helvetica Neue", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  color: var(--garant-ink);
}
body.layout-2 h1, body.layout-2 h2, body.layout-2 h3,
body.layout-2 h4, body.layout-2 h5, body.layout-2 h6 {
  font-family: "Roboto Condensed", Arial, sans-serif;
  line-height: 1.2;
  overflow-wrap: break-word;
}
body.layout-2 h1 { font-size: clamp(30px, 3.4vw, 46px); }
body.layout-2 h2, body.layout-2 .block-title__title { font-size: clamp(27px, 2.8vw, 38px); }
body.layout-2 h3 { font-size: clamp(24px, 2.3vw, 32px); }
body.layout-2 h4 { font-size: 23px; }
body.layout-2 h5 { font-size: 19px; }
.elementor-widget-text-editor { line-height: 1.75; }
.elementor-widget-text-editor p { margin-bottom: 1.15em; }
.elementor-widget-text-editor li { margin-bottom: 8px; }
.elementor-widget-text-editor h2, .elementor-widget-text-editor h3 { margin: 1.4em 0 .65em; }
.elementor-widget-text-editor h2:first-child, .elementor-widget-text-editor h3:first-child { margin-top: 0; }
.elementor-widget-text-editor a { text-underline-offset: 3px; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #267cb3;
  outline-offset: 4px;
}
#comp, #footer-map, #service { scroll-margin-top: 110px; }
header.page-header-2 .navbar { background: #fff; box-shadow: 0 3px 18px #102d4010; }
header.page-header-2 .header-row { display: flex; align-items: center; gap: 24px; }
header.page-header-2 .logo { position: relative; flex: 0 0 88px; max-width: 88px !important; }
header.page-header-2 .logo img { width: 100%; height: auto; }
header.page-header-2 #slidemenu { flex: 1 1 auto; min-width: 0; width: auto; }
header.page-header-2 .header-row-right { flex: 0 0 auto; margin-left: auto; }
header.page-header-2 .header-topline { font-size: 13px; line-height: 1.65; }
header.page-header-2 .header-topline .custom-color { color: #fff; }
header.page-header-2 .appointment { font-family: Arial, sans-serif; font-size: 14px; font-weight: 700; text-transform: none; }
header.page-header-2 .header-phone:empty { display: none; }
header.page-header-2 .header-info-mobile p { font-size: 14px; line-height: 1.6; }
header.page-header-2 .header-info-mobile span { background: transparent !important; color: inherit !important; font-family: inherit !important; }
@media (min-width: 992px) {
  header.page-header-2 #menu-primary-menu { display: flex; justify-content: flex-end; align-items: center; float: none; }
  header.page-header-2 #menu-primary-menu > li { float: none; }
  header.page-header-2 #menu-primary-menu > li > a {
    padding: 28px 12px; font-size: 16px; line-height: 1.3; text-transform: none;
    font-family: "Roboto Condensed", Arial, sans-serif; font-weight: 700;
  }
  header.page-header-2 #menu-primary-menu .dropdown-menu {
    min-width: 300px; border: 1px solid var(--garant-line); border-top: 3px solid var(--garant-yellow);
    border-radius: 0 0 12px 12px; box-shadow: 0 16px 35px #102d4026; padding: 8px 0;
  }
  header.page-header-2 #menu-primary-menu .dropdown-menu a {
    font-family: Arial, sans-serif; font-size: 14px; line-height: 1.5;
    padding: 10px 18px; white-space: normal;
  }
  header.page-header-2 #menu-primary-menu .dropdown-menu a:hover,
  header.page-header-2 #menu-primary-menu .dropdown-menu a:focus { background: var(--garant-surface); color: var(--garant-blue); }
}
#mainSlider .slide-content { text-shadow: none; }
#mainSlider .slide-content h3 { font-size: clamp(34px, 4.5vw, 66px); line-height: 1.12; margin-bottom: 20px; }
#mainSlider .slide-content h4 { font-size: clamp(15px, 1.5vw, 20px); line-height: 1.5; margin-bottom: 16px; }
#mainSlider .slide-content p { font-family: Arial, sans-serif; font-size: clamp(16px, 1.45vw, 19px); line-height: 1.65; font-weight: 400; margin-top: 24px; max-width: 800px; }
#mainSlider .slide-content a[href^="tel:"] { display: inline-block; white-space: nowrap; font-weight: 700; }
.home #mainSlider .img--holder { background-color: #172b3a; background-blend-mode: multiply; }
.home #mainSlider .slide-content h3 { color: var(--garant-yellow); }
.page-id-3653 #mainSlider .slide-content { background: linear-gradient(90deg, #ffffffed 0%, #ffffffcc 42%, transparent 85%); }
.page-id-3653 #mainSlider .slide-content h3, .page-id-3653 #mainSlider .slide-content h4,
.page-id-3653 #mainSlider .slide-content p { color: var(--garant-ink) !important; }
.page-id-3653 #mainSlider .slide-content a { color: var(--garant-blue) !important; }
.block-title { margin-bottom: 32px; }
.block-title__description, .block-title p { line-height: 1.7; }
.services-tabs .services-tabs-text { font-size: 16px; line-height: 1.75; }
.services-tabs .services-tabs-caption { line-height: 1.3; }
.services-tabs .services-tabs-content a[href^="tel:"] { white-space: nowrap; display: inline-block; }
.service-single .col-md-8 > .img-responsive { width: 100%; max-height: 480px; object-fit: cover; border-radius: 16px; }
.service-single .block-aside { border: 1px solid var(--garant-line); border-radius: 14px; box-shadow: none; background: var(--garant-surface); padding: 24px !important; margin-bottom: 24px; }
.service-single .block-aside__title { margin-bottom: 22px; font-size: 24px; }
.service-single .address-info__content { font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.service-single .address-info__content strong { color: var(--garant-ink); margin-bottom: 5px; }
.service-single > .col-md-8 > h1 { margin-top: 0; margin-bottom: 24px; }
.wp-block-search__inside-wrapper { display: flex; flex-wrap: wrap; gap: 8px; }
.wp-block-search__input { flex: 1 1 120px; width: 100%; min-width: 0; border: 1px solid #b7c5cf; border-radius: 6px; min-height: 44px; padding: 8px 12px; }
.wp-block-search__button { margin: 0; min-height: 44px; border: 0; border-radius: 6px; padding: 10px 14px; font-size: 14px; font-weight: 700; }
.mod2 { padding: 28px !important; margin: 32px 0 !important; background: var(--garant-surface); border: 1px solid var(--garant-line); border-radius: 16px; }
.mod2 .modal-title-main { font-size: clamp(25px, 2.4vw, 32px); margin: 0 0 24px; }
.mod2 .color { color: var(--garant-blue); }
.wpcf7 .form-control, .wpcf7 .input-custom, .wpcf7 select {
  box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; height: auto; min-height: 50px;
  border: 1px solid #b7c5cf; border-radius: 8px; padding: 12px 14px;
  background-color: #fff; color: var(--garant-ink); font: 16px/1.5 Arial, sans-serif;
}
.wpcf7 select { padding-right: 32px; }
.wpcf7 textarea { min-height: 130px; resize: vertical; }
.wpcf7 input::placeholder, .wpcf7 textarea::placeholder { color: #667581; opacity: 1; }
.wpcf7 .form-group { margin: 0 0 16px !important; width: 100%; }
.wpcf7 .form-group p { margin: 0; }
.wpcf7-form-control-wrap { display: block; min-width: 0; }
.wpcf7 .contact-form > .row { margin-left: -10px; margin-right: -10px; }
.wpcf7 .contact-form > .row > [class*="col-"] { padding-left: 10px; padding-right: 10px; }
.wpcf7 .contact-form > .row > .row { clear: both; margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.wpcf7 .contact-form > .row > .row > [class*="col-"] { width: auto; float: none; flex: 1 1 220px; padding: 0 10px; }
.wpcf7 .contact-form > .row > .row > .divider { display: none; }
.wpcf7 .notes-custom p { margin: 0 !important; font-size: 14px; line-height: 1.6; }
.wpcf7 .btn, body.layout-2 .btn:not([data-action]) {
  border-radius: 8px; min-height: 48px; line-height: 1.4; font-size: 16px;
  padding: 13px 24px; white-space: normal; max-width: 100%; text-transform: none;
}
.wpcf7 .wpcf7-submit, .form-parts .btn:not([data-action]).btn-border {
  background: var(--garant-yellow) !important; border-color: var(--garant-yellow) !important; color: #172b3a !important; font-weight: 700;
}
.wpcf7 .wpcf7-submit:hover { background: #edb400 !important; border-color: #edb400 !important; }
.wpcf7 .wpcf7-not-valid-tip { font-size: 14px; margin-top: 6px; }
.wpcf7 .wpcf7-response-output { margin: 20px 0 0; border-radius: 8px; }
.zapchasty .form-parts { padding-left: 0; margin-top: 28px; }
.page-footer .footer-section02 { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); background: var(--garant-blue); }
.page-footer #footer-map { display: block !important; position: relative !important; inset: auto; width: 100% !important; height: 100% !important; min-height: 470px; }
.page-footer #footer-map iframe { display: block; width: 100%; height: 100%; min-height: 470px; border: 0; }
.page-footer .footer-section02 > .container { width: 100%; max-width: 620px; margin: 0; padding: 0; }
.page-footer .footer-section02__box01 { width: 100%; margin: 0; padding: 40px; background: var(--garant-blue); color: #fff; }
.page-footer .footer-section02__title { color: #fff; font-size: 26px; line-height: 1.3; margin-bottom: 20px; }
.page-footer .contact-info-item { margin: 0 0 24px; font-size: 16px; line-height: 1.7; }
.page-footer .contact-info-item .item-description { color: #fff; }
.page-footer .contact-info-item:has(a[href="mailto:"]) { display: none; }
.page-footer .footer-section03 { padding: 22px 0; background: #082e4a; color: #d5e2eb; }
.page-footer .copyright { font-family: Arial, sans-serif; font-size: 13px; line-height: 1.6; }
@media (max-width: 1199px) and (min-width: 992px) {
  header.page-header-2 .header-row { gap: 12px; }
  header.page-header-2 #menu-primary-menu > li > a { padding: 25px 8px; font-size: 15px; }
}
@media (max-width: 991px) {
  header.page-header-2 .header-row { min-height: 78px; gap: 12px; }
  header.page-header-2 .logo { flex-basis: 72px; max-width: 72px !important; }
  header.page-header-2 .navbar-toggle { min-width: 48px; min-height: 48px; padding: 6px; margin: 0; }
  .panel-menu li a { font-family: Arial, sans-serif; font-size: 15px; line-height: 1.5; min-height: 48px; }
  .page-footer .footer-section02__box01 { padding: 30px 24px; }
  .service-single { display: flex; flex-wrap: wrap; }
  .service-single > .col-sm-7 { width: 100%; order: 1; }
  .service-single > .col-sm-5 { width: 100%; order: 2; margin-top: 32px; }
  .service-single > .divider { display: none; }
  .mod2 { padding: 20px !important; }
}
@media (max-width: 767px) {
  body.layout-2 { font-size: 16px; }
  #mainSlider, #mainSlider .slick-list, #mainSlider .slick-track, #mainSlider .slide { height: auto !important; max-height: none !important; }
  #mainSlider .slide { min-height: 450px; }
  #mainSlider .img--holder { position: absolute; inset: 0; height: 100% !important; min-height: 0 !important; max-height: none !important; background-size: cover; background-position: center; }
  #mainSlider .slide-content { position: relative; inset: auto; height: auto; min-height: 450px; padding: 40px 20px; display: flex; align-items: center; }
  #mainSlider .slide-content .container { width: 100%; max-width: 100%; padding: 0; margin: 0; }
  #mainSlider .vert-wrap, #mainSlider .vert { display: block; height: auto; }
  #mainSlider .slide-content h3 { font-size: 37px; line-height: 1.13; margin: 0 0 16px; }
  #mainSlider .slide-content h4 { font-size: 15px; line-height: 1.5; }
  #mainSlider .slide-content p { font-size: 16px; line-height: 1.65; margin-top: 20px; }
  .page-id-3653 #mainSlider .slide-content { background: #ffffffe6; }
  .page-id-3653 .elementor-element-9f58e4e > .elementor-container { min-height: 0; }
  .page-id-3653 .elementor-element-9f58e4e .elementor-widget-wrap { padding: 0; }
  .block-title { margin-bottom: 24px; }
  .block-title__description, .block-title p { font-size: 16px; }
  .services-tabs .services-tabs-text { font-size: 16px; }
  .mod2 { padding: 18px 10px !important; margin: 24px 0 !important; }
  .wpcf7 .contact-form .divider { height: 12px; }
  .wpcf7 .contact-form .btn { width: 100%; }
  .service-single .col-md-8 > .img-responsive { max-height: 340px; border-radius: 10px; }
  .service-single .block-aside { padding: 20px !important; }
  .page-footer .footer-section02 { display: flex; flex-direction: column; }
  .page-footer .footer-section02 > .container { order: 1; max-width: none; }
  .page-footer #footer-map { order: 2; height: 300px !important; min-height: 300px; }
  .page-footer #footer-map iframe { height: 300px; min-height: 300px; }
  .page-footer .footer-section02__box01 { padding: 32px 24px; }
  .page-footer .footer-section03 { padding: 20px 20px 88px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  #mainSlider [data-animation] { animation: none !important; transition: none !important; opacity: 1 !important; }
}

/* Override the slider widget's generated typography and nested gutters. */
body.layout-2 #mainSlider .slide-content h4 { font-size: clamp(15px, 1.5vw, 20px) !important; line-height: 1.5 !important; font-weight: 400 !important; }
body.layout-2 #mainSlider .slide-content h3 { font-size: clamp(34px, 4.5vw, 66px) !important; line-height: 1.12 !important; }
body.layout-2 #mainSlider .slide-content p { font: 400 clamp(16px, 1.45vw, 19px)/1.65 Arial, sans-serif !important; }
body.layout-2 .elementor-widget-text-editor { font-family: Arial, sans-serif; font-size: 16px; }
.home #mainSlider .img--holder { background-color: #87939c; }
@media (max-width: 767px) {
  body.layout-2 #mainSlider .slide-content .container { padding: 0 !important; width: 100% !important; margin: 0 !important; }
  body.layout-2 #mainSlider .slide-content h3 { font-size: 37px !important; }
  body.layout-2 #mainSlider .slide-content h4 { font-size: 15px !important; }
  body.layout-2 #mainSlider .slide-content p { font-size: 16px !important; }
}

/* Keep long page titles on their own background at every width. */
body.layout-2 #pageTitle { height: auto !important; min-height: 150px; padding: 36px 15px !important; background: var(--garant-blue) !important; }
body.layout-2 #pageTitle h1 { font-size: clamp(28px, 3.3vw, 44px) !important; line-height: 1.2 !important; color: #fff; padding: 0; }
body.single-car_services #pageContent { padding-top: 42px; }
body.layout-2 .wpcf7 form.wpcf7-form .contact-form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
body.layout-2 .wpcf7 form.wpcf7-form .contact-form select,
body.layout-2 .wpcf7 form.wpcf7-form .contact-form textarea {
  border: 1px solid #b7c5cf !important; border-radius: 8px !important; background-color: #fff !important;
  font: 16px/1.5 Arial, sans-serif !important; color: #172b3a !important; min-height: 50px; padding: 12px 14px !important;
}
body.layout-2 .wpcf7 form.wpcf7-form .contact-form .wpcf7-submit.btn {
  background: #ffc513 !important; border: 1px solid #ffc513 !important; color: #172b3a !important;
  font: 700 16px/1.4 Arial, sans-serif !important; padding: 13px 22px !important;
}
body.layout-2 .wpcf7 form.wpcf7-form .contact-form .wpcf7-submit.btn:hover { background: #edb400 !important; }
body.layout-2 .wpcf7 form.wpcf7-form .contact-form .wpcf7-submit.btn span { font: inherit; color: inherit; }
@media (max-width: 767px) {
  body.layout-2 #pageTitle { min-height: 0; padding: 28px 0 !important; }
  body.single-car_services #pageContent { padding-top: 28px; }
}

/* Shared contact strip: contained layout and direct telephone links. */
header.page-header-2 .gth-topbar{background:#0d3854;border-bottom:1px solid #ffffff14;color:#fff;font-family:Arial,sans-serif;}
.gth-topbar .gth-inner{width:min(1180px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) auto;align-items:center;gap:28px;padding:16px 0;}
.gth-topbar svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;display:block;}
.gth-topbar .gth-hours,.gth-topbar .gth-address{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.6;color:#d8e3eb;}
.gth-topbar .gth-hours{margin-bottom:7px;}
.gth-topbar .gth-hours svg,.gth-topbar .gth-address svg{color:#ffce35;width:15px;height:15px;flex-basis:15px;}
.gth-topbar .gth-hours strong{font-weight:700;color:#fff;margin-left:5px;}
.gth-topbar .gth-city{border-left:1px solid #ffffff30;padding-left:12px;margin-left:2px;}
.gth-topbar .gth-address{font-size:11px;color:#bacdd9;}
.gth-topbar .gth-dot{padding:0 7px;color:#738d9e;}
.gth-topbar a{text-decoration:none;}
.gth-topbar .gth-phones{justify-self:center;}
.gth-topbar .gth-phone-main{display:flex;align-items:center;gap:10px;font:700 19px/1.4 "Roboto Condensed",Arial,sans-serif;white-space:nowrap;color:#fff;}
.gth-topbar .gth-phone-main svg{color:#ffce35;width:17px;height:17px;flex-basis:17px;}
.gth-topbar .gth-phone-other{display:flex;align-items:center;justify-content:center;gap:10px;margin:7px 0 0 26px;color:#8faabb;font-size:11px;line-height:1.4;}
.gth-topbar .gth-phone-other a{color:#c7d7e2;}
.gth-topbar .gth-phone-main:hover,.gth-topbar .gth-phone-other a:hover{color:#ffce35;}
header.page-header-2 .gth-topbar .gth-book{position:static!important;inset:auto!important;transform:none!important;display:flex;align-items:center;justify-content:center;gap:22px;min-height:48px;width:auto!important;margin:0;padding:13px 20px!important;background:#ffc513!important;color:#132536!important;border:1px solid #ffc513;border-radius:7px;font:700 14px/1.5 Arial,sans-serif!important;text-transform:none!important;white-space:nowrap;clip-path:none;box-shadow:none;}
header.page-header-2 .gth-topbar .gth-book:before,header.page-header-2 .gth-topbar .gth-book:after{content:none!important;display:none!important;}
header.page-header-2 .gth-topbar .gth-book:hover{background:#ffda61!important;border-color:#ffda61;}
.gth-topbar .gth-book svg{width:17px;height:17px;flex-basis:17px;}
.gth-topbar a:focus-visible,.gth-topbar summary:focus-visible{outline:3px solid #ffce35;outline-offset:4px;}
.gth-topbar .gth-mobile-details{display:none;}
header.page-header-2.is-sticky .gth-topbar{display:none;}
@media(max-width:1199px) and (min-width:992px){.gth-topbar .gth-inner{gap:20px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto}.gth-topbar .gth-phone-main{font-size:18px}.gth-topbar .gth-address{font-size:10px}.gth-topbar .gth-dot{padding:0 3px}header.page-header-2 .gth-topbar .gth-book{padding:12px 16px!important;gap:12px;font-size:13px!important}}
@media(max-width:991px){
 .gth-topbar .gth-inner{width:calc(100% - 40px);grid-template-columns:minmax(0,1fr) auto;gap:0 20px;padding:12px 0 0;}
 .gth-topbar .gth-meta,.gth-topbar .gth-phone-other{display:none;}
 .gth-topbar .gth-phones{justify-self:start;}
 .gth-topbar .gth-mobile-details{display:block;grid-column:1/-1;margin-top:12px;border-top:1px solid #ffffff20;}
 .gth-topbar .gth-mobile-details summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:36px;padding:7px 0;cursor:pointer;list-style:none;font:400 11px/1.5 Arial,sans-serif;color:#c3d4e0;}
 .gth-topbar .gth-mobile-details summary::-webkit-details-marker{display:none;}
 .gth-topbar .gth-mobile-details summary svg{width:15px;height:15px;flex-basis:15px;}
 .gth-topbar .gth-mobile-details[open] summary svg{transform:rotate(180deg);}
 .gth-topbar .gth-mobile-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:15px 0 20px;}
 .gth-topbar .gth-label{display:block;font:700 9px/1.6 Arial,sans-serif;letter-spacing:.08em;color:#ffce35;margin-bottom:8px;}
 .gth-topbar .gth-mobile-panel p{font:400 12px/1.8 Arial,sans-serif;color:#e2ebf2;margin:0;}
 .gth-topbar .gth-mobile-phones{display:flex;flex-direction:column;gap:6px;}
 .gth-topbar .gth-mobile-phones a{font:400 12px/1.8 Arial,sans-serif;color:#e2ebf2;}
}
@media(max-width:479px){
 .gth-topbar .gth-inner{width:calc(100% - 32px);column-gap:12px;}
 .gth-topbar .gth-phone-main{font-size:16px;gap:7px;}
 .gth-topbar .gth-phone-main svg{width:14px;height:14px;flex-basis:14px;}
 header.page-header-2 .gth-topbar .gth-book{font-size:12px!important;padding:10px 12px!important;gap:10px;min-height:42px;}
 .gth-topbar .gth-book svg{width:14px;height:14px;flex-basis:14px;}
 .gth-topbar .gth-mobile-panel{grid-template-columns:1fr;gap:17px;}
 .gth-topbar .gth-mobile-panel p,.gth-topbar .gth-mobile-phones a{font-size:13px;}
}
@media(max-width:359px){.gth-topbar .gth-phone-main{font-size:14px;gap:5px}header.page-header-2 .gth-topbar .gth-book{font-size:11px!important;gap:6px;padding:9px!important}}
