/* Pagine dedicate alle realizzazioni.
   Erano lo stesso blocco di stile ricopiato dentro nove file: se si cambiava
   un colore bisognava ricordarsi di tutti. Qui sta una volta sola.
   L'immagine di sfondo dell'intestazione resta nella pagina: e' l'unica cosa
   che cambia da un lavoro all'altro. */

.case-hero {
    background-size: cover;
    background-position: center;
    color: #fbf8f2;
    padding: 140px 20px 80px;
    text-align: center;
}
.case-hero h1 {
    font-size: clamp(1.8rem, 4vw, 2.8rem);
    margin: 0 0 1rem;
    color: #fbf8f2;
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-weight: 600;
}
.case-hero .lead { max-width: 760px; margin: 0 auto 1.5rem; opacity: .9; font-size: 1.1rem; }

.case-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; margin-top: 1.5rem; }
.case-meta span {
    background: rgba(201,162,75,.15); color: #c9a24b;
    padding: 8px 18px; border-radius: 30px; font-weight: 600;
    border: 1px solid rgba(201,162,75,.35); font-size: .95rem;
}

body { background: #100f0d; }

.case-section { padding: 60px 20px; max-width: 1200px; margin: 0 auto; background: #100f0d; }
.case-section h2 {
    font-size: clamp(1.5rem, 3vw, 2rem); margin-bottom: 1rem; color: #fbf8f2;
    font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 600;
}
.case-section p { line-height: 1.7; color: #d8d1c6; font-size: 1.05rem; }
.case-section p + p { margin-top: 1rem; }
.case-section a { color: #c9a24b; }
.case-section strong { color: #fbf8f2; }

.specs-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.spec-card {
    padding: 1.2rem; background: #15130f; border-radius: 10px;
    border: 1px solid rgba(255,255,255,.08); border-left: 4px solid #c9a24b; color: #d8d1c6;
}
.spec-card strong { display: block; color: #fbf8f2; }

.galleria { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.galleria a { display: block; border-radius: 10px; overflow: hidden; border: 1px solid rgba(255,255,255,.08); background: #15130f; }
.galleria img { width: 100%; height: 220px; object-fit: cover; display: block; transition: transform .3s ease; }
.galleria a:hover img { transform: scale(1.03); }
@media (prefers-reduced-motion: reduce) { .galleria img { transition: none; } .galleria a:hover img { transform: none; } }

.scheda { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.scheda div { background: #15130f; border: 1px solid rgba(255,255,255,.08); border-radius: 10px; padding: 1.1rem 1.3rem; color: #d8d1c6; }
.scheda span {
    display: block; color: #c9a24b; font-weight: 700; font-size: .8rem;
    letter-spacing: .08em; text-transform: uppercase; margin-bottom: .3rem;
}

.case-cta { background: linear-gradient(135deg, #100f0d 0%, #0b0a09 100%); color: #fbf8f2; padding: 60px 20px; text-align: center; }
.case-cta h2 { color: #fbf8f2; margin-bottom: 1rem; font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 600; }
.case-cta .btn {
    display: inline-block; background: #c9a24b; color: #14130f;
    padding: 14px 32px; border-radius: 6px; text-decoration: none;
    font-weight: 700; margin-top: 1rem; font-size: 1.05rem;
}
.case-cta .btn:hover { background: #b8923f; }

.legal-note { max-width: 1200px; margin: 0 auto; padding: 0 20px 40px; }
.legal-note p { font-size: .8rem; color: #8f8779; line-height: 1.6; }
