/* ============================ PALETTE COLORI CRISTEC ============================ */:root { --blu: #007bff; --blu-scuro: #0056c7; --rosso: #e53935; --nero: #1a1a1a; --grigio: #444; --grigio-chiaro: #f5f5f5; --bianco: #ffffff;}/* ============================ RESET ============================ */* { margin: 0; padding: 0; box-sizing: border-box;}body { font-family: "Arial", sans-serif; background: var(--bianco); color: var(--grigio); line-height: 1.6;}/* ============================ HEADER ============================ */.top-bar { background: var(--nero); color: var(--bianco); text-align: center; padding: 6px 10px; font-size: 13px; letter-spacing: 0.05em;}header { background: var(--bianco); border-bottom: 1px solid #ddd; position: sticky; top: 0; z-index: 1000;}.nav-container { max-width: 1200px; margin: auto; padding: 12px 20px; display: flex; justify-content: space-between; align-items: center;}.logo-area { display: flex; align-items: center; gap: 10px;}.logo-area img { height: 60px;}.brand-name { font-size: 22px; font-weight: bold; color: var(--nero);}nav ul { list-style: none; display: flex; gap: 22px;}nav a { text-decoration: none; color: var(--nero); font-weight: bold; transition: 0.2s;}nav a:hover { color: var(--blu);}.btn-primary { background: var(--blu); color: var(--bianco) !important; padding: 8px 16px; border-radius: 4px;}.btn-primary:hover { background: var(--blu-scuro);}/* ============================ SEZIONI GENERALI ============================ */section { padding: 70px 20px; max-width: 1200px; margin: auto;}h1, h2, h3 { color: var(--nero); margin-bottom: 15px;}/* ============================ HERO ============================ */.hero { display: grid; grid-template-columns: 2fr 1fr; gap: 40px; align-items: center;}.hero-text h1 { font-size: 42px; color: var(--nero);}.hero-text h2 { font-size: 22px; color: var(--blu); margin-bottom: 20px;}.hero-buttons { margin-top: 20px; display: flex; gap: 12px;}.btn-secondary { color: var(--blu); font-weight: bold; text-decoration: none;}.hero-side { background: var(--grigio-chiaro); padding: 20px; border-radius: 10px; border-left: 4px solid var(--blu);}.hero-side ul { list-style: none;}.hero-side li::before { content: "• "; color: var(--blu); font-weight: bold;}/* ============================ GRID GENERALI ============================ */.two-columns,.services-grid,.portfolio-grid,.contact-grid { display: grid; gap: 30px;}.two-columns { grid-template-columns: 1fr 1fr;}.services-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));}.portfolio-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));}.contact-grid { grid-template-columns: 1fr 1fr;}/* ============================ CARD ============================ */.service-card,.portfolio-item { background: var(--grigio-chiaro); padding: 25px; border-radius: 10px; border: 1px solid #ddd; transition: 0.3s;}.service-card:hover,.portfolio-item:hover { transform: translateY(-5px); border-color: var(--blu);}/* ============================ FORM CONTATTI ============================ */form label { font-weight: bold; margin-bottom: 5px; display: block;}form input,form textarea { width: 100%; padding: 10px; border-radius: 6px; border: 1px solid #ccc; margin-bottom: 15px; font-size: 15px;}form button { border: none; cursor: pointer; padding: 10px 20px; background: var(--blu); color: var(--bianco); border-radius: 6px; font-size: 16px;}form button:hover { background: var(--blu-scuro);}/* ============================ FOOTER ============================ */footer { background: var(--nero); color: #ccc; padding: 25px; text-align: center; margin-top: 40px;}/* ============================ RESPONSIVE ============================ */@media (max-width: 900px) { .hero, .two-columns, .contact-grid { grid-template-columns: 1fr; } nav ul { gap: 12px; }}@media (max-width: 600px) { .logo-area img { height: 70px; } .hero-text h1 { font-size: 32px; } section { padding: 50px 15px; }}
02