/* Design A · Winter-Alpen Tirol (nach Claude-Design-Entwurf, Runde 1)
   Wirkt nur, wenn <html data-design="a"> gesetzt ist. */
html[data-design="a"] {
  --night: #0B1A2E; --night-2: #14294A; --glacier: #6E9CC4; --glacier-ink: #2C5C88;
  --ice: #EAF1F7; --snow: #F8FAFC; --ink: #0F1C2C; --grey: #55657A; --field: #7D8EA3;
  --accent: #C2410C; --accent-hover: #9A3412;
  --petrol: var(--night); --petrol-2: var(--night-2); --petrol-3: #1D3A63;
  --red: var(--accent); --red-dark: var(--accent-hover);
  --bg: var(--snow); --text: var(--ink); --muted: var(--grey); --line: #D6DFE8;
  --radius: 16px; --shadow: 0 1px 2px rgba(11,26,46,.06), 0 6px 20px rgba(11,26,46,.07);
  --display: "Barlow Semi Condensed", "Arial Narrow", sans-serif;
  --font: "Barlow", system-ui, sans-serif;
}
html[data-design="a"] body { font-size: 17px; line-height: 1.55; }
html[data-design="a"] :focus-visible { outline-color: var(--accent); }
html[data-design="a"] h1, html[data-design="a"] h2, html[data-design="a"] h3,
html[data-design="a"] .calc__price, html[data-design="a"] .route-card__prices strong,
html[data-design="a"] .airport__code { font-family: var(--display); font-weight: 700; letter-spacing: -.01em; color: var(--ink); }
html[data-design="a"] h1 { font-size: clamp(2.5rem, 1.6rem + 3.6vw, 4.6rem); line-height: 1.02; }
html[data-design="a"] h2 { font-size: clamp(1.9rem, 1.4rem + 1.8vw, 2.9rem); line-height: 1.05; }
html[data-design="a"] h3 { font-size: 1.45rem; line-height: 1.15; }
html[data-design="a"] .eyebrow { font-family: var(--display); font-weight: 600; letter-spacing: .14em; color: var(--glacier-ink); font-size: .9rem; }
html[data-design="a"] main a:not([class]) { color: var(--glacier-ink); }

/* Kopfzeile */
html[data-design="a"] .topbar { display: block; background: var(--night); color: #DCE6F0; font-size: 14px; }
html[data-design="a"] .topbar__inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; height: 40px; }
html[data-design="a"] .topbar a { color: #fff; font-weight: 600; text-decoration: none; }
html[data-design="a"] .site-header { background: #fff; border-bottom: 1px solid var(--line); box-shadow: none; }
html[data-design="a"] .site-header__inner { min-height: 72px; }
html[data-design="a"] .logo__std { display: none; }
html[data-design="a"] .logo__alt { display: flex; align-items: center; gap: 10px; color: var(--night); }
html[data-design="a"] .logo__icon--b, html[data-design="a"] .logo__tag { display: none; }
html[data-design="a"] .logo__word { font-family: var(--display); font-weight: 700; font-size: 26px; line-height: 1; letter-spacing: -.01em; }
html[data-design="a"] .logo--footer .logo__alt { color: #fff; }
html[data-design="a"] .logo--footer .logo__icon--a polygon:last-child { fill: var(--night); }
html[data-design="a"] .main-nav a { color: var(--ink); font-weight: 500; font-size: 15.5px; }
html[data-design="a"] .main-nav a:hover { background: var(--ice); color: var(--ink); }
html[data-design="a"] .main-nav a[aria-current="page"] { color: var(--ink); box-shadow: inset 0 -3px 0 var(--accent); }
html[data-design="a"] .header-phone { display: none; }
html[data-design="a"] .header-cta { display: flex; align-items: center; height: 46px; padding: 0 20px; border-radius: 10px; background: var(--accent); color: #fff; text-decoration: none; font-weight: 700; white-space: nowrap; }
html[data-design="a"] .header-cta:hover { background: var(--accent-hover); }
html[data-design="a"] .menu-toggle { background: var(--night); border-radius: 10px; min-height: 48px; }
@media (max-width: 1080px) {
  html[data-design="a"] .topbar { display: none; }
  html[data-design="a"] .header-cta { display: none; }
  html[data-design="a"] .header-phone { display: flex; margin-left: auto; color: var(--night); }
  html[data-design="a"] .header-phone svg { background: var(--ice); fill: var(--night); border-radius: 10px; width: 48px; height: 48px; padding: 13px; }
  html[data-design="a"] .header-phone span { display: none; }
  html[data-design="a"] .main-nav { background: #fff; border-bottom: 1px solid var(--line); box-shadow: 0 24px 60px -16px rgba(11,26,46,.45); }
  html[data-design="a"] .main-nav a { border-bottom-color: var(--line); font-weight: 600; font-size: 18px; }
}

/* Hero */
html[data-design="a"] .hero { background: var(--night); color: #fff; padding-top: clamp(3.5rem, 7vw, 6.5rem); }
html[data-design="a"] .hero::before { content: ""; position: absolute; inset: 0; background:
  linear-gradient(90deg, rgba(11,26,46,.94) 0%, rgba(11,26,46,.78) 45%, rgba(11,26,46,.35) 100%),
  repeating-linear-gradient(135deg, #172C49 0 14px, #13263F 14px 28px); }
html[data-design="a"] .hero::after { content: ""; position: absolute; inset: 0; background: repeating-radial-gradient(ellipse at 78% 115%, transparent 0 26px, rgba(255,255,255,.06) 26px 27px); pointer-events: none; }
html[data-design="a"] .hero__inner { padding-bottom: clamp(7rem, 10vw, 9.5rem); align-items: center; }
html[data-design="a"] .hero h1 { color: #fff; }
html[data-design="a"] .hero h1 em { color: #fff; }
html[data-design="a"] .hero .eyebrow { color: var(--glacier); }
html[data-design="a"] .hero__lead { color: #D3DEEA; font-size: clamp(1.05rem, 1rem + .3vw, 1.25rem); }
html[data-design="a"] .hero__checks li { font-weight: 500; }
html[data-design="a"] .hero__checks li::before { background-color: var(--accent); }
html[data-design="a"] .breadcrumb { color: #9DB3CA; }
html[data-design="a"] .hero-deko--std { display: none; }
html[data-design="a"] .hero-deko--a { display: block; position: absolute; inset: 0; pointer-events: none; z-index: 1; }
html[data-design="a"] .hero-deko--a .kamm { position: absolute; left: 0; right: 0; bottom: -1px; height: clamp(60px, 8vw, 120px); background: var(--snow);
  clip-path: polygon(0 100%, 0 72%, 7% 48%, 12% 62%, 20% 22%, 27% 52%, 34% 38%, 42% 68%, 50% 30%, 57% 50%, 66% 8%, 74% 46%, 82% 32%, 90% 58%, 96% 44%, 100% 56%, 100% 100%); }
html[data-design="a"] .schnee { position: absolute; inset: 0; overflow: hidden; }
html[data-design="a"] .schnee i { position: absolute; top: 0; border-radius: 50%; background: #fff; animation: ar-schnee linear infinite; }
@keyframes ar-schnee { from { transform: translate3d(0, -20px, 0); } to { transform: translate3d(40px, 1100px, 0); } }
@media (prefers-reduced-motion: reduce) { html[data-design="a"] .schnee { display: none; } }

/* Buttons */
html[data-design="a"] .btn { border-radius: 10px; min-height: 52px; font-size: 1.05rem; }
html[data-design="a"] .btn--sm { min-height: 0; font-size: .9rem; }
html[data-design="a"] .btn--ghost { box-shadow: inset 0 0 0 2px rgba(255,255,255,.7); }

/* Preisrechner */
html[data-design="a"] .calc { border-top: 0; border-radius: 16px; box-shadow: 0 24px 60px -16px rgba(11,26,46,.45); }
html[data-design="a"] .calc h2 { font-size: 1.65rem; }
html[data-design="a"] .field label, html[data-design="a"] .field legend { text-transform: none; letter-spacing: 0; font-weight: 600; font-size: 15px; color: var(--ink); }
html[data-design="a"] .field input, html[data-design="a"] .field select, html[data-design="a"] .field textarea { border: 1.5px solid var(--field); border-radius: 10px; min-height: 52px; font-size: 17px; }
html[data-design="a"] .toggle-row label { border: 1.5px solid var(--field); border-radius: 10px; min-height: 52px; display: grid; place-items: center; font-size: 17px; }
html[data-design="a"] .toggle-row label:has(input:checked) { background: var(--night); border-color: var(--night); }
html[data-design="a"] .calc .btn--dark { background: var(--accent); min-height: 56px; }
html[data-design="a"] .calc .btn--dark:hover { background: var(--accent-hover); }
html[data-design="a"] .calc__result { background: var(--ice); border-radius: 10px; }
html[data-design="a"] .calc__price { font-size: 2.75rem; color: var(--night); }
html[data-design="a"] .calc__result .btn--red { background: var(--night); }
html[data-design="a"] .calc__result .btn--red:hover { background: var(--night-2); }

/* Inhalte */
html[data-design="a"] .highlight { border: 1px solid var(--line); border-radius: 16px; }
html[data-design="a"] .highlight__icon { background: var(--ice); border-radius: 10px; width: 44px; height: 44px; }
html[data-design="a"] .highlight__icon svg { stroke: var(--glacier-ink); width: 24px; height: 24px; }
html[data-design="a"] .usp-band { background: transparent; padding: 1.5rem 0; }
html[data-design="a"] .usp-band ul { background: var(--night); border-radius: 16px; padding: 1.25rem 2rem; justify-content: space-between; font-weight: 600; font-size: 16px; }
html[data-design="a"] .usp-band li::before { background: transparent; content: "✓"; color: var(--glacier); }
html[data-design="a"] .section--white { background: var(--snow); }
html[data-design="a"] .route-card { position: relative; overflow: hidden; border: 1px solid var(--line); border-top: 1px solid var(--line); box-shadow: none; padding: 1.5rem; }
html[data-design="a"] .route-card::before { content: ""; position: absolute; right: -60px; top: -60px; width: 200px; height: 200px; background: repeating-radial-gradient(circle, transparent 0 10px, rgba(44,92,136,.12) 10px 11px); pointer-events: none; }
html[data-design="a"] .route-card__to { font-size: 1.75rem; }
html[data-design="a"] .route-card__from { color: var(--glacier-ink); }
html[data-design="a"] .route-card__prices strong { font-size: 1.6rem; color: var(--ink); }
html[data-design="a"] .route-card .btn--red { background: transparent; color: var(--night); box-shadow: inset 0 0 0 1.5px var(--night); }
html[data-design="a"] .route-card .btn--red:hover { background: var(--night); color: #fff; }
html[data-design="a"] .steps { counter-reset: step; }
html[data-design="a"] .step { background: transparent; border: 0; border-top: 3px solid var(--night); border-radius: 0; padding: 1.25rem 0 0; }
html[data-design="a"] .step::before { position: static; display: block; width: auto; height: auto; background: none; color: var(--glacier-ink); font-family: var(--display); font-size: 3.5rem; line-height: 1; margin-bottom: .75rem; text-align: left; }
html[data-design="a"] .section:has(.steps) { background: var(--ice); }
html[data-design="a"] .vehicle { border: 1px solid var(--line); box-shadow: none; }
html[data-design="a"] .vehicle__img { background: repeating-linear-gradient(135deg, #E3EBF2 0 12px, #EDF2F7 12px 24px); }
html[data-design="a"] .vehicle__tag { background: var(--ice); color: var(--glacier-ink); text-transform: uppercase; letter-spacing: .06em; }
html[data-design="a"] .section--dark { background: var(--night); position: relative; overflow: hidden; }
html[data-design="a"] .section--dark::before { content: ""; position: absolute; inset: 0; background: repeating-radial-gradient(ellipse at 10% 0%, transparent 0 30px, rgba(255,255,255,.05) 30px 31px); pointer-events: none; }
html[data-design="a"] .section--dark .container { position: relative; }
html[data-design="a"] .section--dark h2, html[data-design="a"] .section--dark h3 { color: #fff; }
html[data-design="a"] .section--dark .eyebrow { color: var(--glacier); }
html[data-design="a"] .section--dark a:not(.btn) { color: #fff; }
html[data-design="a"] .feature h3::before { background: var(--accent); }
html[data-design="a"] .cta-box { background: var(--accent); color: #fff; border-radius: 16px; }
html[data-design="a"] .cta-box::before { content: ""; position: absolute; inset: 0; background: repeating-radial-gradient(ellipse at 100% 100%, transparent 0 22px, rgba(255,255,255,.08) 22px 23px); pointer-events: none; }
html[data-design="a"] .cta-box > * { position: relative; }
html[data-design="a"] .cta-box h2 { color: #fff; }
html[data-design="a"] .cta-box .btn--red { background: #fff; color: var(--night); }
html[data-design="a"] .cta-box .btn--ghost { box-shadow: inset 0 0 0 2px #fff; }
html[data-design="a"] .card, html[data-design="a"] .airport, html[data-design="a"] .contact-card { border-radius: 16px; border: 1px solid var(--line); box-shadow: none; }
html[data-design="a"] .airport { border-left: 4px solid var(--accent); }
html[data-design="a"] .contact-card svg { background: var(--accent); }
html[data-design="a"] .table-wrap { border: 1px solid var(--line); box-shadow: none; }
html[data-design="a"] .price-table thead th { background: var(--night); }
html[data-design="a"] .region-nav a { border-radius: 999px; color: var(--night); }
html[data-design="a"] .faq details { border-radius: 10px; }
html[data-design="a"] .faq summary { color: var(--ink); font-size: 1.05rem; }
html[data-design="a"] .faq summary::after { color: var(--accent); }

/* Fußzeile */
html[data-design="a"] .site-footer { background: var(--night); color: #C9D6E3; }
html[data-design="a"] .site-footer h2 { font-family: var(--display); color: #fff; font-size: 18px; letter-spacing: .06em; }
html[data-design="a"] .site-footer a:hover { color: var(--glacier); }
html[data-design="a"] .wa-float { background: #1E7A46; width: 60px; height: 60px; }
html[data-design="a"] .mobile-bar__call { border-color: var(--night); color: var(--night); border-radius: 10px; }
html[data-design="a"] .mobile-bar__book { background: var(--accent); border-radius: 10px; }
