:root{
  --font-main: "Manrope", "Inter", system-ui, -apple-system, sans-serif;

  --fs-xs: 13px;
  --fs-sm: 14px;
  --fs-base: 16px;
  --fs-md: 18px;
  --fs-lg: 22px;
  --fs-xl: 28px;
  --fs-xxl: 36px;

  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  --color-text: #333;
  --color-muted: #444;
  --color-accent: #B22424;

 --section-radius: 28px;
  --section-radius-md: 22px;
  --section-radius-sm: 18px;

  --section-padding-lg: 56px 64px;
  --section-padding-md: 40px 40px;
  --section-padding-sm: 28px 22px;

  --section-shadow: 0 10px 40px rgba(0,0,0,.05);

   --car-bg:#ffffff;
    --car-glass:rgba(255,255,255,.7);
    --car-border:rgba(0,0,0,.06);
    --car-shadow:0 20px 60px rgba(0,0,0,.08);
    --car-shadow-hover:0 30px 80px rgba(0,0,0,.14);
    --car-radius:22px;
    --car-primary:#2563eb;
    --car-primary-hover:#1d4ed8;
    --car-text:#111827;
    --car-muted:#6b7280;
    --car-soft:#f3f4f6;
    --car-success:#16a34a;
    --car-transition:all .25s cubic-bezier(.4,0,.2,1);

  --dp-primary:#2563eb;
    --dp-primary-hover:#1d4ed8;
    --dp-glass-bg:rgba(255,255,255,.65);
    --dp-glass-border:rgba(255,255,255,.4);
    --dp-muted:#9ca3af;
    --dp-hover:rgba(37,99,235,.08);
    --dp-today:rgba(37,99,235,.12);
    --dp-range:rgba(37,99,235,.06);
    --dp-radius:1rem;
    --dp-shadow:0 20px 50px rgba(0,0,0,.15);
    --dp-blur:18px;
    --dp-transition:all .18s ease;
}

html {
  scroll-behavior: smooth;
   overflow-x: hidden;
}

section {
  scroll-margin-top: 90px;
}
body {
    font-family: var(--font-main);
  font-size: var(--fs-base);
  font-weight: var(--fw-regular);
  line-height: 1.6;

    margin:0;
  padding:0;
   background-color: #DCD9D4 !important;
    background-image:
        linear-gradient(to bottom, rgba(255,255,255,0.5) 0%, rgba(100,100,100,0.4) 100%),
        radial-gradient(at center, rgba(255,255,255,0.25) 0%, rgba(60,60,60,0.2) 80%);
    background-blend-mode: soft-light, screen;
     overflow-x: hidden;
}

*,
*::before,
*::after{
  box-sizing: border-box;
}
.uppercase {

    text-transform: uppercase;
}
.info-btn {
   display: inline-flex;
    align-items: center;
    gap: 8px;
    justify-content:center;
    padding: 8px 18px;
  
    font-weight: 600;
}

.info-btn i {
    font-size: 16px;
}

.info-btn:hover {
  border: 1px solid #B22424;
    border-radius: 4px;
}

 .no-cc{
    display:flex !important;
    justify-content:center;
    align-items:center;
    gap:8px;
  }

  .no-cc span{
    white-space:nowrap !important;
  }

/* ===============================
   BOOKING STEP 2 — BASE
   =============================== */
.car-disabled,
.car-disabled * {
    cursor: not-allowed !important;
}

.car-disabled {
    opacity: 0.7;
}
.mobile-book .form-control,
.mobile-book .form-select,
.hero-booking-form .form-control,
.hero-booking-form .form-select{
    height:58px;
    padding:0 10px;
    cursor:pointer;
    font-size:16px;
    font-weight:500;

    border-radius:12px;
    border:1px solid rgba(0,0,0,.08);
    background:#ffffff;

    transition:all .25s cubic-bezier(.4,0,.2,1);

    text-align:center;
    line-height:58px;
}

.mobile-book .form-select,
.hero-booking-form .form-select{
    text-align:center;
    text-align-last:center;
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
}

.mobile-book .form-control:focus,
.mobile-book .form-select:focus,
.hero-booking-form .form-control:focus,
.hero-booking-form .form-select:focus{
    border-color:#B22424;
    box-shadow:0 0 0 4px rgba(178,36,36,.08);
    background:#fff;
}

/* ===== DATES ===== */

.mobile-book .booking-date-item{
    margin-bottom:24px;
}

.mobile-book .booking-label{
    margin:0 0 8px 0;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:#8a8a8a;
}

.mobile-book .booking-date-row{
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    gap:20px;
}

.mobile-book .booking-date-row > div{
    padding:0 !important;
}

.mobile-book .booking-date-row > .col-7{
    flex:0 0 180px;
    max-width:180px;
}

.mobile-book .booking-date-row > .col-5{
    flex:0 0 160px;
    max-width:160px;
}

/* ===== FILTERS ===== */

.mobile-book .booking-filters-bar{
    margin-top:0px;
}

.mobile-book .booking-filters-bar .booking-label{
    margin-bottom:14px;
}

.mobile-book .booking-filters-bar .form-select{
    height:44px;
    border-radius:12px;
    border:1px solid rgba(0,0,0,.06);
    background:rgba(255,255,255,.85);
    font-size:14px;
    font-weight:500;
    transition:all .25s cubic-bezier(.4,0,.2,1);
}

.mobile-book .booking-filters-bar .form-select:hover{
    background:#fff;
    border-color:rgba(0,0,0,.12);
}

.mobile-book .booking-filters-bar .form-select:focus{
    border-color:#B22424;
    box-shadow:0 0 0 3px rgba(178,36,36,.08);
}

.popup{
    position:fixed;
    margin:auto;
    z-index:1283;
    top:0;
    left:0;
    right:0;
    bottom:0;

    width:90%;
    max-width:1200px;
    max-height:80%;

    visibility:hidden;
    opacity:0;

    border-radius:28px;
    background:#fff;

    box-shadow:
        0 60px 160px rgba(0,0,0,.25),
        0 20px 60px rgba(0,0,0,.12);

    transition:opacity .35s ease;
}

.popup.popup-car{
    position:fixed;
    overflow:hidden;
}

.popup.popup-car .infoblock{
    height:100%;
    overflow-y:auto;
    padding:48px 60px;
    border-radius:28px;
    background:#fff;
}

.popup.popup-car .infoblock h4{
    font-size:22px;
    font-weight:700;
    margin:32px 0 16px;
    color:#111;
    letter-spacing:-.01em;
}

.popup.popup-car .infoblock p{
    font-size:15px;
    line-height:1.75;
    color:#444;
    margin-bottom:12px;
}

.popup.popup-car .infoblock strong{
    font-weight:700;
    color:#111;
}

.popup.popup-car .infoblock hr{
    border:0;
    height:1px;
    background:rgba(0,0,0,.08);
    margin:24px 0;
}

.popup.popup-car .popup-sales{
    background:#f5f5f7;
    border-radius:20px;
    padding:28px 32px;
    margin-top:24px;
}

.popup.popup-car .btn-submit-mobile-x.d-none.d-sm-inline{
    position:absolute;
    top:18px;
    right:22px;

    display:flex !important;
    align-items:center;
    justify-content:center;

    width:44px;
    height:44px;

    border-radius:50%;
    background:rgba(0,0,0,.06);
    color:#111;

    font-size:20px;
    font-weight:700;

    cursor:pointer;
    z-index:20;

    transition:all .2s ease;
}

.popup.popup-car .btn-submit-mobile-x.d-none.d-sm-inline:hover{
    background:#B22424;
    color:#fff;
    transform:scale(1.05);
}

#booking-form .form-control,
#booking-form .form-select,
#booking-form input[type="text"],
#booking-form input[type="email"],
#booking-form input[type="tel"],
#booking-form input[type="number"],
#booking-form input[type="password"],
#booking-form select,
#booking-form textarea{
height:52px;
border-radius:12px;
font-size:16px;
padding:0 18px;
}

#booking-form textarea.form-control{
min-height:140px;
padding:14px 18px;
}

#booking-form .form-control:focus,
#booking-form .form-select:focus{
border-color:#2563eb;
box-shadow:0 0 0 4px rgba(37,99,235,.12);
}

#booking-form .form-check-input{
width:20px;
height:20px;
border-radius:6px;
cursor:pointer;
accent-color:#2563eb;
box-shadow:none;
}

.qty-group{
height:52px;
display:flex;
align-items:center;
justify-content:center;
gap:8px;
}

.qty-group .form-control{
height:52px;
max-width:64px;
font-size:16px;
font-weight:500;
text-align:center;
}

.qty-group .btn-number{
width:52px;
height:52px;
border-radius:12px !important;
background:#f3f6fb;
border:1px solid rgba(0,0,0,.08);
font-size:18px;
transition:all .18s ease;
}

.qty-group .btn-number:hover{
background:#e8eefc;
}

.advance-card{


padding:28px 24px;


}


.advance-items{
padding-left:40px;
}
.advance-items-seats{
padding-left:40px;
}

.advance-card__img img {
    width: 145px;
    height: auto;
    border-radius: 20px;
}

#booking-form .btn-next{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:220px;
height:58px;
padding:0 28px;
cursor: pointer;
background:#4F79C6 !important;
color:#ffffff !important;

border:0 !important;
border-radius:16px;

font-size:16px;
font-weight:600;
letter-spacing:.3px;
text-transform:none;

text-decoration:none;

position:relative;
overflow:hidden;

transition:
background .25s cubic-bezier(.2,.8,.2,1),
box-shadow .25s cubic-bezier(.2,.8,.2,1),
transform .18s ease;

box-shadow:
0 1px 2px rgba(0,0,0,.12),
0 4px 12px rgba(79,121,198,.22);
}

#booking-form .btn-next:hover{
background:#456fc0 !important;
box-shadow:
0 6px 18px rgba(79,121,198,.32);
transform:translateY(-2px);
}

#booking-form .btn-next:active{
transform:translateY(0);
box-shadow:
0 2px 8px rgba(79,121,198,.28);
}

#booking-form .btn-next:focus-visible{
outline:none;
box-shadow:
0 0 0 4px rgba(79,121,198,.25),
0 6px 18px rgba(79,121,198,.32);
}
#booking-form .btn-next::before{
content:"";
position:absolute;
inset:0;
background:linear-gradient(
to bottom,
rgba(255,255,255,.18),
rgba(255,255,255,0)
);
opacity:.35;
pointer-events:none;
}

.step3 p {

    font-size: 18px; 
 
}


.booking-md28 {
    --md-surface: #ffffff;
    --md-surface-variant: #f6f6f9;
    --md-outline: #e3e3e8;
    --md-outline-variant: #ececf1;
    --md-primary: #6750A4;
    --md-on-surface: #1c1b1f;
    --md-on-surface-variant: #49454f;
    --md-success: #1e8e3e;
    --md-surface-container: #f3f2f7;
    --md-surface-container-low: #f8f7fb;

   
    color: var(--md-on-surface);
}

/* ===== DATETIME STRIP ===== */

.booking-md28 .booking-datetime {
    display: flex;
    justify-content: center;
    align-items: baseline; /* ключевая строка */
    gap: 14px;
    margin-bottom: 40px;
    font-size: 14px;
    font-weight: 500;
    color: var(--md-on-surface-variant);
    letter-spacing: .2px;

    white-space: nowrap;
}

.booking-md28 .booking-label {
    display: inline-block;
    font-size: 13px;
    letter-spacing: .6px;
    text-transform: uppercase;
    opacity: .6;
    margin-right: 4px;
}

.booking-md28 .booking-value {
    font-size: 15px;
    font-weight: 600;
    color: var(--md-on-surface);
}

.booking-md28 .booking-separator {
    margin: 0 12px;
    opacity: .3;
}

.booking-md28 .booking-place-value {
    font-size: 16px;
    font-weight: 700;
    color: var(--md-on-surface);
    letter-spacing: .02em;
}

.booking-md28 .booking-datetime-pickup .booking-place-value {
    color: #B22424;
}
/* === CONTAINER === */
.no-prepay-toggle {
    margin-top: 28px;
}

/* === LABEL === */
.no-prepay-toggle label {
    display: flex;
    align-items: center; /* ключевое */
    gap: 12px;
    cursor: pointer;
    user-select: none;
    position: relative;
}

/* === HIDE DEFAULT CHECKBOX === */
.checkbox-no-payment {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* === CUSTOM BOX WRAPPER === */
.checkbox-no-payment + span {
    display: flex;
    align-items: center;   /* центрируем текст */
    gap: 12px;
    position: relative;
    font-size: 14px;
    line-height: 1.4;
    color: #333;
}

/* === BOX === */
.checkbox-no-payment + span::before {
    content: "";
    width: 22px;
    height: 22px;
    min-width: 22px;

    border-radius: 6px;
    border: 2px solid #4F79C6;
    background: #fff;

    transition: all .2s ease;
}

/* === CHECKED BOX === */
.checkbox-no-payment:checked + span::before {
    background: #4F79C6;
}

/* === CHECK MARK (идеально по центру) === */
.checkbox-no-payment:checked + span::after {
    content: "";
    position: absolute;

    left: 6px;
    top: 5px;

    width: 6px;
    height: 11px;

    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
/* ===== CARD ===== */
.pure-blue-book {

     display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 240px;          
    max-width: 25%;           
    padding: 0 32px;           
    height: 58px;
    cursor: pointer;
    background: #4F79C6 !important;
    color: #ffffff !important;

    border: 0 !important;
    border-radius: 16px;

    font-size: 16px;
    font-weight: 600;
    letter-spacing: .3px;
    text-align: center;

    white-space: nowrap;      
    
    position: relative;
    overflow: hidden;

    transition:
        background .25s cubic-bezier(.2,.8,.2,1),
        box-shadow .25s cubic-bezier(.2,.8,.2,1),
        transform .18s ease;

    box-shadow:
        0 1px 2px rgba(0,0,0,.12),
        0 4px 12px rgba(79,121,198,.22);
}

.pure-blue-book:hover{
background:#456fc0 !important;
box-shadow:
0 6px 18px rgba(79,121,198,.32);
transform:translateY(-2px);
}

.pure-blue-book:active{
transform:translateY(0);
box-shadow:
0 2px 8px rgba(79,121,198,.28);
}

.pure-blue-book:focus-visible{
outline:none;
box-shadow:
0 0 0 4px rgba(79,121,198,.25),
0 6px 18px rgba(79,121,198,.32);
}
.pure-blue-book::before{
content:"";
position:absolute;
inset:0;
background:linear-gradient(
to bottom,
rgba(255,255,255,.18),
rgba(255,255,255,0)
);
opacity:.35;
pointer-events:none;
}


.booking-md28 .booking-summary-card {
    border: 1px solid var(--md-outline-variant);
    border-radius: 24px;
    background: var(--md-surface);
    box-shadow:
        0 1px 2px rgba(0,0,0,.06),
        0 4px 12px rgba(0,0,0,.04);
    overflow: hidden;
}

.booking-md28 .card-body {
    padding: 32px;
}

.booking-md28 .guarantee-box{
    display:flex;
    align-items:center;
    gap:18px;
    margin-top: 45px;
    padding:16px 20px;

    text-transform: uppercase;
  
   

    color:#188038;

    font-size:18px;
    font-weight:600;
    letter-spacing:.02em;
}
.booking-md28 .guarantee-box img{
    width:40px;
    opacity:.9;
}
.booking-md28 .price-row{
    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:16px 22px;
    border-radius:18px;

    background:#f4f4f7;
    border:1px solid #ececf1;

    transition:background .25s cubic-bezier(.4,0,.2,1),
               box-shadow .25s cubic-bezier(.4,0,.2,1);
}

.booking-md28 .price-row:hover{
    background:#eeeeF3;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
}
.booking-md28 .price-row .price-label{
    font-size:13px;
    font-weight:600;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#5f6368;
}

.booking-md28 .price-row .price-value{
    font-size:20px;
    font-weight:700;
    letter-spacing:-.01em;
    color:#1e8e3e;
}
.booking-md28 .price-prepay .price-value{
    color:#1a73e8;
}

.booking-md28 .price-rest .price-value{
    color:#188038;
}
.booking-md28 hr{
    border:none;
    height:1px;
    background: var(--md-outline-variant);
    opacity:.6;
}

.booking-md28 .cost-services-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.booking-md28 .cost-services-list__item {
    padding: 12px 0;
    border-bottom: 1px solid var(--md-outline-variant, #ececf1);
}

.booking-md28 .cost-services-list__item:last-child {
    border-bottom: none;
}

.booking-md28 .cost-services-list__title {
    flex: 1;
    min-width: 0;
    padding-right: 12px;
}

.booking-md28 .cost-services-list__price {
    flex-shrink: 0;
}

/* ===== GRID ===== */

.booking-md28 .booking-summary-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
   
    align-items: start;
}

.booking-md28 .delivery-container {
    text-align: center;
}

.booking-md28 .delivery-container__alert {
    font-size: 0.95rem;
    line-height: 1.5;
}

.booking-md28 .delivery-options-row {
    display: flex;
    justify-content: center;
    gap: 12px;
}

.booking-md28 .delivery-option-col {
    max-width: 360px;
}

.booking-md28 .delivery-option-card {
    border-radius: 16px;
    border-color: var(--md-outline-variant, #e3e3ec);
    box-shadow: 0 2px 6px rgba(15,23,42,.08);
    background: #fff;
}

.booking-md28 .delivery-option-card .form-check-label {
    display: block;
    font-size: 0.95rem;
    line-height: 1.4;
}

@media (max-width: 768px) {
    .booking-md28 .delivery-options-row {
        flex-direction: column;
        align-items: stretch;
    }

    .booking-md28 .delivery-option-col {
        max-width: 100%;
    }
}

/* ===== VEHICLE ===== */
.booking-md28 .booking-vehicle-top{
    display:flex;
    flex-direction:column;
    align-items:center;          /* центр по горизонтали */
    text-align:center;           /* центр текста */
}

.booking-md28 .vehicle-media{
    display:flex;
    justify-content:center;
    width:100%;
}
.booking-md28 .booking-summary-card{
    max-width: 1100px;
    margin: 0 auto;
}
.booking-md28 .vehicle-content{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    width:100%;
}

.booking-md28 .vehicle-specs{
    justify-content:center;      /* центр иконок */
}

.booking-md28 .vehicle-image {
    border-radius: 16px;
}

.booking-md28 .vehicle-title {
    font-size: 26px;
    font-weight: 600;
    letter-spacing: .2px;
     text-align:center;
    width:100%;
    margin: 16px 0 10px;
}

.pickup-yourself-container {
    margin-top: 45px;
}

.pickup-yourself-container .link-info {
    display: inline-block;
    border: 1px solid #333;
    padding: 12px 14px;
    border-radius: 12px;
    color: #333 !important;
    cursor: pointer;
    font-size: 0.85rem;
    text-transform: none;
    margin-top: 8px;
}

.booking-md28 .vehicle-specs {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.booking-md28 .spec-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: var(--md-on-surface-variant);
}

.booking-md28 .spec-item img {
    width: 18px;
    height: 18px;
    opacity: .7;
}

/* ===== CONDITIONS ===== */

.booking-md28 .booking-conditions {
  
    border-radius: 20px;
    padding: 28px;
   
}
.booking-md28 .booking-conditions .check-item,
.booking-md28 .booking-conditions .highlight-item {
    display: flex;          /* вместо inline-flex */
    align-items: center;
    width: 100%;
}

.booking-md28 .booking-conditions .parts-list {
    display: block;
    width: 100%;
}
.booking-md28 .check-item {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .6px;
   
}

.booking-md28 .parts-list {
    font-size: 13px;
    color: var(--md-on-surface-variant);
}

.booking-md28 .highlight-item {
    font-size: 13px;
    font-weight: 600;
   
}
/* ===============================
   2028 PREMIUM MOBILITY CARD
================================= */

.vehicles-wrapper{
    max-width: 1900px;
    margin: 0 auto;
    padding-left: 60px;
    padding-right: 60px;
}

.vehicles-wrapper .row{
    --bs-gutter-x: 40px;
}
.car-block{
    position:relative;
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(28px) saturate(180%);
    min-width: 430px;
    border:6px solid rgba(238,238,238);
    border-radius: var(--section-radius);
    padding:40px 18px;
    margin-bottom:48px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    text-align:center;
    cursor:pointer;
    min-height: 460px;
    transition:
        transform .5s cubic-bezier(.2,.8,.2,1),
        box-shadow .5s cubic-bezier(.2,.8,.2,1),
        border-color .4s ease;
    box-shadow:
        0 40px 80px rgba(0,0,0,.06),
        inset 0 1px 0 rgba(255,255,255,.7);
}

/* soft top light */
.car-block::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius: var(--section-radius);
    background:linear-gradient(
        145deg,
        rgba(255,255,255,.55),
        rgba(255,255,255,0) 45%
    );
    pointer-events:none;
}

/* glow aura */
.car-block::after{
    content:"";
    position:absolute;
    inset:-1px;
    border-radius: var(--section-radius);
    background:radial-gradient(
        600px circle at var(--x,50%) var(--y,50%),
        rgba(0,0,0,.05),
        transparent 40%
    );
    opacity:0;
    transition:opacity .4s ease;
    pointer-events:none;
}

.car-block:hover{
    transform:translateY(-14px) scale(1.015);
    box-shadow:
        0 60px 120px rgba(0,0,0,.10),
        0 0 0 1px rgba(0,0,0,.03);
}

.car-block:hover::after{
    opacity:1;
}

.car-block.selected{
    border:1px solid rgba(0,0,0,.15);
    box-shadow:
        0 70px 140px rgba(0,0,0,.14),
        0 0 0 2px rgba(0,0,0,.05);
}

/* ===============================
   TITLE
================================= */

.car-block h5{
    font-weight:600;
    font-size:24px;
    letter-spacing:.02em;
    color:#1d1d1f;
    margin-bottom:16px;
}

/* ===============================
   IMAGE + AURA
================================= */

.car-image-wrapper{
    display:flex;
    justify-content:center;
    width:100%;
    margin-top:40px;
    position:relative;
    overflow:visible;
}
.car-hero-image{
   width:100%;
    max-width:100%;
    height:auto;
    transform: scale(1.25);
}

@media (min-width:992px){
  .car-hero-image{
      width:100%;
    max-width:100%;
    height:auto;
    transform: scale(1.45);
  }
}


/* floating shadow under car */
.car-image-wrapper::after{
    content:"";
    position:absolute;
    bottom:18px;
    left:50%;
    transform:translateX(-50%);
    width:60%;
    height:18px;
    background:radial-gradient(
        ellipse at center,
        rgba(0,0,0,.18),
        rgba(0,0,0,0) 70%
    );
    filter:blur(18px);
    z-index:0;
}

/* ===============================
   FINAL PERFECT PRICING ALIGNMENT
================================= */

.car-top-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
  
   
}
.car-left{
    flex:1 1 auto;
    min-width:0;
}
.car-right{
      flex:0 0 auto;
      min-width:150px;
}
.car-right .deposit-label{
    margin-top:50px !important
}

.car-top-row {
    flex:0 0 auto;
    text-align:right;
    min-width:150px;
    margin-top: 35px;
    margin-bottom: 35px;
}





 .price-main{
    font-size:26px;   
    font-weight:600; 
    letter-spacing:-.02em;
    color:#1d1d1f;
}

.price-per-day{
     font-size:13px;
    color:#6e6e73;
    margin-top:4px;
}

.deposit-label{
    font-size:11px;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:#8e8e93;
    margin-top:14px;
}

 .deposit-label span{
    font-weight:600;
    font-size:13px;
}

.pricing-row{
       display:flex;
    justify-content:space-between;
    margin-top:2px;
    margin-bottom:22px;
     
    align-items:flex-start;
}

.pricing-left{
    text-align:left;
}

.deposit-label{
    font-size:12px;
    letter-spacing:.14em;
    color:#8e8e93;
}
.deposit-label span {

    font-size: 14px;
    font-weight: 700;
}
.deposit-value{
    font-size:1.15rem;
    font-weight:600;
    color:#111;
}

.pricing-right{
    text-align:right;
}

.price-per-day{
    font-size:14px;
    color:#6e6e73;
    margin-top:4px;
}
/* ===============================
   TEXT / TRUST
================================= */
.specs-row{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:18px;
    margin-top:15px;
    
    font-size:14px;
    color:#6e6e73;
}


.specs-row span{
    display:flex;
    align-items:center;
    gap:6px;
    white-space:nowrap;
}

.specs-row img{
    width:18px;
    opacity:.65;
}

.car-block p{
    font-size:.9rem;
    color:#666;
    margin-bottom:6px;
}

.car-block strong{
    color:#111;
}

.car-block p img{
    width:16px;
    height:16px;
    margin-right:6px;
    opacity:.75;
}

/* ===================================
   PREMIUM ACCORDION – SMOOTH NO JS
=================================== */

.premium-accordion{
    overflow:hidden;
}
.check-item{
    display: inline-flex;
    align-items: center;  
    gap: 10px;
}

.check-item::before{
    content: "";
    
    width: 9px;
    height: 16px;

    border-right: 4px solid #B22424;
    border-bottom: 4px solid #B22424;
    margin-right: 8px;
    transform: rotate(45deg) translateY(-5px);

    flex-shrink: 0;
}

.highlight-item {
    display: flex;
    align-items: center;
    margin: 0 0 10px 0;
 
}

.highlight-item::before {
    content: "";
    width: 8px;
    height: 8px;
    background: #B22424;
    border-radius: 50%;
    margin-right: 10px;
    flex-shrink: 0;
}
/* SUMMARY */

.premium-accordion summary{
    list-style:none;
    border-radius: 8px 8px 0 0;
    cursor:pointer;
    font-weight:600;
    margin-top: 25px;
    background:#eee;
    color:#606060;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:12px 30px;
    user-select:none;
}

.premium-accordion summary::-webkit-details-marker{
    display:none;
}



.premium-accordion summary::after{
    content:"";
    width:16px;
    height:16px;
    border-right:4px solid #B22424;
    border-bottom:4px solid #B22424;
    transform:rotate(45deg) translateY(-6px);
    transition:transform .35s cubic-bezier(.2,.8,.2,1);
    animation:arrowFloat 0.8s ease-in-out infinite;
}



@keyframes arrowFloat{
    0%{ margin-top:0px; }
    50%{ margin-top:4px; }
    100%{ margin-top:0px; }
}



.premium-accordion[open] summary::after{
    transform:rotate(-135deg);
    animation:none;
}

/* CONTENT ANIMATION */

.premium-accordion .accordion-content{
    display:block;
}

.premium-accordion .accordion-inner{
    overflow:hidden;
    opacity:0;
    transform:translateY(-8px);
    filter:blur(2px);
    transition:
        opacity .35s ease,
        transform .45s cubic-bezier(.2,.8,.2,1),
        filter .45s ease;
}

.premium-accordion[open] .accordion-inner{
    opacity:1;
    transform:translateY(0);
    filter:blur(0);
    padding: 18px;
    border-radius: 0 0 28px 28px;

}

/* INNER STYLE */

.premium-accordion .inc{
    background:#eee;
    color:#606060;
    text-align:left;
}

/* BRAND COLORS */

.whatsapp{background:#25D366;}
.messenger{background:#0084FF;}
.email{background:#2f2f2f;}

.booking-md28 .price-card {
    margin-bottom: 14px;
}



/* HEADER BASE */

.site-header{
  position:relative;
  z-index:3000;
  background:transparent;
  border:none;
  box-shadow:none;
}
.site-header.scrolled{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:3000;
  background:#fff;
  box-shadow:0 4px 20px rgba(0,0,0,.06);
  transition:background .25s ease, box-shadow .25s ease;
}
.site-header .row{
  margin:0;
  padding:0 24px;
  height:88px;
  align-items:center;
}

.header-row{
  height:88px;
}

.header-logo-col{
  flex-shrink:0;
  min-width:0;
  overflow:hidden;
}

.header-logo-col .brand{
  max-width:100%;
  min-width:0;
}

.header-logo-col .brand img{
  max-width:100%;
}

.header-nav-col{
  min-width:0;
}

.brand{
  display:flex;
  align-items:center;
  height:88px;
}

.brand img{
  height:46px;
  width:auto;
}

/* NAV */

.main-navbar{
  margin:0;
  border:0;
  background:transparent;
}

.navbar{
  flex-wrap:wrap;
}

.main-navbar .navbar-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  column-gap:12px;
  text-transform: uppercase;
  row-gap:4px;
  margin:0 auto;
  max-width:100%;
}

.main-navbar .navbar-nav > li{
  margin:0;
  padding:0;
}

.main-navbar .navbar-nav > li > a{
  display:flex;
  align-items:center;
  font-size:16px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.2px;
  color:var(--color-text);
  padding:4px 0;
  transition:opacity .2s ease;
}

.main-navbar .navbar-nav > li > a:hover{
  opacity:.7;
}

/* RIGHT SIDE */

.header-contact{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-end;
  height:88px;
  gap:8px;
  z-index: 99999;
}

.contact-top{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:16px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.2px;
  color:var(--color-text);
}

.contact-top a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
  color:inherit;
  transition:opacity .2s ease;
}

.contact-top a:hover{
  opacity:.7;
}

.contact-top i{
  font-size:16px;
}

.header-contact .contact-top img{
  width:18px;
  height:18px;
  display:block;
}

/* LANGUAGES */

.contact-langs{
  display:flex;
  align-items:center;
  gap:10px;
  z-index: 9999;
}

.contact-langs a{
  display:inline-flex;
  padding:0;
}

.contact-langs img{
  width:20px;
  height:20px;
  border-radius:50%;
  display:block;
  transition:opacity .2s ease;
}

.contact-langs img:hover{
  opacity:.7;
}


  .mobile-contact{
    margin-top:24px;
    padding-top:18px;
    top:6px;
   
    text-align:center;
  }

  .mobile-contact a{
    color:#111 !important;      
    text-decoration:none;
    font-size:14px;
    font-weight:500;
  }
    .mobile-contact a:hover{
    color:#B22424 !important;     
  }

    .mobile-contact-top{
    margin-bottom:14px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
  }

.mobile-contact-top img{
  width:20px;
  height:20px;
}

  .mobile-langs{
    display:flex;
    justify-content:center;
    gap:14px;
  }

  .mobile-langs img{
    width:22px;
    height:22px;
    opacity:.85;
    transition:opacity .2s ease, transform .2s ease;
  }

  .mobile-langs img:hover{
    opacity:1;
    transform:scale(1.05);
  }

.site-header .navbar{
  border:0;
  box-shadow:none;
  background:transparent;
  padding:0;
  align-items:center;
}

/* =========================
   TEASER-2 BASE (desktop)
   ========================= */


/* ================= BOOKING NAV ================= */
#booking-nav{
    display:none;
    padding:40px 0;
}

.booking-nav-inner{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:26px;
    max-width:760px;
    margin:0 auto;
}

/* ================= ARROWS ULTRA CLEAN ================= */

.booking-nav-arrow{
    width:44px;
    height:44px;
    border:none;
    background:transparent;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
    font-size:0;
    position:relative;
    transition:transform .18s ease;
}

.booking-nav-arrow::before{
    content:"";
    width:18px;
    height:18px;
    border-top:4px solid #333;
    border-right:4px solid #333;
    transform-origin:center;
    transition:border-color .18s ease, transform .18s ease;
}

.booking-nav-arrow.prev::before{
    transform:rotate(-135deg);
}

.booking-nav-arrow.next::before{
    transform:rotate(45deg);
}

.booking-nav-arrow:hover::before{
    border-color:#B22424;
}

.booking-nav-arrow:active{
    transform:scale(.92);
}

.booking-nav-arrow:focus-visible{
    outline:none;
}

/* ================= STEPS ================= */

.booking-steps,
#booking-nav .steps{
    display:flex;
    align-items:center;
    gap:18px;
    min-width:0;
}

.booking-steps .step,
#booking-nav .steps > div{
    flex:1 1 auto;
    width:clamp(56px, 12vw, 140px);
    height:8px;
    background:#4F79C6;
    border-radius:999px;
    opacity:.95;
    transition:background .22s ease, opacity .22s ease;
}

.booking-steps .step.active,
#booking-nav .steps > div.active{
    background:#B22424;
    opacity:1;
}


/* ================= HERO BOOKING ================= */
.hero-head{
     max-width: 1100px;
    margin: 0 auto 80px;
}

#teaser-2.hero{
    padding:120px 0 100px;
    position:relative;
    text-align:center;
}

.hero-head h1{
    font-size: clamp(54px, 5vw, 88px);
    font-weight: 630;
    line-height: 1.04;
    letter-spacing: -0.035em;
    margin-bottom: 36px;
    padding-bottom: .06em;
    color: var(--color-text);

    text-wrap: balance;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

.hero-head h2{
    font-size: clamp(18px, 1.2vw, 21px);
    font-weight: 430;
    line-height: 1.75;
    letter-spacing: 0.015em;
    color: var(--color-muted);
    max-width: 680px;
    margin: 0 auto;

    text-wrap: balance;
}
.hero-head h1,
.hero-head h2{
    opacity: 0;
    transform: translateY(18px);
    animation: heroFade 1.6s cubic-bezier(.22,1,.36,1) forwards;
}

.hero-head h2{
    animation-delay: .35s;
}

@keyframes heroFade{
    to{
        opacity:1;
        transform: translateY(0);
    }
}
.hero-booking-wrapper{
    display:flex;
    justify-content:center;
}

.hero-booking-card{
   

    padding:40px;
    width:100%;
    max-width:900px;
    margin-bottom: 200px;
  
}

.hero-rental-details{
    border-top:1px solid #eee;
    padding-top:20px;
}

.hero-benefits{
    display:flex;
    justify-content:center;
    gap:15px;
    flex-wrap:wrap;
    font-size:14px;
    color:#555;
}

.hero-benefits span{
    display:flex;
    align-items:center;
    gap:8px;
    white-space:nowrap;
}

.hero-benefits img{
    width:18px;
    height:18px;
}

/* ===== BOOK PARAMS  ===== */

#book-params .booking-label{
    display:block;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:#8a8a8a;
    margin-bottom:8px;
    margin-top: 8px;
}

#book-params .booking-page {
    max-width:980px;
    width:100%;
    margin:0 auto 40px;
    padding:32px 48px;
    border-radius:26px;
    background:#fdfdfd;
    box-shadow:var(--section-shadow);
}

#book-params .col-lg-7 {
    display: flex;
    justify-content: center;
}

#book-params .booking-filters-bar {
    width: 100%;
    margin-bottom: 60px;

}

#book-params .booking-filters-bar .row {
    --bs-gutter-x: 12px;
    --bs-gutter-y: 24px;
}

#book-params .booking-filters-bar .form-select {
    height: 52px;
    font-size: 15px;
    border-radius: 10px;
    padding: 0 14px;
   
}
#book-params .booking-date-row {
    gap: 14px;
}

#book-params .booking-date-row .form-control,
#book-params .booking-date-row .form-select {
    height: 52px;
}


#book-params .form-control,
#book-params .form-select{
    height:52px;
    border-radius:12px;
    border:1px solid #e5e5e5;
    background:#fff;
    box-shadow:none;
    font-size:16px;
    padding-left:16px;
    padding-right:16px;
    transition:border-color .2s ease, box-shadow .2s ease;
}

#book-params .form-control:focus,
#book-params .form-select:focus{
    border-color:#B22424;
    box-shadow:0 0 0 4px rgba(178,36,36,.08);
}


#book-params .filter-label{
    display:block;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:#8a8a8a;
    margin:0 0 8px;
}

#book-params .alert-change-date{
    border-radius:12px;
    padding:14px 16px;
}

.smart-booking-bar{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2000;
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(18px) saturate(180%);
  -webkit-backdrop-filter: blur(18px) saturate(180%);
  border-bottom: 1px solid rgba(0,0,0,.07);
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
  transform: translate3d(0,-110%,0);
  opacity: 0;
  pointer-events: none;
  will-change: transform, opacity;
  transition: transform .38s cubic-bezier(.22,1,.36,1), opacity .25s ease;
  backface-visibility: hidden;
}

.smart-booking-bar.is-visible{
  transform: translate3d(0,0,0);
  opacity: 1;
  pointer-events: auto;
}

.smart-booking-bar__inner{
  max-width: 1900px;
  margin: 0 auto;
  padding: 14px 60px;
}

.smart-booking-bar.is-collapsed .smart-booking-bar__inner{
  padding-top: 10px;
  padding-bottom: 10px;
}

/* Desktop wrapper */
.smart-booking-bar .sbb-desktop{
  width: 100%;
  display: flex;
  align-items: center;
  gap: 16px;
}

/* Desktop hosts */
.smart-booking-bar .sbb-desktop-dates{
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 14px;
}

.smart-booking-bar .sbb-desktop-filters{
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  min-width: 0;
}

.smart-booking-bar .booking-dates{
  display: block;
  margin: 0;
}

.smart-booking-bar .booking-date-item{
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: 360px;
  margin: 0 !important;
  vertical-align: middle;
}

.smart-booking-bar .booking-date-item.mb-4{
  margin-bottom: 0 !important;
}

.smart-booking-bar .booking-date-item .booking-label{
  
  white-space: nowrap;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  opacity:.6;
  margin:0;
}

.smart-booking-bar .booking-date-item .row{
  --bs-gutter-x: 8px;
  --bs-gutter-y: 0px;
  align-items: center;
}

.smart-booking-bar .form-control,
.smart-booking-bar .form-select{
  height: 52px;
  border-radius: 12px;
  font-size: 16px;
}

/* Filters inline (4 in a row) */
.smart-booking-bar .booking-filters-bar .booking-label{
  display: none !important;
}

.smart-booking-bar .booking-filters-bar{
  width: 100%;
  max-width: none; /* important: remove old max-width */
}

.smart-booking-bar .booking-filters-bar .row{
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  width: 100%;
}

.smart-booking-bar .booking-filters-bar [class*="col-"]{
  flex: 1 1 0;
  max-width: none;
  padding: 0;
}

/* Mobile summary row (hidden on desktop by Bootstrap utility) */
.smart-booking-bar__dates{
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

.smart-booking-bar__pair{
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
}

.smart-booking-bar__label{
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: rgba(0,0,0,.48);
  white-space: nowrap;
}

.smart-booking-bar__value{
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: rgba(0,0,0,.86);
  white-space: nowrap;
}

.smart-booking-bar__sep{
  width: 1px;
  height: 18px;
  background: rgba(0,0,0,.10);
  flex: 0 0 auto;
}

.smart-booking-bar__filters-btn{
  height: 40px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.9);
  color: rgba(0,0,0,.88);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.01em;
  cursor: pointer;
  white-space: nowrap;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.smart-booking-bar__filters-btn:hover{
  background: #fff;
  border-color: rgba(0,0,0,.18);
  transform: translateY(-1px);
}

.smart-booking-bar__filters-btn:active{
  transform: translateY(0);
}

.delay05s {
    -webkit-animation-delay: .5s;
    animation-delay: .5s;
}
.delay1s {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}
.delay15s {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s;
}
.delay2s {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}
.v-hidden {
    visibility: hidden;
}
.carousel-fade .carousel-item {
  opacity: 0;
  transition: opacity .6s ease;
}

.carousel-fade .carousel-item.active {
  opacity: 1;
}

.carousel-control-prev,
.carousel-control-next {
  z-index: 2;
}
.badge.bg-accent {
  background-color: #B22424;
  border-radius: 0;
}
.tooltip-inner {
  background-color: #B22424;
  padding: 5px 10px;
  font-size: var(--fs-md);
}
.tooltip .tooltip-arrow::before {
  border-top-color: #B22424 !important;
}
.tooltip .tooltip-arrow {
    border-top-color: #B22424 !important;
}
.my-tooltip {
    border-bottom: 1px dotted #B22424;
    color: #B22424;
}
a {
    color: #B22424;
}
a:hover {
    color: #B22424;
    text-decoration: none;
}

.scrollup{
    position:fixed;
    right:24px;
    bottom:24px;

    width:42px;
    height:42px;

    border:none;
    border-radius:10%;

    background:linear-gradient(135deg,#B22424,#e03e3e);

    cursor:pointer;

    box-shadow:
      0 14px 28px rgba(176,36,36,.35),
      0 6px 14px rgba(0,0,0,.15);

    z-index:99999;

    text-indent:-9999px;
    overflow:hidden;

   
    opacity:0;
    pointer-events:none;

    transform:translateY(10px);
    transition:
      opacity .25s ease,
      transform .25s ease,
      box-shadow .25s ease;
}

.scrollup.visible{
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
}

.scrollup::before{
    content:"↑";
    position:absolute;
    top:55%;
    left:50%;
    transform:translate(-50%,-55%);
    color:#fff;
    font-size:24px;
    font-weight:700;
    line-height:1;
    text-indent:0;
}

.scrollup:hover{
    transform:scale(1.08);
    box-shadow:
      0 18px 32px rgba(176,36,36,.45),
      0 8px 18px rgba(0,0,0,.2);
}

.scrollup:active{
    transform:scale(.95);
}

.scrollup:focus{
    outline:0;
}
.request-form-car-btn-wrapper {
    position: fixed;
    display: none;
    bottom: 0;
    left: 0;
    width: 100%;
    margin: 0 !important;
    padding: 5px;
    z-index: 999;
    border-radius: 0;
    background: #dbdbdb;
    color: #ecf0f1;
}

header .brand h1 {
    margin: 0;
    padding: 0;
}

/* TOP BAR */
.top-bar{
  background: transparent;
}

.top-bar-inner{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  padding:8px 0;
}

.top-contact{
  display:flex;
  gap:30px;
}
#booking-container {
    position: relative;
    z-index: 1;
}
#services {
  position: relative;
  z-index: 2;
}

body.page-home #services {
  margin-top: -320px;
}
#services .section-main-title {
  font-size: clamp(22px, 2.5vw, 32px);
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.02em;
}

#services .services-secondary {
  margin-top: 60px;
}

#services .service-box {
  position: relative;
  background: #ffffff;
  transition: all .3s ease;
}

#services .service-box-gray {
  background: #f7f7f7;
}

#services .service-title {
  margin: 0 0 40px;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.15;
  color: var(--color-text);
}

#services .service-gallery {
  margin-bottom: 44px;
}

#services .gallery-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: stretch;
}

#services .location-img {
  width: 100%;
  height: 520px;
  object-fit: cover;
  border-radius: 22px;
  display: block;
}

#services .service-content {
  font-size: 18px;
  line-height: 1.85;
  font-weight: 400;
  color: #444;


}

#services .service-content strong {
  font-weight: 700;
  color: #333;
}

#services .service-icon-wrapper {
  position:absolute;
  top:-20%;
  left:50%;
  transform:translateX(-50%);
  margin:0;
}

#services .service-icon {
  max-width: 60%;
}

#services .maps-link {
  align-items: center;
  gap: 8px;
  margin-left: 14px;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: .01em;
  text-decoration: none;
  color: var(--color-accent);
  transition: opacity .2s ease;
}

#services .maps-link:hover {
  opacity: .75;
}

#services .maps-link i {
  font-size: 13px;
}

#services .service-box-gray .service-icon{
  max-width:30%;
  margin-bottom: 25px;
}

/*MAIN ALL BOXES*/

.service-box,
.contact-card,
.offer-card,
#faq .service-box,
#benefits .service-box{
  border-radius: var(--section-radius);
  padding: var(--section-padding-lg);
  box-shadow: var(--section-shadow);
  background:#ffffff;
}

#services,
#faq,
#benefits,
#why-us,
#contact,
#vehicles {
  padding: 100px 0;
}



#faq .faq-question{
  font-size:21px;
  font-weight:600;
  margin-bottom:8px;
  color:var(--color-text);
}

#faq .title{
  margin-bottom:48px;
  text-align:center;
}

#faq .underline{
  height:4px;
  width:120px;
  background-color:#B22424;
  margin:16px auto 0;
}

#faq .service-title{
  text-align:center;
  margin:0 0 28px;
}

#faq .service-content{
  font-size:18px;
  line-height:1.85;
  font-weight:400;
  color:#444;
  margin:0;
}

#benefits .service-icon{
  max-width:85px;
  height:auto;
}

#benefits .title{
  margin-bottom:56px;
  text-align:center;
}

#benefits .underline{
  height:4px;
  width:120px;
  background-color:#B22424;
  margin:16px auto 0;
}

#benefits .service-box{
   position:relative;
  background:#ffffff;
}

#benefits .service-icon{
  max-width: 115px;
  margin-bottom:25px;


}

#benefits .service-title{
  margin:0 0 20px;
}

#benefits .service-content{
  font-size:18px;
  line-height:1.8;
  color:#444;
  margin:0;
}



#vehicles .title{
  font-size:clamp(32px,2.5vw,40px);
  font-weight:600;
  letter-spacing:-0.02em;
  margin-bottom:56px;
  text-align:center;
}

#vehicles .subtitle{
  font-weight:400;
  color:#666;
}

#vehicles .vehicle-nav{
  list-style:none;
  margin:0;
  padding:0;
}

#vehicles .vehicle-nav li{
  border-radius:16px;
  margin-bottom:12px;
  background:#f7f7f7;
  transition:background .2s ease;
}

#vehicles .vehicle-nav li:hover{
  background:#eeeeee;
}

#vehicles .vehicle-nav li.active{
  background:#B22424;
}

#vehicles .vehicle-nav li a{
  display:flex;
  align-items:center;
  padding:16px 20px;
  font-size:16px;
  font-weight:500;
  color:#444;
  text-decoration:none;
}

#vehicles .vehicle-nav li.active a{
  color:#ffffff;
}

#vehicles .vehicle-img{
  text-align:center;
}

#vehicles .vehicle-img img{
  max-width:100%;
  height:auto;
}

#vehicles .vehicle-price{
  margin-top:20px;
  font-size:18px;
  font-weight:600;
  color:#111;
}

#vehicles .vehicle-price .info{
  font-weight:400;
  font-size:15px;
  color:#666;
}

#vehicles .vehicle-features{
  border-collapse:separate;
  border-spacing:0;
  border-radius:16px;
  overflow:hidden;
}

#vehicles .reserve-button{
  margin-top:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 28px;
  background:#B22424;
  color:#ffffff;
  border-radius:14px;
  font-size:15px;
  font-weight:600;
  text-decoration:none;
  transition:background .2s ease, transform .15s ease;
}

#vehicles .reserve-button:hover{
  background:#8f1d1d;
  transform:translateY(-2px);
}

#vehicles .reserve-button span{
  margin-right:8px;
}
/* ===== OFFER CARDS ===== */

.offer-card{
    border:1px solid #ececec;
    transition:all .25s ease;
}

.offer-card:hover{
    transform:translateY(-4px);
    box-shadow:0 20px 40px rgba(0,0,0,0.06);
}

#special-offers .offer-card{
  display:flex;
  flex-direction:column;
}

#special-offers .btn-offer{
  margin-top:auto;
}
.offer-title{
    font-size:18px;
    font-weight:600;
    margin-bottom:20px;
}
.btn-offer{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:230px;
    height:58px;
    padding:5px 5px;

    background:linear-gradient(135deg,#B71C1C,#E53935) !important;
    color:#fff !important;

    border:0 !important;
    border-radius:12px;

    font-size:15px;
    font-weight:600;
    letter-spacing:.5px;
    text-transform:uppercase;

    text-decoration:none;

    transition:all .2s ease;

    box-shadow:
        0 3px 1px -2px rgba(0,0,0,0.2),
        0 2px 2px 0 rgba(0,0,0,0.14),
        0 1px 5px 0 rgba(0,0,0,0.12);
}


.btn-offer:hover{
    transform:translateY(-2px);
    box-shadow:
        0 6px 6px -3px rgba(0,0,0,0.2),
        0 8px 10px 1px rgba(0,0,0,0.14),
        0 3px 14px 2px rgba(0,0,0,0.12);
}


.btn-offer:active{
    transform:translateY(0);
    box-shadow:
        0 2px 4px rgba(0,0,0,0.2);
}
.offer-features{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    flex-wrap:wrap; 
    font-size:14px;
    color:#555;
}
.offer-features div{
    display:flex;
    align-items:center;
    gap:6px;
    white-space:nowrap;
}
.offer-features img{
    margin-right:6px;
}

.offer-period small{
    color:#888;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.offer-badge{
    display:inline-block;
    border:1px solid #B22424;
    color:#B22424;
    padding:8px 16px;
    border-radius:12px;
    font-size:12px;
    font-weight:600;
    letter-spacing:.08em;
}

.car-card .price-old{
    font-size:18px;
    font-weight:500;
}

.car-card .price-sale{
    font-size:26px;
}

.offer-image img{
    max-height:200px;
    object-fit:contain;
}

#locations {
    margin-top: 90px;
}
#locations .location-select-container {
    z-index: 1;
    position: relative;
}
#locations .location-select {
    background-color: #B22424;
    height: 93px;
}
#locations .location-select h2 {
    font-size: var(--fs-xl);
    font-weight: var(--fw-bold);
    color: #fff;
    margin: 26px 0 0 21px;
}
#locations .styled-select-location {
    height: 47px;
    position: relative;
    margin: 22px 21px 0 0;
    background-color: #fff;
}
#locations .styled-select-location:after {
    content: '';
    background: #fff url(../img/dropdown-icon.png) no-repeat 5px 21px;
    right: 0;
    top: 0;
    width: 30px;
    height: 43px;
    position: absolute;
    pointer-events: none;
}
#locations .styled-select-location select {
    border: 0;
    font-size: var(--fs-md);
    width: 100%;
    background: none #fff;
    padding: 11px 10px;
    height: 43px;
}

.arrow-down-location {
    width: 0;
    height: 0;
    border-left: 37px solid transparent;
    border-right: 37px solid transparent;
    border-top: 37px solid #B22424;
    margin: 0 auto;
}
#information {
    margin-top: 90px;
}
#information .row {
    margin-bottom: 90px;
}
#information .title {
     font-size: var(--fs-xxl);
  font-weight: var(--fw-bold);
  letter-spacing: -.5px;
    margin: 0 0 30px;
    padding: 0;
}
#information .subtitle {
    font-size: var(--fs-md);
    font-weight: 400;
    margin: 0 0 30px;
    padding: 0;
}
#information p {
    font-size: var(--fs-md);
    line-height: 1.7;
    margin-bottom: 30px;
}
#information .btn-border {
    border: 1px solid #ccc;
    padding: 1px;
    margin: 0 20px 0 0;
    display: inline-block;
}
#information .btn {
    font-size: var(--fs-md);
    font-weight: var(--fw-bold);
    background-color: #B22424;
    color: #fff;
    border-radius: 0;
    border: 0;
    line-height: 47px;
    padding: 0 15px;
    box-shadow: 6px 6px 0 #efe9e9;
    margin-right: 15px;
    -webkit-transition: .2s;
    transition: .2s;
}
#information .btn:hover {
    background-color: var(--color-muted);
}
#information .btn-gray {
    background-color: var(--color-muted);
}
#information .btn-gray:hover {
    background-color: #B22424;
}
#information .video {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
#information .video iframe, #information .video object, #information.video embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#why-us p{
  font-size:18px;
  line-height:1.8;
  color:#444;
  margin-bottom:18px;
}

#why-us .eot-logo{
  max-width:140px;
}

#why-us .title{
  margin-bottom:56px;
  text-align:center;
}

#why-us .underline{
  height:4px;
  width:120px;
  background:#B22424;
  margin:16px auto 0;
}

#why-us h2{
  font-size:clamp(26px,2vw,32px);
  font-weight:600;
  letter-spacing:-0.02em;
  line-height:1.3;
  margin:0 0 28px;
  color:var(--color-text);
}

#why-us .youtube{
  margin-top:40px;
  text-align:center;
}

#why-us .youtube iframe{
  width:100%;
  max-width:720px;
  aspect-ratio:16/9;
  border-radius:20px;
}

#why-us img{
  max-width:140px;
  width:100%;

  display:block;
  margin:20px auto 0;
}
/* ===== CONTACT SECTION ===== */



/* ===== FORM ===== */

#contact .form-control{
  background:#ffffff;
  border:1px solid #e8e8e8;
  border-radius:16px;
  height:56px;
  font-size:16px;
  padding:0 18px;
  box-shadow:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}

#contact textarea.form-control{
  min-height:170px;
  padding:16px 18px;
  resize:vertical;
}

#contact .form-control:focus{
  border-color:#B22424;
  box-shadow:0 0 0 3px rgba(178,36,36,.08);
}


/* ===== BUTTON ===== */

#contact .submit-message{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:200px;
  height:52px;
  padding:0 28px;
  background:#B22424;
  color:#ffffff;
  border:0;
  border-radius:16px;
  font-size:15px;
  font-weight:600;
  letter-spacing:.02em;
  transition:background .2s ease, transform .15s ease;
}

#contact .submit-message:hover{
  background:#8f1d1d;
  transform:translateY(-2px);
}


/* ===== CONTACT CARD ===== */

.contact-card{
  background:#ffffff;
}


/* ===== CONTACT ITEMS ===== */

.contact-item{
  margin-bottom:28px;
}

.contact-item:last-child{
  margin-bottom:0;
}

.contact-label{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#9a9a9a;
  margin-bottom:8px;
}


/* ===== SOCIAL ===== */

.social-links{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.social-link{
    display:flex;
    align-items:center;
    gap:12px;
    padding:10px 14px;
    border-radius:12px;
    background:#f8f8f8;
    text-decoration:none;
    font-size:14px;
    font-weight:500;
    transition:all .2s ease;
}

.social-link img{
    width:20px;
    height:20px;
}

.social-link.instagram{
    color:#d81818;
}

.social-link.facebook{
    color:#475993;
}

.social-link:hover{
    background:#efefef;
    transform:translateY(-2px);
}
.site-footer {
    position: static;
    padding: 48px 0 32px;
    font-size: var(--fs-sm);
    color: var(--color-muted);
    margin-top: 100px;
    line-height: 1.55;
}
.site-footer a {
    color: inherit;
    text-decoration: none;
}
.site-footer a:hover,
.site-footer a:focus {
    text-decoration: underline;
}
.footer-top {
    padding-bottom: 20px;
}
.footer-title {
    margin: 0 0 8px;
    font-size: var(--fs-md);
    font-weight: 600;
}
.footer-subtitle {
    margin: 0 0 14px;
    color: var(--color-muted);
}
.footer-trust {
    margin: 0;
    padding: 0;
}
.footer-trust li {
    margin-bottom: 6px;
}
.footer-cta {
    text-align: right;
}
.footer-cta-head {
    font-size: var(--fs-md);
    font-weight: 600;
    margin: 0 0 10px;
}
.footer-cta-btn {
  display: block;
    border: 1px solid #333;
    padding:10px;
    border-radius:12px;
    text-align:center;
    color: #333;
    font-size: 17px;
    font-weight: var(--fw-semibold);
    letter-spacing:.5px;
    text-transform: uppercase;
  
   
}

.footer-cta-link {
    margin: 8px 0 6px;
    font-size: 13px;
    color: var(--color-muted);
}
.footer-cta-link a {
    font-weight: 600;
    text-decoration: underline;
    word-break: break-all;
}
.footer-note {
    font-size: 13px;
    color: #555;
    margin-top: 6px;
}
.footer-hr {
    margin: 22px 0;
    border: none;
    border-top: 1px solid rgba(0,0,0,0.18);
}
.footer-h {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 10px;
}
.footer-links,
.footer-lang {
    margin: 0;
    padding: 0;
}
.footer-links li,
.footer-lang li {
    margin-bottom: 8px;
}
.footer-links li a,
.footer-lang li a {
    display: inline-block;
    padding: 6px 0;
}
.footer-lang li {
    display: flex;
    align-items: center;
    gap: 8px;
}
.footer-lang img {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
}
.footer-card {
    background: rgba(255,255,255,0.72);
    border: 1px solid rgba(0,0,0,0.15);
    border-radius: 12px;
    padding: 16px;
}
.footer-brand {
    margin-bottom: 10px;
}
.footer-company {
    margin: 0 0 6px;
    font-weight: 700;
}
.footer-address {
    margin: 8px 0 12px;
    font-style: normal;
}
.footer-phone,
.footer-email,
.footer-social {
    margin: 6px 0;
}
.footer-whatsapp {
    margin: 10px 0;
}
.footer-whatsapp-list {
    margin: 6px 0 0;
    padding: 0;
}
.footer-whatsapp-list li {
    margin-bottom: 6px;
}
.footer-bottom {
    padding-top: 6px;
}
.footer-copy {
    margin: 0;
    font-size: 13px;
    color: var(--color-muted);
}
.footer-dev {
    text-align: right;
}

.contact-phones-inline {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.contact-phones-inline a {
    font-size: 17px;
    color: #000;
    text-decoration: none;
    transition: opacity 0.25s ease;
}

.contact-phones-inline a:hover {
    opacity: 0.6;
}

.phone-separator {
    color: #c7c7cc;
    font-size: 14px;
}

@media(max-width:992px) {

 .booking-md28 .card-body {
        padding: 24px;
    }

    .booking-md28 .booking-summary-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .booking-md28 .vehicle-title {
        font-size: 20px;
    }

.advance-items{
padding-left:0;
margin-top:40px;
}
.advance-items-seats{
padding-left:0;
margin-top:40px;
}

.advance-card{
padding:24px 20px;
border-radius:18px;
}

.popup{
    width:94%;
    max-height:85%;
}

.popup.popup-car .infoblock{
    padding:36px 34px;
    border-radius:22px;
}

.popup.popup-car .infoblock h4{
    font-size:20px;
}

.popup.popup-car .infoblock p{
    font-size:14.5px;
}

.popup.popup-car .btn-submit-mobile-x.d-none.d-sm-inline{
    top:14px;
    right:16px;
    width:40px;
    height:40px;
}


 .vehicles-wrapper{
        padding-left: 20px;
        padding-right: 20px;
    }
#book-params .booking-page{
    padding:24px 20px;
}


#book-params .col-lg-5,
#book-params .col-lg-7{
    flex:0 0 100%;
    max-width:100%;
}


#book-params .col-lg-7{
    justify-content:flex-start;
}


#book-params .booking-date-row{
    gap:12px;
}


#book-params .form-control,
#book-params .form-select{
    height:50px;
    font-size:15px;
}


#book-params .booking-filters-bar{
    max-width:100%;
 
}


#book-params .booking-filters-bar .row{
    --bs-gutter-x:10px;
    --bs-gutter-y:12px;
}


  #services .service-title {
    margin-bottom: 28px;
    font-size: clamp(24px, 2.5vw, 30px);
  }

  #services .gallery-grid {
    gap: 24px;
  }

  #services .location-img {
    height: 420px;
  }

  #services .services-secondary {
    margin-top: 50px;
  }
  #contact{
    padding:90px 0;
  }

  .contact-card{
    padding:40px;
    border-radius:24px;
  }

  #contact .submit-message{
    height:50px;
    font-size:14.5px;
  }

  #why-us h2{
    font-size:24px;
  }

  #why-us p{
    font-size:18px;
  }


  #vehicles .title{
    margin-bottom:48px;
  }

  #vehicles .vehicle-nav li a{
    font-size:18px;
    padding:14px 16px;
  }

  #vehicles .vehicle-price{
    font-size:18px;
  }



#benefits{
    padding:80px 0;
  }


  #benefits .service-title{
    font-size:22px;
  }

  #benefits .service-content{
    font-size:18px;
  }

     #booking-nav{
        padding:28px 0;
    }

    .booking-nav-inner{
        gap:18px;
        max-width:680px;
        padding:0 10px;
    }

    .booking-nav-arrow{
        width:38px;
        height:38px;
    }

    .booking-nav-arrow::before{
        width:10px;
        height:10px;
    }

    .booking-steps,
    #booking-nav .steps{
        gap:12px;
    }

    .booking-steps .step,
    #booking-nav .steps > div{
        width:clamp(46px, 14vw, 120px);
        height:4px;
    }


#services .service-title,
#faq .service-title,
#benefits .service-title{
  font-size: clamp(24px, 2vw, 32px);
  font-weight:600;
  letter-spacing:-0.02em;
  line-height:1.2;
  color:var(--color-text);
}

    .btn-next{
        padding:13px 16px;
        font-size:.9rem;
    }
.hero-booking-form .row{
        display:flex;
        flex-wrap:wrap;
        row-gap:12px;
    }

    .hero-booking-form .col-md-6{
        padding-left:4px;
        padding-right:4px;
    }

    .hero-booking-form .col-md-6:nth-child(1),
    .hero-booking-form .col-md-6:nth-child(3){
        flex:0 0 70%;
        max-width:70%;
    }

    .hero-booking-form .col-md-6:nth-child(2),
    .hero-booking-form .col-md-6:nth-child(4){
        flex:0 0 30%;
        max-width:30%;
    }

    .hero-booking-form .form-control,
    .hero-booking-form .form-select{
        height:52px;
        border-radius:14px;
        border:1px solid rgba(0,0,0,.08);
        background:#f7f7f8;
        font-size:1rem;
        box-shadow:none;
    }

    .hero-booking-form .form-control:focus,
    .hero-booking-form .form-select:focus{
        border-color:#2563eb;
        background:#fff;
        box-shadow:0 0 0 3px rgba(37,99,235,.15);
    }

    .hero-booking-form .form-select{
        padding-right:12px;
        text-align:center;
        background-image:none;
        -webkit-appearance:none;
        -moz-appearance:none;
        appearance:none;
    }


.datepicker.dropdown-menu{
        left:50% !important;
        transform:translateX(-50%);
        min-width:320px;
        max-width:420px;
        width:90vw;
        padding:1rem;
        border-radius:1.75rem;
    }

    .datepicker th,
    .datepicker td{
        width:14.28%;
        height:44px;
        padding:6px 4px;
        font-size:1.05rem;
    }

    .datepicker th.datepicker-switch{
        width:auto;
        font-size:1.1rem;
    }

    .datepicker .prev,
    .datepicker .next{
        font-size:1.6rem;
    }

    .datepicker td span{
        width:25%;
        height:70px;
        line-height:70px;
        font-size:1.05rem;
    }
 
 header {
        height: auto;
    }

.hero {
  padding: 0px 0 0px;
  text-align: center;
}


#locations .location-select {
    height: 155px;
}
#locations .location-select h2 {
    text-align: center;
}
#locations .styled-select-location {
    margin: 22px 21px 0 22px;
}
#information {
    text-align: center;
}
#information img {
    display: inline-block;
    margin-bottom: 25px;
}
#information .video {
    margin-bottom: 25px;
}
#partners {
    padding-bottom: 50px;
}
#partners img {
    display: block;
    margin-bottom: 40px;
    width: 100%;
}
#partners p {
    margin-top: 25px;
    font-size: var(--fs-md);
    line-height: 1.7;
}
#partners .youtube {
    text-align: center;
}

#checkoutModal .modal-dialog {
    width: 100%;
    margin: 0;
}
#checkoutModal .form-group {
   
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}
#checkoutModal .modal-footer {
    text-align: center;
}

#full-tank-modal.full-tank-modal .modal-dialog {
    max-width: 560px;
    margin: 1.75rem auto;
    padding: 0 16px;
}
#full-tank-modal.full-tank-modal .modal-backdrop {
    background-color: rgba(0,0,0,.32);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
#full-tank-modal .full-tank-modal__content {
    border: none;
    border-radius: 28px;
    overflow: hidden;
    background: var(--md-sys-color-surface-container-high, #f3f3f6);
    box-shadow: 0 0 0 1px rgba(0,0,0,.05), 0 16px 32px rgba(0,0,0,.14), 0 6px 16px rgba(0,0,0,.08);
    margin: 0 auto;
}
#full-tank-modal .full-tank-modal__header {
    padding: 20px 44px 0 20px;
    border: none;
    background: transparent;
    position: relative;
    text-align: center;
}
#full-tank-modal .full-tank-modal__header .btn-close {
    position: absolute;
    top: 16px;
    right: 16px;
    margin: 0;
}
#full-tank-modal .full-tank-modal__title {
    font-size: 1.25rem;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: var(--md-sys-color-on-surface, #1c1b1f);
    margin: 0;
    text-align: center;
    width: 100%;
}
#full-tank-modal .full-tank-modal__body {
    padding: 12px 20px 24px;
    background: transparent;
    text-align: center;
}
#full-tank-modal .full-tank-modal__hint {
    font-size: 0.8125rem;
    color: var(--md-sys-color-on-surface-variant, #49454f);
    margin: 0 auto 16px;
    line-height: 1.4;
    text-align: center;
    max-width: 100%;
}
#full-tank-modal #full-tank-modal-options.full-tank-modal__options {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 12px;
    align-items: stretch;
    justify-content: center;
}
#full-tank-modal .full-tank-option {
    display: flex;
    flex: 1 1 0%;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 200px;
    padding: 20px 14px 18px;
    border-radius: 20px;
    border: 2px solid var(--md-sys-color-outline-variant, #e0e0e0);
    background: var(--md-sys-color-surface, #fff);
    cursor: pointer;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .2s cubic-bezier(.2,0,0,1);
    text-align: center;
    position: relative;
}
#full-tank-modal .full-tank-option:hover {
    border-color: var(--md-sys-color-outline, #b0b0b0);
    background: var(--md-sys-color-surface-container, #f8f8f8);
    box-shadow: 0 4px 12px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
#full-tank-modal .full-tank-option--accent,
#full-tank-modal .full-tank-option--selected {
    border-color: #2563eb;
    background: #dbeafe;
    box-shadow: 0 0 0 2px rgba(37,99,235,.35);
}
#full-tank-modal .full-tank-option--accent:hover,
#full-tank-modal .full-tank-option--selected:hover {
    border-color: #1d4ed8;
    background: #bfdbfe;
    box-shadow: 0 0 0 2px rgba(37,99,235,.5), 0 4px 14px rgba(37,99,235,.22);
    transform: translateY(-2px);
}
#full-tank-modal .full-tank-option__icon {
    width: 100px;
    height: 100px;
    margin: 0 auto 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
#full-tank-modal .full-tank-option__icon img {
    width: 90px;
    height: 90px;
    object-fit: contain;
    object-position: center;
    display: block;
}
#full-tank-modal .full-tank-option__label {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--md-sys-color-on-surface, #1c1b1f);
    line-height: 1.35;
    margin: 0 auto 12px;
    flex-grow: 0;
    text-align: center;
}
#full-tank-modal .full-tank-option__price {
    display: block;
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    padding: 8px 14px;
    border-radius: 12px;
    background: var(--md-sys-color-on-surface, #1c1b1f);
    color: #fff;
    line-height: 1.2;
    margin: 0 auto;
}
#full-tank-modal .full-tank-option--accent .full-tank-option__price,
#full-tank-modal .full-tank-option--selected .full-tank-option__price {
    background: #2563eb;
    color: #fff;
}
#full-tank-modal .full-tank-option--empty .full-tank-option__price {
    background: var(--md-sys-color-on-surface-variant, #2d2c30);
    color: #fff;
}
@media (max-width: 768px) {

  #vehicles .vehicle-img img {

    padding: 45px 0px 45px 0px;
  }
    #full-tank-modal.full-tank-modal .modal-dialog { max-width: 100%; padding: 0 12px; }
    #full-tank-modal .full-tank-modal__content { border-radius: 24px; }
    #full-tank-modal .full-tank-modal__header { padding: 16px 44px 0 16px; }
    #full-tank-modal .full-tank-modal__title { font-size: 1.125rem; }
    #full-tank-modal .full-tank-modal__body { padding: 10px 16px 20px; }
    #full-tank-modal .full-tank-modal__hint { margin-bottom: 12px; font-size: 0.8125rem; }
    #full-tank-modal #full-tank-modal-options.full-tank-modal__options { gap: 10px; }
    #full-tank-modal .full-tank-option {
        min-height: 180px;
        padding: 16px 10px 14px;
        border-radius: 16px;
    }
    #full-tank-modal .full-tank-option__icon { width: 80px; height: 80px; margin-bottom: 12px; }
    #full-tank-modal .full-tank-option__icon img { width: 72px; height: 72px; }
    #full-tank-modal .full-tank-option__label { font-size: 0.6875rem; margin-bottom: 10px; }
    #full-tank-modal .full-tank-option__price { font-size: 1.0625rem; padding: 6px 12px; border-radius: 10px; }
}
@media (max-width: 380px) {
    #full-tank-modal #full-tank-modal-options.full-tank-modal__options { flex-direction: column; }
    #full-tank-modal .full-tank-option { min-height: 160px; flex: 1 1 auto; }
    #full-tank-modal .full-tank-option__icon { width: 72px; height: 72px; }
    #full-tank-modal .full-tank-option__icon img { width: 64px; height: 64px; }
}

.service-box,
.contact-card,
.offer-card,
#faq .service-box,
#benefits .service-box{
  padding: var(--section-padding-md);
  border-radius: var(--section-radius-md);
}

#services,
#faq,
#benefits,
#why-us,
#special-offers,
#contact,
#vehicles{
  padding:80px 0;
}



}

@media (max-width:768px){
 .booking-md28 .booking-datetime {
        flex-wrap: wrap;
        justify-content: center;
        gap: 16px 24px;
        white-space: normal;
    }

    .booking-md28 .booking-datetime span:not(.booking-datetime-group) {
        flex: 0 0 auto;
    }

    .booking-md28 .booking-datetime .booking-datetime-group {
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        min-width: 0;
    }

    .booking-md28 .booking-datetime .booking-datetime-pickup,
    .booking-md28 .booking-datetime .booking-datetime-dropoff {
        flex: 1 1 45%;
        max-width: 50%;
    }

    .booking-md28 .booking-datetime .booking-datetime-auto {
        flex: 1 1 100%;
        width: 100%;
    }
 .no-prepay-toggle span {
        font-size: 13px;
    }

    .checkbox-no-payment:checked + span::after {
        left: 11px;
        top: 50%;
        margin-left: -3px;
        margin-top: -5.5px;
        transform: rotate(45deg);
    }

.pure-blue-book { 
    min-width: 305px;
    font-size: 15px;
}
.booking-md28 .booking-conditions
 {
    padding: 0px;
 }

 .booking-md28 .vehicle-specs {

    gap: 0px;
 }
  .booking-md28 .guarantee-box{
     
      text-align: center;
  
      padding:18px;
      font-size: 16px;
  }

  /* Цены */
  .booking-md28 .price-row{
      flex-direction: row;
      align-items: center;
      justify-content: space-between;
      padding:16px 18px;
  }
  .booking-md28 .price-card,
  .booking-md28 .price-guarantee{
      max-width: 100%;
      margin-left: 0px;
      margin-right: 0px;
  }
  .booking-md28 .price-row .price-label{
      font-size:12px;
      letter-spacing:.08em;
      line-height:1.4;
      max-width:70%;
  }

  .booking-md28 .price-row .price-value{
      font-size:18px;
      flex-shrink:0;
  }



#booking-form .booking-form{
padding:24px 20px;
}

.row.step3 {
    margin-left: auto;
    margin-right: auto;
    max-width: min(420px, 100%);
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    justify-content: center;
}

.row.step3 > [class*="col-"] {
    flex: 0 0 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.row.step3 .ps-md-5 {
    padding-left: 0;
    padding-right: 0;
}

.step3 .step3-divider {
    border: none;
    height: 1px;
    margin: 1.5rem 0;
    background: rgba(0, 0, 0, 0.12);
}

.step3 .step3-section-title.booking-label {
    display: block;
    font-size: 12px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #8a8a8a;
    margin-bottom: 10px;
    margin-top: 0;
}

@media (prefers-color-scheme: dark) {
    .step3 .step3-divider {
        background: rgba(255, 255, 255, 0.12);
    }
}

.qty-group .btn-number{
width:46px;
height:46px;
}

.qty-group .form-control{
height:46px;
max-width:58px;
}

#booking-form .btn-next{
width:100%;
}

   .smart-booking-bar{
    top:10px;
    padding:0 10px;
    background:transparent;
    border-bottom:0;
    box-shadow:none;
  }

  .smart-booking-bar__inner{
    padding:10px 14px;
    border-radius:10px;
    background:rgba(255,255,255,.82);
    backdrop-filter:blur(26px) saturate(180%);
    -webkit-backdrop-filter:blur(26px) saturate(180%);
    border:1px solid rgba(0,0,0,.06);
    box-shadow:
      0 18px 40px rgba(0,0,0,.12),
      inset 0 1px 0 rgba(255,255,255,.6);
  }

  .smart-booking-bar__dates{
    gap:12px;
    margin-right: 20px;
  }

  .smart-booking-bar__value{
    font-size:13px;
  }

  .smart-booking-bar__filters-btn{
    height:38px;
    padding:0 12px;
    font-size:13.5px;
  }

  .smart-booking-bar.is-collapsed .smart-booking-bar__inner{
    padding:8px 14px;
  }

  .smart-booking-bar.is-collapsed .smart-booking-bar__value{
    font-size:12.5px;
    margin-right: 15px;
      }
  .smart-booking-bar .smart-booking-bar__label{
    display:none !important;
  }

   .offcanvas#smartFiltersCanvas{
    width: auto;
    max-width: 420px;
    top: 75px;
    left: 12px;
    right: 12px;
    margin: 0 auto;

    border-radius:18px;
    border:1px solid rgba(0,0,0,.06);
    background:#ffffff;

   
    height:auto;
    max-height: calc(100vh - 100px);
  }

 
  .offcanvas.offcanvas-end{
    top:0;
  }




  /* ===== CLOSE BUTTON ===== */

  #smartFiltersCanvas .btn-close{
       position:absolute;
    top:16px;
    right:16px;

    width:28px;
    height:28px;
    background-size:14px;
    opacity:.85;

    z-index:5;
  }

  /* ===== BODY ===== */

  #smartFiltersCanvas .offcanvas-body{
    padding:18px;
    overflow-y:auto;
  }

  /* воздух снизу */
  #smartFiltersCanvas .offcanvas-body::after{
    content:"";
    display:block;
    height:20px;
  }

  /* ===================================== */
  /* FILTER ELEMENTS                      */
  /* ===================================== */

  #smartFiltersCanvas .booking-label{
    font-size:12px;
    font-weight:600;
    letter-spacing:.4px;
    color:#6c757d;
    text-transform:uppercase;
  }

  #smartFiltersCanvas .booking-date-item{
   
    padding:16px !important; 
  }

  #smartFiltersCanvas .form-control,
  #smartFiltersCanvas .form-select{
    height:48px;
    font-size:14px;
    border-radius:12px;
    border:1px solid rgba(0,0,0,.08);
    background:#ffffff;
    padding:0 16px;
    line-height:48px;
  }

  #smartFiltersCanvas .form-control:focus,
  #smartFiltersCanvas .form-select:focus{
    border-color:#0d6efd;
    box-shadow:0 0 0 3px rgba(13,110,253,.15);
  }

 

  #smartFiltersCanvas .booking-date-item .col-7{
    flex:0 0 65%;
    max-width:65%;
  }

  #smartFiltersCanvas .booking-date-item .col-5{
    flex:0 0 35%;
    max-width:35%;
  }

  #smartFiltersCanvas .booking-date-item.mb-4{
    margin-bottom:0px !important;
    margin-top: 15px;
  }
    #smartFiltersCanvas .booking-dates{
    margin:0 !important;
  }
  #smartFiltersCanvas .booking-filters-bar .row > *{
    width:100%;
    max-width:100%;
    flex:0 0 100%;
  }

  /* ===== Inputs & Selects ===== */

.form-control,
.form-select{
  height:48px;
  font-size:14px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.08);
  background:#ffffff;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.04);
  padding:0 16px;
  line-height:48px;
  text-align:center;
}

  #smartFiltersCanvas .form-control:focus,
  #smartFiltersCanvas .form-select:focus{
    border-color:#0d6efd;
    box-shadow: 0 0 0 3px rgba(13,110,253,.15);
  }

  /* dropdown строго под select */
  #smartFiltersCanvas select{
    background-position: right 14px center;
  }

  #smartFiltersCanvas select:focus{
    position:relative;
    z-index:5;
  }

  /* ===== Grid fix ===== */

  #smartFiltersCanvas .row{
    --bs-gutter-x:12px;
    --bs-gutter-y:12px;
  }

  #smartFiltersCanvas .row > .col-7{
    flex:0 0 65%;
    max-width:65%;
  }

  #smartFiltersCanvas .row > .col-5{
    flex:0 0 35%;
    max-width:35%;
  }

  /* ===== Filters section ===== */

  #smartFiltersCanvas .booking-filters-bar{
    margin-top:15px;
    padding-top:20px;
    border-top:1px solid rgba(0,0,0,.06);
  }

  #smartFiltersCanvas .booking-filters-bar .row > *{
    width:100%;
    max-width:100%;
    flex:0 0 100%;
  }

  #smartFiltersCanvas .booking-filters-bar .form-select{
    max-width:180px;
    width:100%;

    background:#f9fafb;
    font-weight:500;

    text-align:center;
    text-align-last:center;

    margin:0 auto;
  }

  /* ===== Premium micro interactions ===== */

  #smartFiltersCanvas .form-select:hover,
  #smartFiltersCanvas .form-control:hover{
    border-color:rgba(0,0,0,.15);
  }

  #smartFiltersCanvas .form-select:active,
  #smartFiltersCanvas .form-control:active{
    transform:scale(.995);
  }



  /* ===== spacing fix ===== */

  #book-params .col-lg-5,
  #book-params .col-lg-7{
    margin-top:10px;
  }
.popup{
    width:100%;
    max-width:100%;
    max-height:100%;
    padding:14px;
    background:transparent;
}

.popup.popup-car{
    bottom:0;
    top:auto;
    height:92%;
}

.popup.popup-car .infoblock{
    padding:15px 5px;
    
    border: 6px solid rgba(238,238,238);
    border-radius:28px;

}

.popup.popup-car .infoblock h4{
    font-size:18px;
    margin:24px 0 12px;
}

.popup.popup-car .infoblock p{
    font-size:14px;
}

.popup.popup-car .btn-submit-mobile-x.d-none.d-sm-inline{
    top:10px;
    right:12px;
    width:36px;
    height:36px;
}


.car-block p {
     font-size: 12px;
     display: flex;
     min-width: auto;
 
   
}
.parts-list {

    font-size: 12px;
}
 .check-item{
    gap:6px;               
  }
   .premium-accordion summary{
    padding:12px 25px;
  }

  .premium-accordion summary::after{
    
    width:12px;
    height:12px;
    border-right:3px solid #B22424;
    border-bottom:3px solid #B22424;
  
}
  

  .premium-accordion .check-item{
  
    font-size:12px;
   
  }


  .car-block .premium-accordion{
    margin-left:-25px;
    margin-right:-25px;
    width:calc(100% + 50px);
  }


.check-item::before{
    width: 7px;
    height: 13px;
    transform: rotate(45deg) translateY(-7px);
    border-right: 3px solid #B22424;
    border-bottom: 3px solid #B22424;

}

     .car-top-row{
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  .car-block{
    min-width:0;
    max-width:100%;
    box-sizing:border-box;
    padding:32px 18px;
    border-radius:26px;
  }

  .car-right{
    text-align:center;
    width:100%;
    margin-top:18px;
  }
 .spec-text{ display:none !important; }
  .spec-number{ display:inline !important; }

  .price-label,
  .price-main,
  .price-per-day,
  .deposit-label{
    text-align:center;
  }

  .price-main{
    font-size:26px;
  }


  .specs-row{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:14px;
    flex-wrap:nowrap;
    white-space:nowrap;
    overflow-x:auto;
    scrollbar-width:none;
    font-size:13px;
  }

  .specs-row::-webkit-scrollbar{
    display:none;
  }

  .specs-row span{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    gap:6px;
  }

  .car-block h5 {

    font-size: 20px;
  }


  .car-image-wrapper{
    justify-content:center;
    margin-top:20px;
  }

  .car-hero-image{
    width:100%;
    max-width:100%;
    height:auto;
    transform: scale(1.25);
  }

  


.footer-cta-btn {

    font-size: 14px;
}
.hero-head {
margin: 0 auto 35px;
}

#teaser-2.hero {
    padding: 45px 0px 0px 0px;
}


  #contact .form-control{
    height:52px;
    font-size:15px;
  }

  #contact textarea.form-control{
    min-height:150px;
  }

  #contact .submit-message{
    width:100%;
    height:48px;
  }

  #contactme {
    padding-left: 22px;
    padding-right: 22px;
  }

  #why-us h2{
    font-size:22px;
    margin-bottom:20px;
  }

  #why-us p{
    font-size:18px;
    line-height:1.75;
  }

  #why-us .youtube iframe{
    border-radius:16px;
  }


  #vehicles .title{
    font-size:26px;
    margin-bottom:40px;
  }

  #vehicles .vehicle-nav li{
    margin-bottom:8px;
  }

  #vehicles .vehicle-nav li a{
    font-size:14.5px;
    padding:12px 14px;
  }

  #vehicles .vehicle-price{
    font-size:16px;
  }

  #vehicles .reserve-button{
    width:100%;
    padding:14px 20px;
  }

  #benefits .service-icon{
    height:56px;
    width:56px;
    margin-bottom:18px;
  }

  #benefits .service-content{
    font-size:18px;
    line-height:1.7;
  }
#services .service-icon-wrapper {
    top: -40px;
  }

  #services .service-box {
    padding-top: 80px;
  }

  #services .service-content {
    font-size: 18px;
    line-height: 1.7;
  }

  #services .gallery-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  #services .location-img {
    height: 320px;
    border-radius: 16px;
  }

  #services .services-secondary {
    margin-top: 40px;
  }

  #services .maps-link {
    font-size: 18px;
  }
#services .service-box-gray .service-icon{
  max-width:27%;
  margin-bottom: 25px;
}
  #booking-nav{
        padding:18px 0;
    }

    .booking-nav-inner{
        gap:12px;
        padding:0 8px;
    }

    .booking-nav-arrow{
        width:32px;
        height:32px;
    }

    .booking-nav-arrow::before{
        width:16px;
        height:16px;
        border-top:3px solid #333;
        border-right:3px solid #333;
    }
    

    .booking-steps,
    #booking-nav .steps{
        gap:10px;
    }

    .booking-steps .step,
    #booking-nav .steps > div{
        width:clamp(34px, 16vw, 92px);
        height:6px;
    }


    .btn-next{
        padding:12px 14px;
        font-size:.85rem;
        border-radius:12px;
    }

  .hero-booking-form .col-md-6:nth-child(1),
    .hero-booking-form .col-md-6:nth-child(3){
        flex:0 0 72%;
        max-width:72%;
    }

    .hero-booking-form .col-md-6:nth-child(2),
    .hero-booking-form .col-md-6:nth-child(4){
        flex:0 0 28%;
        max-width:28%;
    }

    .hero-booking-form .form-control,
    .hero-booking-form .form-select{
        height:54px;
        font-size:1.05rem;
        border-radius:16px;
    }


 .datepicker.dropdown-menu{
        position:fixed !important;
        top:50% !important;
        left:50% !important;
        transform:translate(-50%,-50%);
        width:94vw;
        max-width:420px;
        padding:1.25rem;
        border-radius:2rem;
    }

    .datepicker th,
    .datepicker td{
        width:14.28%;
        height:50px;
        padding:6px 2px;
        font-size:1.15rem;
    }

    .datepicker th.datepicker-switch{
        font-size:1.2rem;
        font-weight:600;
    }

    .datepicker .prev,
    .datepicker .next{
        font-size:1.8rem;
    }

    .datepicker td span{
        width:25%;
        height:78px;
        line-height:78px;
        font-size:1.15rem;
    }
  

    .hero-head h1{
        font-size:32px;
    }

    .hero-booking-card{
        padding:28px;
    }


    .trustpilot-strip {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 25px;
    }

    .review-block {
        justify-content: center;
        flex-wrap: wrap;
        white-space: normal;
    }

    .tp-sep {
        display: none;
    }

    .tp-stars-img {
        width: 120px;
        height: 24px;
    }

    .google-img {
        height: 24px;
    }
    .google-rating {
        flex-direction: column;
        align-items: center;
    }

.header-container{
  padding:0 16px;
}

.header-row{
  min-height:72px;
}

.brand{
  display:flex;
  align-items:center;
}

.brand a{
  display:flex;
  align-items:center;
  max-width:100%;
}

.brand img{
  display:block;
  height:40px;
  width:auto;
  max-width:100%;
}

.nav-toggle-wrap{
  position:relative;
  height:64px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  z-index:10001;
}


.main-navbar{
  margin:0;
  border:0;
  background:transparent;
}

@media (max-width:992px){
  .navbar-toggler{
    margin-left:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:center;
    height:48px;
    margin-top:-2px;
  }

  .site-header .navbar{
    align-items:center;
    padding-top:8px;
    padding-bottom:8px;
  }

  .site-header .brand{
    height:auto;
  }

  .navbar-collapse{
    position:fixed;
    top:72px;
    left:0;
    width:100%;
    height:calc(100% - 72px);
    background:#fff;
    padding:20px 24px;
    overflow-y:auto;
    border:0;
    box-shadow:none;
    z-index:2000;
  }

  .navbar-collapse {
    display:none;
  }

  .navbar-collapse.show {
    display:block;
  }

  .main-navbar .navbar-nav{
      margin:0 !important;
      padding:0 !important;
  }

  .main-navbar .navbar-nav > li{
      margin:0 !important;
      padding:0 !important;
  }

  .header-container{
    align-items:center;
  }
}

@media (min-width:992px){
  .navbar{
    flex-wrap:nowrap;
  }
}


#services .row{ 
row-gap: 60px;
}
#special-offers .row{
  row-gap:60px;
}
.service-box,
.contact-card,
.offer-card,
#faq .service-box,
#benefits .service-box{
  padding: var(--section-padding-sm);
  border-radius: var(--section-radius-sm);
}

#services,
#why-us,
#faq,
#benefits,
#contact,
#vehicles{
  padding:110px 0;
}





}

/*END 768 media */

.booking-note-wrap {
    margin: 16px 0 20px;
    padding: 10px 14px;
    font-size: 9pt;
    color: var(--color-muted);
    text-transform: none;
    line-height: 1.5;
    text-align: center;
}

.booking-note-wrap a {
    color: #0A84C1;
    text-decoration: underline;
}

#booking-overlay {
    position: fixed;
    inset: 0;
    background: rgba(255, 255, 255, 0.85);
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
}

#booking-overlay.active {
    display: flex;
}

.booking-spinner-center {
    width: 64px;
    height: 64px;
    border: 6px solid #e0e0e0;
    border-top: 6px solid #E53935;
    border-radius: 50%;
    animation: booking-spin 0.9s linear infinite;
}

@keyframes booking-spin {
    to { transform: rotate(360deg); }
}


.ig-widget{
  max-width:1280px;
  margin:auto;
  padding:18px 14px;

}

/* HEADER */

.ig-header{
  margin-bottom:30px;
}

.ig-avatar{
  width:74px;
  height:74px;
  border-radius:50%;
  object-fit:cover;
  flex-shrink:0;
}

.ig-profile{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.ig-profile h2{
  margin:0;
  font-size:21px;
  padding: 15px;
  font-weight:400;
  line-height:1.2;
}

.ig-username{
  font-size:14px;
  color:#666;
  margin-top:3px;
}

.ig-stats{
  margin-top:7px;
  font-size:15px;
}

.ig-stats strong{
  font-weight:700;
}

/* BUTTONS */

.ig-buttons{
  margin-left:auto;
  display:flex;
  gap:8px;
}

.ig-btn{
  padding:8px 15px;
  border-radius:12px;
  text-decoration:none;
  margin-top: 15px;
  font-size:14px;
  font-weight:600;
  transition:.2s;
  white-space:nowrap;
}

.ig-follow{
  background:#0095f6;
  color:#fff;
}

.ig-follow:hover{
  background:#007edb;
}

.ig-message{
  background:#efefef;
  color:#111;
}

.ig-message:hover{
  background:#e2e2e2;
}

/* GRID */

.ig-feed{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:4px;
}

.ig-post{
  position:relative;
  overflow:hidden;
  aspect-ratio:1/1;
  background:#f3f3f3;
}

.ig-post img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}

.ig-post:hover img{
  transform:scale(1.05);
}

/* overlay */

.ig-overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.45);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:14px;
  color:white;
  font-size:13px;
  font-weight:600;
  opacity:0;
  transition:.25s;
}

.ig-post:hover .ig-overlay{
  opacity:1;
}




.chat-widget{
  position:fixed;
  left:max(12px, env(safe-area-inset-left));
  bottom:max(12px, env(safe-area-inset-bottom));
  z-index:9999;

  transform:translateZ(0);
  will-change:transform,opacity;

  transition:
    transform .35s cubic-bezier(.22,1,.36,1),
    opacity .35s ease;
}



.chat-bubble{
  position:absolute;
  left:0;
  bottom:78px;

  background:#fff;
  color:#111;

  font-size:14px;
  font-weight:500;
  line-height:1.35;

  padding:12px 16px;
  border-radius:12px;

  white-space:nowrap;

  box-shadow:
    0 16px 34px rgba(0,0,0,.12),
    0 4px 10px rgba(0,0,0,.06);

  opacity:0;
  transform:translateY(8px) scale(.97);

  transition:
    opacity .35s ease,
    transform .35s cubic-bezier(.22,1,.36,1);

  pointer-events:none;
}

.chat-bubble.show{
  opacity:1;
  transform:translateY(0) scale(1);
}

.chat-toggle{
  position:relative;

  width:60px;
  height:60px;

  border:none;
  border-radius:50%;

  background:linear-gradient(135deg,#B22424,#e03e3e);

  color:#fff;
  font-size:30px;
  font-weight:600;
  line-height:1;

  display:flex;
  align-items:center;
  justify-content:center;

  cursor:pointer;

  box-shadow:
    0 14px 28px rgba(176,36,36,.35),
    0 6px 14px rgba(0,0,0,.15);

  transition:
    transform .25s cubic-bezier(.22,1,.36,1),
    box-shadow .25s ease;

  backface-visibility:hidden;
  will-change:transform;
}


.chat-toggle::before{
  display:none;
}

.chat-toggle:hover{
  transform:scale(1.06);
  box-shadow:
    0 18px 32px rgba(176,36,36,.45),
    0 8px 18px rgba(0,0,0,.2);
}

.chat-toggle:active{
  transform:scale(.95);
}



.chat-close{
  position:absolute;

  bottom:44px;
  left:44px;

  width:22px;
  height:22px;

  border:none;
  border-radius:50%;

  background:#fff;
  color:#111;

  font-size:14px;
  font-weight:700;

  display:flex;
  align-items:center;
  justify-content:center;

  cursor:pointer;

  box-shadow:
    0 6px 14px rgba(0,0,0,.18);

  transition:.2s;
}

.chat-close:hover{
  transform:scale(1.1);
}

/* =================================================
   MENU
   ================================================= */

.chat-menu{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:12px;

  opacity:0;
  pointer-events:none;

  transform:translateY(10px) scale(.96);

  transition:
    opacity .25s ease,
    transform .25s cubic-bezier(.22,1,.36,1);
}

.chat-menu.active{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}

/* =================================================
   MENU ITEMS
   ================================================= */

.chat-item{
  display:flex;
  align-items:center;
  gap:10px;

  min-height:44px;

  padding:10px 14px;

  border-radius:12px;

  color:#fff;
  text-decoration:none;

  font-size:14px;
  font-weight:600;

  box-shadow:
    0 8px 20px rgba(0,0,0,.18);

  transition:
    transform .22s cubic-bezier(.22,1,.36,1),
    filter .22s ease;
}

.chat-item:hover{
  transform:translateX(4px);
  filter:brightness(1.05);
}

.chat-item svg{
  width:18px;
  height:18px;
  fill:#fff;
  flex-shrink:0;
}




/* Reviews */

.trustpilot-strip {
    clear: both;
    max-width: 900px;
    margin-top: 45px;
    padding: 6px 0;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 20px;
    color: #333;
    background: transparent;

    /* ВАЖНО */
    flex-wrap: nowrap;
}

.review-block {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: #333;
    font-size: 18px;

    /* ВАЖНО */
    white-space: nowrap;
}

.review-block:hover {
    opacity: 0.9;
}

.tp-sep {
    width: 1px;
    height: 24px;
    background: rgba(0,0,0,0.1);
    flex-shrink: 0;
}

.tp-stars {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.tp-stars-img {
    width: 120px;
    height: 24px;
    display: block;
    object-fit: contain;
}

.trustpilot-click .tp-text {
    font-weight: 600;
    font-size: 18px;
    color: #2d2d2d;
    margin-left: 4px;
}

.trustpilot-click .tp-brand {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 16px;
    color: #2d2d2d;
    margin-left: 6px;
}

.trustpilot-click .tp-star-icon {
    color: #000;
    font-size: 14px;
}

.google-img {
    height: 26px;
    width: auto;
    flex-shrink: 0;
}

.google-rating {
     display: flex;
    align-items: center;
    gap: 6px;
    line-height: 1.2;
}

.google-stars {
    color: #fbbc05;
    font-size: 1.25em;
    line-height: 1;
    display: inline-block;
}

.google-based {
    font-size: 15px;
    color: #666;
}



/* End Review */




/*DATE TIME*/

.booking-label{
    display:block;
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#8a8a8a;
    margin-bottom:10px;
}

.datepicker{
    direction:ltr;
    font-size:.875rem;
}

.datepicker.datepicker-rtl{
    direction:rtl;
}

.datepicker-inline{
    width:100%;
    max-width:340px;
}

.datepicker.dropdown-menu{
    position:absolute;
    z-index:1080;
    min-width:300px;
    padding:.75rem;
    background:var(--dp-glass-bg);
    backdrop-filter:blur(var(--dp-blur));
    -webkit-backdrop-filter:blur(var(--dp-blur));
    border:1px solid var(--dp-glass-border);
    border-radius:12px;
    box-shadow:var(--dp-shadow);
    line-height:1.8;
    display:none;
}

.datepicker table{
    width:100%;
    margin:0;
    border-collapse:separate;
    user-select:none;
}

.datepicker th,
.datepicker td{
    width:40px;
    height:36px;
    padding:4px 6px;
    text-align:center;
    border:none;
    border-radius:.75rem;
    line-height:1.4;
    transition:var(--dp-transition);
}

.datepicker thead th{
    font-weight:600;
    cursor:pointer;
    border-radius:.75rem;
}

.datepicker thead th:hover{
    background:var(--dp-hover);
}

.datepicker th.datepicker-switch{
    width:150px;
    font-weight:600;
    letter-spacing:.02em;
}

.datepicker .prev,
.datepicker .next{
    font-size:1.4rem;
    font-weight:600;
    cursor:pointer;
    border-radius:.75rem;
}

.datepicker .prev:hover,
.datepicker .next:hover{
    background:var(--dp-hover);
}

.datepicker td.day:hover,
.datepicker td span:hover{
    background:var(--dp-hover);
    cursor:pointer;
}

.datepicker .old,
.datepicker .new,
.datepicker .disabled{
    color:var(--dp-muted);
    cursor:not-allowed;
}

.datepicker .today{
    background:var(--dp-today);
    font-weight:600;
}

.datepicker .active,
.datepicker .selected{
    background:var(--dp-primary);
    color:#fff;
    box-shadow:0 6px 18px rgba(37,99,235,.35);
}

.datepicker .active:hover,
.datepicker .selected:hover{
    background:var(--dp-primary-hover);
}

.datepicker .range{
    background:var(--dp-range);
    border-radius:0;
}

.datepicker td span{
    display:block;
    float:left;
    width:25%;
    height:52px;
    line-height:52px;
    border-radius:.75rem;
    transition:var(--dp-transition);
}

.datepicker > div{
    display:none;
}

.datepicker.days .datepicker-days,
.datepicker.months .datepicker-months,
.datepicker.years .datepicker-years{
    display:block;
}

.input-daterange input{
    text-align:center;
}

.input-daterange .input-group-text{
    background:rgba(255,255,255,.6);
    backdrop-filter:blur(8px);
    border:1px solid var(--dp-glass-border);
}

.booking-confirm-block {
    padding: 24px 16px 32px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.booking-confirm-card {
    background: #f8f9fa;
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(79,121,198,.08), 0 4px 12px rgba(79,121,198,.06);
    border: 1px solid rgba(79,121,198,.12);
    overflow: hidden;
}
.booking-confirm-card__body {
    padding: 28px 24px 32px;
}
.booking-confirm-card__title {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 12px;
    text-align: center;
    line-height: 1.3;
}
.booking-confirm-card__note {
    font-size: 0.9375rem;
    color: #555;
    margin: 0 0 8px;
    text-align: center;
    line-height: 1.5;
}
.booking-confirm-card__warn {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 24px;
    text-align: center;
    line-height: 1.45;
}
.booking-confirm-summary {
    background: rgba(79,121,198,.08);
    border-radius: 12px;
    padding: 16px 20px;
    margin-top: 8px;
    border: 1px solid rgba(79,121,198,.18);
}
.booking-confirm-summary__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(79,121,198,.15);
    font-size: 0.9375rem;
    line-height: 1.4;
}
.booking-confirm-summary__row:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.booking-confirm-summary__row--code {
    padding-top: 0;
    border-bottom: none;
    margin-bottom: 4px;
}
.booking-confirm-summary__row--code .booking-confirm-summary__value {
    font-weight: 700;
    font-size: 1.125rem;
    color: #4F79C6;
}
.booking-confirm-summary__label {
    color: #555;
    flex: 0 0 auto;
}
.booking-confirm-summary__value {
    color: #1a1a1a;
    font-weight: 500;
    text-align: right;
    min-width: 0;
}
.booking-confirm-card__actions {
    margin-top: 28px;
    text-align: center;
}
.booking-confirm-card__actions .booking-confirm-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 220px;
    height: 58px;
    padding: 0 28px;
    border: 0;
    border-radius: 16px;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    color: #fff !important;
    background: #4F79C6 !important;
    box-shadow: 0 2px 8px rgba(79,121,198,.28);
    transition: background .2s ease, box-shadow .2s ease, transform .2s ease;
}
.booking-confirm-card__actions .booking-confirm-btn:hover {
    background: #456fc0 !important;
    box-shadow: 0 6px 18px rgba(79,121,198,.32);
    transform: translateY(-2px);
    color: #fff !important;
}
.booking-confirm-card__actions .booking-confirm-btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(79,121,198,.28);
}
.booking-confirm-card__actions .booking-confirm-btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 4px rgba(79,121,198,.25), 0 6px 18px rgba(79,121,198,.32);
}
.booking-md28 .booking-conditions .check-item,
.booking-md28 .booking-conditions .highlight-item {
    font-weight: 500 !important;
}