/*
Theme Name: Austriafly Tandem Funnel
Theme URI: https://austriafly.at/
Author: JTOGMBH
Author URI: https://austriafly.at/
Description: Conversion-orientiertes Onepage-Theme für Tandem-Paragleiten Angebote von Austriafly. Landingpage mit Hero, Angebot-Karten, Ablauf, FAQ, Kontakt-CTA und mobilen Buchungsbuttons.
Version: 1.1.4
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: austriafly-tandem-funnel
*/

:root{
  --af-blue:#0d4d72;
  --af-sky:#26a7df;
  --af-orange:#ff9f1c;
  --af-green:#52b788;
  --af-dark:#0b1720;
  --af-text:#1b2a34;
  --af-muted:#5f7180;
  --af-bg:#f4f8fb;
  --af-card:#ffffff;
  --af-radius:24px;
  --af-shadow:0 18px 50px rgba(8,35,56,.16);
  --af-shadow-soft:0 10px 30px rgba(8,35,56,.10);
  --af-max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--af-text);background:var(--af-bg);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.af-container{width:min(var(--af-max),calc(100% - 40px));margin-inline:auto}
.af-topbar{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(255,255,255,.90);backdrop-filter:blur(16px);border-bottom:1px solid rgba(13,77,114,.09)}
.admin-bar .af-topbar{top:32px}
.af-nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.af-logo{display:flex;align-items:center;gap:12px;font-weight:900;color:var(--af-blue);letter-spacing:.02em;font-size:22px}
.af-logo-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--af-sky),var(--af-blue));display:grid;place-items:center;color:#fff;box-shadow:var(--af-shadow-soft);font-weight:900}
.af-menu{display:flex;align-items:center;gap:22px;font-weight:750;font-size:15px;color:#294250}
.af-menu a:hover{color:var(--af-sky)}
.af-nav-actions{display:flex;gap:10px;align-items:center}
.af-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:13px 20px;font-weight:850;border:0;cursor:pointer;transition:.2s ease;white-space:nowrap;box-shadow:var(--af-shadow-soft)}
.af-btn:hover{transform:translateY(-2px)}
.af-btn-primary{background:linear-gradient(135deg,var(--af-orange),#ff7a18);color:#111}
.af-btn-secondary{background:#fff;color:var(--af-blue);border:1px solid rgba(13,77,114,.16)}
.af-btn-dark{background:var(--af-dark);color:#fff}.af-btn-lg{padding:16px 26px;font-size:17px}
.af-hero{position:relative;min-height:850px;padding:160px 0 90px;overflow:hidden;background:radial-gradient(circle at 20% 20%,rgba(38,167,223,.35),transparent 28%),linear-gradient(135deg,#082338 0%,#0d4d72 48%,#27a8df 100%);color:#fff}
.af-hero:before{content:"";position:absolute;inset:0;background-image:var(--af-hero-image);background-size:cover;background-position:center;opacity:.28}.af-hero:after{content:"";position:absolute;inset:auto -10% -20% -10%;height:260px;background:#f4f8fb;border-radius:50% 50% 0 0/35% 35% 0 0}.af-hero .af-container{position:relative;z-index:2}.af-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.af-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:9px 14px;font-weight:850;backdrop-filter:blur(10px);margin-bottom:20px}.af-hero h1{font-size:clamp(42px,6vw,78px);line-height:.98;margin:0 0 22px;letter-spacing:-.055em}.af-hero p{font-size:clamp(18px,2vw,22px);max-width:680px;margin:0 0 30px;color:rgba(255,255,255,.92)}.af-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0}.af-trust-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.af-trust-pill{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:10px 14px;font-weight:800}.af-booking-card{background:rgba(255,255,255,.94);color:var(--af-text);border-radius:32px;padding:30px;box-shadow:var(--af-shadow);border:1px solid rgba(255,255,255,.6)}.af-booking-card h2{margin:0 0 10px;font-size:30px;line-height:1.1;color:var(--af-blue)}.af-price{display:flex;align-items:flex-end;gap:8px;margin:18px 0}.af-price strong{font-size:52px;line-height:1;color:var(--af-dark)}.af-price span{padding-bottom:8px;color:var(--af-muted);font-weight:750}.af-checklist{display:grid;gap:12px;margin:22px 0}.af-check{display:flex;gap:10px;align-items:flex-start;font-weight:700}.af-check i{font-style:normal;color:var(--af-green);font-weight:950}
.af-about{background:linear-gradient(180deg,#f4f8fb 0%,#ffffff 100%)}
.af-about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:34px;align-items:center}
.af-kicker{color:var(--af-sky);font-weight:950;text-transform:uppercase;letter-spacing:.12em;font-size:13px}
.af-about-copy h2{font-size:clamp(32px,4.2vw,54px);line-height:1.04;margin:10px 0 16px;letter-spacing:-.04em;color:var(--af-dark)}
.af-about-copy p{font-size:18px;color:var(--af-muted);margin:0 0 20px}
.af-about-list{margin-top:24px}
.af-requirements-card{background:#fff;border-radius:32px;padding:34px;box-shadow:var(--af-shadow);border:1px solid rgba(13,77,114,.08)}
.af-requirements-card h3{font-size:32px;line-height:1.1;margin:0 0 8px;color:var(--af-blue)}
.af-requirements-card p{margin:0 0 22px;color:var(--af-muted);font-weight:700}
.af-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0 26px}
.af-stat{min-height:126px;background:linear-gradient(180deg,#f7fbfe,#fff);border:1px solid rgba(13,77,114,.10);border-radius:22px;padding:18px 14px;display:flex;flex-direction:column;justify-content:center;text-align:center;box-shadow:0 8px 22px rgba(8,35,56,.06)}
.af-stat strong{display:block;font-size:clamp(24px,3vw,36px);line-height:1;color:var(--af-dark);letter-spacing:-.04em;margin-bottom:9px}
.af-stat span{display:block;color:var(--af-muted);font-weight:850;font-size:14px;line-height:1.25}
.af-section{padding:90px 0}.af-section-title{text-align:center;max-width:760px;margin:0 auto 48px}.af-section-title .af-kicker{color:var(--af-sky);font-weight:950;text-transform:uppercase;letter-spacing:.12em;font-size:13px}.af-section-title h2{font-size:clamp(32px,4vw,52px);line-height:1.04;margin:10px 0 16px;letter-spacing:-.04em;color:var(--af-dark)}.af-section-title p{color:var(--af-muted);font-size:18px;margin:0}.af-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.af-card{background:var(--af-card);border-radius:var(--af-radius);padding:28px;box-shadow:var(--af-shadow-soft);border:1px solid rgba(13,77,114,.08);position:relative;overflow:hidden}.af-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--af-orange),var(--af-sky))}.af-card h3{font-size:24px;line-height:1.15;margin:8px 0 12px;color:var(--af-blue)}.af-card p{color:var(--af-muted);margin:0 0 18px}.af-card .af-meta{display:grid;gap:8px;margin:18px 0}.af-meta div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px dashed rgba(13,77,114,.16);padding-bottom:8px}.af-meta span{color:var(--af-muted)}.af-meta strong{color:var(--af-dark)}.af-highlight{background:#fff;border-radius:32px;padding:44px;box-shadow:var(--af-shadow-soft);display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.af-highlight h2{font-size:clamp(30px,4vw,48px);line-height:1.06;margin:0 0 16px;color:var(--af-dark);letter-spacing:-.04em}.af-highlight p{color:var(--af-muted);font-size:18px}.af-steps{counter-reset:steps;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.af-step{background:#fff;border-radius:22px;padding:24px;box-shadow:var(--af-shadow-soft);border:1px solid rgba(13,77,114,.08)}.af-step:before{counter-increment:steps;content:counter(steps);width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--af-sky),var(--af-blue));display:grid;place-items:center;color:#fff;font-weight:950;margin-bottom:18px}.af-step h3{margin:0 0 8px;color:var(--af-blue)}.af-step p{margin:0;color:var(--af-muted)}.af-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:start}.af-faq{display:grid;gap:14px}.af-faq details{background:#fff;border-radius:18px;padding:20px 22px;box-shadow:var(--af-shadow-soft);border:1px solid rgba(13,77,114,.08)}.af-faq summary{cursor:pointer;font-weight:900;color:var(--af-dark)}.af-faq p{color:var(--af-muted);margin:12px 0 0}.af-contact-box{background:linear-gradient(135deg,var(--af-blue),var(--af-dark));color:#fff;border-radius:32px;padding:36px;position:sticky;top:110px;box-shadow:var(--af-shadow)}.af-contact-box h2{font-size:34px;line-height:1.08;margin:0 0 16px}.af-contact-line{display:block;margin:12px 0;color:rgba(255,255,255,.92);font-weight:800}.af-contact-actions{display:flex;flex-direction:column;gap:12px;margin-top:22px}.af-cta{padding:90px 0;background:linear-gradient(135deg,#072133,#0d4d72);color:#fff;text-align:center}.af-cta h2{font-size:clamp(34px,5vw,60px);line-height:1.02;margin:0 auto 18px;max-width:860px;letter-spacing:-.04em}.af-cta p{font-size:20px;color:rgba(255,255,255,.86);max-width:740px;margin:0 auto 28px}.af-footer{background:#06141e;color:rgba(255,255,255,.78);padding:34px 0}.af-footer-grid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.af-footer strong{color:#fff}.af-mobile-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:60;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-top:1px solid rgba(13,77,114,.12);padding:10px}.af-mobile-bar .af-btn{flex:1;padding:12px 10px;font-size:14px}
@media (max-width:1000px){.af-menu{display:none}.af-hero-grid,.af-highlight,.af-split,.af-about-grid{grid-template-columns:1fr}.af-cards{grid-template-columns:1fr 1fr}.af-steps{grid-template-columns:1fr 1fr}.af-hero{min-height:auto}.af-booking-card{max-width:560px}.af-contact-box{position:static}}
@media (max-width:680px){.admin-bar .af-topbar{top:0}.af-stats-grid{grid-template-columns:1fr 1fr}.af-requirements-card{padding:24px;border-radius:24px}.af-stat{min-height:112px}.af-nav{height:68px}.af-logo{font-size:18px}.af-nav-actions{display:none}.af-hero{padding:120px 0 70px}.af-container{width:min(100% - 28px,var(--af-max))}.af-hero-actions{flex-direction:column}.af-btn{width:100%}.af-trust-row{display:grid;grid-template-columns:1fr 1fr}.af-trust-pill{font-size:13px}.af-cards,.af-steps{grid-template-columns:1fr}.af-section{padding:62px 0}.af-highlight{padding:28px}.af-booking-card{padding:24px;border-radius:24px}.af-price strong{font-size:42px}.af-mobile-bar{display:flex;gap:8px}.af-footer{padding-bottom:86px}}


/* Typography & offer image upgrade */
body{
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,.af-logo,.af-btn,.af-kicker,.af-eyebrow,.af-trust-pill,.af-stat strong{
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}
p{line-height:1.72}
.af-hero h1,.af-section-title h2,.af-about-copy h2,.af-cta h2{
  font-weight:950;
  letter-spacing:-.06em;
  text-wrap:balance;
}
.af-hero p,.af-section-title p,.af-card p,.af-about-copy p,.af-cta p{
  text-wrap:pretty;
}
.af-section-title{max-width:820px}
.af-kicker,.af-offer-topline{
  letter-spacing:.13em;
}
.af-cards.af-offer-cards{
  align-items:stretch;
}
.af-offer-card{
  padding:0;
  display:flex;
  flex-direction:column;
  border-radius:30px;
  background:#fff;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.af-offer-card:hover{
  transform:translateY(-5px);
  box-shadow:0 22px 55px rgba(8,35,56,.15);
  border-color:rgba(38,167,223,.22);
}
.af-offer-card:before{display:none}
.af-card-image{
  position:relative;
  height:240px;
  overflow:hidden;
  border-radius:30px 30px 0 0;
  background:linear-gradient(135deg,var(--af-blue),var(--af-sky));
}
.af-card-image:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(6,20,30,.04) 30%,rgba(6,20,30,.48) 100%);
}
.af-card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .45s ease;
}
.af-featured-offer .af-card-image img{object-position:center 42%}
.af-offer-card:hover .af-card-image img{transform:scale(1.055)}
.af-image-label{
  position:absolute;
  left:18px;
  bottom:18px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:8px 12px;
  background:rgba(255,255,255,.93);
  color:var(--af-dark);
  font-size:13px;
  font-weight:900;
  box-shadow:0 10px 25px rgba(0,0,0,.14);
}
.af-card-body{
  padding:26px;
  display:flex;
  flex-direction:column;
  flex:1;
}
.af-offer-topline{
  margin-bottom:8px;
  color:var(--af-sky);
  font-weight:950;
  text-transform:uppercase;
  font-size:12px;
}
.af-offer-card h3{
  margin:0 0 12px;
  font-size:clamp(24px,2.3vw,30px);
  letter-spacing:-.035em;
  font-weight:950;
}
.af-offer-card p{
  font-size:16px;
  margin-bottom:18px;
}
.af-offer-card .af-meta{
  margin-top:auto;
  margin-bottom:22px;
}
.af-offer-card .af-btn{
  width:100%;
}
.af-meta div{
  align-items:flex-start;
}
.af-meta span{
  font-size:14px;
  font-weight:750;
}
.af-meta strong{
  text-align:right;
  line-height:1.25;
}
.af-hero:before{opacity:.34}
.af-hero:after{background:linear-gradient(180deg,rgba(244,248,251,0),#f4f8fb 48%);height:300px;border-radius:0;}
.af-booking-card{backdrop-filter:blur(12px)}
@media (max-width:1000px){
  .af-card-image{height:230px}
}
@media (max-width:680px){
  .af-card-image{height:220px;border-radius:24px 24px 0 0}
  .af-offer-card{border-radius:24px}
  .af-card-body{padding:22px}
  .af-meta div{display:grid;grid-template-columns:1fr;gap:2px}
  .af-meta strong{text-align:left}
}

/* Elementor compatibility */
.af-elementor-main,
.af-page-main {
  width: 100%;
  overflow-x: hidden;
}
.af-elementor-main .elementor-section.elementor-section-boxed > .elementor-container {
  max-width: 1180px;
}
.elementor-page .site-header {
  position: sticky;
  top: 0;
  z-index: 50;
}
.elementor-page .elementor-widget-button .elementor-button {
  border-radius: 999px;
  font-weight: 800;
  box-shadow: 0 10px 25px rgba(0,0,0,.12);
}
.elementor-page .elementor-widget-heading h1,
.elementor-page .elementor-widget-heading h2,
.elementor-page .elementor-widget-heading h3 {
  letter-spacing: -0.03em;
}
.af-elementor-canvas-clean .elementor-section-wrap,
.af-elementor-canvas-clean .elementor {
  width: 100%;
}


/* Fix: safer typography spacing and no text overlap */
.af-hero h1,
.af-section-title h2,
.af-about-copy h2,
.af-contact-box h2,
.af-cta h2,
.af-offer-card h3 {
  line-height: 1.12;
  overflow-wrap: anywhere;
}
.af-hero h1 {
  max-width: 980px;
}
.af-hero p {
  max-width: 760px;
}
.af-card-body,
.af-booking-card,
.af-requirements-card,
.af-contact-box {
  overflow-wrap: break-word;
  word-break: normal;
}
.af-meta {
  gap: 10px;
}
.af-meta div {
  min-height: 42px;
  align-items: center;
}
.af-meta strong,
.af-meta span {
  line-height: 1.32;
}
.af-contact-actions .af-btn-secondary {
  background: rgba(255,255,255,.12);
  color: #fff;
  border-color: rgba(255,255,255,.26);
}
.af-contact-actions .af-btn-secondary:hover {
  background: rgba(255,255,255,.18);
}

@media (max-width: 780px) {
  .af-hero h1 {
    font-size: clamp(38px, 12vw, 62px);
    line-height: 1.08;
    letter-spacing: -0.045em;
  }
  .af-booking-card h2,
  .af-contact-box h2 {
    font-size: clamp(28px, 8vw, 38px);
    line-height: 1.12;
  }
  .af-section-title h2,
  .af-about-copy h2 {
    font-size: clamp(30px, 9vw, 46px);
    line-height: 1.12;
    letter-spacing: -0.04em;
  }
  .af-card h3,
  .af-offer-card h3 {
    font-size: clamp(24px, 7vw, 32px);
    line-height: 1.15;
  }
  .af-meta div {
    min-height: auto;
  }
}

@media (max-width: 430px) {
  .af-hero h1 {
    font-size: 38px;
    line-height: 1.1;
    letter-spacing: -0.035em;
  }
  .af-trust-row {
    grid-template-columns: 1fr;
  }
  .af-stats-grid {
    grid-template-columns: 1fr;
  }
  .af-stat strong {
    font-size: 30px;
    line-height: 1.08;
  }
}


/* Built-in logo integration */
.af-logo{gap:0;min-width:0}
.af-logo-image,
.custom-logo{display:block;height:64px;width:auto;max-width:min(320px,42vw);object-fit:contain}
.custom-logo-link{display:inline-flex;align-items:center}
.af-footer-brand{display:flex;flex-direction:column;gap:8px}
.af-footer-logo{display:block;height:54px;width:auto;max-width:240px;object-fit:contain}
@media (max-width:680px){
  .af-logo-image,
  .custom-logo{height:46px;max-width:58vw}
  .af-footer-logo{height:44px}
}


/* Separate landingpage mode + green floating booking button */
.af-floating-book{
  position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:70;
  background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-weight:950;letter-spacing:.02em;
  padding:16px 13px 16px 16px;border-radius:18px 0 0 18px;box-shadow:0 16px 42px rgba(22,163,74,.34);
  writing-mode:vertical-rl;text-orientation:mixed;display:inline-flex;align-items:center;justify-content:center;min-height:152px;
  border:1px solid rgba(255,255,255,.22);transition:.22s ease;
}
.af-floating-book:hover{transform:translateY(-50%) translateX(-4px);filter:saturate(1.08)}
.af-floating-book span{display:block}
.af-booking-embed-section{background:linear-gradient(180deg,#fff 0%,#f4f8fb 100%)}
.af-booking-embed-card{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:stretch;
  background:#fff;border-radius:34px;padding:34px;box-shadow:var(--af-shadow);border:1px solid rgba(13,77,114,.08);
}
.af-booking-embed-copy h2{font-size:clamp(32px,4vw,52px);line-height:1.1;margin:10px 0 16px;letter-spacing:-.05em;color:var(--af-dark)}
.af-booking-embed-copy p{color:var(--af-muted);font-size:18px;margin:0}
.af-booking-embed-box{min-height:360px;background:linear-gradient(180deg,#f7fbfe,#fff);border:1px dashed rgba(13,77,114,.24);border-radius:26px;padding:22px;overflow:hidden}
.af-booking-embed-box iframe{width:100%;max-width:100%;border:0;border-radius:18px;min-height:520px}
.af-booking-placeholder{height:100%;min-height:316px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;color:var(--af-text)}
.af-booking-placeholder strong{font-size:26px;line-height:1.15;color:var(--af-blue)}
.af-booking-placeholder p{max-width:540px;color:var(--af-muted);margin:12px auto 22px}
.af-booking-placeholder-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
@media (max-width:1000px){.af-booking-embed-card{grid-template-columns:1fr}.af-floating-book{display:none}}
@media (max-width:680px){.af-booking-embed-card{padding:22px;border-radius:26px}.af-booking-embed-box{padding:14px}.af-booking-placeholder-actions{width:100%}}


/* Direct calendar booking system */
.af-live-booking-card{grid-template-columns:.82fr 1.18fr}
.af-booking-info-list{display:grid;gap:10px;margin-top:24px;color:var(--af-dark);font-weight:850}
.af-booking-info-list span{background:#f1f8f5;border:1px solid rgba(22,163,74,.16);border-radius:16px;padding:11px 13px}
.af-service-booking{background:#fff;border-style:solid;padding:0;overflow:visible}
.af-booking-form{display:grid;gap:16px}
.service-step.step-content{background:linear-gradient(180deg,#f8fbfe,#fff);border:1px solid rgba(13,77,114,.10);border-radius:24px;padding:20px;box-shadow:0 8px 22px rgba(8,35,56,.06)}
.af-booking-step-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.af-booking-step-head>span{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-weight:950;box-shadow:0 8px 20px rgba(22,163,74,.28)}
.af-booking-step-head strong{display:block;font-size:18px;color:var(--af-dark);line-height:1.1}
.af-booking-step-head small{display:block;color:var(--af-muted);font-weight:750;margin-top:3px}
.af-service-options{display:grid;gap:10px}
.af-service-option,.af-date-option,.af-time-option{font:inherit;cursor:pointer;border:1px solid rgba(13,77,114,.13);background:#fff;color:var(--af-text);transition:.18s ease}
.af-service-option{text-align:left;border-radius:18px;padding:15px;display:grid;gap:3px}
.af-service-option strong{font-size:17px;color:var(--af-blue)}
.af-service-option span{font-weight:850;color:var(--af-dark)}
.af-service-option em{font-style:normal;color:var(--af-muted);font-weight:700;font-size:14px}
.af-service-option:hover,.af-date-option:hover,.af-time-option:hover{transform:translateY(-1px);border-color:rgba(22,163,74,.42)}
.af-service-option.is-active,.af-date-option.is-active,.af-time-option.is-active{border-color:#16a34a;background:#ecfdf3;box-shadow:0 8px 22px rgba(22,163,74,.13)}
.af-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:9px}
.af-date-option{border-radius:16px;padding:11px 6px;display:grid;gap:2px;text-align:center}
.af-date-option span{font-size:12px;text-transform:uppercase;color:var(--af-muted);font-weight:900}
.af-date-option strong{font-size:18px;color:var(--af-dark)}
.af-time-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.af-time-option{border-radius:999px;padding:11px 8px;font-weight:900;text-align:center}
.af-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.af-form-grid label{display:grid;gap:6px;color:var(--af-dark);font-weight:850}
.af-form-grid input,.af-form-grid textarea{width:100%;border:1px solid rgba(13,77,114,.16);border-radius:15px;padding:13px 14px;font:inherit;background:#fff;outline:none}
.af-form-grid input:focus,.af-form-grid textarea:focus{border-color:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.10)}
.af-form-full{grid-column:1/-1}.af-submit-booking{width:100%;margin-top:4px}.af-booking-note{font-size:14px;color:var(--af-muted);font-weight:750;margin:10px 0 0;text-align:center}.af-booking-alert{border-radius:18px;padding:14px 16px;font-weight:900;margin-bottom:16px}.af-booking-alert-success{background:#ecfdf3;color:#166534;border:1px solid rgba(22,163,74,.22)}.af-booking-alert-error{background:#fff1f2;color:#9f1239;border:1px solid rgba(225,29,72,.22)}
@media (max-width:1000px){.af-live-booking-card{grid-template-columns:1fr}.af-date-grid{grid-template-columns:repeat(4,1fr)}.af-time-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:680px){.service-step.step-content{padding:16px;border-radius:20px}.af-date-grid{grid-template-columns:repeat(2,1fr)}.af-time-grid{grid-template-columns:repeat(2,1fr)}.af-form-grid{grid-template-columns:1fr}}


/* Call request funnel for visitors */
.af-callback-section{background:linear-gradient(180deg,#f4f8fb 0%,#ffffff 100%)}
.af-callback-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;align-items:stretch;background:linear-gradient(135deg,#0d4d72,#081b2a);color:#fff;border-radius:34px;padding:34px;box-shadow:var(--af-shadow);overflow:hidden;position:relative}
.af-callback-card:before{content:"";position:absolute;inset:-40% -20% auto auto;width:420px;height:420px;background:radial-gradient(circle,rgba(34,197,94,.34),transparent 65%);pointer-events:none}
.af-callback-copy,.af-callback-form-wrap{position:relative;z-index:1}
.af-callback-copy h2{font-size:clamp(32px,4vw,52px);line-height:1.08;margin:10px 0 16px;letter-spacing:-.055em;color:#fff}
.af-callback-copy p{font-size:18px;color:rgba(255,255,255,.86);margin:0}
.af-callback-points{display:grid;gap:10px;margin-top:24px;font-weight:900}
.af-callback-points span{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:12px 14px}
.af-callback-form-wrap{background:#fff;color:var(--af-text);border-radius:26px;padding:22px;box-shadow:0 18px 48px rgba(0,0,0,.18)}
.af-callback-form{display:grid;gap:16px}
.af-form-grid select{width:100%;border:1px solid rgba(13,77,114,.16);border-radius:15px;padding:13px 14px;font:inherit;background:#fff;outline:none}
.af-form-grid select:focus{border-color:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.10)}
.af-submit-callback{width:100%;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}
@media (max-width:1000px){.af-callback-card{grid-template-columns:1fr}}
@media (max-width:680px){.af-callback-card{padding:22px;border-radius:26px}.af-callback-form-wrap{padding:16px;border-radius:20px}}


/* Transparent logo refinement */
.af-topbar .af-logo{padding:0;line-height:0}
.af-logo-image,.custom-logo{height:62px;max-width:min(300px,38vw);filter:drop-shadow(0 8px 18px rgba(6,20,30,.10))}
.af-footer-logo{height:96px;max-width:300px;object-fit:contain;filter:drop-shadow(0 14px 28px rgba(0,0,0,.20))}

/* Professional expanded footer */
.af-footer-pro{background:#06141e;color:rgba(255,255,255,.76);padding:0;border-top:1px solid rgba(255,255,255,.08)}
.af-footer-cta{background:linear-gradient(135deg,#0d4d72,#082338);border-bottom:1px solid rgba(255,255,255,.10);padding:38px 0;position:relative;overflow:hidden}
.af-footer-cta:before{content:"";position:absolute;right:-80px;top:-120px;width:360px;height:360px;border-radius:999px;background:radial-gradient(circle,rgba(34,197,94,.28),transparent 64%)}
.af-footer-cta-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr auto;gap:28px;align-items:center}
.af-footer-eyebrow{display:inline-flex;font-size:13px;font-weight:950;letter-spacing:.13em;text-transform:uppercase;color:#86efac;margin-bottom:8px}
.af-footer-cta h2{font-size:clamp(30px,4vw,50px);line-height:1.04;letter-spacing:-.05em;margin:0 0 8px;color:#fff}
.af-footer-cta p{margin:0;color:rgba(255,255,255,.82);font-size:18px;max-width:720px}
.af-footer-cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.af-footer-main{display:grid;grid-template-columns:1.35fr repeat(4, minmax(150px,1fr));gap:34px;padding:54px 0 42px}
.af-footer-brand-block{min-width:0}
.af-footer-brand-text{max-width:390px;margin:18px 0 20px;color:rgba(255,255,255,.72);font-size:15px;line-height:1.7}
.af-footer-trust{display:flex;flex-wrap:wrap;gap:8px;max-width:430px}
.af-footer-trust span{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:rgba(255,255,255,.88);border-radius:999px;padding:8px 10px;font-size:12px;font-weight:900}
.af-footer-col h3{color:#fff;font-size:15px;margin:0 0 15px;letter-spacing:.02em;text-transform:uppercase}
.af-footer-col a{display:block;color:rgba(255,255,255,.72);font-weight:750;font-size:14px;margin:0 0 10px;transition:.18s ease}
.af-footer-col a:hover{color:#86efac;transform:translateX(3px)}
.af-footer-contact p{font-size:14px;line-height:1.65;margin:0 0 14px;color:rgba(255,255,255,.72)}
.af-footer-contact strong{color:#fff}
.af-footer-note{font-size:13px!important;color:rgba(255,255,255,.54)!important;border-left:3px solid #22c55e;padding-left:12px}
.af-footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:18px 0;background:rgba(0,0,0,.12)}
.af-footer-bottom-grid{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;align-items:center;font-size:13px;color:rgba(255,255,255,.58)}
.af-footer-bottom nav{display:flex;gap:16px;flex-wrap:wrap}
.af-footer-bottom a{color:rgba(255,255,255,.68);font-weight:750}
.af-footer-bottom a:hover{color:#fff}

/* Auto-created info pages */
.af-page-main{padding-top:78px;background:linear-gradient(180deg,#f4f8fb,#fff)}
.af-page-hero{padding:86px 0 96px;min-height:60vh}
.af-page-content{background:#fff;border:1px solid rgba(13,77,114,.08);border-radius:34px;box-shadow:var(--af-shadow-soft);padding:clamp(26px,5vw,58px);max-width:1100px;margin:0 auto}
.af-page-content h1{font-size:clamp(36px,5vw,62px);line-height:1.05;letter-spacing:-.055em;color:var(--af-dark);margin:8px 0 18px}
.af-page-content h2{font-size:clamp(22px,3vw,32px);line-height:1.12;color:var(--af-blue);margin:0 0 10px}
.af-page-content p{font-size:18px;color:var(--af-muted);max-width:880px}
.af-page-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.af-page-card{background:linear-gradient(180deg,#f7fbfe,#fff);border:1px solid rgba(13,77,114,.10);border-radius:24px;padding:22px;box-shadow:0 8px 22px rgba(8,35,56,.06)}
.af-page-card p{font-size:16px;margin:0;color:var(--af-muted)}
.af-page-card a{color:var(--af-blue);font-weight:900}
.af-page-faq{margin-top:24px}
@media (max-width:1100px){.af-footer-main{grid-template-columns:1fr 1fr 1fr}.af-footer-brand-block{grid-column:1/-1}.af-footer-cta-grid{grid-template-columns:1fr}.af-footer-cta-actions{justify-content:flex-start}}
@media (max-width:780px){.af-footer-main{grid-template-columns:1fr 1fr}.af-page-card-grid{grid-template-columns:1fr}.af-footer-logo{height:74px}.af-logo-image,.custom-logo{height:48px;max-width:58vw}.af-footer-cta-actions .af-btn{width:100%}}
@media (max-width:520px){.af-footer-main{grid-template-columns:1fr}.af-footer-bottom-grid{display:grid}.af-footer-bottom nav{display:grid;gap:8px}.af-page-main{padding-top:68px}.af-page-hero{padding:58px 0 78px}.af-page-content{border-radius:26px}.af-footer-logo{height:64px}}


/* Page content action buttons */
.af-page-action{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.af-page-content .af-btn{margin-right:8px;margin-bottom:8px}
.af-page-content ul{font-size:18px;color:var(--af-muted);line-height:1.75}
.af-page-content .af-stats-grid{margin-top:28px}
.af-footer-note a{color:#fff;font-weight:900;text-decoration:underline;text-underline-offset:3px}


/* Übungshang offer extension */
.af-offer-cards{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.af-training-offer .af-card-image{background:linear-gradient(135deg,#16a34a,#0d4d72)}
.af-training-offer .af-image-label{background:#ecfdf3;color:#166534}
.af-offer-card .af-meta strong.af-on-request{color:#166534}
@media (max-width:1000px){.af-offer-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){.af-offer-cards{grid-template-columns:1fr}}


/* Voucher discount and later appointment option */
.af-discount-tag{
  display:inline-flex;
  align-items:center;
  width:max-content;
  border-radius:999px;
  padding:8px 12px;
  background:#ecfdf3;
  color:#166534;
  border:1px solid rgba(22,163,74,.22);
  font-weight:950;
  font-size:13px;
  margin:0 0 14px;
}
.af-date-later,
.af-time-later{
  background:linear-gradient(180deg,#ecfdf3,#fff) !important;
  border-color:rgba(22,163,74,.34) !important;
}
.af-voucher-hint{
  margin:12px 0 0;
  padding:12px 14px;
  border-radius:16px;
  background:#fff7ed;
  border:1px solid rgba(249,115,22,.22);
  color:#7c2d12;
  font-weight:850;
  font-size:14px;
}


/* Live weather and webcam page */
.af-live-weather-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:24px;margin:34px 0}
.af-live-panel{background:#fff;border-radius:28px;padding:22px;box-shadow:var(--af-shadow-soft);border:1px solid rgba(13,77,114,.10);overflow:hidden}
.af-live-panel-large{grid-row:span 2}
.af-live-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.af-live-panel-head span{display:inline-flex;border-radius:999px;background:rgba(38,167,223,.10);color:var(--af-blue);padding:7px 10px;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.09em}
.af-live-panel-head strong{font-size:20px;line-height:1.15;color:var(--af-dark);text-align:right}
.af-embed-frame{position:relative;width:100%;height:610px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#eaf6fb,#fff);border:1px solid rgba(13,77,114,.12)}
.af-embed-frame-small{height:265px}
.af-embed-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}
.af-embed-note{margin:12px 0 14px;color:var(--af-muted);font-size:14px}
.af-weather-link-grid{margin-top:18px}
.af-weather-link-grid .af-page-card a{font-weight:900;color:var(--af-blue);text-decoration:underline;text-underline-offset:3px}
@media (max-width:1000px){.af-live-weather-grid{grid-template-columns:1fr}.af-live-panel-large{grid-row:auto}.af-embed-frame{height:520px}.af-embed-frame-small{height:360px}}
@media (max-width:680px){.af-live-panel{padding:16px;border-radius:22px}.af-live-panel-head{display:block}.af-live-panel-head strong{display:block;text-align:left;margin-top:9px}.af-embed-frame{height:430px;border-radius:18px}.af-embed-frame-small{height:330px}}


/* Final fix: exactly 3 responsive offer cards */
.af-cards.af-offer-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}
.af-cards.af-offer-cards > .af-offer-card{
  min-width:0;
  height:100%;
}
@media (max-width:1000px){
  .af-cards.af-offer-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:680px){
  .af-cards.af-offer-cards{grid-template-columns:1fr;}
}


/* Homepage flight image upgrade */
.af-flight-gallery-strip{position:relative;margin-top:-62px;padding:0 0 56px;z-index:4}
.af-flight-gallery-strip .af-container{position:relative;z-index:2}
.af-flight-gallery-head{display:grid;grid-template-columns:1fr .85fr;gap:28px;align-items:end;margin-bottom:24px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border:1px solid rgba(13,77,114,.08);border-radius:30px;padding:28px;box-shadow:var(--af-shadow-soft)}
.af-flight-gallery-head h2{font-size:clamp(30px,4vw,48px);line-height:1.06;letter-spacing:-.05em;margin:8px 0 0;color:var(--af-dark)}
.af-flight-gallery-head p{font-size:18px;color:var(--af-muted);margin:0;font-weight:750}
.af-flight-mosaic{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-auto-rows:220px;gap:16px}
.af-flight-tile{position:relative;overflow:hidden;border-radius:28px;margin:0;box-shadow:var(--af-shadow-soft);background:#0b1720}
.af-flight-tile-large{grid-row:span 2}
.af-flight-tile img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.01);transition:transform .55s ease, filter .55s ease}
.af-flight-tile:hover img{transform:scale(1.07);filter:saturate(1.08)}
.af-flight-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.52) 100%)}
.af-flight-tile figcaption{position:absolute;left:18px;bottom:16px;z-index:2;color:#fff;font-weight:950;font-size:16px;text-shadow:0 2px 12px rgba(0,0,0,.4)}
.af-emotion-band{background:linear-gradient(180deg,#fff 0%,#f4f8fb 100%)}
.af-emotion-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}
.af-emotion-image{border-radius:36px;overflow:hidden;box-shadow:var(--af-shadow);min-height:520px;background:#0b1720}
.af-emotion-image img{width:100%;height:100%;min-height:520px;object-fit:cover;display:block}
.af-emotion-copy{background:#fff;border-radius:34px;padding:38px;box-shadow:var(--af-shadow-soft);border:1px solid rgba(13,77,114,.08)}
.af-emotion-copy h2{font-size:clamp(32px,4vw,52px);line-height:1.05;letter-spacing:-.05em;margin:8px 0 14px;color:var(--af-dark)}
.af-emotion-copy p{font-size:18px;color:var(--af-muted);margin:0 0 24px}
.af-emotion-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}
.af-emotion-mini-grid img{width:100%;height:160px;object-fit:cover;border-radius:20px;box-shadow:0 10px 26px rgba(8,35,56,.10)}
@media (max-width:1000px){
  .af-flight-gallery-strip{margin-top:-28px;padding-bottom:44px}
  .af-flight-gallery-head{grid-template-columns:1fr}
  .af-flight-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:210px}
  .af-flight-tile-large{grid-column:1/-1;grid-row:auto;height:320px}
  .af-emotion-grid{grid-template-columns:1fr}
  .af-emotion-image,.af-emotion-image img{min-height:380px}
}
@media (max-width:680px){
  .af-flight-gallery-strip{margin-top:0;padding:42px 0}
  .af-flight-gallery-head{padding:22px;border-radius:24px}
  .af-flight-mosaic{grid-template-columns:1fr;grid-auto-rows:230px}
  .af-flight-tile-large{height:auto;min-height:260px}
  .af-flight-tile:nth-child(n+4){display:none}
  .af-emotion-copy{padding:24px;border-radius:26px}
  .af-emotion-image,.af-emotion-image img{min-height:300px;border-radius:26px}
  .af-emotion-mini-grid img{height:130px}
}


/* Stats grid calm layout fix */
.af-requirements-card{max-width:100%}
.af-stats-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.af-stat{
  min-height:112px;
  padding:20px 16px;
  text-align:left;
  align-items:flex-start;
  justify-content:center;
}
.af-stat strong{
  white-space:nowrap;
  display:flex;
  align-items:baseline;
  gap:5px;
  font-size:clamp(28px,2.6vw,38px);
  line-height:1;
  margin-bottom:10px;
  letter-spacing:-.045em;
}
.af-stat strong small{
  font-size:.48em;
  line-height:1;
  font-weight:900;
  letter-spacing:0;
  color:var(--af-muted);
}
.af-stat span{
  font-size:14px;
  line-height:1.25;
  min-height:0;
}
@media (max-width:1000px){
  .af-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .af-stat{text-align:center;align-items:center}
}
@media (max-width:680px){
  .af-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .af-stat{min-height:104px;padding:16px 12px;text-align:center;align-items:center}
  .af-stat strong{font-size:clamp(25px,7vw,32px);gap:4px;margin-bottom:8px}
  .af-stat span{font-size:13px}
}
@media (max-width:380px){
  .af-stats-grid{grid-template-columns:1fr}
  .af-stat{min-height:auto}
}


/* Unterkunftsseite: Zaglau & Werfenweng */
.af-page-lead{font-size:20px;line-height:1.75;color:var(--af-muted);max-width:980px;margin:0 0 34px}
.af-page-section-title{text-align:left;margin:58px 0 26px;max-width:960px}
.af-page-section-title h2{font-size:clamp(30px,4vw,46px)}
.af-accom-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;margin:34px 0 56px;align-items:stretch}
.af-accom-hero-card{position:relative;border-radius:34px;overflow:hidden;min-height:360px;box-shadow:var(--af-shadow);background:#0b1720}
.af-accom-hero-card img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.08)}
.af-accom-hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.62))}
.af-accom-hero-card div{position:absolute;left:28px;right:28px;bottom:28px;color:#fff;z-index:2}
.af-accom-hero-card span{display:inline-flex;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 12px;font-weight:900;margin-bottom:10px}
.af-accom-hero-card strong{display:block;font-size:clamp(30px,4.5vw,54px);line-height:1.04;letter-spacing:-.05em}
.af-accom-quickfacts{display:grid;gap:14px}
.af-accom-quickfacts div{background:#fff;border:1px solid rgba(13,77,114,.10);border-radius:24px;padding:24px;box-shadow:var(--af-shadow-soft)}
.af-accom-quickfacts strong{display:block;font-size:24px;color:var(--af-dark);margin-bottom:8px;letter-spacing:-.03em}
.af-accom-quickfacts span{display:block;color:var(--af-muted);font-weight:750;line-height:1.55}
.af-accom-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:28px}
.af-accom-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.af-accom-card{background:#fff;border:1px solid rgba(13,77,114,.10);border-radius:30px;overflow:hidden;box-shadow:var(--af-shadow-soft);display:flex;flex-direction:column}
.af-accom-featured{grid-column:span 1}
.af-accom-card img{width:100%;height:230px;object-fit:cover;display:block;background:#dfeaf2}
.af-accom-body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}
.af-accom-badge{align-self:flex-start;background:rgba(38,167,223,.12);color:var(--af-blue);font-weight:950;border-radius:999px;padding:7px 11px;font-size:13px}
.af-accom-card h3{font-size:25px;line-height:1.12;margin:0;color:var(--af-dark);letter-spacing:-.035em}
.af-accom-card p{margin:0;color:var(--af-muted)}
.af-accom-card ul{margin:4px 0 4px 18px;color:var(--af-text);font-weight:700;padding:0}.af-accom-card li{margin:5px 0}
.af-accom-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}.af-accom-actions .af-btn{box-shadow:none;padding:11px 15px;font-size:14px}
.af-accom-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.af-accom-mini-grid article{background:#fff;border:1px solid rgba(13,77,114,.10);border-radius:22px;padding:22px;box-shadow:0 8px 26px rgba(8,35,56,.07)}
.af-accom-mini-grid strong{display:block;color:var(--af-dark);font-size:18px;line-height:1.18;margin-bottom:8px}.af-accom-mini-grid span{display:block;color:var(--af-muted);line-height:1.55}.af-accom-mini-grid a{display:inline-block;margin-top:12px;color:var(--af-blue);font-weight:900}
.af-accom-media-section{margin-top:64px;background:linear-gradient(135deg,#071d2c,#0d4d72);padding:42px;border-radius:34px;color:#fff;box-shadow:var(--af-shadow)}
.af-accom-media-section .af-kicker,.af-accom-media-section h2,.af-accom-media-section p{color:#fff}.af-accom-media-section p{opacity:.86}
.af-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.af-video-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:24px;overflow:hidden}.af-video-card iframe{width:100%;aspect-ratio:16/9;border:0;display:block}.af-video-card h3{font-size:22px;margin:18px 20px 6px;color:#fff}.af-video-card p{margin:0 20px 20px;color:rgba(255,255,255,.82)}
.af-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}.af-route-card,.af-map-embed{background:#fff;border:1px solid rgba(13,77,114,.10);border-radius:26px;padding:26px;box-shadow:var(--af-shadow-soft)}.af-route-card h3{margin:0 0 12px;font-size:26px;color:var(--af-dark)}.af-route-card ol{margin:0 0 18px 20px;padding:0;color:var(--af-text);font-weight:700}.af-route-card li{margin:9px 0}.af-route-card p{color:var(--af-muted)}.af-map-embed{grid-column:1/-1;padding:0;overflow:hidden;min-height:420px}.af-map-embed iframe{width:100%;height:420px;border:0;display:block}
@media(max-width:1000px){.af-accom-hero-grid,.af-route-grid{grid-template-columns:1fr}.af-accom-grid,.af-accom-mini-grid{grid-template-columns:1fr 1fr}.af-accom-grid-two{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.af-accom-hero-card{min-height:300px;border-radius:26px}.af-accom-hero-card div{left:20px;right:20px;bottom:20px}.af-accom-grid,.af-accom-grid-two,.af-accom-mini-grid,.af-video-grid{grid-template-columns:1fr}.af-accom-media-section{padding:24px;border-radius:26px}.af-accom-card img{height:210px}.af-route-card{padding:22px}.af-map-embed,.af-map-embed iframe{min-height:340px;height:340px}}


/* Feratel webcam fix */
#af-webcam .af-embed-frame-small iframe, #webcam .af-embed-frame-small iframe{min-height:420px;}
@media (max-width:680px){#webcam .af-embed-frame-small iframe{min-height:340px;}}


/* Webcam fix: show Feratel WebTV player only, not full feratel website */
#webcam .af-embed-frame-small{
  height:auto;
  aspect-ratio:16/9;
  min-height:0;
  background:#050b12;
}
#webcam .af-embed-frame-small iframe{
  min-height:0 !important;
}
@media (max-width:680px){
  #webcam .af-embed-frame-small{aspect-ratio:16/10;}
}


/* Live wind data replacement */
.af-live-intro{margin:0 0 16px;color:var(--af-muted);font-weight:700;line-height:1.55}
.af-live-panel-wind{grid-column:span 2}
.af-wind-widget-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 16px}
.af-wind-widget-grid iframe{width:100%;height:190px;border:0;border-radius:18px;background:#fff;box-shadow:0 8px 20px rgba(8,35,56,.08)}
.af-wind-map{height:430px;border-radius:22px;overflow:hidden}
.af-wind-map iframe{height:100%;min-height:430px}
@media (max-width:1000px){.af-live-panel-wind{grid-column:span 1}.af-wind-widget-grid{grid-template-columns:1fr}.af-wind-map,.af-wind-map iframe{height:360px;min-height:360px}}
@media (max-width:680px){.af-wind-widget-grid iframe{height:180px}.af-wind-map,.af-wind-map iframe{height:320px;min-height:320px}}


/* Wind data fallback: Holfuy blocks iframe on some browsers */
.af-wind-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 18px}
.af-wind-link-card{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:18px;background:linear-gradient(180deg,#f7fbfe,#fff);border:1px solid rgba(13,77,114,.12);box-shadow:0 8px 20px rgba(8,35,56,.08);transition:.2s ease}
.af-wind-link-card:hover{transform:translateY(-2px);border-color:rgba(38,167,223,.35)}
.af-wind-link-card strong{color:var(--af-dark);font-size:17px}
.af-wind-link-card span{color:var(--af-blue);font-weight:850;font-size:14px}
@media (max-width:680px){.af-wind-link-grid{grid-template-columns:1fr}}


/* Attractive Winds Bischling embed */
.af-attractive-wind-panel{
  margin-top:0;
  grid-column:2;
  grid-row:2;
}
.af-attractive-wind-frame{
  height:620px;
  border-radius:26px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 16px 45px rgba(8,35,56,.12);
  border:1px solid rgba(13,77,114,.12);
}
.af-attractive-wind-frame iframe{width:100%;height:100%;min-height:620px;border:0;display:block;background:#fff;}
.af-wind-open-btn{margin-top:16px;}
@media (max-width:1000px){
  .af-attractive-wind-panel{grid-column:1;grid-row:auto;}
  .af-attractive-wind-frame,.af-attractive-wind-frame iframe{height:560px;min-height:560px;}
}
@media (max-width:680px){.af-attractive-wind-frame,.af-attractive-wind-frame iframe{height:520px;min-height:520px;border-radius:20px;}}

#webcam + .af-attractive-wind-panel .af-live-panel-head,
.af-attractive-wind-panel .af-live-panel-head{margin-bottom:16px;}


/* Weather map above Bergbahnen iframe */
.af-weather-map-frame{height:390px;margin-bottom:12px;border-radius:24px;background:#eef7fb;}
.af-weather-map-frame iframe{min-height:390px;}
.af-live-subhead{margin-top:26px;padding-top:22px;border-top:1px solid rgba(13,77,114,.10)}
@media (max-width:1000px){.af-weather-map-frame,.af-weather-map-frame iframe{height:360px;min-height:360px}}
@media (max-width:680px){.af-weather-map-frame,.af-weather-map-frame iframe{height:320px;min-height:320px;border-radius:20px}}


/* Sticky flight HUD banner */
.af-flight-hud{position:fixed;top:0;left:0;right:0;z-index:90;background:linear-gradient(135deg,#13a05f,#47c77a);color:#fff;box-shadow:0 10px 28px rgba(6,38,24,.18);border-bottom:1px solid rgba(255,255,255,.18)}
.af-flight-hud-inner{min-height:44px;display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;font-weight:800;font-size:14px;line-height:1.25}
.af-flight-hud strong{font-size:15px;white-space:nowrap}.af-flight-hud span[data-af-hud-text]{opacity:.95}.af-hud-dot{width:10px;height:10px;border-radius:999px;background:#fff;box-shadow:0 0 0 6px rgba(255,255,255,.18);flex:0 0 auto}.af-hud-action{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:6px 10px;font-weight:950;white-space:nowrap}.af-flight-hud.is-today{background:linear-gradient(135deg,#f49a1d,#ffbf47);color:#1d1608}.af-flight-hud.is-today .af-hud-dot{background:#1d1608}.af-flight-hud.is-closed{background:linear-gradient(135deg,#223647,#405569);color:#fff}.af-topbar{top:44px}.admin-bar .af-flight-hud{top:32px}.admin-bar .af-topbar{top:76px}body{padding-top:44px}
@media(max-width:780px){.af-flight-hud-inner{min-height:auto;padding:9px 0;display:grid;grid-template-columns:auto 1fr auto;text-align:left;gap:8px}.af-flight-hud strong{white-space:normal}.af-flight-hud span[data-af-hud-text]{grid-column:2/4;font-size:12px}.af-hud-action{font-size:12px;padding:6px 8px}.af-topbar{top:58px}.admin-bar .af-topbar{top:58px}body{padding-top:58px}}

/* Homepage weather map block */
.af-home-weather-map{padding:28px 0 72px;background:linear-gradient(180deg,#f4f8fb 0%,#fff 100%)}
.af-home-weather-card{display:grid;grid-template-columns:.75fr 1.25fr;gap:24px;align-items:stretch;background:#fff;border:1px solid rgba(13,77,114,.10);border-radius:34px;padding:26px;box-shadow:var(--af-shadow-soft)}
.af-home-weather-copy{padding:12px;display:flex;flex-direction:column;justify-content:center}.af-home-weather-copy h2{font-size:clamp(30px,4vw,48px);line-height:1.06;letter-spacing:-.05em;margin:8px 0 14px;color:var(--af-dark)}.af-home-weather-copy p{font-size:17px;color:var(--af-muted);margin:0;font-weight:750}.af-home-weather-frame{position:relative;min-height:440px;border-radius:26px;overflow:hidden;background:#eaf6fb;border:1px solid rgba(13,77,114,.12)}.af-home-weather-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}
@media(max-width:1000px){.af-home-weather-card{grid-template-columns:1fr}.af-home-weather-frame{min-height:390px}}
@media(max-width:680px){.af-home-weather-map{padding:18px 0 54px}.af-home-weather-card{padding:18px;border-radius:26px}.af-home-weather-copy{padding:4px}.af-home-weather-frame{min-height:330px;border-radius:20px}}


/* Collapsible sticky flight HUD */
.af-flight-hud-inner{position:relative;}
.af-hud-toggle{
  appearance:none;
  border:1px solid rgba(255,255,255,.36);
  background:rgba(255,255,255,.18);
  color:inherit;
  width:30px;
  height:30px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:950;
  cursor:pointer;
  line-height:1;
  flex:0 0 auto;
  transition:.18s ease;
}
.af-hud-toggle:hover{background:rgba(255,255,255,.28);transform:translateY(-1px)}
.af-hud-toggle span{display:block;font-size:14px;line-height:1}
.af-flight-hud.is-collapsed .af-flight-hud-inner{min-height:30px;padding-top:5px;padding-bottom:5px;}
.af-flight-hud.is-collapsed span[data-af-hud-text],
.af-flight-hud.is-collapsed .af-hud-action{display:none;}
.af-flight-hud.is-collapsed strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;}
.af-flight-hud.is-collapsed .af-hud-dot{width:8px;height:8px;box-shadow:0 0 0 4px rgba(255,255,255,.16)}
body.af-hud-collapsed{padding-top:30px;}
body.af-hud-collapsed .af-topbar{top:30px;}
.admin-bar body.af-hud-collapsed .af-topbar,
body.admin-bar.af-hud-collapsed .af-topbar{top:62px;}
body.admin-bar.af-hud-collapsed .af-flight-hud{top:32px;}
@media(max-width:780px){
  .af-hud-toggle{width:28px;height:28px}
  .af-flight-hud.is-collapsed .af-flight-hud-inner{display:flex;align-items:center;min-height:32px;padding:5px 0;gap:8px;}
  .af-flight-hud.is-collapsed strong{white-space:nowrap;font-size:13px;}
  .af-flight-hud.is-collapsed span[data-af-hud-text],
  .af-flight-hud.is-collapsed .af-hud-action{display:none;}
  body.af-hud-collapsed{padding-top:32px;}
  body.af-hud-collapsed .af-topbar{top:32px;}
  body.admin-bar.af-hud-collapsed .af-topbar{top:32px;}
}


/* Final fix: top offer grid now has exactly 2 cards */
#af-angebote, #angebote{}
.af-cards.af-offer-cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important;max-width:920px;margin-left:auto;margin-right:auto;}
.af-cards.af-offer-cards > .af-offer-card{height:100%;}
@media (max-width:760px){.af-cards.af-offer-cards{grid-template-columns:1fr !important;max-width:560px;}}


/* Price display: “nur” prominent, compare note subtle */
.af-price{align-items:baseline;flex-wrap:wrap;gap:7px 9px}
.af-price .af-price-prefix{padding-bottom:0;color:var(--af-orange);font-weight:950;text-transform:uppercase;letter-spacing:.03em;font-size:18px}
.af-price .af-price-compare{padding-bottom:0;color:var(--af-muted);opacity:.55;font-size:14px;font-weight:750;line-height:1}
.af-price > span:last-child{width:100%;padding-bottom:0;margin-top:-2px;color:var(--af-muted);font-weight:750}
.af-price-inline{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:4px;flex-wrap:wrap}
.af-price-inline .af-price-prefix{color:var(--af-orange);font-weight:950;text-transform:uppercase;font-size:.78em;letter-spacing:.03em}
.af-price-inline .af-price-compare{font-size:.72em;opacity:.5;color:var(--af-muted);font-weight:750}
@media (max-width:680px){.af-price .af-price-prefix{font-size:16px}.af-price .af-price-compare{font-size:13px}.af-price-inline{justify-content:flex-start}}


/* Price compare link + local advantage section */
.af-price .af-price-compare,
.af-price-inline .af-price-compare,
a.af-price-compare{
  color:var(--af-muted);
  opacity:.48;
  font-size:13px;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
.af-price .af-price-compare:hover,
.af-price-inline .af-price-compare:hover{opacity:.8;text-decoration:underline;text-underline-offset:3px}
.af-flight-advantage{background:linear-gradient(180deg,#fff 0%,#f4f8fb 100%);padding-top:76px;padding-bottom:76px}
.af-flight-advantage-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}
.af-flight-advantage-copy{background:#fff;border-radius:34px;padding:38px;box-shadow:var(--af-shadow-soft);border:1px solid rgba(13,77,114,.08)}
.af-flight-advantage-copy h2{font-size:clamp(32px,4.5vw,56px);line-height:1.04;margin:8px 0 16px;color:var(--af-dark);letter-spacing:-.055em}
.af-flight-advantage-copy p{font-size:18px;color:var(--af-muted);margin:0 0 22px}
.af-advantage-pills{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.af-advantage-pills span{background:rgba(82,183,136,.12);color:#12633b;border:1px solid rgba(82,183,136,.26);border-radius:999px;padding:10px 13px;font-weight:950;font-size:14px}
.af-advantage-note{font-size:15px!important;background:#f7fbfe;border:1px solid rgba(13,77,114,.10);border-radius:18px;padding:14px 16px;color:var(--af-text)!important}
.af-flight-advantage-graphic{position:relative;min-height:480px;border-radius:36px;background:linear-gradient(155deg,#0d4d72 0%,#26a7df 58%,#f4f8fb 100%);box-shadow:var(--af-shadow);overflow:hidden;border:1px solid rgba(13,77,114,.08)}
.af-flight-advantage-graphic:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 20%,rgba(255,255,255,.38),transparent 20%),radial-gradient(circle at 78% 12%,rgba(255,255,255,.22),transparent 18%)}
.af-mountain-shape{position:absolute;left:-8%;right:-8%;bottom:-8%;height:58%;background:linear-gradient(135deg,#123247,#0b1720);clip-path:polygon(0 78%,18% 46%,34% 72%,53% 22%,72% 68%,88% 38%,100% 80%,100% 100%,0 100%)}
.af-start-zone{position:absolute;z-index:2;background:rgba(255,255,255,.94);border-radius:22px;padding:16px 18px;box-shadow:0 16px 38px rgba(5,20,30,.20);border:1px solid rgba(255,255,255,.65)}
.af-start-zone strong{display:block;color:var(--af-dark);font-size:20px;line-height:1.05;margin-bottom:5px}.af-start-zone span{display:block;color:var(--af-muted);font-weight:800;font-size:13px}
.af-start-zone-one{left:9%;top:35%}.af-start-zone-two{right:8%;top:22%}.af-valley-badge{position:absolute;z-index:2;left:50%;bottom:34px;transform:translateX(-50%);background:var(--af-orange);color:#111;font-weight:950;border-radius:999px;padding:12px 18px;box-shadow:0 14px 30px rgba(0,0,0,.22)}
.af-wind-flow{position:absolute;z-index:1;border:3px solid rgba(255,255,255,.72);border-left:0;border-bottom:0;border-radius:0 80px 0 0;width:140px;height:70px}.af-wind-flow:after{content:"";position:absolute;right:-4px;top:-7px;width:12px;height:12px;border-top:3px solid rgba(255,255,255,.72);border-right:3px solid rgba(255,255,255,.72);transform:rotate(45deg)}
.af-wind-flow-a{left:24%;top:18%;transform:rotate(8deg)}.af-wind-flow-b{right:24%;top:50%;transform:rotate(-18deg)}
.af-compare-hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:34px 0;background:linear-gradient(135deg,#0d4d72,#0b1720);padding:22px;border-radius:30px;box-shadow:var(--af-shadow)}
.af-compare-hero div{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:22px;color:#fff}.af-compare-hero strong{display:block;font-size:clamp(28px,3vw,42px);line-height:1;margin-bottom:10px;color:#fff}.af-compare-hero span{display:block;font-weight:950;margin-bottom:8px}.af-compare-hero small{display:block;color:rgba(255,255,255,.76);font-weight:750;line-height:1.45}
.af-price-table-wrap{overflow-x:auto;background:#fff;border:1px solid rgba(13,77,114,.10);border-radius:26px;box-shadow:var(--af-shadow-soft);margin:22px 0 34px}.af-price-table{width:100%;border-collapse:collapse;min-width:760px}.af-price-table th,.af-price-table td{padding:16px 18px;text-align:left;border-bottom:1px solid rgba(13,77,114,.08)}.af-price-table th{background:#f4f8fb;color:var(--af-dark);font-weight:950}.af-price-table td{color:var(--af-text);font-weight:700}.af-price-table tr.is-own td{background:rgba(82,183,136,.10)}.af-price-table tr.is-own td:first-child{border-left:5px solid var(--af-green)}
.af-compare-cards{margin-top:24px}.af-source-links{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.af-source-links a{border-radius:999px;background:#fff;border:1px solid rgba(13,77,114,.14);padding:10px 14px;color:var(--af-blue);font-weight:900;text-decoration:none;box-shadow:0 8px 20px rgba(8,35,56,.06)}
@media(max-width:1000px){.af-flight-advantage-grid{grid-template-columns:1fr}.af-flight-advantage-graphic{min-height:420px}.af-compare-hero{grid-template-columns:1fr}}
@media(max-width:680px){.af-flight-advantage{padding:54px 0}.af-flight-advantage-copy{padding:24px;border-radius:26px}.af-flight-advantage-graphic{min-height:360px;border-radius:28px}.af-start-zone{padding:12px 14px}.af-start-zone strong{font-size:17px}.af-start-zone-one{left:5%;top:35%}.af-start-zone-two{right:5%;top:18%}.af-valley-badge{font-size:13px;bottom:22px}.af-price .af-price-compare,.af-price-inline .af-price-compare{font-size:12px;}}
