/* --- sølt. - Corporate Identity Styles --- */
:root {
    --solt-gold: #c5a059;
    --solt-bg: #121212;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background-color: var(--solt-bg); color: white; font-family: 'Inter', sans-serif; overflow-x: hidden; -webkit-font-smoothing: antialiased; }

/* --- Navigation --- */
.glass { background: rgba(18, 18, 18, 0.9); backdrop-filter: blur(25px); -webkit-backdrop-filter: blur(25px); }
.nav-container { max-width: 1600px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }
.nav-item { font-size: 10px; text-transform: uppercase; letter-spacing: 0.4em; font-weight: 300; color: white; text-decoration: none; transition: color 0.3s; }
.nav-item:hover { color: var(--solt-gold); }

/* --- Fleet Card & Zoom Fix (KI-Zeichen Maskierung) --- */
.fleet-card { background: #1a1a1a; border: 1px solid rgba(255,255,255,0.05); padding: 2.5rem; transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1); cursor: pointer; overflow: hidden; }
.fleet-card:hover { transform: translateY(-10px); border-color: rgba(197, 160, 89, 0.3); }

.fleet-image-wrapper { width: 100%; margin-bottom: 2rem; overflow: hidden; aspect-ratio: 16/10; }
.fleet-image-wrapper img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.2); transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1); }
.fleet-card:hover .fleet-image-wrapper img { transform: scale(1.4); }

/* --- Tarife / Pricing Table --- */
.tarif-grid { border-top: 1px solid rgba(255,255,255,0.1); }
.tarif-row { display: grid; grid-template-columns: 2fr 1fr 1fr; padding: 1.5rem 0; border-bottom: 1px solid rgba(255,255,255,0.05); align-items: center; transition: background 0.3s; }
.tarif-row:hover { background: rgba(255,255,255,0.02); }

/* --- Buttons & Form --- */
.btn-primary { display: inline-block; border: 1px solid rgba(255,255,255,0.2); padding: 1.2rem 3.5rem; font-size: 11px; text-transform: uppercase; letter-spacing: 0.5em; color: white; transition: all 0.6s; position: relative; background: transparent; z-index: 1; cursor: pointer; }
.btn-primary:hover { color: black; }
.btn-primary::before { content: ''; position: absolute; top: 0; left: 0; width: 0; height: 100%; background-color: white; transition: width 0.6s; z-index: -1; }
.btn-primary:hover::before { width: 100%; }

.form-group { position: relative; margin-bottom: 3.5rem; }
.form-input { width: 100%; padding: 1rem 0; background: transparent !important; border: none !important; border-bottom: 1px solid rgba(255,255,255,0.1) !important; color: white; outline: none; border-radius: 0; }
.form-label { position: absolute; left: 0; bottom: 1.1rem; color: #666; font-size: 11px; text-transform: uppercase; letter-spacing: 0.2em; pointer-events: none; transition: all 0.4s; }
.form-input:focus ~ .form-label, .form-input:not(:placeholder-shown) ~ .form-label { transform: translateY(-2.6rem); color: var(--solt-gold); font-size: 9px; }

@keyframes fadeInUp { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: translateY(0); } }
.animate-fadeInUp { animation: fadeInUp 1.4s ease-out forwards; }