/* Flughafentransfer Stuttgart – nur seitenspezifische Styles.
   Gemeinsame Basis: /assets/css/global.css */

:root {
      --bg:#090909;
      --surface:#111;
      --surface-2:#181818;
      --soft:#efefeb;
      --text:#f5f5f0;
      --dark:#141414;
      --muted:#b9b9b0;
      --line:rgba(255,255,255,.13);
      --brand:#ffd60a;
      --brand-2:#d9b800;
      --radius:28px;
      --container:1240px;
      --shadow:0 24px 80px rgba(0,0,0,.16);
    }
.hero:after{
      content:"";position:absolute;right:-12%;bottom:-45%;width:650px;height:650px;border-radius:50%;
      background:radial-gradient(circle,rgba(255,214,10,.22),transparent 68%);
    }
    .hero-inner{position:relative;z-index:1;padding:110px 0;max-width:900px}
    .eyebrow{color:var(--brand);font-weight:700;letter-spacing:.08em;margin-bottom:22px}
    h1,h2,h3{margin:0;letter-spacing:-.045em}
    h1{font-size:clamp(3rem,7vw,7rem);line-height:.94;font-weight:650;max-width:11ch}
    .hero-copy{max-width:740px;margin:28px 0 0;color:rgba(255,255,255,.83);font-size:clamp(1.08rem,1.8vw,1.38rem)}
    .hero-facts{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:28px;color:rgba(255,255,255,.72)}
    .hero-facts strong{color:#fff}
    .hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
    .btn{min-height:52px;padding:0 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:750;border:1px solid transparent;transition:.2s}
    .btn:hover{transform:translateY(-2px)}
    .btn-primary{background:var(--brand);color:#000}
    .btn-secondary{border-color:rgba(255,255,255,.48);background:rgba(255,255,255,.06)}

    .intro{background:var(--soft);color:var(--dark);padding:110px 0}
    .intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}
    .intro-copy,.price-note{padding:clamp(30px,5vw,64px);border-radius:var(--radius)}
    .intro-copy{background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 22px 70px rgba(0,0,0,.07)}
    .section-kicker{color:#796700;font-weight:750;letter-spacing:.08em;margin-bottom:18px}
    .intro h2{font-size:clamp(2.4rem,5vw,5rem);line-height:.98;font-weight:650;max-width:14ch}
    .intro p{font-size:1.08rem;color:#3c3c3c;margin:26px 0 0}
    .price-note{background:#111;color:#fff;display:flex;flex-direction:column;justify-content:center}
    .price-note strong{font-size:clamp(2.1rem,4vw,4rem);line-height:1;color:var(--brand)}
    .price-note p{color:rgba(255,255,255,.74)}

    .routes{padding:120px 0;background:#090909}
    .routes-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}
    .routes-head h2{font-size:clamp(2.5rem,5vw,5.2rem);line-height:.98;font-weight:650;max-width:12ch}
    .routes-head p{max-width:520px;margin:0;color:var(--muted)}
    .search-wrap{margin:0 0 54px}
    .search-label{display:block;margin-bottom:10px;color:#fff;font-weight:700}
    .search-input{
      width:100%;min-height:58px;padding:0 20px;border-radius:18px;
      background:#151515;color:#fff;border:1px solid rgba(255,255,255,.15);
    }
    .search-input::placeholder{color:#8f8f88}

    .region-block{margin-top:84px}
    .region-heading{display:grid;grid-template-columns:110px 1fr 360px;gap:22px;align-items:end;margin-bottom:28px}
    .region-heading>span{color:var(--brand);font-weight:800;font-size:.82rem;letter-spacing:.08em}
    .region-heading h2{font-size:clamp(2rem,4vw,4rem);line-height:1;font-weight:650}
    .region-heading p{margin:0;color:var(--muted)}
    .route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .route-card{
      scroll-margin-top:96px;
      min-width:0;padding:26px;border-radius:var(--radius);border:1px solid var(--line);
      background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));
      display:flex;flex-direction:column;transition:.25s;
    }
    .route-card:hover{transform:translateY(-4px);border-color:rgba(255,214,10,.45)}
    .route-top{display:flex;justify-content:space-between;gap:15px;align-items:center}
    .route-kicker{font-size:.78rem;color:var(--brand);font-weight:800;letter-spacing:.05em}
    .route-code{padding:6px 9px;border-radius:999px;background:var(--brand);color:#000;font-size:.75rem;font-weight:900}
    .route-card h3{font-size:1.55rem;line-height:1.06;font-weight:650;margin-top:24px}
    .route-copy{margin:12px 0 22px;color:rgba(255,255,255,.66);font-size:.94rem}
    .route-data{margin:0;display:grid;gap:0;border-top:1px solid var(--line)}
    .route-data div{display:grid;grid-template-columns:105px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
    .route-data dt{color:#8f8f89;font-size:.84rem}
    .route-data dd{margin:0;text-align:right;font-size:.88rem;font-weight:650}
    .route-cta{
      margin-top:auto;padding-top:22px;color:var(--brand);font-weight:800;
      display:flex;justify-content:space-between;gap:16px;align-items:center;
    }
    .route-cta:hover{color:#fff}

    .method{padding:105px 0;background:var(--soft);color:var(--dark)}
    .method-card{padding:clamp(30px,6vw,76px);background:#fff;border-radius:34px;border:1px solid rgba(0,0,0,.08);box-shadow:0 24px 80px rgba(0,0,0,.08)}
    .method-card h2{font-size:clamp(2.3rem,5vw,5rem);line-height:.98;font-weight:650;max-width:14ch}
    .method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}
    .method-item{padding:22px;border-radius:20px;background:#f5f5f1;border:1px solid rgba(0,0,0,.07)}
    .method-item strong{display:block;margin-bottom:7px}
    .method-item p{margin:0;color:#555}

    .premium-feature{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
    .feature-visual{position:relative;min-height:620px;overflow:hidden;border-radius:var(--radius);background:#111;box-shadow:var(--shadow)}
    .feature-visual picture,.feature-visual img{width:100%;height:100%;display:block}
    .feature-visual img{object-fit:cover}
    .feature-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.54));pointer-events:none}
    .visual-badge{position:absolute;left:24px;bottom:24px;z-index:2;padding:10px 15px;border-radius:999px;background:var(--brand);color:#000;font-weight:850;letter-spacing:.04em}
    .feature-content{padding:clamp(34px,5vw,68px);border-radius:var(--radius);background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 22px 70px rgba(0,0,0,.07);display:flex;flex-direction:column;justify-content:center}
    .feature-content h2{font-size:clamp(2.35rem,4.8vw,5rem);line-height:.98;font-weight:650;max-width:13ch}
    .feature-content>p{margin:25px 0 0;color:#3d3d3d;font-size:1.08rem}
    .trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}
    .trust-grid>div{padding:19px;border-radius:19px;background:#f5f5f1;border:1px solid rgba(0,0,0,.07)}
    .trust-grid strong{display:block;margin-bottom:5px}.trust-grid span{color:#565656;font-size:.9rem}
    .payment-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.payment-options span{padding:8px 12px;border-radius:999px;background:#111;color:#fff;font-size:.82rem;font-weight:700}


    @media(max-width:1050px){
      .route-grid{grid-template-columns:repeat(2,1fr)}
      .region-heading{grid-template-columns:90px 1fr}
      .region-heading p{grid-column:2}
      .intro-grid{grid-template-columns:1fr}
      .premium-feature{grid-template-columns:1fr}
      .feature-visual{min-height:480px}
@media(max-width:700px){
@media(prefers-reduced-motion:reduce){
.faq-reference{
  margin-top:42px;
  padding:20px 22px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(255,255,255,.035);
  color:var(--muted);
}
.faq-reference a{color:var(--brand);font-weight:800}
.faq-reference a:hover{color:#fff}
.nav-links a[aria-current="page"]{color:var(--brand)}
