:root {
    --red: #e53935;
    --dark: #1a1a1a;
    --gray: #f5f6fb;
    --text: #3b3b3b;
    --accent: #ffb703;
}
body {font-family: 'Poppins', sans-serif; color: var(--text);}    
.topbar {background:#111; color:#f5f5f5; font-size:14px;}
.brand-mark {font-weight:700; letter-spacing:1px; font-size:26px;}
.navbar {box-shadow:0 4px 12px rgba(0,0,0,.08);}    
.main-header {box-shadow:0 8px 18px rgba(0,0,0,.06); z-index:1050;}
.topbar {background:#fff; color:#222;}
.topbar .container {justify-content:center; gap:24px;}
.info-icon {width:52px; height:52px; border-radius:50%; display:grid; place-items:center; font-size:22px; box-shadow:0 6px 14px rgba(0,0,0,.08);}
.navbar-nav {gap:22px; justify-content:center; width:100%;}
.navbar .nav-link {padding:0.9rem 1.15rem; font-weight:700; letter-spacing:0.2px; font-size:16px; color:#e0e0e0;}
.navbar .nav-link:hover {color:#fff;}
.navbar .nav-link.active {background:rgba(255,255,255,0.16); border-radius:12px; color:#fff;}
.lang-flags img {width:36px; height:26px; object-fit:cover; border-radius:4px; box-shadow:0 2px 6px rgba(0,0,0,.3);}
.lang-flags a.active img {outline:2px solid #fff;}
.hero {position:relative; overflow:hidden; background:linear-gradient(120deg, #0b1b2b, #102942), url('images/car-hero.jpg') center/cover no-repeat; color:#fff;}
.hero::after {content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(0,0,0,.65), rgba(0,0,0,.25));}
.hero-content {position:relative; z-index:2; padding:60px 0 80px;}
.hero-content div {padding-left: 10px;}
.hero-slide {min-height:520px; display:flex; align-items:center;}
.hero-img {max-height:320px; object-fit:cover;}
.hero h1 {font-weight:700; font-size:42px;}
.hero .lead {max-width:520px;}
.quick-call {background:var(--red); color:#fff; border:none; padding:12px 18px; border-radius:30px; box-shadow:0 8px 24px rgba(229,57,53,.35);}    
.booking-box {margin-top:-70px; position:relative; z-index:3; box-shadow:0 18px 36px rgba(0,0,0,.12); border-radius:18px;}
.booking-panel {background:#1e88e5; color:#fff; border-radius:12px; padding:26px; box-shadow:0 12px 28px rgba(0,0,0,.12);}
.booking-panel input, .booking-panel select, .booking-panel textarea {border-radius:6px; border:1px solid rgba(255,255,255,.25); color:#333;}
.booking-panel label {font-weight:600; font-size:14px;}
.booking-panel ::placeholder {color:#999;}
.check-list li {display:flex; gap:10px; margin-bottom:10px; color:#333;}
.check-list i {color:#1e88e5;}
.section-title {font-weight:700; position:relative; display:inline-block; padding-bottom:10px;}
.section-title:after {content:""; width:50px; height:3px; background:var(--red); position:absolute; left:0; bottom:0; border-radius:999px;}
.icon-pill {width:46px; height:46px; background:var(--gray); border-radius:14px; display:grid; place-items:center; color:var(--red); font-size:20px;}
.why-card {padding:16px 16px; border-bottom:1px dashed #e0e0e0;}
.feature-timeline:before {content:""; position:absolute; left:50%; top:0; bottom:0; width:2px; background:#e0e0e0;}
.feature-item {display:flex; gap:16px; margin-bottom:34px; align-items:center;}
.feature-item .badge {border-radius:999px; padding:8px 12px; font-weight:600;}
.testimonial {box-shadow:0 10px 30px rgba(0,0,0,.06); border:1px solid #f0f0f0; border-radius:18px; padding:28px; background:#fff;}
.gallery-thumb {cursor:pointer; border:3px solid transparent; border-radius:12px; transition:.2s;}
.gallery-thumb.active {border-color:var(--red);}
.gallery-wrapper {padding-left:90px;}
.thumb-stack {left:-70px;}
.spec-list li {margin-bottom:8px;}
footer {background:#0e1117; color:#cfd2dc; padding:26px 0;}
/* floating contact menu */
.float-contact {position:fixed; right:16px; bottom:90px; z-index:1060; display:flex; flex-direction:column; gap:10px;}
.float-btn {width:52px; height:52px; border-radius:14px; box-shadow:0 4px 10px rgba(0,0,0,.18); display:grid; place-items:center; background:#fff; cursor:pointer; transition:transform .15s, box-shadow .15s;}
.float-btn:hover {transform:translateY(-2px); box-shadow:0 8px 18px rgba(0,0,0,.22);}
.float-btn img {width:75%;}
.inline-btn {margin: 5px; border-radius:14px; box-shadow:0 4px 10px rgba(0,0,0,.18); display:inline-table; place-items:center; background:#fff; cursor:pointer; transition:transform .15s, box-shadow .15s;}
.back-to-top {position:fixed; left:18px; bottom:18px; width:48px; height:48px; border-radius:50%; background:#e53935; color:#fff; display:grid; place-items:center; box-shadow:0 6px 16px rgba(0,0,0,.2); cursor:pointer; transition:opacity .2s, transform .2s; opacity:0; visibility:hidden;}
.back-to-top.show {opacity:1; visibility:visible;}
/* mobile bottom bar */
@media (max-width: 767.98px){
    .float-contact {display:none;}
    .bottom-bar {position:fixed; inset-inline:0; bottom:0; z-index:1060; background:rgba(33,37,41,.95); box-shadow:0 -4px 18px rgba(0,0,0,.28); padding:10px 16px;}
    .bottom-bar .bar-btn {flex:1; border-radius:12px; background:#fff; color:#222; display:flex; align-items:center; justify-content:center; gap:6px; padding:10px 8px; font-weight:600; text-decoration:none; box-shadow:0 4px 12px rgba(0,0,0,.16);}
    .bottom-bar .bar-btn:active {transform:scale(.98);}
    .bottom-bar .bar-btn.call {background:#e53935; color:#fff;}
}
@media (max-width: 1200px) {
    .box-header {
    padding: 0 5px 0 0;
    }
    .box-header a span {
    font-size: 14px;
    }
}
@media (max-width: 991px){
    .feature-timeline:before {display:none;}
    .feature-item {flex-direction:column; align-items:flex-start;}
    .gallery-wrapper {padding-left:0;}
    .thumb-stack {position:static !important; flex-direction:row !important; justify-content:center; margin-top:12px;}
}

/* Mobile header tweaks */
@media (max-width: 767.98px){
    .topbar .container {align-items:flex-start;}
    .topbar .brand-mark {font-size:22px;}
    .topbar .brand-mark img {width:100%;}
    .topbar .info-icon {width:44px; height:44px; font-size:18px;}
    .topbar .contact-hotline h5 {margin:0; font-size:15px;}
    .topbar .extra-info {display:none !important;}
    .navbar {padding:0.55rem 0;}
    .navbar .nav-link {padding:0.65rem 0.9rem; font-size:15px; text-align:center;}
    .lang-flags {padding-top:6px; justify-content:center;}
    .bar-btn img {width:40%;}
}