:root {
--bg-dark: #070A0F;
--bg-card: #111723;
--bg-card-hover: #182132;
--color-accent: #D4AF37;
--color-accent-hover: #F3CA40;
--color-accent-dark: #8F7320;
--color-text-main: #f8fafc;
--color-text-muted: #94a3b8;
--color-text-dim: #cbd5e1;
--font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
--font-serif: 'Cinzel', Georgia, serif;
--border-subtle: rgba(255, 255, 255, 0.1);
--border-gold: rgba(212, 175, 55, 0.2);
}

*, *::before, *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}

html {
scroll-behavior: smooth;
font-family: var(--font-sans);
background-color: var(--bg-dark);
color: var(--color-text-main);
-webkit-font-smoothing: antialiased;
}

body {
min-height: 100vh;
display: flex;
flex-direction: column;
line-height: 1.5;
top: 0px !important;
overflow-x: hidden;
}

a {
color: inherit;
text-decoration: none;
}

button, input, select, textarea {
font-family: inherit;
}

/* Custom Scrollbars */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg-dark); }
::-webkit-scrollbar-thumb { background: #1E293B; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--color-accent); }

/* Glassmorphism & Utilities */
.glass-panel {
background: rgba(17, 23, 35, 0.85);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
border: 1px solid var(--border-gold);
}

.glass-nav {
background: rgba(7, 10, 15, 0.90);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.gold-gradient-text {
background: linear-gradient(135deg, #FFF0B8 0%, #D4AF37 50%, #9A7B1C 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}

.gold-btn {
background: linear-gradient(135deg, #E5C158 0%, #D4AF37 50%, #B8860B 100%);
color: #000;
font-weight: 800;
border: none;
cursor: pointer;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.5rem;
}

.gold-btn:hover {
box-shadow: 0 0 25px rgba(212, 175, 55, 0.45);
transform: translateY(-2px);
}

/* Layout Containers */
.container {
width: 100%;
max-width: 1280px;
margin-left: auto;
margin-right: auto;
padding-left: 1rem;
padding-right: 1rem;
}

@media (min-width: 640px) { .container { padding-left: 1.5rem; padding-right: 1.5rem; } }
@media (min-width: 1024px) { .container { padding-left: 2rem; padding-right: 2rem; } }

/* Top Navigation Bar */
.top-bar {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 50;
background-color: #000;
border-bottom: 1px solid var(--border-subtle);
height: 48px;
}

.top-bar .container {
height: 100%;
display: flex;
align-items: center;
justify-content: space-between;
}

.top-contacts {
display: flex;
align-items: center;
gap: 1.5rem;
font-size: 0.8125rem;
font-weight: 600;
white-space: nowrap;
}

.top-contacts a {
display: flex;
align-items: center;
gap: 0.5rem;
transition: color 0.2s;
}

.top-contacts a:hover {
color: var(--color-accent);
}

.top-contacts i {
color: #ef4444;
}

@media (max-width: 640px) {
.top-contacts a.hidden-sm { display: none; }
}

.lang-menu {
display: flex;
align-items: center;
gap: 0.375rem;
}

.lang-btn {
background: transparent;
border: none;
padding: 0.25rem;
cursor: pointer;
transition: transform 0.2s;
}

.lang-btn:hover {
transform: scale(1.1);
}

.flag-img {
width: 20px;
height: auto;
border-radius: 2px;
border: 1px solid rgba(255, 255, 255, 0.2);
}

/* Header & Navigation */
.site-header {
position: fixed;
top: 48px;
left: 0;
right: 0;
z-index: 40;
transition: all 0.3s ease;
}

.header-inner {
height: 80px;
display: flex;
align-items: center;
justify-content: space-between;
}

.logo-link img {
height: 48px;
width: auto;
transition: transform 0.3s ease;
}

.logo-link:hover img {
transform: scale(1.05);
}

.main-nav {
display: none;
align-items: center;
gap: 1.25rem;
font-size: 0.78rem;
font-weight: 600;
letter-spacing: 0.05em;
color: #ffffff;
}

@media (min-width: 1024px) {
.main-nav { display: flex; }
}

.main-nav a {
display: flex;
align-items: center;
gap: 0.375rem;
transition: color 0.2s;
}

.main-nav a:hover {
color: var(--color-accent);
}

.main-nav i {
color: rgba(212, 175, 55, 0.7);
}

.header-actions {
display: none;
align-items: center;
gap: 0.75rem;
}

@media (min-width: 640px) {
.header-actions { display: flex; }
}

.btn-phone {
padding: 0.625rem 1rem;
border-radius: 9999px;
font-size: 0.75rem;
text-transform: uppercase;
}

.mobile-toggle {
display: block;
background: rgba(255, 255, 255, 0.05);
border: 1px solid var(--border-subtle);
color: #fff;
padding: 0.5rem;
border-radius: 0.5rem;
cursor: pointer;
font-size: 1.25rem;
}

@media (min-width: 1024px) {
.mobile-toggle { display: none; }
}

/* Mobile Nav Drawer */
.mobile-menu {
display: none;
background-color: rgba(17, 23, 35, 0.98);
border-bottom: 1px solid var(--border-subtle);
backdrop-filter: blur(16px);
padding: 1.5rem;
}

.mobile-menu.open {
display: block;
}

.mobile-menu a {
display: block;
padding: 0.625rem 0;
color: var(--color-text-dim);
font-weight: 500;
font-size: 0.875rem;
transition: color 0.2s;
}

.mobile-menu a:hover {
color: var(--color-accent);
}

.mobile-menu i {
margin-right: 0.5rem;
color: var(--color-accent);
}

/* Mobile menu: Jetzt buchen button */
.mobile-menu a.mobile-cta {
display: flex;
align-items: center;
justify-content: center;
margin-top: 1rem;
padding: 0.875rem 1rem;
border-radius: 0.75rem;
color: #000;
font-size: 0.8125rem;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 0.05em;
}

.mobile-menu a.mobile-cta:hover {
color: #000;
}

.mobile-menu a.mobile-cta i {
margin: 0;
color: #000;
}

/* Hero Section */
.hero-section {
position: relative;
padding-top: 10rem;
padding-bottom: 10rem;
display: flex;
flex-direction: column;
justify-content: center;
overflow: hidden;
}

@media (min-width: 768px) {
.hero-section {
padding-top: 12rem;
padding-bottom: 14rem;
}
}

.hero-bg {
position: absolute;
inset: 0;
z-index: 0;
}

.hero-bg img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: 65% 100%;
}

.hero-overlay {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.3);
}

.hero-bottom-fade {
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 6rem;
background: linear-gradient(to top, var(--bg-dark), transparent);
}

.hero-content {
position: relative;
z-index: 10;
text-align: center;
margin-left: auto;
margin-right: auto;
}

.badge {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.375rem 1rem;
border-radius: 9999px;
background: rgba(212, 175, 55, 0.15);
border: 1px solid rgba(212, 175, 55, 0.4);
color: var(--color-accent);
font-size: 0.75rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.05em;
margin-bottom: 1.5rem;
}

.hero-title {
font-size: 2rem;
font-weight: 800;
color: #fff;
line-height: 1.25;
margin-bottom: 1.5rem;
}

@media (min-width: 640px) { .hero-title { font-size: 3rem; } }
@media (min-width: 1024px) { .hero-title { font-size: 3.60rem; } }

.hero-desc {
font-size: 1rem;
color: var(--color-text-dim);
font-weight: 300;
line-height: 1.625;
max-width: 42rem;
margin: 0 auto;
}

/* Booking Section & Forms */
.booking-section {
position: relative;
z-index: 20;
width: 100%;
background-color: var(--bg-card);
border-top: 1px solid rgba(212, 175, 55, 0.3);
border-bottom: 1px solid rgba(212, 175, 55, 0.3);
padding: 2.5rem 0;
scroll-margin-top: 7rem;
}

.section-header-sm {
text-align: center;
margin-bottom: 1.5rem;
}

.section-subtitle {
color: var(--color-accent);
font-weight: 700;
font-size: 0.75rem;
text-transform: uppercase;
letter-spacing: 0.1em;
display: block;
margin-bottom: 0.25rem;
}

.section-title {
font-size: 1.875rem;
font-weight: 800;
color: #fff;
}

.booking-grid {
display: grid;
grid-template-columns: 1fr;
gap: 1rem;
}

@media (min-width: 768px) {
.booking-grid {
grid-template-columns: repeat(3, 1fr);
}
}

.form-group {
display: flex;
flex-direction: column;
}

.form-label {
font-size: 0.75rem;
font-weight: 600;
color: var(--color-text-dim);
text-transform: uppercase;
letter-spacing: 0.05em;
margin-bottom: 0.375rem;
}

.form-control {
width: 100%;
background: rgba(7, 10, 15, 0.9);
border: 1px solid rgba(255, 255, 255, 0.15);
border-radius: 0.75rem;
padding: 0.75rem 1rem;
font-size: 0.875rem;
color: #fff;
outline: none;
transition: border-color 0.2s;
}

.form-control:focus {
border-color: var(--color-accent);
}

.btn-submit {
height: 46px;
border-radius: 0.75rem;
width: 100%;
font-size: 0.875rem;
text-transform: uppercase;
letter-spacing: 0.05em;
}

.hidden { display: none !important; }

/* Features Section */
.features-section {
padding: 4rem 0;
background: linear-gradient(to bottom, var(--bg-dark), rgba(17, 23, 35, 0.5), var(--bg-dark));
border-top: 1px solid var(--border-subtle);
border-bottom: 1px solid var(--border-subtle);
position: relative;
z-index: 10;
}

.features-grid {
display: grid;
grid-template-columns: 1fr;
gap: 1.5rem;
}

@media (min-width: 640px) { .features-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .features-grid { grid-template-columns: repeat(5, 1fr); } }

.feature-card {
padding: 1.5rem;
border-radius: 1rem;
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
transition: all 0.3s ease;
}

.feature-card:hover {
border-color: rgba(212, 175, 55, 0.6);
transform: translateY(-4px);
}

.feature-icon-box {
width: 4rem;
height: 4rem;
border-radius: 1rem;
background: rgba(245, 158, 11, 0.1);
border: 1px solid rgba(212, 175, 55, 0.3);
display: flex;
align-items: center;
justify-content: center;
color: var(--color-accent);
font-size: 1.5rem;
margin-bottom: 1rem;
transition: all 0.3s;
}

.feature-card:hover .feature-icon-box {
background: var(--color-accent);
color: #000;
transform: scale(1.1);
}

.feature-title {
font-weight: 800;
font-size: 0.875rem;
color: #fff;
text-transform: uppercase;
letter-spacing: 0.05em;
margin-bottom: 0.5rem;
}

.feature-desc {
font-size: 0.75rem;
color: var(--color-text-muted);
line-height: 1.5;
}

/* Content & Section Layouts */
.content-section {
padding: 5rem 0;
position: relative;
z-index: 10;
border-top: 1px solid var(--border-subtle);
}

.about-grid {
display: grid;
grid-template-columns: 1fr;
gap: 3rem;
align-items: center;
}

@media (min-width: 1024px) { .about-grid { grid-template-columns: repeat(2, 1fr); } }

.about-img-box {
position: relative;
}

.about-img {
width: 100%;
height: 20rem;
object-fit: cover;
border-radius: 1.5rem;
border: 1px solid rgba(212, 175, 55, 0.25);
}

@media (min-width: 640px) { .about-img { height: 26rem; } }

.experience-badge {
position: absolute;
bottom: -1.5rem;
right: 1rem;
padding: 1rem 1.5rem;
border-radius: 1rem;
border: 1px solid rgba(212, 175, 55, 0.4);
text-align: center;
}

.card-grid-3 {
display: grid;
grid-template-columns: 1fr;
gap: 1.5rem;
}

@media (min-width: 768px) { .card-grid-3 { grid-template-columns: repeat(3, 1fr); } }

.card-grid-4 {
display: grid;
grid-template-columns: 1fr;
gap: 1.5rem;
}

@media (min-width: 640px) { .card-grid-4 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .card-grid-4 { grid-template-columns: repeat(4, 1fr); } }

.card-grid-2 {
display: grid;
grid-template-columns: 1fr;
gap: 2rem;
}

@media (min-width: 768px) { .card-grid-2 { grid-template-columns: repeat(2, 1fr); } }

/* Airport & Resort Cards */
.airport-card, .resort-card, .vehicle-card, .service-card {
padding: 1.5rem;
border-radius: 1rem;
display: flex;
flex-direction: column;
justify-content: space-between;
transition: all 0.3s ease;
}

.airport-card:hover, .resort-card:hover, .vehicle-card:hover, .service-card:hover {
transform: translateY(-4px);
border-color: rgba(212, 175, 55, 0.5);
}

.card-top {
display: flex;
justify-content: space-between;
align-items: flex-start;
margin-bottom: 1rem;
}

.pill-tag {
padding: 0.25rem 0.75rem;
border-radius: 9999px;
background: rgba(212, 175, 55, 0.1);
border: 1px solid rgba(212, 175, 55, 0.3);
color: var(--color-accent);
font-size: 0.75rem;
font-weight: 700;
text-transform: uppercase;
}

.time-tag {
font-size: 0.75rem;
color: var(--color-text-muted);
}

.card-price-row {
display: flex;
align-items: center;
justify-content: space-between;
padding-top: 1rem;
border-top: 1px solid var(--border-subtle);
}

.btn-card {
padding: 0.5rem 1rem;
border-radius: 0.75rem;
background: rgba(255, 255, 255, 0.05);
border: 1px solid var(--border-subtle);
color: #fff;
font-size: 0.75rem;
font-weight: 700;
transition: all 0.2s;
display: inline-flex;
align-items: center;
gap: 0.375rem;
}

.btn-card:hover {
background: var(--color-accent);
color: #fff;
}

/* Vehicles & Fleet Cards */
.vehicle-img {
width: 100%;
height: 12rem;
object-fit: cover;
border-radius: 0.75rem;
margin-bottom: 1rem;
border: 1px solid var(--border-subtle);
}

.vehicle-specs {
display: flex;
gap: 1rem;
margin-bottom: 1rem;
font-size: 0.75rem;
color: var(--color-text-muted);
}

.vehicle-specs span {
display: flex;
align-items: center;
gap: 0.375rem;
}

/* Services Cards */
.service-icon {
font-size: 2rem;
color: var(--color-accent);
margin-bottom: 1rem;
}

/* Contact Grid */
.contact-grid {
display: grid;
grid-template-columns: 1fr;
gap: 2rem;
}

@media (min-width: 1024px) {
.contact-grid { grid-template-columns: 1fr 2fr; }
}

.contact-info-card {
padding: 2rem;
border-radius: 1rem;
display: flex;
flex-direction: column;
gap: 1.5rem;
}

.contact-item {
display: flex;
align-items: flex-start;
gap: 1rem;
}

.contact-icon {
width: 2.5rem;
height: 2.5rem;
border-radius: 0.5rem;
background: rgba(212, 175, 55, 0.1);
border: 1px solid rgba(212, 175, 55, 0.3);
display: flex;
align-items: center;
justify-content: center;
color: var(--color-accent);
flex-shrink: 0;
}

/* Footer Styling */
.site-footer {
background-color: #000;
border-top: 1px solid var(--border-subtle);
padding-top: 4rem;
padding-bottom: 3rem;
color: var(--color-text-muted);
font-size: 0.75rem;
margin-top: auto;
}

.footer-grid {
display: grid;
grid-template-columns: 1fr;
gap: 2.5rem;
margin-bottom: 3rem;
}

@media (min-width: 768px) { .footer-grid { grid-template-columns: repeat(4, 1fr); } }

.footer-heading {
font-weight: 700;
color: #fff;
font-size: 0.875rem;
text-transform: uppercase;
letter-spacing: 0.05em;
margin-bottom: 1rem;
}

.footer-links {
list-style: none;
display: flex;
flex-direction: column;
gap: 0.5rem;
}

.footer-links a:hover {
color: var(--color-accent);
}

.transfer-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; }
@media (max-width:1024px){ .transfer-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){ .transfer-grid{ grid-template-columns:1fr; } }

.transfer-card {
background:#151B27; border:1px solid rgba(255,255,255,.08); border-radius:1rem; overflow:hidden;
display:flex; flex-direction:column; justify-content:space-between; transition:border-color .25s ease;
}
.transfer-card:hover { border-color:var(--color-accent,#E3C98F); }

.transfer-img { position:relative; height:12rem; overflow:hidden; background:#111723; }
.transfer-img img { width:100%; height:100%; object-fit:cover; display:block; }
.transfer-badge {
position:absolute; top:.75rem; right:.75rem; background:#070A0F;
border:1px solid rgba(212,175,55,.5); color:var(--color-accent,#E3C98F);
font-size:.9rem; font-weight:700; padding:.25rem .625rem; border-radius:9999px;text-align:right;
}

.transfer-body { padding:1.5rem 1.75rem 0; }
.transfer-region {;
font-size:1.2rem;  font-weight:800; color:var(--color-accent);padding-bottom: 10px}
.transfer-route {
font-size:0.85rem; font-weight:700; color:#fff; margin-bottom:0.5rem;
}
.transfer-text { font-size:0.8125rem; color:#94a3b8; line-height:1.4; padding-bottom:15px }

.transfer-footer {
margin:0 1.75rem 1.5rem; border-top:1px solid rgba(255,255,255,.08); padding-top:1.25rem;
display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap;
}
.transfer-price { font-size:.75rem; color:#94a3b8; }
.transfer-price strong { font-size:0.85rem; font-weight:600; color:#fff; }
.transfer-book { color:#fff; font-size:.9375rem; text-decoration:none; white-space:nowrap; }
.transfer-book i { margin-left:.35rem; font-size:.8rem; }
.transfer-book:hover { color:var(--color-accent,#E3C98F); }
/* =====================================================================
   COMPONENTS â€“ ersetzen alle frÃ¼heren Inline-Styles und <style>-BlÃ¶cke
   ===================================================================== */
.serif{font-family:var(--font-serif)}
.text-muted{color:var(--color-text-muted)}
.section-head{text-align:center;margin-bottom:3rem}
.section-head .section-title{font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:1rem}
.section-head p{color:var(--color-text-muted);font-size:.9375rem;max-width:46rem;margin:0 auto;line-height:1.5}
.section-subtitle{letter-spacing:.1em;margin-bottom:.5rem}
.badge-solid{background:var(--color-accent);color:#000;border:none;font-weight:800;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.75rem}
.badge-outline{background:#000;border:1px solid var(--color-accent);font-weight:800;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.75rem}
.badge-plain{background:transparent;border:none;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem}
.mt-2{margin-top:2rem}.mt-3{margin-top:3rem}.text-center{text-align:center}

/* Buttons */
.btn-row{display:flex;gap:1rem;flex-wrap:wrap}
.btn-gold,.btn-ghost{padding:.75rem 1.75rem;border-radius:.5rem;font-size:.75rem;text-transform:uppercase;font-weight:700}
.btn-ghost{border:1px solid rgba(255,255,255,.2)}
.btn-block{width:100%;justify-content:center;padding:.75rem 1.25rem;border-radius:.5rem;text-transform:uppercase}
.btn-wa{background:#10b981;color:#fff;font-weight:800;border-radius:.75rem;padding:.875rem;text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;transition:background .2s}
.btn-wa:hover{background:#059669}
.btn-mail{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.15);color:#fff;font-weight:800;border-radius:.75rem;padding:.875rem;text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;transition:all .2s}
.btn-mail:hover{border-color:var(--color-accent);color:var(--color-accent)}
.btn-lg{width:100%;border-radius:.75rem;padding:.875rem;font-size:.875rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}

/* About */
.about-text p{color:var(--color-text-dim);font-size:.875rem;margin-bottom:1rem;line-height:1.6}
.about-text .section-title{margin-bottom:1.25rem}
.check-list{list-style:none;display:flex;flex-direction:column;gap:.75rem;margin:1.5rem 0 2rem;font-size:.875rem}
.check-list li{display:flex;align-items:flex-start;gap:.75rem}
.check-list i{color:var(--color-accent);margin-top:.2rem}
.exp-num{font-size:2rem;font-weight:800;display:block;line-height:1}
.exp-label{font-size:.65rem;color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem;display:block}

/* Karten (Flughafen, Fahrzeug, Service) */
.airport-card{padding:1.25rem}
.card-img{overflow:hidden;border-radius:.75rem;margin-bottom:1.25rem;height:10rem}
.card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.airport-card:hover .card-img img{transform:scale(1.05)}
.airport-card .pill-tag{background:var(--bg-dark);border-color:rgba(212,175,55,.4);padding:.35rem .85rem}
.card-title{font-size:1.35rem;font-weight:700;color:#fff;margin-bottom:.75rem}
.card-title a:hover{color:var(--color-accent)}
.card-text{font-size:.8125rem;color:var(--color-text-muted);margin-bottom:1.25rem;line-height:1.5}
.chip-list{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:0 0 1rem;font-size:.75rem;color:var(--color-text-dim)}
.chip-list i{color:var(--color-accent)}
.card-footer{padding-top:1.25rem;border-top:1px solid var(--border-subtle)}
.vehicle-title{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:.25rem}
.vehicle-sub{font-size:.75rem;color:var(--color-accent);font-weight:600;display:block;margin-bottom:1rem}
.vehicle-text{font-size:.75rem;color:var(--color-text-muted);margin-bottom:1.5rem;line-height:1.5}
.vehicle-specs{flex-wrap:wrap}
.vehicle-card .vehicle-img{transition:transform .5s}
.service-card--media{padding:0;overflow:hidden}
.service-img{position:relative;height:11rem;overflow:hidden;background:var(--bg-card)}
.service-img img{width:100%;height:100%;object-fit:cover;display:block}
.service-badge{position:absolute;top:.75rem;left:.75rem;width:2.25rem;height:2.25rem;border-radius:50%;background:rgba(7,10,15,.85);border:1px solid rgba(212,175,55,.6);display:flex;align-items:center;justify-content:center;color:var(--color-accent);font-size:.875rem}
.service-body{padding:1.25rem 1.25rem .5rem}
.service-body h3{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:.5rem}
.service-body p{font-size:.8125rem;color:var(--color-text-muted);line-height:1.4}
.service-link{display:inline-flex;align-items:center;gap:.5rem;padding:1.25rem;color:var(--color-accent);font-size:.875rem;font-weight:700}
.service-link:hover{color:var(--color-accent-hover)}
.transfer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
@media (max-width:1024px){.transfer-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.transfer-grid{grid-template-columns:1fr}}
.transfer-card .transfer-img img{transition:transform .5s}
.transfer-card:hover .transfer-img img{transform:scale(1.05)}
.transfer-region a:hover{color:var(--color-accent-hover)}

/* NEU: Unsere Transfer-Services (4 Karten) */
.usp-section{padding:5rem 0;border-top:1px solid var(--border-subtle);position:relative;z-index:10}
.usp-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
@media (min-width:640px){.usp-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.usp-grid{grid-template-columns:repeat(4,1fr)}}
.usp-card{position:relative;overflow:hidden;padding:1.75rem 1.5rem 1.5rem;border-radius:1.25rem;background:rgba(17,23,35,.85);border:1px solid var(--border-gold);display:flex;flex-direction:column;justify-content:space-between;transition:transform .3s,border-color .3s,box-shadow .3s}
.usp-card::after{content:"";position:absolute;top:-2.75rem;right:-2.75rem;width:8rem;height:8rem;border-radius:50%;background:rgba(212,175,55,.08);transition:transform .4s,background .3s}
.usp-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,.6);box-shadow:0 18px 40px rgba(0,0,0,.4),0 0 24px rgba(212,175,55,.12)}
.usp-card:hover::after{transform:scale(1.25);background:rgba(212,175,55,.14)}
.usp-icon{position:relative;z-index:1;width:3.5rem;height:3.5rem;border-radius:50%;background:linear-gradient(135deg,#E5C158,#D4AF37 50%,#B8860B);color:#000;display:flex;align-items:center;justify-content:center;font-size:1.35rem;margin-bottom:1.25rem;box-shadow:0 8px 20px rgba(212,175,55,.3)}
.usp-card h3{position:relative;z-index:1;font-size:1.05rem;font-weight:800;color:#fff;margin-bottom:.6rem}
.usp-card p{position:relative;z-index:1;font-size:.84375rem;color:var(--color-text-muted);line-height:1.65;margin-bottom:1.5rem}
.usp-btn{position:relative;z-index:1;width:100%;justify-content:center;padding:.8rem 1rem;border-radius:.6rem;text-transform:uppercase;letter-spacing:.05em;border-color:rgba(212,175,55,.35);color:var(--color-accent)}

/* NEU: Was uns auszeichnet (8 Karten) */
.perks-section{padding:5rem 0;background:var(--bg-card);border-top:1px solid var(--border-gold);border-bottom:1px solid var(--border-gold);position:relative;z-index:10}
.perks-section .section-head{text-align:left}
.perks-section .section-head p{margin:0}
.perk-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}
@media (min-width:640px){.perk-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.perk-grid{grid-template-columns:repeat(4,1fr)}}
.perk-card{padding:1.5rem;border-radius:1rem;background:var(--bg-dark);border:1px solid var(--border-subtle);transition:transform .3s,border-color .3s}
.perk-card:hover{transform:translateY(-4px);border-color:rgba(212,175,55,.5)}
.perk-icon{width:3.25rem;height:3.25rem;border-radius:.85rem;background:rgba(212,175,55,.1);border:1px solid rgba(212,175,55,.3);color:var(--color-accent);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin-bottom:1rem;transition:all .3s}
.perk-card:hover .perk-icon{background:var(--color-accent);color:#000}
.perk-card h3{font-size:.98rem;font-weight:700;color:#fff;margin-bottom:.5rem}
.perk-card p{font-size:.8125rem;color:var(--color-text-muted);line-height:1.6}

/* Bewertungen â€“ automatischer Slider */
.reviews-section{overflow:hidden}
.rating-line{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--color-accent)}
.rating-line span{color:var(--color-text-dim);font-weight:700;font-size:.875rem;margin-left:.25rem}
.review-slider{position:relative;margin:0 auto;padding:0 1rem}
.review-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:2.75rem;height:2.75rem;border-radius:50%;background:rgba(7,10,15,.9);border:1px solid rgba(212,175,55,.4);color:var(--color-accent);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}
.review-nav:hover{background:var(--color-accent);color:#000}
.review-prev{left:-.75rem}.review-next{right:-.75rem}
@media (max-width:640px){.review-prev{left:-.25rem}.review-next{right:-.25rem}}
#reviews-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc(33.333% - 1rem);gap:1.5rem;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;padding:1rem 0;scrollbar-width:none;-ms-overflow-style:none}
#reviews-track::-webkit-scrollbar{display:none}
@media (max-width:1024px){#reviews-track{grid-auto-columns:calc(50% - .75rem)}}
@media (max-width:640px){#reviews-track{grid-auto-columns:100%}}
.review-card{scroll-snap-align:start;padding:1.75rem;border-radius:1rem;display:flex;flex-direction:column;justify-content:space-between;background:rgba(17,23,35,.85);border:1px solid rgba(255,255,255,.08)}
.review-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}
.review-stars{color:var(--color-accent);font-size:.75rem;display:flex;gap:.15rem}
.review-date{font-size:.75rem;color:#64748b}
.review-text{font-size:.8125rem;color:#e2e8f0;font-style:italic;line-height:1.6;margin-bottom:1.5rem}
.review-author{border-top:1px solid rgba(255,255,255,.08);padding-top:1rem;display:flex;align-items:center;gap:.875rem}
.review-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--bg-dark);border:1px solid rgba(212,175,55,.5);color:var(--color-accent);font-weight:700;font-size:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.review-author h4{font-size:.875rem;font-weight:700;color:#fff;line-height:1.2}
.review-author span{font-size:.7rem;color:var(--color-text-muted)}
#review-dots{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:2rem}
#review-dots button{width:.5rem;height:.5rem;border-radius:50%;background:#334155;border:none;cursor:pointer;padding:0;transition:all .3s}
#review-dots button.active{width:1.75rem;border-radius:9999px;background:var(--color-accent)}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:1fr;gap:1rem;max-width:1200px;margin:0 auto;align-items:start}
@media (min-width:768px){.faq-grid{grid-template-columns:1fr 1fr;gap:1rem 1.5rem}}
.faq-item{background:rgba(17,23,35,.85);border:1px solid rgba(255,255,255,.08);border-radius:.875rem;overflow:hidden;transition:border-color .3s}
.faq-item.active{border-color:rgba(212,175,55,.5)}
.faq-header{width:100%;background:none;border:none;color:inherit;text-align:left;padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer}
.faq-title{font-size:.9375rem;font-weight:700;color:#fff;margin:0}
.faq-icon{color:var(--color-accent);font-size:.875rem;transition:transform .3s}
.faq-item.active .faq-icon{transform:rotate(180deg)}
.faq-content{max-height:0;overflow:hidden;padding:0 1.5rem;color:var(--color-text-muted);font-size:.84375rem;line-height:1.6;transition:max-height .3s,padding .3s}
.faq-item.active .faq-content{max-height:400px;padding:0 1.5rem 1.25rem}

/* Kontakt */
.contact-card{padding:2rem;border-radius:1.25rem;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(255,255,255,.08);background:rgba(17,23,35,.85);transition:all .3s}
.contact-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.contact-head h3{font-size:1.125rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.02em}
.contact-head small{font-size:.75rem;color:var(--color-text-muted);display:block;margin-top:.25rem}
.contact-card>div>p{font-size:.84375rem;color:var(--color-text-dim);line-height:1.6;margin-bottom:2rem}
.contact-icon-box{width:3.5rem;height:3.5rem;border-radius:.875rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;background:rgba(212,175,55,.1);border:1px solid rgba(212,175,55,.3);color:var(--color-accent);transition:transform .3s}
.contact-card:hover .contact-icon-box{transform:scale(1.15)}
.contact-card-gold:hover{border-color:rgba(212,175,55,.7);box-shadow:0 0 20px rgba(212,175,55,.15)}
.contact-card-whatsapp:hover{border-color:rgba(16,185,129,.7);box-shadow:0 0 20px rgba(16,185,129,.15)}
.contact-card-whatsapp .contact-icon-box{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.3);color:#10b981;font-size:1.5rem}

/* Footer */
.site-footer{font-size:.8125rem;padding-bottom:2.5rem}
.footer-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;margin-bottom:3rem}
@media (min-width:768px){.footer-grid{grid-template-columns:1.4fr 1.2fr 1.0fr 1.5fr}}
.footer-logo{height:48px;width:auto;margin-bottom:1.25rem}
.footer-text{line-height:1.6;margin-bottom:1.5rem;max-width:20rem}
.footer-social{display:flex;gap:.625rem}
.footer-social-icon{width:2.25rem;height:2.25rem;border-radius:50%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;transition:all .2s}
.footer-social-icon:hover{background:var(--color-accent);color:#000;border-color:var(--color-accent)}
.footer-heading{font-weight:800;margin-bottom:1.25rem}
.footer-links{gap:.625rem}
.footer-contact p{margin-bottom:.375rem}
.footer-contact a,.footer-bottom a:hover{color:var(--color-accent)}
.footer-contact a{font-weight:700;word-break:break-all}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:1.75rem;text-align:center;font-size:.75rem;color:#64748b}
.footer-bottom nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem;margin-bottom:.75rem}

/* Schwebende Kontakt-Buttons (WhatsApp + Telefon) */
.float-contact{position:fixed;right:1.25rem;bottom:1.25rem;z-index:60;display:flex;flex-direction:column;gap:.75rem}
.float-btn{position:relative;width:3.5rem;height:3.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 8px 24px rgba(0,0,0,.5);transition:transform .2s}
.float-btn:hover{transform:scale(1.1)}
.float-wa{background:#25d366;color:#0b2417}
.float-tel{background:linear-gradient(135deg,#E5C158,#D4AF37 55%,#B8860B);color:#1a1204}
.float-wa::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:ring 2.2s infinite}
@keyframes ring{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.55);opacity:0}}
@media (prefers-reduced-motion:reduce){.float-wa::after{animation:none}#reviews-track{scroll-behavior:auto}}

/* Navigation: 7 Punkte brauchen mehr Platz */
@media (min-width:1024px){.main-nav{display:none}.mobile-toggle{display:block}.header-actions{display:flex}}
@media (min-width:1240px){.main-nav{display:flex;gap:1rem}.mobile-toggle{display:none}}
.main-nav a.active{color:var(--color-accent)}
.mobile-menu a.active{color:var(--color-accent)}
.mobile-menu{max-height:calc(100vh - 128px);overflow-y:auto}

/* Unterseiten */
.page-hero{position:relative;padding:10rem 0 4rem;overflow:hidden;border-bottom:1px solid var(--border-gold)}
@media (min-width:768px){.page-hero{padding:12rem 0 5rem}}
.page-hero .hero-bg img{object-position:center}
.page-hero .hero-overlay{background:rgba(0,0,0,.32)}
.page-hero .container{position:relative;z-index:10}
.page-hero h1{font-size:clamp(1.9rem,4.5vw,3rem);font-weight:800;color:#fff;line-height:1.2;margin:.5rem 0 1rem}
.page-hero p.lead{color:var(--color-text-dim);font-weight:300;line-height:1.7}
.breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.75rem;color:var(--color-text-muted)}
.breadcrumb a:hover{color:var(--color-accent)}
.breadcrumb li{list-style:none}.breadcrumb li+li::before{content:"â€º";margin-right:.5rem}
.page-section{padding:4.5rem 0;position:relative;z-index:10}
.page-section+.page-section{border-top:1px solid var(--border-subtle)}
.prose{margin:0 auto}
.prose h2{font-size:1.5rem;font-weight:800;color:#fff;margin:2.25rem 0 .75rem}
.prose h3{font-size:1.1rem;font-weight:700;color:var(--color-accent);margin:1.5rem 0 .5rem}
.prose p,.prose li{color:var(--color-text-dim);font-size:.9rem;line-height:1.75;margin-bottom:.9rem}
.prose ul{padding-left:1.25rem;margin-bottom:1rem}
.prose a{color:var(--color-accent);text-decoration:underline}
.notice{border:1px dashed var(--color-accent);background:rgba(212,175,55,.08);border-radius:.75rem;padding:1rem 1.25rem;font-size:.8125rem;color:var(--color-text-dim);margin-bottom:2rem}
.notice i{color:var(--color-accent);margin-right:.5rem}
.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2.5rem}
@media (min-width:768px){.stat-grid{grid-template-columns:repeat(4,1fr)}}
.stat{padding:1.5rem;border-radius:1rem;text-align:center}
.stat b{display:block;font-size:2rem;font-weight:800}
.stat span{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}
.table-wrap{overflow-x:auto;border:1px solid var(--border-gold);border-radius:1rem}
.data-table{width:100%;border-collapse:collapse;font-size:.875rem;min-width:36rem}
.data-table th{background:var(--bg-card);color:var(--color-accent);text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;padding:1rem 1.25rem}
.data-table td{padding:.9rem 1.25rem;border-top:1px solid var(--border-subtle);color:var(--color-text-dim)}
.data-table tr:hover td{background:rgba(212,175,55,.05)}
.data-table td:first-child{color:#fff;font-weight:600}
.data-table .price{color:var(--color-accent);font-weight:700;white-space:nowrap}
.cta-band{padding:3rem 2rem;border-radius:1.5rem;text-align:center;background:linear-gradient(135deg,rgba(212,175,55,.14),rgba(17,23,35,.9));border:1px solid var(--border-gold)}
.cta-band h2{font-size:1.6rem;font-weight:800;color:#fff;margin-bottom:.75rem}
.cta-band p{color:var(--color-text-muted);margin-bottom:1.5rem}
.cta-band .btn-row{justify-content:center}
.form-card{padding:2rem;border-radius:1.25rem;max-width:56rem;margin:0 auto}
.form-grid{display:grid;grid-template-columns:1fr;gap:1rem}
@media (min-width:768px){.form-grid{grid-template-columns:1fr 1fr}.form-grid .full{grid-column:1/-1}}
textarea.form-control{min-height:7.5rem;resize:vertical}
.check-row{display:flex;align-items:center;gap:.6rem;font-size:.85rem;color:var(--color-text-dim)}
.check-row input{accent-color:var(--color-accent);width:1rem;height:1rem}
.form-note{font-size:.75rem;color:var(--color-text-muted);margin-top:1rem;text-align:center}
.detail-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:start}
@media (min-width:1024px){.detail-grid{grid-template-columns:4fr 2fr}}
.fact-card{padding:1.75rem;border-radius:1.25rem}
.fact-card h3{font-size:1rem;font-weight:800;color:#fff;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}
.fact-list{list-style:none;display:flex;flex-direction:column;gap:.9rem;margin-bottom:1.5rem}
.fact-list li{display:flex;gap:.75rem;font-size:.875rem;color:var(--color-text-dim)}
.fact-list i{color:var(--color-accent);width:1.1rem;text-align:center;margin-top:.2rem}
.fact-list b{color:#fff}
.map-frame{width:100%;height:22rem;border:0;border-radius:1.25rem;filter:grayscale(.4) invert(.9) contrast(.9)}
.hours{width:100%;font-size:.875rem}
.hours td{padding:.45rem 0;color:var(--color-text-dim);border-bottom:1px solid var(--border-subtle)}
.hours td:last-child{text-align:right;color:#fff;font-weight:600}
/* Datenschutz / Rechtstexte mit SeitenmenÃ¼ */
.legal-layout{display:grid;grid-template-columns:1fr;gap:2rem}
@media (min-width:1024px){.legal-layout{grid-template-columns:16rem 1fr;gap:3rem}}
.legal-nav{display:flex;flex-direction:column;gap:.25rem;padding:1rem;border-radius:1rem;align-self:start;position:sticky;top:8.5rem}
@media (max-width:1023px){.legal-nav{position:static;flex-direction:row;overflow-x:auto;white-space:nowrap}}
.legal-nav a{padding:.55rem .85rem;border-radius:.5rem;font-size:.8125rem;color:var(--color-text-dim);border-left:2px solid transparent;transition:all .2s}
.legal-nav a:hover,.legal-nav a.active{color:var(--color-accent);background:rgba(212,175,55,.08);border-left-color:var(--color-accent)}
.legal-content{margin:0;max-width:none}
.legal-content h2{scroll-margin-top:9rem;margin-top:2.5rem}
.legal-content h2:first-of-type{margin-top:0}
.legal-content strong{color:#fff}
.updated{display:inline-block;font-size:.75rem;color:var(--color-text-muted);border:1px solid var(--border-subtle);border-radius:9999px;padding:.25rem .85rem;margin-bottom:1.5rem}

/* Airport-Karten: Vorteile mit Beschreibung (2x2, kompakt) */
.card-features{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.9rem .75rem;margin:0 0 1.25rem;padding:1rem 0 0;border-top:1px solid var(--border-subtle)}
.card-features li{display:flex;align-items:flex-start;gap:.5rem;min-width:0}
.cf-icon{flex-shrink:0;width:1.75rem;height:1.75rem;border-radius:50%;border:1.5px solid var(--color-accent);background:rgba(212,175,55,.06);color:var(--color-accent);display:flex;align-items:center;justify-content:center;font-size:.65rem}
.card-features b{display:block;font-size:.62rem;font-weight:700;color:#fff;line-height:1.25;margin-bottom:.15rem}
.card-features p{font-size:.62rem;color:var(--color-text-muted);line-height:1.4;margin:0}

  .tarif-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1rem; margin:2rem 0 1.5rem; }
  .tarif-card { border:1px solid #ddd; border-radius:12px; padding:1.5rem; text-align:center; }
  .tarif-card h3 { margin:0 0 .25rem; }
  .tarif-time { font-size:.9rem; opacity:.7; }
  .tarif-price { font-size:2rem; font-weight:700; margin:.5rem 0; }
  .tarif-card p { margin:0; font-size:.95rem; }
  .tarif-list { display:flex; flex-direction:column; border:1px solid #ddd; border-radius:12px; overflow:hidden; }
  .tarif-row { display:flex; justify-content:space-between; gap:1rem; padding:1rem 1.5rem; border-bottom:1px solid #ddd; }
  .tarif-row:last-child { border-bottom:0; }
  .tarif-label { font-weight:600; }
  .tarif-value { text-align:right; }
  @media (max-width:600px) { .tarif-row { flex-direction:column; } .tarif-value { text-align:left; } }

  :root { --k-bg:#0b0f19; --k-card:#111723; --k-field:#1c2230; --k-line:#2a3140; --k-text:#fff; --k-muted:#9aa4b5; --k-gold:#c9a66b; }
  .kontakt-hero, .page-section { background:var(--k-bg); color:var(--k-text); }
  .kontakt-hero { padding:2rem 0 1.5rem; border-bottom:1px solid var(--k-line); }
  .kontakt-hero h1 { font-family:Georgia,serif; font-size:3rem; font-weight:400; margin:.5rem 0; }
  .kontakt-hero p { color:#8fb3d9; margin:0; }
  .kontakt-breadcrumb { font-size:.8rem; color:var(--k-muted); }
  .kontakt-breadcrumb a { color:inherit; text-decoration:none; }
  .kontakt-breadcrumb strong { color:var(--k-text); font-weight:500; }
  .kontakt-grid { display:grid; grid-template-columns:420px 1fr; gap:2.5rem; align-items:start; }
  .kontakt-info { display:flex; flex-direction:column; gap:1rem; }
  .kontakt-box { display:flex; align-items:center; gap:1rem; padding:1.1rem 1.25rem; background:var(--k-card); border:1px solid var(--k-line); border-radius:4px; }
  .kontakt-icon { flex:none; width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--k-line); border-radius:50%; color:var(--k-muted); font-size:.85rem; }
  .kontakt-box h3 { margin:0 0 .25rem; font-size:.85rem; font-weight:600; }
  .kontakt-box p { margin:0; font-size:.78rem; color:var(--k-muted); }
  .kontakt-map { height:320px; border:1px solid var(--k-line); overflow:hidden; }
  .kontakt-map iframe { width:100%; height:100%; border:0; }
  .kontakt-form-card { background:var(--k-card); border:1px solid var(--k-line); border-radius:4px; padding:2rem 1.5rem; }
  .kontakt-form-card h2 { font-family:Georgia,serif; font-size:1.25rem; font-weight:500; margin:0 0 .75rem; }
  .kontakt-sub { color:var(--k-muted); font-size:.8rem; margin:0 0 1.75rem; }
  .kontakt-row { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; }
  .kontakt-field { margin-bottom:1.1rem; }
  .kontakt-field label { display:block; font-size:.7rem; color:var(--k-muted); margin-bottom:.5rem; }
  .kontakt-field input, .kontakt-field textarea { width:100%; box-sizing:border-box; background:var(--k-field); border:1px solid var(--k-line); border-radius:3px; color:var(--k-text); padding:.7rem; font:inherit; }
  .kontakt-field textarea { resize:vertical; }
  .kontakt-field input:focus, .kontakt-field textarea:focus { outline:none; border-color:var(--k-gold); }
  .kontakt-capthca { display:flex; gap:.5rem; }
  .kontakt-capthca img { height:30px; background:#fff; }
  .kontakt-capthca input { width:75px; }
  .kontakt-btn { width:100%; background:var(--k-gold); color:#111; border:0; border-radius:3px; padding:.9rem; font-size:.85rem; cursor:pointer; margin:.5rem 0 1rem; }
  .kontakt-btn:hover { filter:brightness(1.08); }
  .kontakt-note { font-size:.7rem; color:var(--k-muted); margin:0; }
  .kontakt-note a { color:var(--k-gold); }
  @media (max-width:860px) { .kontakt-grid { grid-template-columns:1fr; } }
  @media (max-width:520px) { .kontakt-row { grid-template-columns:1fr; } }



  /* PREISANFRAGE FORM */
.pf-form {
  --pf-card:#111723; --pf-field:#1c2230; --pf-line:#2a3140;
  --pf-text:#ffffff; --pf-muted:#9aa4b5; --pf-gold:#c9a66b; --pf-gold-d:#e0c08a; --pf-sel:rgba(201,166,107,.15);
  background: var(--pf-card);
  border: 1px solid var(--pf-line);
  border-radius: 8px;
  padding: 2rem;
  color: var(--pf-text);
}
 
.pf-section-title {
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--pf-gold);
  padding-bottom: 0.8rem;
  border-bottom: 2px solid var(--pf-line);
  margin-bottom: 1.2rem;
}
 
/* Grids */
.pf-grid { display: grid; gap: 1rem; margin-bottom: 1rem; }
.pf-grid-2 { grid-template-columns: 1fr 1fr; }
.pf-grid-3 { grid-template-columns: 1fr 1fr 1fr; }
.pf-grid-4 { grid-template-columns: 1fr 1fr 1fr 1fr; }
 
/* Fields */
.pf-field { display: flex; flex-direction: column; gap: 0.35rem; }
.pf-label { font-size: 0.78rem; font-weight: 600; color: var(--pf-muted); letter-spacing: 0.02em; min-height: 1.2em; }
.pf-input, .pf-textarea {
  padding: 0.78rem 1rem;
  border: 1.5px solid var(--pf-line);
  border-radius: 8px;
  font-family: inherit;
  font-size: 0.9rem;
  color: var(--pf-text);
  background: var(--pf-field);
  outline: none;
  transition: border-color .2s, box-shadow .2s;
  width: 100%;
  box-sizing: border-box;
}
.pf-input:focus, .pf-textarea:focus { border-color: var(--pf-gold); box-shadow: 0 0 0 3px rgba(201,166,107,.15); }
.pf-textarea { resize: vertical; min-height: 130px; }
 
/* Input with icon */
.pf-input-icon { position: relative; }
.pf-input-icon .pf-input { padding-right: 2.5rem; }
.pf-input-icon svg { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); color: var(--pf-muted); pointer-events: none; }
 
/* Captcha */
.pf-captcha-row { display: flex; align-items: flex-end; gap: 1rem; margin-top: 1.5rem; }
 
/* Submit */
.pf-submit {
  width: 100%;
  padding: 1rem 2rem;
  background: var(--pf-gold);
  color: #111;
  border: none;
  border-radius: 8px;
  font-family: inherit;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .25s, transform .2s;
}
.pf-submit:hover { background: var(--pf-gold-d); transform: translateY(-1px); }
 
/* Transfer-Auswahl (Karten) */
.pf-card-radio { display: flex; gap: 1rem; flex-wrap: wrap; }
.pf-card { flex: 1; min-width: 220px; cursor: pointer; position: relative; }
.pf-card input[type="radio"] { position: absolute; opacity: 0; }
.pf-card-box { border: 2px solid var(--pf-line); border-radius: 12px; padding: 1rem 1.2rem; background: var(--pf-field); transition: all 0.25s ease; }
.pf-card-title { font-weight: 700; font-size: 0.95rem; color: var(--pf-text); }
.pf-card:hover .pf-card-box { border-color: var(--pf-gold); transform: translateY(-2px); }
.pf-card input:checked + .pf-card-box { border-color: var(--pf-gold); background: var(--pf-sel); transform: scale(1.02); }
.pf-card input:checked + .pf-card-box .pf-card-title { color: var(--pf-gold); }

/* Pflichtfelder */
.pf-form { --pf-err:#c9a66b; }
.pf-field:has(:required) > .pf-label::after,
.pf-field:has(:required) > label.pf-label::after { content: " *"; color: var(--pf-err); }
.pf-submitted .pf-input:invalid,
.pf-submitted .pf-textarea:invalid {
  border-color: var(--pf-err);
  background: rgba(255,92,92,.08);
  box-shadow: 0 0 0 3px rgba(255,92,92,.18);
}
.pf-submitted .pf-field:has(:invalid) > .pf-label { color: var(--pf-err); }
.pf-submitted .pf-field:has(:invalid) > .pf-label::after { content: " * Pflichtfeld"; color: var(--pf-err); }
.pf-submitted .pf-card-radio:has(input:invalid) .pf-card-box {
  border-color: var(--pf-err);
  box-shadow: 0 0 0 3px rgba(255,92,92,.18);
}
 
/* Responsive */
@media(max-width:860px) {
  .pf-grid-4 { grid-template-columns: 1fr 1fr; }
  .pf-grid-3 { grid-template-columns: 1fr 1fr; }
}
@media(max-width:580px) {
  .pf-grid-2, .pf-grid-3, .pf-grid-4 { grid-template-columns: 1fr; }
  .pf-form { padding: 1.25rem; }
}

   /* Jede Liste wird in sich in zwei Spalten aufgeteilt, auf MobilgerÃ¤ten eine Spalte */
.ziele-spalte ul {
  column-count: 2;
  column-gap: 2rem;
}
.ziele-spalte li {
  break-inside: avoid;
}
@media (max-width: 700px) {
  .ziele-spalte ul { column-count: 1; }
}

/* ===== Sticky Flughafen-Navigation ===== */
.airport-nav{
  position:sticky;
  top:128px;                 /* top-bar (48px) + header (80px) */
  z-index:30;                /* header=40, top-bar=50 altÄ±nda kalÄ±r */
  background:rgba(7,10,15,.95);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  border-top:1px solid var(--border-gold);
  border-bottom:1px solid var(--border-gold);
  padding:.75rem 0;
}
.airport-nav .container{
  display:flex;
  gap:.75rem;
  overflow-x:auto;           /* mobilde yatay kaydÄ±rma */
  scrollbar-width:none;
}
.airport-nav .container::-webkit-scrollbar{display:none}

.airport-btn{
  flex:1 0 auto;
  text-align:center;
  white-space:nowrap;
  padding:.7rem 1.25rem;
  border-radius:.6rem;
  border:1px solid rgba(212,175,55,.35);
  background:var(--bg-card);
  color:var(--color-text-dim);
  font-size:.8rem;
  font-weight:600;
  letter-spacing:.05em;
  transition:all .2s;
}
.airport-btn:hover,
.airport-btn:focus,
.airport-btn.active,
.airport-btn[aria-current="true"]{
  background:var(--color-accent);
  border-color:var(--color-accent);
  color:#000;
  outline:none;
}
.airport-btn.active,
.airport-btn[aria-current="true"]{
  box-shadow:0 4px 14px rgba(212,175,55,.35);
}

/* Anchor'a tÄ±klayÄ±nca sticky menÃ¼ + header baÅŸlÄ±ÄŸÄ± kapatmasÄ±n */
.airport-section{scroll-margin-top:190px}   /* 128px + nav yÃ¼ksekliÄŸi (~62px) */

@media (hover:none){
  .airport-btn:hover:not(.active){
    background:var(--bg-card);
    border-color:rgba(212,175,55,.35);
    color:var(--color-text-dim);
  }
}

@media (max-width:640px){
  .airport-nav .container{
    display:grid;
    grid-template-columns:1fr 1fr;
    overflow-x:visible;
    gap:.5rem;
  }
  .airport-btn{
    white-space:normal;      /* metin iki satÄ±ra kÄ±rÄ±labilsin */
    padding:.55rem .5rem;
    font-size:.68rem;
    line-height:1.3;
  }
  .airport-section{scroll-margin-top:230px}  /* bar mobilde 2 satÄ±r olduÄŸu iÃ§in daha yÃ¼ksek */
}