/* Base & Scrollbar */
body { font-family: 'Inter', sans-serif; background-color: #f8fafc; }
h1, h2, h3, h4, h5, .font-display { font-family: 'Montserrat', sans-serif; }
section { scroll-margin-top: 80px; }
.address-verify-field { display: none !important; }

::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #0f172a; }
::-webkit-scrollbar-thumb { background: #E87722; }
::-webkit-scrollbar-thumb:hover { background: #c46016; }

.clip-diagonal {
    clip-path: polygon(0 0, 100% 0, 100% 95%, 0 100%);
}
@media (min-width: 768px) {
    .clip-diagonal { clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%); }
}

.hero-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fleet-card { transition: all 0.3s ease; }
.fleet-card:hover { transform: translateY(-5px); box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); }
.fleet-card:hover .fleet-icon-wrapper { background-color: #E87722; color: white; }

.gallery-item { overflow: hidden; position: relative; cursor: pointer; border-radius: 0.5rem; }
.gallery-item img { transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1); }
.gallery-item:hover img { transform: scale(1.1); }
.gallery-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(15, 23, 42, 0.9) 0%, transparent 60%);
    opacity: 0; transition: opacity 0.3s ease;
    display: flex; align-items: flex-end; padding: 1.5rem;
}
.gallery-item:hover .gallery-overlay { opacity: 1; }

@media (max-width: 639px) {
    .gallery-overlay { padding: 0.75rem; }
}

.btn-primary {
    background-color: #E87722; color: white;
    transition: all 0.3s ease; position: relative; overflow: hidden;
    display: inline-flex; justify-content: center; align-items: center;
}
.btn-primary:hover { background-color: #c46016; transform: translateY(-2px); }

.floating-wa {
    position: fixed; bottom: 30px; right: 30px;
    background-color: #25D366; color: white;
    width: 60px; height: 60px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 32px; box-shadow: 0 10px 15px -3px rgba(37, 211, 102, 0.3);
    z-index: 90; transition: transform 0.3s ease;
}
.floating-wa:hover { transform: scale(1.1); }

.skip-link {
    position: absolute;
    left: 1rem;
    top: -3rem;
    z-index: 100;
    background: #E87722;
    color: #fff;
    padding: 0.5rem 1rem;
    font-weight: 700;
}
.skip-link:focus { top: 1rem; }

details summary { list-style: none; }
details summary::-webkit-details-marker { display: none; }
