/* ********* */
/* index.php */
/* ********* */

/* Palette: #171514 (base), #0b0b0a (depth), #291C18 (leather), #d4af37 (gold) */
    :root { 
        --base-dark: #171514; 
        --depth: #0b0b0a;
        --leather: #291C18; 
        --gold: #d4af37; 
    }

    body { background-color: #fdfdfd; font-family: 'Roboto', sans-serif; color: #333; }
    h1, h2, h3, h4 { font-family: 'Playfair Display', serif; color: var(--gold); }

    .hero-home {
        background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('immagini/bg-home.jpg');
        background-size: cover;
        background-position: center;
        border-bottom: 5px solid var(--gold);
        padding: 120px 0;
    }

    .badge-gold {
        background: rgba(212, 175, 55, 0.2);
        color: var(--gold);
        border: 1px solid var(--gold);
        padding: 8px 25px;
        font-weight: bold;
        border-radius: 50px;
        display: inline-block;
        letter-spacing: 1px;
    }

    .btn-lg {
        height: 64px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 1.1rem;
        transition: 0.3s;
    }

    .btn-gold {
        background-color: var(--gold);
        color: var(--leather) !important;
        border: none;
        font-weight: 800;
        padding: 0 40px;
        border-radius: 8px;
        text-transform: uppercase;
    }
    .btn-gold:hover { transform: scale(1.05); background-color: #c49b30; }

    .btn-outline-light {
        border-width: 2px;
        padding: 0 40px;
        font-weight: 600;
        border-radius: 8px;
    }

    .logo-hover:hover {
        transform: scale(1.1) rotate(2deg);
        transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        border-color: var(--gold) !important;
        z-index: 10;
    }
    
    .strategic-grid .feature-card {
        background: white;
        border: 1px solid #ddd;
        border-bottom: 4px solid var(--gold);
        padding: 40px 30px;
        border-radius: 15px;
        transition: 0.3s;
        height: 100%;
    }
    .strategic-grid h3 { font-size: 1.5rem; margin-bottom: 15px; color: #b8860b; }
    .strategic-grid p { font-size: 1.15rem; line-height: 1.6; color: #222 !important; }

    .icon-circle {
        width: 75px; height: 75px;
        background: var(--light-gold);
        color: var(--gold);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 2rem;
        margin: 0 auto 25px auto;
        box-shadow: inset 0 0 15px rgba(212, 175, 55, 0.1);
    }

    .card-navy {
        background: var(--leather);
        color: white;
        border: 1px solid var(--gold);
        border-radius: 24px;
        overflow: hidden;
    }

    .text-navy { color: var(--leather); }

    @media (max-width: 768px) {
        .hero-home { padding: 80px 15px; }
        .display-2 { font-size: 2.5rem; }
        .btn-lg { width: 100%; margin-bottom: 10px; }
        .strategic-grid p { font-size: 1.2rem; }
        .strategic-grid h3 { font-size: 1.4rem; }
    }