/**
 * Theme Name:     Divi Child
 * Author:         Elegant Themes
 * Template:       Divi
 * Text Domain:    divi-child
 * Description:    Autonoleggio Silvestrini - Dark Executive Theme
 */

/* ============================================
   VARIABILI E RESET GLOBALE
   ============================================ */
:root {
    --s-dark-1: #0f0d0b;
    --s-dark-2: #1a1714;
    --s-dark-3: #231f1b;
    --s-dark-4: #2a2520;
    --s-gold: #c9a96e;
    --s-gold-light: #d4b87a;
    --s-gold-dark: #a88a4e;
    --s-white: #ffffff;
    --s-gray: #b3ac9e;
    --s-gray-light: #d1ccc4;
}

/* Body e sfondo globale */
body, #page-container,
#main-content, .container {
    background-color: var(--s-dark-2) !important;
}

body {
    color: var(--s-gray) !important;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif !important;
}

/* ============================================
   HEADER / NAVIGAZIONE
   ============================================ */
#main-header, #main-header .container,
.et-fixed-header#main-header {
    background-color: var(--s-dark-1) !important;
    border-bottom: 1px solid rgba(201,169,110,0.15) !important;
}

#main-header .et_pb_menu__logo-wrap img,
#logo {
    max-height: 60px !important;
}

#top-menu li a,
.et_mobile_menu li a {
    color: var(--s-gray-light) !important;
    font-size: 13px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
    transition: color 0.3s ease !important;
}

#top-menu li a:hover,
#top-menu li.current-menu-item a {
    color: var(--s-gold) !important;
}

/* CTA button nel menu */
#top-menu li.menu-item-cta a,
#top-menu li:last-child a {
    border: 1px solid var(--s-gold) !important;
    color: var(--s-gold) !important;
    padding: 8px 20px !important;
    border-radius: 0 !important;
    transition: all 0.3s ease !important;
}

#top-menu li.menu-item-cta a:hover,
#top-menu li:last-child a:hover {
    background-color: var(--s-gold) !important;
    color: var(--s-dark-1) !important;
}

/* ============================================
   SEZIONI CUSTOM
   ============================================ */
.s-section-dark {
    background-color: var(--s-dark-1) !important;
}

.s-section-darker {
    background-color: #080706 !important;
}

.s-section-medium {
    background-color: var(--s-dark-3) !important;
}

.s-section-gold-border {
    border-top: 1px solid rgba(201,169,110,0.2) !important;
    border-bottom: 1px solid rgba(201,169,110,0.2) !important;
}

/* ============================================
   HERO SECTION
   ============================================ */
.s-hero-section {
    background-color: var(--s-dark-1) !important;
    padding: 120px 0 100px !important;
    position: relative !important;
    overflow: hidden !important;
}

.s-hero-section::before {
    content: '' !important;
    position: absolute !important;
    top: 0; left: 0; right: 0; bottom: 0 !important;
    background: linear-gradient(135deg, rgba(15,13,11,0.95) 0%, rgba(26,23,20,0.85) 50%, rgba(15,13,11,0.9) 100%) !important;
    z-index: 1 !important;
}

.s-hero-section .et_pb_row {
    position: relative !important;
    z-index: 2 !important;
}

/* ============================================
   TIPOGRAFIA
   ============================================ */
.s-heading-gold {
    color: var(--s-gold) !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.s-heading-white {
    color: var(--s-white) !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.s-subheading {
    color: var(--s-gray) !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
    font-weight: 300 !important;
}

.s-text-gold {
    color: var(--s-gold) !important;
}

.s-text-white {
    color: var(--s-white) !important;
}

.s-text-gray {
    color: var(--s-gray) !important;
}

.s-divider-gold {
    width: 60px !important;
    height: 2px !important;
    background-color: var(--s-gold) !important;
    margin: 20px auto !important;
    border: none !important;
}

/* ============================================
   BOTTONI
   ============================================ */
.s-btn-gold,
.et_pb_button.s-btn-gold {
    background-color: var(--s-gold) !important;
    color: var(--s-dark-1) !important;
    border: 2px solid var(--s-gold) !important;
    padding: 14px 35px !important;
    font-size: 13px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    border-radius: 0 !important;
    transition: all 0.3s ease !important;
}

.s-btn-gold:hover,
.et_pb_button.s-btn-gold:hover {
    background-color: transparent !important;
    color: var(--s-gold) !important;
}

.s-btn-outline,
.et_pb_button.s-btn-outline {
    background-color: transparent !important;
    color: var(--s-gold) !important;
    border: 2px solid var(--s-gold) !important;
    padding: 14px 35px !important;
    font-size: 13px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    border-radius: 0 !important;
    transition: all 0.3s ease !important;
}

.s-btn-outline:hover,
.et_pb_button.s-btn-outline:hover {
    background-color: var(--s-gold) !important;
    color: var(--s-dark-1) !important;
}

/* ============================================
   CARD / BLURB MODULES
   ============================================ */
.s-card {
    background-color: var(--s-dark-3) !important;
    border: 1px solid rgba(201,169,110,0.15) !important;
    padding: 40px 30px !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
}

.s-card:hover {
    border-color: var(--s-gold) !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 15px 40px rgba(0,0,0,0.3) !important;
}

.s-card .et_pb_blurb_description,
.s-card .et_pb_blurb_description p {
    color: var(--s-gray) !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
}

.s-card .et_pb_module_header,
.s-card h4 {
    color: var(--s-white) !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 20px !important;
    margin-bottom: 15px !important;
}

.s-card .et-pb-icon,
.s-card .et_pb_main_blurb_image .et-pb-icon {
    color: var(--s-gold) !important;
    font-size: 48px !important;
    margin-bottom: 20px !important;
}

/* ============================================
   VEHICLE CARDS (Parco Mezzi)
   ============================================ */
.s-vehicle-card {
    background-color: var(--s-dark-3) !important;
    border: 1px solid rgba(201,169,110,0.12) !important;
    padding: 35px !important;
    margin-bottom: 30px !important;
    transition: border-color 0.3s ease !important;
}

.s-vehicle-card:hover {
    border-color: var(--s-gold) !important;
}

.s-vehicle-name {
    color: var(--s-gold) !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 24px !important;
    margin-bottom: 15px !important;
}

.s-vehicle-specs {
    color: var(--s-gray) !important;
    font-size: 14px !important;
    line-height: 1.8 !important;
}

.s-vehicle-badge {
    display: inline-block !important;
    background-color: rgba(201,169,110,0.1) !important;
    border: 1px solid rgba(201,169,110,0.3) !important;
    color: var(--s-gold) !important;
    padding: 6px 15px !important;
    font-size: 13px !important;
    margin-right: 10px !important;
    margin-bottom: 8px !important;
}

/* ============================================
   FEATURES BAR (checkmarks)
   ============================================ */
.s-features-bar {
    background-color: var(--s-dark-3) !important;
    border-top: 1px solid rgba(201,169,110,0.15) !important;
    border-bottom: 1px solid rgba(201,169,110,0.15) !important;
    padding: 25px 0 !important;
}

.s-features-bar .et_pb_blurb_description {
    color: var(--s-gray-light) !important;
}

.s-check-item {
    color: var(--s-gray-light) !important;
    font-size: 15px !important;
}

.s-check-item::before {
    content: '\2713' !important;
    color: var(--s-gold) !important;
    margin-right: 8px !important;
    font-weight: bold !important;
}

/* ============================================
   LOGHI CLIENTI
   ============================================ */
.s-clients-bar {
    background-color: var(--s-dark-1) !important;
    padding: 40px 0 !important;
    border-top: 1px solid rgba(201,169,110,0.1) !important;
}

.s-clients-bar img {
    filter: grayscale(100%) brightness(0.7) !important;
    opacity: 0.5 !important;
    transition: all 0.3s ease !important;
}

.s-clients-bar img:hover {
    filter: grayscale(0%) brightness(1) !important;
    opacity: 1 !important;
}

/* ============================================
   MAPPA SECTION (Presenza Strategica)
   ============================================ */
.et_pb_section_3,
.et_pb_section_3 .et_pb_row {
    background-color: transparent !important;
}

/* ============================================
   CTA SECTION
   ============================================ */
.s-cta-section {
    background-color: var(--s-dark-1) !important;
    border-top: 1px solid rgba(201,169,110,0.2) !important;
    padding: 80px 0 !important;
    text-align: center !important;
}

/* ============================================
   CONTACT FORM
   ============================================ */
.et_pb_contact_form_container .et_pb_contact_form label,
.et_pb_contact_form_container label {
    color: var(--s-gray-light) !important;
    font-size: 13px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}

.et_pb_contact_form_container input[type="text"],
.et_pb_contact_form_container input[type="email"],
.et_pb_contact_form_container textarea,
.et_pb_contact_form_container select,
.et_pb_contact_form input,
.et_pb_contact_form textarea {
    background-color: var(--s-dark-3) !important;
    border: 1px solid rgba(201,169,110,0.2) !important;
    color: var(--s-white) !important;
    padding: 14px 18px !important;
    border-radius: 0 !important;
    font-size: 15px !important;
    transition: border-color 0.3s ease !important;
}

.et_pb_contact_form_container input:focus,
.et_pb_contact_form_container textarea:focus {
    border-color: var(--s-gold) !important;
    outline: none !important;
}

.et_pb_contact_form_container .et_pb_contact_submit,
.et_pb_contact_form .et_pb_contact_submit {
    background-color: var(--s-gold) !important;
    color: var(--s-dark-1) !important;
    border: 2px solid var(--s-gold) !important;
    padding: 14px 40px !important;
    font-size: 13px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.et_pb_contact_form_container .et_pb_contact_submit:hover {
    background-color: transparent !important;
    color: var(--s-gold) !important;
}

/* ============================================
   LISTS
   ============================================ */
.s-list-gold ul {
    list-style: none !important;
    padding: 0 !important;
}

.s-list-gold ul li {
    color: var(--s-gray-light) !important;
    padding: 8px 0 !important;
    padding-left: 25px !important;
    position: relative !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
}

.s-list-gold ul li::before {
    content: '\2713' !important;
    color: var(--s-gold) !important;
    position: absolute !important;
    left: 0 !important;
    font-weight: bold !important;
}

/* ============================================
   FOOTER
   ============================================ */
#main-footer, .et-l--footer,
#footer-info, #footer-widgets {
    background-color: var(--s-dark-1) !important;
    border-top: 1px solid rgba(201,169,110,0.15) !important;
}

#footer-widgets .footer-widget li a,
#footer-widgets .footer-widget,
#footer-info {
    color: var(--s-gray) !important;
}

#footer-widgets .footer-widget li a:hover {
    color: var(--s-gold) !important;
}

#footer-bottom {
    background-color: #080706 !important;
    border-top: 1px solid rgba(201,169,110,0.1) !important;
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 980px) {
    .s-hero-section {
        padding: 80px 0 60px !important;
    }

    .s-card {
        margin-bottom: 20px !important;
    }
}

@media (max-width: 768px) {
    .s-hero-section {
        padding: 60px 0 50px !important;
    }
}

/* ============================================
   UTILITY
   ============================================ */
.s-text-center {
    text-align: center !important;
}

.s-mb-0 { margin-bottom: 0 !important; }
.s-mb-10 { margin-bottom: 10px !important; }
.s-mb-20 { margin-bottom: 20px !important; }
.s-mb-30 { margin-bottom: 30px !important; }
.s-mt-20 { margin-top: 20px !important; }
.s-mt-30 { margin-top: 30px !important; }
.s-pt-0 { padding-top: 0 !important; }
.s-pb-0 { padding-bottom: 0 !important; }

/* Google Fonts import */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Inter:wght@300;400;500;600&display=swap');
