/* =========================
GLOBAL
========================= */

html {
    scroll-behavior: smooth;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Poppins', sans-serif;
    background-color: #0f172a;
    color: #f8fafc;
    padding-top: 70px;
}

section {
    padding: 80px 10%;
}

h1, h2, h3 {
    font-weight: 600;
}

p {
    opacity: 0.85;
    line-height: 1.6;
}

ul {
    list-style: none;
    margin-top: 20px;
}

li {
    margin: 10px 0;
}

/* =========================
NAVBAR
========================= */

.navbar {
    position: fixed;
    top: 0;
    width: 100%;
    background: rgba(15,23,42,0.95);
    padding: 15px 10%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 1000;
}

.navbar a {
    color: #f8fafc;
    text-decoration: none;
    margin-left: 25px;
    font-size: 14px;
    font-weight: 500;
    transition: 0.3s;
}

.navbar a:hover {
    color: #d4af37;
}

.logo a {
    font-weight: 600;
    font-size: 16px;
    color: #d4af37;
    text-decoration: none;
}

.menu-toggle {
    display: none;
    font-size: 24px;
    color: #f8fafc;
    cursor: pointer;
}

/* =========================
BUTTON
========================= */

.btn {
    display: inline-block;
    padding: 14px 30px;
    background: #d4af37;
    color: #0f172a;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 500;
    transition: 0.3s ease;
}

.btn:hover {
    background: #b9962f;
    transform: translateY(-3px);
}

/* =========================
HERO
========================= */

.hero {
    height: 90vh;
    display: flex;
    align-items: center;
    background-size: cover;
    background-position: center;
}

.hero-content {
    max-width: 650px;
}

.hero h1 {
    font-size: 44px;
    margin-bottom: 15px;
}

.hero p {
    font-size: 18px;
    margin-bottom: 30px;
}

/* HERO BACKGROUNDS */

.hero-home {
    background:
    linear-gradient(to right, rgba(0,0,0,0.85), rgba(15,23,42,0.6)),
    url('your-car-photo.jpg') center/cover no-repeat;
}

.hero-airport {
    background:
    linear-gradient(to right, rgba(0,0,0,0.85), rgba(15,23,42,0.6)),
    url('background.png') center/cover no-repeat;
}

.hero-city {
    background:
    linear-gradient(to right, rgba(0,0,0,0.85), rgba(15,23,42,0.6)),
    url('background-city-tour.png') center/cover no-repeat;
}

.hero-charter {
    background:
    linear-gradient(to right, rgba(0,0,0,0.85), rgba(15,23,42,0.6)),
    url('background-car-charter.png') center/cover no-repeat;
}

/* =========================
SERVICE BOX
========================= */

.service-box {
    background: #0f172a;
    padding: 40px;
    border-radius: 20px;
    transition: 0.3s;
    text-decoration: none;
    color: #f8fafc;
    display: block;
    cursor: pointer;
}

.service-box:hover {
    transform: translateY(-10px);
}

.service-link {
    display: inline-block;
    margin-top: 20px;
    font-size: 14px;
    color: #d4af37;
    font-weight: 500;
}

.service-box:hover .service-link {
    text-decoration: underline;
}

/* =========================
SECTIONS
========================= */

.dark {
    background: #1e293b;
}

.darker {
    background: #020617;
}

.center {
    text-align: center;
}

/* =========================
LOCATIONS
========================= */

.locations {
    background: #020617;
    text-align: center;
}

.locations li {
    font-size: 16px;
}

/* =========================
WHY
========================= */

.why {
    text-align: center;
}

.why ul {
    max-width: 600px;
    margin: auto;
}

.why li {
    font-size: 18px;
}

/* =========================
TRUST
========================= */

.trust {
    background: #020617;
    text-align: center;
}

.trust p {
    max-width: 750px;
    margin: 15px auto;
}

/* =========================
PRICING
========================= */

.pricing-box {
    background: #0f172a;
    padding: 30px;
    border-radius: 15px;
    margin-top: 20px;
}

/* =========================
FAQ
========================= */

.faq {
    background: #020617;
    width: 100%;
}

.faq-inner {
    max-width: 900px;
    margin: auto;
    text-align: center;
}

.faq h3 {
    margin-top: 25px;
    font-size: 18px;
}

/* =========================
BOOKING FORM
========================= */

.booking {
    background: #0f172a;
    text-align: center;
    scroll-margin-top: 60px;
}

.booking form {
    max-width: 500px;
    margin: 40px auto 0;
    text-align: left;
}

.booking label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
    cursor: pointer;
}

.booking input[type="text"],
.booking input[type="date"] {
    width: 100%;
    padding: 12px;
    margin: 10px 0 20px;
    border-radius: 8px;
    border: none;
    font-family: 'Poppins', sans-serif;
}

.booking input[type="checkbox"]{
    width:18px;
    height:18px;
    margin:0;
}

.booking button {
    width: 100%;
}

/* =========================
CTA
========================= */

.cta {
    background: #111827;
    text-align: center;
}

/* =========================
MOBILE
========================= */

@media(max-width:768px){

    .menu-toggle {
        display: block;
    }

    nav {
        position: absolute;
        top: 60px;
        right: 0;
        background: #0f172a;
        width: 100%;
        display: none;
        flex-direction: column;
        text-align: center;
        padding: 20px 0;
    }

    nav a {
        display: block;
        margin: 15px 0;
    }

    nav.active {
        display: flex;
    }

    .hero h1 {
        font-size: 30px;
    }

}

/* =========================
FOOTER
========================= */

.footer{
background:#020617;
text-align:center;
padding:60px 10%;
}

.footer-content{
max-width:700px;
margin:auto;
}

.footer h3{
margin-bottom:10px;
}

.footer p{
margin:10px 0;
}

.footer .btn{
margin-top:20px;
display:inline-block;
}

.copyright{
margin-top:40px;
font-size:14px;
opacity:0.6;
}

/* =========================
GOOGLE REVIEWS
========================= */

.reviews{
    background:#020617;
    padding:80px 10%;
    text-align:center;
}

.reviews-inner{
    max-width:900px;
    margin:auto;
}

.review-desc{
    margin:10px 0 40px;
    opacity:0.85;
}

.reviews-widget{
    margin-top:20px;
}

/* =========================
PHOTO AUTO SLIDER
========================= */

.photo-slider{
    padding:80px 0;
    background:#020617;
    text-align:center;
}

.photo-slider h2{
    margin-bottom:40px;
}

.slider{
    overflow:hidden;
    position:relative;
    width:100%;
}

.slide-track{
    display:flex;
    width:calc(250px * 12);
    animation:scroll 40s linear infinite;
}

.slide-track img{
    width:250px;
    height:180px;
    object-fit:cover;
    margin:0 10px;
    border-radius:12px;
}

@keyframes scroll{
    0%{
        transform:translateX(0);
    }
    100%{
        transform:translateX(-50%);
    }
}

/* =========================
CTA
========================= */

.cta{
    background:#111827;
    text-align:center; /* 👈 biar semua isi center */
}

.cta .btn{
    display:block;
    margin:20px auto 0; /* 👈 center tombol */
    width:fit-content;
}