.faq a {margin-left: 1px; margin-right:15px;  font-size: 14px; line-height: 1.1; font-weight: 400; color: #f2f2f3; }
.bgh { font-size: 24px;line-height: 1.2; margin-bottom: 10px;}
.bgh-span { font-size: 18px;line-height: 1.3; display: block;}
.bgp{ font-size: 18px;line-height: 1.5; }
.ph2 { font-size: 32px;line-height: 1.3;font-weight: 400;text-align: center;}
.pp{ font-size: 18px;line-height: 1.5; text-align: center;}

/* --- BOOKING HERO SECTION --- */
.ct-hero-section { width: 100%; min-height: 650px; background: #fff url('https://www.chauffeurtransfers.ca/wp-content/uploads/2026/03/edmonton-best-black-car-service-near-you.svg') no-repeat center center; background-size: cover; display: flex; align-items: flex-start; padding: 0; position: relative; }
.ct-hero-section .container { display: flex; justify-content: flex-end; width: 100%; margin: 0 auto; }
.ct-hero-section .ct-booking-card { background: #ffffff; max-width: 450px; width: 100%; margin-top: -15px; border-radius: 15px; box-shadow: 0 15px 45px rgba(0,0,0,0.4); border: 1px solid #e2e8f0; overflow: hidden; z-index: 100; position: relative; }
.ct-booking-card .tab-title-wrapper { background: #f8fafc; border-bottom: 1px solid #e2e8f0; }
.ct-booking-card .tab-title.active { background: #ffffff; border-bottom: 3px solid #c9a227; color: #000; }
@media (max-width: 959px) { .ct-hero-section { background: #ffffff; min-height: 0; height: auto; } .ct-hero-section .container { display: block; } .ct-hero-section .ct-booking-card { margin-top: 0; max-width: 100%; border-radius: 0; box-shadow: none; border: none; } }

/* --- PH CUSTOM INFO BOX WITH CAPTION --- */
.ph-box { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; padding: 30px; transition: all 0.3s ease; }
.ph-box:hover { transform: translateY(-8px); box-shadow: 0 15px 30px rgba(0,0,0,0.08); }
.ph-caption { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 12px; letter-spacing: 1px; }
.ph-box h2 { font-size: 28px; line-height: 1.3; margin-top: 0; margin-bottom: 15px; color: #0f172a; font-weight: 700; }
.ph-box h3 { font-size: 22px; line-height: 1.4; margin-top: 25px; margin-bottom: 12px; color: #1e293b; font-weight: 600; }
.ph-box p { font-size: 16px; line-height: 1.6; color: #475569; margin-bottom: 15px; }
.ph-box p:last-child { margin-bottom: 0; }

/* --- PREMIUM IMAGE HOVER BOX --- */
.premium-img-box { background: #f8fafc; border: 1px solid #e2e8f0; padding: 15px; border-radius: 12px; transition: all 0.4s ease; box-shadow: 0 5px 15px rgba(0,0,0,0.03); }
.premium-img-box:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0,0,0,0.1); border-color: #c9a227; }
.premium-img-box .img-wrapper { overflow: hidden; border-radius: 8px; }
.premium-img-box img { width: 100%; height: auto; display: block; transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.premium-img-box:hover img { transform: scale(1.05); }

/* --- LIGHT HIGH-TECH DUAL BUTTON CTA --- */
.tech-cta-section { background: #ffffff; padding: 80px 20px; position: relative; overflow: hidden; border-top: 4px solid #0f172a; border-bottom: 1px solid #f1f5f9; }
.tech-cta-section::before { content: ''; position: absolute; top: 50%; left: 50%; width: 800px; height: 800px; background: radial-gradient(circle, rgba(15,23,42,0.03) 0%, rgba(255,255,255,0) 70%); transform: translate(-50%, -50%); pointer-events: none; }
.tech-cta-container { display: flex; justify-content: center; align-items: center; gap: 25px; flex-wrap: wrap; position: relative; z-index: 1; max-width: 1000px; margin: 0 auto; }
.btn-tech-outline { display: inline-block; box-sizing: border-box; padding: 18px 35px; border: 2px solid #0f172a; color: #0f172a !important; text-decoration: none !important; font-weight: 700; text-transform: uppercase; font-size: 15px; border-radius: 8px; letter-spacing: 0.5px; transition: all 0.3s ease; background: transparent; text-align: center; }
.btn-tech-outline:hover { background: #0f172a; color: #ffffff !important; box-shadow: 0 10px 25px rgba(15, 23, 42, 0.15); transform: translateY(-3px); }
.btn-tech-solid { display: inline-block; box-sizing: border-box; padding: 18px 35px; background: #0f172a; border: 2px solid #0f172a; color: #ffffff !important; text-decoration: none !important; font-weight: 700; text-transform: uppercase; font-size: 15px; border-radius: 8px; letter-spacing: 0.5px; transition: all 0.3s ease; box-shadow: 0 10px 25px rgba(15, 23, 42, 0.15); text-align: center; }
.btn-tech-solid:hover { background: #c9a227; border-color: #c9a227; color: #000000 !important; box-shadow: 0 15px 30px rgba(201, 162, 39, 0.3); transform: translateY(-3px); }

/* Fixed Mobile View */
@media (max-width: 767px) { 
    .tech-cta-container { flex-direction: column; align-items: stretch; gap: 15px; padding: 0 10px; } 
    .btn-tech-outline, .btn-tech-solid { width: 100%; display: block; } 
}

/* --- PREMIUM SERVICES SECTION (UPDATED WITH CAPTION) --- */
.premium-services { background-color: #f8f9fa; padding: 100px 0; }
.premium-services .section-header { text-align: center; max-width: 800px; margin: 0 auto 60px auto; }
.srv-caption { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 15px; letter-spacing: 1px; }
.premium-services .section-header h2 { font-size: 36px; color: #0f172a; margin-top: 0; margin-bottom: 20px; font-weight: 700; line-height: 1.3; }
.premium-services .section-header p { font-size: 18px; color: #475569; line-height: 1.6; }
.srv-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.srv-card { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 40px 30px; transition: all 0.3s ease; text-align: left; }
.srv-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0,0,0,0.08); border-color: #c9a227; }
.srv-icon { width: 70px; height: 70px; background: rgba(201,162,39,0.1); color: #c9a227; font-size: 28px; display: flex; align-items: center; justify-content: center; border-radius: 50%; margin-bottom: 25px; transition: all 0.3s ease; }
.srv-card:hover .srv-icon { background: #c9a227; color: #ffffff; transform: scale(1.1); }
.srv-card h3 { font-size: 22px; color: #1e293b; margin-bottom: 15px; font-weight: 600; }
.srv-card p { font-size: 16px; color: #475569; line-height: 1.6; margin-bottom: 25px; }
.srv-link { font-size: 15px; font-weight: 700; color: #0f172a; text-transform: uppercase; letter-spacing: 0.5px; text-decoration: none; display: inline-block; transition: color 0.2s ease; }
.srv-card:hover .srv-link { color: #c9a227; }
@media (max-width: 767px) { .premium-services { padding: 60px 0; } .premium-services .section-header h2 { font-size: 28px; } }

/* --- PREMIUM CTA BANNER --- */
.premium-cta { background: #0f172a; padding: 80px 0; border-top: 4px solid #c9a227; }
.premium-cta .container { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 30px; }
.cta-text { flex: 1; min-width: 300px; }
.cta-text h2 { color: #ffffff; font-size: 36px; font-weight: 700; margin-bottom: 15px; line-height: 1.2; }
.cta-text p { color: #cbd5e1; font-size: 18px; line-height: 1.6; margin: 0; }
.cta-btn { display: inline-block; background: #c9a227; color: #000000 !important; font-size: 16px; font-weight: 700; text-transform: uppercase; padding: 18px 35px; border-radius: 8px; text-decoration: none !important; transition: all 0.3s ease; box-shadow: 0 10px 20px rgba(201, 162, 39, 0.2); white-space: nowrap; }
.cta-btn:hover { background: #e0b938; transform: translateY(-3px); box-shadow: 0 15px 30px rgba(201, 162, 39, 0.4); color: #000000 !important; }
@media (max-width: 767px) { .premium-cta .container { flex-direction: column; text-align: center; } .premium-cta { padding: 60px 0; } .cta-text h2 { font-size: 28px; } }

/* --- WHY CHOOSE US SECTION (UPDATED WITH CAPTION) --- */
.why-choose-us { background-color: #f8f9fa; padding: 100px 0; }
.wcu-title-wrapper { text-align: center; margin-bottom: 60px; max-width: 800px; margin-left: auto; margin-right: auto; }
.wcu-caption { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 15px; letter-spacing: 1px; }
.why-choose-us .section-title { font-size: 36px; color: #0f172a; font-weight: 700; line-height: 1.3; margin: 0; }
.wcu-layout { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
.wcu-image-col { flex: 1; min-width: 300px; }
.wcu-content-col { flex: 1; min-width: 300px; }
.wcu-item { display: flex; align-items: flex-start; margin-bottom: 30px; gap: 20px; }
.wcu-item:last-child { margin-bottom: 0; }
.wcu-icon { font-size: 24px; background: rgba(201,162,39,0.1); color: #c9a227; width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; border-radius: 50%; flex-shrink: 0; }
.wcu-text h3 { font-size: 20px; color: #1e293b; margin: 0 0 8px 0; font-weight: 700; }
.wcu-text p { font-size: 16px; color: #475569; line-height: 1.6; margin: 0; }
@media (max-width: 959px) { .wcu-layout { flex-direction: column; } .why-choose-us { padding: 60px 0; } .wcu-title-wrapper { margin-bottom: 40px; } .why-choose-us .section-title { font-size: 28px; } }

/* --- CENTERED PREMIUM INFO BOX WITH CAPTION --- */
.ch-box { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; padding: 40px 30px; text-align: center; max-width: 800px; margin: 0 auto 40px auto; transition: all 0.3s ease; }
.ch-box:hover { transform: translateY(-8px); box-shadow: 0 15px 30px rgba(0,0,0,0.08); }
.ch-caption { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 5px; letter-spacing: 1px; }
.ch-box h2 { font-size: 36px; color: #0f172a; font-weight: 700; margin-top: 0; margin-bottom: 15px; line-height: 1.3; }
.ch-box p { font-size: 18px; color: #475569; line-height: 1.6; margin: 0; }

/* --- SIMPLE CENTERED HEADING WITH CAPTION (NO BOX) --- */
.ch-simple { text-align: center; max-width: 800px; margin: 0 auto 40px auto; }
.ch-simple .ch-caption { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 15px; letter-spacing: 1px; }
.ch-simple h2 { font-size: 36px; color: #0f172a; font-weight: 700; margin-top: 0; margin-bottom: 15px; line-height: 1.3; }
.ch-simple p { font-size: 18px; color: #475569; line-height: 1.6; margin: 0; }

/* --- PREMIUM CSS SCROLL-SNAP TESTIMONIAL SLIDER (UPDATED) --- */
.testi-section { background-color: #f8fafc; padding: 100px 0; overflow: hidden; }
.testi-header { text-align: center; max-width: 800px; margin: 0 auto 50px auto; }
.testi-header h2 { font-size: 36px; color: #0f172a; font-weight: 700; margin-bottom: 15px; margin-top: 0; line-height: 1.3; }

/* The Track & Custom Scrollbar */
.testi-track { display: flex; gap: 30px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 20px 10px 40px 10px; scrollbar-width: thin; scrollbar-color: #c9a227 #e2e8f0; }
.testi-track::-webkit-scrollbar { height: 8px; }
.testi-track::-webkit-scrollbar-track { background: #e2e8f0; border-radius: 10px; }
.testi-track::-webkit-scrollbar-thumb { background: #c9a227; border-radius: 10px; }
.testi-track::-webkit-scrollbar-thumb:hover { background: #0f172a; }

.testi-card { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 40px 30px; flex: 0 0 calc(33.333% - 20px); scroll-snap-align: center; box-shadow: 0 10px 20px rgba(0,0,0,0.03); transition: transform 0.3s ease; display: flex; flex-direction: column; }
.testi-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0,0,0,0.08); border-color: #c9a227; }
.testi-stars { font-size: 16px; margin-bottom: 15px; letter-spacing: 2px; }
.testi-title { font-size: 20px; color: #0f172a; font-weight: 700; margin: 0 0 15px 0; line-height: 1.3; }
.testi-text { font-size: 16px; color: #475569; line-height: 1.6; font-style: italic; margin-bottom: 25px; flex-grow: 1; }
.testi-author h4 { font-size: 14px; color: #1e293b; font-weight: 800; text-transform: uppercase; margin: 0 0 5px 0; letter-spacing: 1px; }
.testi-author p { font-size: 14px; color: #806819; margin: 0; font-weight: 600; }
.google-btn-wrapper { text-align: center; margin-top: 20px; }
.google-btn { display: inline-flex; align-items: center; justify-content: center; gap: 12px; text-decoration: none !important; color: #1e293b !important; font-weight: 700; font-size: 16px; padding: 14px 30px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 50px; transition: all 0.3s ease; box-shadow: 0 5px 15px rgba(0,0,0,0.05); }
.google-btn:hover { background: #f8fafc; border-color: #c9a227; transform: translateY(-3px); box-shadow: 0 10px 20px rgba(201,162,39,0.15); }
.google-btn img { height: 22px; width: auto; }

/* Responsive Settings */
@media (max-width: 959px) { .testi-card { flex: 0 0 calc(50% - 15px); } }
@media (max-width: 767px) { .testi-card { flex: 0 0 85%; } .testi-section { padding: 60px 0; } .testi-header h2 { font-size: 28px; } }

/* --- NATIVE HTML5 FAQ (UPDATED WITH PREMIUM HOVER BOX) --- */
.faq-section { background-color: #f1f3f5; padding: 100px 0; border-top: 1px solid #f1f5f9; }
.faq-header { text-align: center; max-width: 800px; margin: 0 auto 60px auto; }
.faq-caption { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 15px; letter-spacing: 1px; }
.faq-header h2 { font-size: 36px; color: #0f172a; font-weight: 700; margin: 0 0 15px 0; line-height: 1.3; }
.faq-header p { font-size: 18px; color: #475569; line-height: 1.6; margin: 0; }

/* The Side-by-Side Layout */
.faq-layout { display: flex; align-items: flex-start; gap: 50px; flex-wrap: wrap; }
.faq-image-col { flex: 1; min-width: 300px; }
.faq-content-col { flex: 1; min-width: 300px; }

/* The Accordion Styling */
.faq-item { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; margin-bottom: 15px; overflow: hidden; transition: all 0.3s ease; }
.faq-item:last-child { margin-bottom: 0; }
.faq-item:hover { border-color: #cbd5e1; }
.faq-item summary { font-size: 18px; font-weight: 700; color: #0f172a; padding: 20px 50px 20px 20px; cursor: pointer; list-style: none; position: relative; transition: background 0.3s ease; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary:hover { background: #f1f5f9; color: #c9a227; }

/* Custom Gold Plus/Minus Icons */
.faq-item summary::after { content: '+'; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); font-size: 26px; font-weight: 300; color: #c9a227; transition: transform 0.3s ease; }
.faq-item[open] summary::after { content: '−'; transform: translateY(-50%); }
.faq-item[open] summary { border-bottom: 1px solid #e2e8f0; background: #ffffff; color: #c9a227; }

.faq-content { padding: 20px; background: #ffffff; }
.faq-content p { font-size: 16px; color: #475569; line-height: 1.6; margin-top: 0; margin-bottom: 15px; }
.faq-content p:last-child { margin-bottom: 0; }

@media (max-width: 959px) { .faq-layout { flex-direction: column; } .faq-section { padding: 60px 0; } .faq-header h2 { font-size: 28px; } .faq-item summary { font-size: 16px; padding: 15px 40px 15px 15px; } }

/* --- ABOUT US & LOCATIONS (SIDE-BY-SIDE MEDIA) --- */
.about-section { background-color: #f8fafc; padding: 100px 0; }
.about-text-wrapper { max-width: 1000px; margin-bottom: 50px; }
.about-text-wrapper h2 { font-size: 36px; color: #0f172a; font-weight: 700; margin: 0 0 15px 0; line-height: 1.3; }
.about-subtitle { font-size: 18px; color: #1e293b; line-height: 1.6; margin-bottom: 30px; font-weight: 600; }

/* Magazine-style text columns */
.about-text-grid { display: flex; gap: 40px; flex-wrap: wrap; margin-bottom: 30px; }
.about-text-col { flex: 1; min-width: 300px; }
.about-text-col h3 { font-size: 20px; color: #0f172a; font-weight: 700; margin: 0 0 10px 0; }
.about-text-col p { font-size: 16px; color: #475569; line-height: 1.6; margin: 0; }
.about-btn { display: inline-block; padding: 16px 32px; background: #0f172a; color: #ffffff !important; font-weight: 700; text-transform: uppercase; font-size: 15px; border-radius: 8px; text-decoration: none !important; transition: all 0.3s ease; }
.about-btn:hover { background: #c9a227; color: #000000 !important; transform: translateY(-3px); box-shadow: 0 10px 20px rgba(201,162,39,0.2); }

/* Bottom: Image & Locations Side-by-Side */
.about-media-layout { display: flex; align-items: stretch; gap: 40px; flex-wrap: wrap; }
.about-image-col { flex: 1; min-width: 300px; display: flex; align-items: center; }
.about-image-col .premium-img-box { width: 100%; }

/*Locations Box */
.ph-box { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; padding: 30px; transition: all 0.3s ease; }
.locations-box {flex: 1; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 40px; box-shadow: 0 15px 35px rgba(0,0,0,0.04); display: flex; flex-direction: column; justify-content: center; }
.locations-box h3 { font-size: 24px; color: #0f172a; font-weight: 700; margin: 0 0 30px 0; }
.loc-item { margin-bottom: 25px; }
.loc-item:last-child { margin-bottom: 0; }
.loc-item h4 { font-size: 15px; color: #806819; font-weight: 800; text-transform: uppercase; margin: 0 0 8px 0; letter-spacing: 0.5px; }
.loc-item p { font-size: 15px; color: #475569; line-height: 1.6; margin: 0; }

@media (max-width: 767px) { .about-section { padding: 60px 0; } .about-text-wrapper h2 { font-size: 28px; } .locations-box { padding: 30px 20px; } }

/* --- FOOTER --- */
.premium-footer { background: #0f172a; color: #cbd5e1; padding: 80px 0 0 0; font-size: 15px; border-top: 4px solid #c9a227; }
.footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 40px; padding: 1px 10px 50px 60px; }

.footer-toggle { display: none; }
.footer-col-title { margin: 0 0 20px 0; }
.footer-col-header { color: #ffffff; font-size: 20px; font-weight: 700; letter-spacing: 0.5px; display: block; cursor: default; }
.toggle-icon { display: none; }

.footer-content p { line-height: 1.6; margin-bottom: 15px; margin-top: 0; }
.footer-check-list { list-style: none; padding: 0; margin: 0 0 20px 0; }
.footer-check-list li { margin-bottom: 8px; display: flex; align-items: center; gap: 8px; }
.footer-check-list li::before { content: '✔'; color: #c9a227; font-weight: bold; }
.payment-icons { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.payment-icons img { height: 28px; width: auto; background: #ffffff; padding: 3px; border-radius: 4px; }
.footer-btn { display: inline-block; padding: 12px 25px; border: 2px solid #c9a227; color: #c9a227 !important; text-decoration: none !important; font-weight: 700; text-transform: uppercase; font-size: 13px; border-radius: 6px; transition: all 0.3s ease; }
.footer-btn:hover { background: #c9a227; color: #000000 !important; transform: translateY(-3px); }

.copyright-bar { border-top: 1px solid rgba(255,255,255,0.1); padding: 25px 0; }
.copyright-flex { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 15px; }
.copyright-links { display: flex; gap: 20px; flex-wrap: wrap; }
.copyright-links a { color: #cbd5e1 !important; text-decoration: none !important; transition: color 0.3s ease; font-weight: 500; }
.copyright-links a:hover { color: #c9a227 !important; }

@media (max-width: 767px) { 
    .premium-footer { padding: 0; } 
    .footer-grid { gap: 0;padding-bottom:1px; }

    .footer-col { border-bottom: 1px solid rgba(255,255,255,0.1); padding: 15px 0; }
    .footer-col:first-child { border-top: 1px solid rgba(255,255,255,0.1); }
    .footer-col-title { margin: 0 10px; }
    .footer-col-header { cursor: pointer; display: flex; justify-content: space-between; align-items: center; font-size: 18px; }
    .toggle-icon { display: block; font-size: 26px; color: #95791d; font-weight: 300; line-height: 1; transition: transform 0.3s ease; }
    .footer-content { display: none; padding-top: 20px; }

    .footer-toggle:checked ~ .footer-content { display: block; animation: fade-in 0.3s ease; }
    .footer-toggle:checked + .footer-col-title .toggle-icon { transform: rotate(45deg); color: #ffffff; }

    .copyright-flex { flex-direction: column; text-align: center; } 
    .copyright-links { justify-content: center; gap: 15px; }
}
@keyframes fade-in { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }

/* --- PREMIUM EXECUTIVE FLEET SHOWCASE --- */
.fleet-section { background-color: #f8f9fa; padding: 100px 0; border-top: 1px solid #f1f5f9; border-bottom: 1px solid #f1f5f9; }
.fleet-header { text-align: center; max-width: 800px; margin: 0 auto 60px auto; }
.fleet-caption { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 15px; letter-spacing: 1px; }
.fleet-header h2 { font-size: 36px; color: #0f172a; font-weight: 700; margin: 0 0 15px 0; line-height: 1.3; }
.fleet-header p { font-size: 18px; color: #475569; line-height: 1.6; margin: 0; }

/* Fleet Grid & Cards */
.fleet-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.fleet-card { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; overflow: hidden; transition: all 0.3s ease; box-shadow: 0 10px 20px rgba(0,0,0,0.03); display: flex; flex-direction: column; }
.fleet-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0,0,0,0.08); border-color: #c9a227; }

/* Image Display Box */
.fleet-image { background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%); padding: 40px 20px; text-align: center; border-bottom: 1px solid #f1f5f9; position: relative; }
.fleet-image img { width: 100%; max-width: 260px; border-radius: 8px; height: auto; transition: transform 0.4s ease; }
.fleet-card:hover .fleet-image img { transform: scale(1.05); }

/* Card Content & Badges */
.fleet-content { padding: 30px; flex-grow: 1; display: flex; flex-direction: column; }
.fleet-content h3 { font-size: 22px; color: #0f172a; margin: 0 0 15px 0; font-weight: 700; line-height: 1.3; }
.fleet-badges { display: flex; gap: 10px; margin-bottom: 25px; flex-wrap: wrap; }
.fleet-badge { background: rgba(201,162,39,0.1); color: #554511; font-size: 13px; font-weight: 800; text-transform: uppercase; padding: 6px 12px; border-radius: 50px; display: flex; align-items: center; gap: 6px; letter-spacing: 0.5px; }

/* Data Checklist */
.fleet-specs { list-style: none; padding: 0; margin: 0 0 30px 0; flex-grow: 1; border-top: 1px solid #f1f5f9; padding-top: 20px; }
.fleet-specs li { display: flex; align-items: flex-start; gap: 12px; font-size: 15px; color: #475569; margin-bottom: 12px; line-height: 1.5; font-weight: 500; }
.fleet-icon { color: #0f172a; font-size: 16px; margin-top: 2px; }

/* Button */
.fleet-btn { display: block; text-align: center; padding: 15px; border: 2px solid #0f172a; color: #0f172a !important; font-weight: 700; text-transform: uppercase; font-size: 14px; border-radius: 8px; text-decoration: none !important; transition: all 0.3s ease; letter-spacing: 0.5px; }
.fleet-card:hover .fleet-btn { background: #0f172a; color: #ffffff !important; box-shadow: 0 10px 20px rgba(15,23,42,0.15); }

@media (max-width: 767px) { .fleet-section { padding: 60px 0; } .fleet-header h2 { font-size: 28px; } }

/* --- SEQUENCED AUTO-DISPLAY PROMO BANNER --- */

.promo-wrapper { position: fixed; bottom: 0; left: 0; width: 100%; z-index: 9999; pointer-events: none; }
.promo-wrapper.show-second .banner-2 {
    display: block !important;
    visibility: visible !important;
    animation: slide-up 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
}
.promo-toggle-1, .promo-toggle-2 { display: none; }

.promo-banner { background: #0f172a; color: #ffffff; text-align: center; padding: 15px 50px 15px 20px; border-top: 3px solid #c9a227; box-shadow: 0 -10px 25px rgba(0,0,0,0.15); position: relative; pointer-events: auto; }
.banner-content { display: flex; align-items: center; justify-content: center; gap: 20px; flex-wrap: wrap; font-size: 15px; }
.banner-content strong { color: #c9a227; font-size: 16px; letter-spacing: 0.5px; }
.banner-btn { background: #c9a227; color: #000000 !important; padding: 10px 24px; border-radius: 6px; text-decoration: none !important; font-weight: 700; text-transform: uppercase; font-size: 13px; transition: all 0.3s ease; white-space: nowrap; }
.banner-btn:hover { background: #ffffff; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(255,255,255,0.2); }
.close-banner { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); cursor: pointer; font-size: 28px; color: #cbd5e1; line-height: 1; transition: color 0.3s ease; }
.close-banner:hover { color: #ffffff; }

.banner-1 { display: block; animation: slide-up 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
.banner-2 { display: none; }

.promo-toggle-1:checked ~ .banner-1 { display: none !important; }
.promo-toggle-1:checked ~ .banner-2 { display: none;}

.promo-toggle-2:checked ~ .banner-2 { display: none; }

@keyframes slide-up { 0% { transform: translateY(100%); opacity: 0; } 100% { transform: translateY(0); opacity: 1; } }

@media (max-width: 767px) { .banner-content { flex-direction: column; gap: 10px; } .promo-banner { padding: 15px 40px 15px 15px; text-align: center; } .close-banner { top: 15px; transform: none; right: 15px; } }

/*code-end*/


/* --- FLEET SECTION --- */
.fleet-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.fleet-card { background: #F8F9FA; border-radius: 8px; overflow: hidden; box-shadow: 0 5px 15px rgba(0,0,0,0.05); border: 1px solid #eee; }
.fleet-img { height: 220px; background-size: cover; background-position: center; }
.fleet-info { padding: 25px; }
.fleet-info h3 { margin-bottom: 10px; font-size: 1.4rem; }
.specs { display: flex; gap: 15px; font-size: 0.85rem; color: #666; margin-bottom: 15px; border-bottom: 1px solid #eee; padding-bottom: 15px; }

/* --- BOOKING STEPS --- */
.steps-section { background-color: #0f172a; color: white; text-align: center; }
.steps-section h2 { color: white; }
.steps-container { display: flex; flex-wrap: wrap; justify-content: center; gap: 40px; margin-top: 50px; }
.step-item { flex: 1; min-width: 250px; max-width: 300px; }
.step-num { font-size: 3rem; font-weight: 700; color: var(--primary-red); opacity: 0.5; margin-bottom: 1px; position: relative; z-index: 0; }
.step-text { position: relative; z-index: 1; }
.step-text h4 { font-size: 1.2rem; margin-bottom: 10px; color: white; }
.step-text p { color: #ccc; font-size: 0.95rem; }
.divider-red { width: 80px; height: 4px; background-color: var(--primary-red); margin: 0 auto 30px auto; }

/* --- CARDS & UI ELEMENTS --- */
.goals-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 40px; margin-bottom: 80px; }
.goal-card { background: var(--off-white); padding: 40px; border-radius: 8px; border-left: 5px solid var(--primary-red); }
.sticky-cta { display: none; position: fixed; bottom: 0; left: 0; width: 100%; background-color: #0f172a; padding: 15px; text-align: center; z-index: 2000; box-shadow: 0 -4px 10px rgba(0,0,0,0.1); }
.sticky-cta a { color: #c9a227; font-weight: 700; font-size: 1.1rem; text-transform: uppercase; }
mark { background-color: yellow !important; padding: 2px 4px; }
.feature-media-thumbnail.limoking-image img { border-radius: 10px; overflow: hidden; }
.cta-card { background: #0e273f; padding: 20px; border-radius: 12px; }
.cta-card h3 { font-size: 20px; font-weight: 700; letter-spacing: 1.2px; }

/* --- RESPONSIVE --- */
@media (max-width: 968px) { footer { padding-bottom: 60px; } .sticky-cta { display: block; border-top: 1px solid #fff; } .process-line { display: none !important; } }

/* --- PREMIUM BOOKING STEPS & TRUST BANNER --- */
/* --- PREMIUM BOOKING LAYOUT (CLEANED & MERGED) --- */

/* Intro Wrapper */
.booking-intro-wrapper { text-align: center; max-width: 800px; margin: 0 auto 50px auto; }

/* The Gold Caption */
.booking-caption { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 15px; letter-spacing: 1px; }

/* The Split H2 Heading */
.booking-intro-wrapper h2 { font-size: 36px; color: #0f172a; font-weight: 700; margin: 0 0 20px 0; line-height: 1.2; }
.booking-intro-wrapper h2 span { display: block; font-size: 22px; color: #475569; font-weight: 500; margin-top: 8px; }

/* The Paragraph Text */
.booking-intro-wrapper p { font-size: 18px; color: #475569; line-height: 1.6; margin: 0; }

/* The Floating Grid */
.booking-steps-wrapper { max-width: 1100px; margin: 0 auto; width: 100%; }
.steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; position: relative; }

/* The Step Cards */
.step-card { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 40px 30px; position: relative; z-index: 1; overflow: hidden; transition: all 0.3s ease; box-shadow: 0 10px 25px rgba(15,23,42,0.03); display: flex; flex-direction: column; }
.step-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(15,23,42,0.08); border-color: #c9a227; }

/* The Watermark Number Effect */
.step-watermark { position: absolute; right: -10px; bottom: -20px; font-size: 140px; font-weight: 900; color: rgba(15,23,42,0.03); z-index: -1; pointer-events: none; line-height: 1; transition: color 0.3s ease; }
.step-card:hover .step-watermark { color: rgba(201,162,39,0.08); }

/* Card Content */
.step-icon { width: 50px; height: 50px; background: #0f172a; color: #c9a227; display: flex; align-items: center; justify-content: center; border-radius: 50%; font-size: 20px; font-weight: 700; margin-bottom: 25px; }
.step-card h3 { font-size: 22px; color: #0f172a; font-weight: 700; margin: 0 0 10px 0; }
.step-card p { font-size: 15px; color: #475569; line-height: 1.6; margin: 0; }

/* The Trust Banner */
.booking-trust-alert { display: flex; align-items: center; gap: 20px; background: #f8fafc; border-left: 4px solid #c9a227; padding: 25px 30px; border-radius: 0 8px 8px 0; margin-top: 50px; box-shadow: 0 10px 20px rgba(0,0,0,0.02); }
.trust-icon { font-size: 28px; color: #c9a227; flex-shrink: 0; }
.trust-content { font-size: 15px; color: #1e293b; line-height: 1.6; margin: 0; font-weight: 500; }

/* Media Queries (Tablets & Mobile) */
@media (max-width: 959px) { 
    .steps-grid { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); } 
}
@media (max-width: 767px) { 
    .booking-intro-wrapper h2 { font-size: 28px; } 
    .booking-intro-wrapper h2 span { font-size: 18px; margin-top: 5px; } 
    .booking-trust-alert { flex-direction: column; align-items: flex-start; gap: 15px; padding: 20px; } 
}


/* --- PREMIUM CONTACT --- */
.contact-intro-safe { text-align: center; max-width: 800px; margin: 0 auto 50px auto; clear: both; } .contact-caption-safe { display: inline-block; background: #c9a227; color: #1e293b; font-size: 12px; font-weight: 800; text-transform: uppercase; padding: 5px 12px; border-radius: 4px; margin-bottom: 15px; letter-spacing: 1px; } .contact-intro-safe h2 { font-size: 36px; color: #0f172a; font-weight: 700; margin: 0 0 20px 0; line-height: 1.2; } .contact-intro-safe p { font-size: 18px; color: #475569; line-height: 1.6; margin: 0; } .contact-flex-wrapper { display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; max-width: 1100px; margin: 0 auto 50px auto; width: 100%; clear: both; box-sizing: border-box; } .contact-card-safe { flex: 1; min-width: 280px; max-width: 350px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 40px 30px; text-align: center; transition: all 0.3s ease; box-shadow: 0 10px 25px rgba(15,23,42,0.03); display: flex; flex-direction: column; align-items: stretch; box-sizing: border-box; } .contact-card-safe:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(15,23,42,0.08); border-color: #c9a227; } .icon-box-safe { width: 70px; height: 70px; background: #0f172a; border-radius: 50%; display: flex; justify-content: center; align-items: center; margin: 0 auto 25px auto; transition: transform 0.3s ease; font-size: 32px; line-height: 1; } .contact-card-safe:hover .icon-box-safe { transform: scale(1.1); background: #c9a227; } .contact-card-safe h3 { font-size: 22px; color: #0f172a; font-weight: 700; margin: 0 0 15px 0; } .contact-card-safe p { font-size: 15px; color: #475569; line-height: 1.6; margin: 0 0 25px 0; flex-grow: 1; } .btn-safe { display: flex !important; align-items: center; justify-content: center; width: 100% !important; min-height: 55px; margin: 0 !important; border: 2px solid #0f172a; color: #0f172a !important; font-weight: 700; text-transform: uppercase; font-size: 15px; border-radius: 8px; text-decoration: none !important; transition: all 0.3s ease; box-sizing: border-box; position: relative; left: 0; right: 0; } .contact-card-safe:hover .btn-safe { background: #0f172a; color: #ffffff !important; } @media (max-width: 767px) { .contact-intro-safe h2 { font-size: 28px; } }

/* --- END - PREMIUM BOOKING STEPS & TRUST BANNER --- */
/* --- PREMIUM FAQ CATEGORIES --- */
.faq-category-title { margin: 60px 0 30px 0; border-bottom: 2px solid #e2e8f0; padding-bottom: 10px; }
.faq-category-title h3 { font-size: 24px; color: #0f172a; font-weight: 800; text-transform: uppercase; letter-spacing: 1px; }

/* The Accordion Styling */
.faq-item { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; margin-bottom: 15px; overflow: hidden; transition: all 0.3s ease; }
.faq-item:hover { border-color: #c9a227; }
.faq-item summary { font-size: 18px; font-weight: 700; color: #0f172a; padding: 20px 50px 20px 20px; cursor: pointer; list-style: none; position: relative; }
.faq-item summary::-webkit-details-marker { display: none; }

/* Custom Plus/Minus Icons */
.faq-item summary::after { content: '+'; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); font-size: 26px; font-weight: 300; color: #c9a227; transition: transform 0.3s ease; }
.faq-item[open] summary::after { content: '−'; }
.faq-item[open] summary { border-bottom: 1px solid #e2e8f0; background: #ffffff; color: #c9a227; }

.faq-content { padding: 25px; background: #ffffff; line-height: 1.6; color: #475569; font-size: 16px; }
.faq-content strong { color: #0f172a; }
.faq-content ul { padding-left: 20px; margin: 15px 0; }
.faq-content li { margin-bottom: 10px; }

/* Help CTA */
.faq-help-card { background: #0f172a; color: #ffffff; padding: 30px; border-radius: 12px; text-align: center; margin-top: 40px; }
.faq-help-card h4 { color: #c9a227; margin-bottom: 10px; font-size: 20px; }
.faq-help-btn { display: inline-block; background: #c9a227; color: #1e293b !important; padding: 12px 30px; border-radius: 6px; font-weight: 700; text-decoration: none !important; margin-top: 15px; }
/* --- END-PREMIUM FAQ CATEGORIES --- */

