:root {
–accent: #d4ff00;
–accent-dark: #badd00;
–accent-glow: rgba(212,255,0,0.2);
–bg: #f4f4f4;
–bg-alt: #eaeaec;
–bg-warm: #111111;
–card: #ffffff;
–card-border: rgba(0,0,0,0.12);
–text: #0a0a0a;
–text-mid: #2a2a2a;
–text-light: #444444;
–dark-section: #0a0a0a;
–font-display: ‚Bebas Neue‘, sans-serif;
–font-body: ‚DM Sans‘, sans-serif;
–radius: 4px;
–radius-lg: 8px;
–shadow: 4px 4px 0px rgba(0,0,0,0.9);
–shadow-lg: 8px 8px 0px rgba(0,0,0,0.9);
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:var(–font-body); background:var(–bg); color:var(–text); font-weight:500; overflow-x:hidden; -webkit-font-smoothing:antialiased; }
/* HEADER */
.header { position:fixed; top:0; left:0; right:0; z-index:1000; padding:16px 40px; display:flex; align-items:center; justify-content:space-between; background:rgba(244,244,244,0.95); backdrop-filter:blur(10px); border-bottom:2px solid var(–text); transition:all 0.3s ease; }
.header.scrolled { box-shadow:0 4px 20px rgba(0,0,0,0.1); padding:12px 40px; background:#fff; }
.header-logo { font-family:var(–font-display); font-size:24px; letter-spacing:2px; color:var(–text); text-decoration:none; display:flex; align-items:center; gap:12px; }
.header-logo img { height:38px; width:auto; border-radius:2px; }
.header-nav { display:flex; align-items:center; gap:32px; list-style:none; }
.header-nav a { color:var(–text); text-decoration:none; font-size:14px; font-weight:700; letter-spacing:1px; text-transform:uppercase; transition:color 0.2s; }
.header-nav a:hover { color:var(–accent-dark); }
.header-nav .lang-switch { display:flex; gap:8px; border-left:2px solid var(–card-border); padding-left:24px; }
.header-nav .lang-switch a { font-size:12px; padding:4px 8px; border-radius:var(–radius); border:2px solid transparent; color:var(–text-light); font-weight:700; }
.header-nav .lang-switch a.active { background:var(–text); color:var(–accent); border-color:var(–text); }
.btn-book-header { background:var(–accent); color:var(–text); font-weight:800; font-size:14px; padding:12px 28px; border-radius:var(–radius); text-decoration:none; text-transform:uppercase; letter-spacing:1px; border:2px solid var(–text); transition:all 0.2s; box-shadow:3px 3px 0px var(–text); }
.btn-book-header:hover { background:var(–text); color:var(–accent); transform:translate(-2px,-2px); box-shadow:5px 5px 0px var(–text); }
.mobile-menu-btn { display:none; background:none; border:none; color:var(–text); font-size:28px; cursor:pointer; padding:8px; }
/* HERO */
.hero { position:relative; min-height:100vh; display:flex; align-items:center; overflow:hidden; border-bottom:4px solid var(–accent); }
.hero-bg { position:absolute; inset:0; overflow:hidden; background:#000; }
.hero-bg img { position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; height:auto; transform:translate(-50%,-50%); object-fit:cover; filter:brightness(0.35) contrast(1.3) saturate(1.1); }
.hero-bg video { position:absolute; top:50%; left:50%; min-width:100%; min-height:100%; width:auto; height:auto; transform:translate(-50%,-50%); object-fit:cover; filter:brightness(0.35) contrast(1.3) saturate(1.1); }
.hero-bg::after { content:“; position:absolute; inset:0; z-index:1; background:linear-gradient(135deg,rgba(10,10,10,0.85) 0%,rgba(10,10,10,0.35) 60%,transparent 100%); }
.hero-content { position:relative; z-index:2; max-width:800px; padding:160px 60px 100px; color:#fff; }
.hero-badge { display:inline-flex; align-items:center; gap:8px; background:var(–accent); border:2px solid var(–accent); color:var(–text); padding:8px 20px; border-radius:var(–radius); font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:2px; margin-bottom:32px; box-shadow:4px 4px 0px rgba(0,0,0,0.5); animation:fadeInLeft 0.6s cubic-bezier(0.2,0.8,0.2,1) both; }
.hero h1 { font-family:var(–font-display); font-size:clamp(60px,8vw,120px); line-height:0.9; letter-spacing:-2px; margin-bottom:24px; color:#fff; text-shadow:4px 4px 0px rgba(0,0,0,0.8); animation:fadeInLeft 0.6s cubic-bezier(0.2,0.8,0.2,1) 0.1s both; }
.hero h1 .accent { color:var(–accent); display:block; }
.hero-sub { font-size:20px; line-height:1.6; color:#f0f0f0; font-weight:500; margin-bottom:24px; max-width:600px; animation:fadeInLeft 0.6s cubic-bezier(0.2,0.8,0.2,1) 0.2s both; }
.hero-price { font-family:var(–font-display); font-size:42px; color:var(–accent); letter-spacing:1px; margin-bottom:40px; text-shadow:2px 2px 0px #000; animation:fadeInLeft 0.6s cubic-bezier(0.2,0.8,0.2,1) 0.3s both; }
.hero-price span { font-family:var(–font-body); font-size:16px; color:#ccc; font-weight:600; letter-spacing:0; display:block; margin-top:4px; }
.hero-ctas { display:flex; gap:20px; align-items:center; flex-wrap:wrap; animation:fadeInLeft 0.6s cubic-bezier(0.2,0.8,0.2,1) 0.4s both; }
.btn-primary { background:var(–accent); color:var(–text); font-weight:800; font-size:16px; padding:18px 40px; border-radius:var(–radius); text-decoration:none; text-transform:uppercase; letter-spacing:2px; border:2px solid var(–text); display:inline-flex; align-items:center; gap:10px; cursor:pointer; box-shadow:4px 4px 0px var(–text); transition:all 0.2s; }
.btn-primary:hover { background:var(–text); color:var(–accent); border-color:var(–accent); transform:translate(-2px,-2px); box-shadow:6px 6px 0px var(–accent); }
.hero-reviews { position:relative; z-index:2; margin-top:32px; display:flex; align-items:center; gap:16px; animation:fadeInLeft 0.6s cubic-bezier(0.2,0.8,0.2,1) 0.5s both; }
.hero-reviews .stars { color:var(–accent); font-size:20px; letter-spacing:2px; text-shadow:1px 1px 0 #000; }
.hero-reviews span { color:#fff; font-size:15px; font-weight:600; }
/* TRUST BAR */
.trust-bar { background:var(–text); border-bottom:4px solid var(–accent); color:#fff; padding:24px 40px; display:flex; justify-content:center; gap:60px; flex-wrap:wrap; }
.trust-item { display:flex; align-items:center; gap:14px; font-size:15px; font-weight:700; text-transform:uppercase; letter-spacing:1px; }
.trust-item .icon { width:40px; height:40px; background:var(–accent); display:flex; align-items:center; justify-content:center; font-size:18px; color:var(–text); flex-shrink:0; border:2px solid #fff; border-radius:2px; }
/* GENERAL */
.section { padding:120px 40px; border-bottom:2px solid var(–card-border); }
.section-label { font-size:15px; font-weight:800; text-transform:uppercase; letter-spacing:4px; color:var(–text-light); margin-bottom:16px; border-left:4px solid var(–accent); padding-left:12px; display:inline-block; }
.section-title { font-family:var(–font-display); font-size:clamp(48px,6vw,80px); line-height:0.95; margin-bottom:24px; color:var(–text); text-transform:uppercase; }
.section-desc { font-size:18px; color:var(–text-mid); max-width:600px; line-height:1.6; margin-bottom:40px; font-weight:500; }
/* BOOKING SECTION */
.booking-section { padding:100px 40px; background:var(–bg); }
.booking-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.booking-price-card { background:#0a0a0a; border-radius:20px; padding:40px; margin-bottom:32px; }
.booking-price-main { font-family:var(–font-display); font-size:72px; color:var(–accent); letter-spacing:-2px; line-height:1; }
.booking-price-main span { font-family:var(–font-body); font-size:24px; font-weight:700; color:#fff; letter-spacing:0; }
.booking-price-sub { font-size:14px; color:rgba(255,255,255,0.5); font-weight:500; margin-bottom:16px; }
.booking-price-alt { font-size:16px; color:rgba(255,255,255,0.8); font-weight:700; padding-top:16px; border-top:1px solid rgba(255,255,255,0.1); }
.booking-includes { list-style:none; margin-bottom:32px; }
.booking-includes li { display:flex; align-items:center; gap:14px; padding:12px 0; font-size:16px; color:var(–text-mid); border-bottom:1px solid rgba(0,0,0,0.07); font-weight:600; }
.booking-includes li:last-child { border-bottom:none; }
.booking-includes li .inc-icon { width:32px; height:32px; background:var(–accent); border-radius:var(–radius); display:flex; align-items:center; justify-content:center; font-size:14px; color:var(–text); flex-shrink:0; font-weight:800; }
.btn-book-big { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; background:var(–accent); color:var(–text); font-weight:800; font-size:18px; padding:22px 40px; text-decoration:none; text-transform:uppercase; letter-spacing:1.5px; border-radius:14px; border:none; box-shadow:0 6px 24px rgba(212,255,0,0.35); transition:all 0.2s ease; margin-bottom:12px; }
.btn-book-big:hover { background:#c8f200; box-shadow:0 10px 36px rgba(212,255,0,0.5); transform:translateY(-3px); color:var(–text); }
.booking-note { text-align:center; font-size:13px; color:#888; font-weight:600; }
.booking-calendar { background:#fff; border-radius:20px; border:1px solid rgba(0,0,0,0.08); box-shadow:0 8px 40px rgba(0,0,0,0.08); overflow:hidden; }
.booking-calendar-header { background:#0a0a0a; padding:24px 28px; }
.booking-calendar-header h3 { font-family:var(–font-display); font-size:28px; color:var(–accent); letter-spacing:1px; }
.booking-calendar-header p { font-size:14px; color:rgba(255,255,255,0.6); font-weight:500; margin-top:4px; }
.booking-calendar-body { padding:32px; }
.booking-detail-row { display:flex; align-items:center; gap:14px; padding:14px 0; border-bottom:1px solid rgba(0,0,0,0.06); }
.booking-detail-row:last-child { border-bottom:none; }
.booking-detail-icon { width:40px; height:40px; background:var(–bg); border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.booking-detail-label { font-size:12px; color:#888; font-weight:700; text-transform:uppercase; letter-spacing:0.5px; }
.booking-detail-value { font-size:15px; color:var(–text); font-weight:700; }
.btn-book-calendar { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; background:var(–accent); color:var(–text); font-weight:800; font-size:16px; padding:20px; text-decoration:none; text-transform:uppercase; letter-spacing:1px; border-radius:12px; box-shadow:0 4px 20px rgba(212,255,0,0.3); transition:all 0.2s ease; margin-top:28px; }
.btn-book-calendar:hover { background:#c8f200; transform:translateY(-2px); box-shadow:0 8px 32px rgba(212,255,0,0.45); color:var(–text); }
/* ROUTE SECTION */
.route-section { padding:100px 40px; background:var(–dark-section); }
.route-section .section-label { color:var(–accent); border-color:var(–accent); }
.route-section .section-title { color:#fff; }
.route-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; max-width:1100px; margin:0 auto; }
.route-stop { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.1); border-bottom:4px solid var(–accent); border-radius:var(–radius-lg); overflow:hidden; transition:transform 0.3s; }
.route-stop:hover { transform:translateY(-8px); }
.route-stop-img { height:200px; overflow:hidden; }
.route-stop-img img { width:100%; height:100%; object-fit:cover; filter:brightness(0.85); transition:transform 0.5s; }
.route-stop:hover .route-stop-img img { transform:scale(1.05); }
.route-stop-body { padding:24px 20px; }
.route-stop-num { font-family:var(–font-display); font-size:48px; color:var(–accent); line-height:1; margin-bottom:8px; }
.route-stop-body h3 { font-family:var(–font-display); font-size:22px; color:#fff; letter-spacing:1px; margin-bottom:8px; }
.route-stop-body p { font-size:14px; color:rgba(255,255,255,0.6); line-height:1.6; font-weight:500; }
/* FEATURES */
.features-section { padding:100px 40px; background:var(–bg); }
.features-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; max-width:1100px; margin:0 auto; }
.feature-card { background:var(–card); padding:40px 32px; border:2px solid var(–card-border); border-radius:var(–radius-lg); transition:all 0.3s; }
.feature-card:hover { border-color:var(–text); box-shadow:6px 6px 0 var(–accent); transform:translateY(-4px); }
.feature-icon { width:56px; height:56px; background:var(–text); border:2px solid var(–accent); display:flex; align-items:center; justify-content:center; font-size:24px; color:var(–accent); margin-bottom:20px; border-radius:var(–radius); }
.feature-card h3 { font-family:var(–font-display); font-size:24px; margin-bottom:12px; color:var(–text); letter-spacing:1px; }
.feature-card p { font-size:15px; color:var(–text-mid); line-height:1.6; font-weight:500; }
/* GALLERY */
.gallery-section { padding:0; }
.gallery-grid { display:grid; grid-template-columns:2fr 1fr 1fr; grid-template-rows:320px 320px; gap:4px; }
.gallery-item { overflow:hidden; position:relative; }
.gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform 0.6s ease; }
.gallery-item:hover img { transform:scale(1.05); }
.gallery-item:first-child { grid-row:1 / span 2; }
.gallery-item-overlay { position:absolute; inset:0; background:rgba(0,0,0,0); transition:background 0.3s; display:flex; align-items:center; justify-content:center; }
.gallery-item:hover .gallery-item-overlay { background:rgba(0,0,0,0.2); }
/* BEWERTUNGEN */
.reviews-section { background:var(–bg-warm); padding:120px 40px; color:#fff; }
.reviews-header { text-align:center; max-width:600px; margin:0 auto 60px; }
.reviews-header .section-label { color:var(–accent); }
.reviews-header .section-title { color:#fff; }
.reviews-score { display:flex; align-items:center; justify-content:center; gap:24px; margin-bottom:40px; background:rgba(255,255,255,0.05); padding:20px; border:1px solid rgba(255,255,255,0.1); border-radius:var(–radius); }
.reviews-score .big-number { font-family:var(–font-display); font-size:80px; color:var(–accent); line-height:1; text-shadow:4px 4px 0 #000; }
.reviews-score .score-detail { text-align:left; }
.reviews-score .stars { color:var(–accent); font-size:24px; letter-spacing:2px; margin-bottom:8px; }
.reviews-score .count { font-size:15px; color:#ccc; font-weight:600; }
.reviews-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; max-width:1200px; margin:0 auto; }
.review-card { background:var(–text); border:2px solid var(–accent); padding:32px; box-shadow:6px 6px 0px rgba(0,0,0,0.5); transition:all 0.3s; border-radius:var(–radius-lg); }
.review-card:hover { transform:translate(-4px,-4px); box-shadow:10px 10px 0px var(–accent); }
.review-card-top { display:flex; align-items:center; gap:16px; margin-bottom:20px; }
.review-avatar { width:50px; height:50px; background:var(–accent); display:flex; align-items:center; justify-content:center; font-weight:800; color:var(–text); font-size:18px; border:2px solid #fff; border-radius:var(–radius); }
.review-name { font-weight:800; font-size:16px; color:#fff; text-transform:uppercase; letter-spacing:1px; }
.review-origin { font-size:13px; color:#999; font-weight:600; }
.review-stars { color:var(–accent); font-size:16px; letter-spacing:2px; margin-bottom:16px; }
.review-text { font-size:16px; line-height:1.6; color:#ddd; font-style:italic; font-weight:500; }
.review-source { margin-top:24px; font-size:13px; color:var(–accent); font-weight:800; text-transform:uppercase; letter-spacing:1px; border-top:1px solid rgba(255,255,255,0.1); padding-top:16px; }
/* WIE ES FUNKTIONIERT */
.how-section { padding:100px 40px; background:var(–bg-alt); }
.how-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; max-width:1100px; margin:0 auto; }
.how-step { text-align:center; position:relative; padding:40px 24px; border:2px solid var(–card-border); background:var(–card); transition:all 0.3s; }
.how-step:hover { border-color:var(–text); box-shadow:6px 6px 0 var(–accent); transform:translateY(-4px); }
.how-step::after { content:’»‘; position:absolute; right:-36px; top:50%; transform:translateY(-50%); font-size:40px; color:var(–text); font-family:var(–font-display); }
.how-step:last-child::after { display:none; }
.how-number { width:72px; height:72px; background:var(–text); border:2px solid var(–accent); display:flex; align-items:center; justify-content:center; font-family:var(–font-display); font-size:36px; color:var(–accent); margin:0 auto 24px; box-shadow:4px 4px 0px var(–accent); }
.how-step h3 { font-family:var(–font-display); font-size:30px; margin-bottom:16px; letter-spacing:1.5px; color:var(–text); }
.how-step p { font-size:15px; color:var(–text-mid); line-height:1.6; max-width:280px; margin:0 auto; font-weight:600; }
/* DIRECT SECTION */
.direct-section { padding:100px 40px; background:var(–dark-section); border-top:4px solid var(–text); border-bottom:4px solid var(–text); }
.direct-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.direct-title { font-family:var(–font-display); font-size:clamp(48px,5vw,64px); line-height:0.95; margin-bottom:24px; color:#fff; }
.direct-title .accent { color:var(–accent); }
.direct-section .section-label { color:var(–accent); border-color:var(–accent); }
.direct-desc { font-size:18px; color:rgba(255,255,255,0.75); line-height:1.6; margin-bottom:32px; font-weight:500; }
.direct-benefits { list-style:none; display:grid; gap:20px; }
.direct-benefits li { display:flex; align-items:flex-start; gap:16px; font-size:16px; color:rgba(255,255,255,0.75); line-height:1.5; font-weight:500; }
.direct-benefits li strong { color:#fff; font-weight:800; }
.direct-benefits li .check { width:32px; height:32px; background:var(–accent); color:var(–text); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:16px; font-weight:800; border:2px solid #fff; }
.direct-comparison { background:#1a1a1a; border:2px solid rgba(255,255,255,0.15); box-shadow:0 24px 48px rgba(0,0,0,0.4); border-radius:var(–radius-lg); overflow:hidden; }
.direct-comparison-header { display:grid; grid-template-columns:1fr 1fr 1fr; text-align:center; font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:1px; border-bottom:1px solid rgba(255,255,255,0.1); background:#111; }
.direct-comparison-header > div { padding:20px 12px; }
.direct-comparison-header > div:first-child { color:rgba(255,255,255,0.4); }
.direct-comparison-header .ours { background:var(–accent); color:var(–text); }
.direct-comparison-header .theirs { color:rgba(255,255,255,0.4); }
.comp-row { display:grid; grid-template-columns:1fr 1fr 1fr; text-align:center; font-size:15px; border-bottom:1px solid rgba(255,255,255,0.07); font-weight:600; }
.comp-row:last-child { border-bottom:none; }
.comp-row > div { padding:16px 12px; display:flex; align-items:center; justify-content:center; }
.comp-row > div:first-child { color:rgba(255,255,255,0.7); font-size:14px; text-align:left; justify-content:flex-start; font-weight:600; padding-left:20px; }
.comp-row > div:nth-child(2) { background:rgba(212,255,0,0.07); }
.comp-yes { color:var(–accent); font-weight:800; }
.comp-no { color:rgba(255,255,255,0.3); font-size:13px; font-weight:600; }
/* FAQ */
.faq-section { padding:100px 40px; max-width:900px; margin:0 auto; }
.faq-item { border-bottom:2px solid var(–card-border); transition:all 0.3s; }
.faq-item:hover { border-color:var(–text); }
.faq-q { width:100%; background:none; border:none; color:var(–text); font-size:18px; font-weight:700; font-family:var(–font-body); padding:28px 0; text-align:left; cursor:pointer; display:flex; justify-content:space-between; align-items:center; transition:all 0.3s; gap:20px; text-transform:uppercase; letter-spacing:0.5px; }
.faq-q:hover { color:var(–accent-dark); padding-left:10px; }
.faq-q .faq-icon { font-size:28px; transition:transform 0.3s ease; color:var(–text); flex-shrink:0; font-weight:800; }
.faq-a { max-height:0; overflow:hidden; transition:max-height 0.4s ease; font-size:16px; color:var(–text-mid); line-height:1.6; font-weight:500; }
.faq-item.open { border-color:var(–accent-dark); }
.faq-item.open .faq-a { max-height:500px; padding-bottom:28px; }
.faq-item.open .faq-icon { transform:rotate(45deg); color:var(–accent-dark); }
/* CTA FINAL */
.cta-section { padding:140px 40px; text-align:center; position:relative; overflow:hidden; background:var(–dark-section); color:#fff; border-top:4px solid var(–accent); }
.cta-section::before { content:“; position:absolute; inset:0; background:url(‚data:image/svg+xml;utf8,‘); background-size:40px 40px; pointer-events:none; }
.cta-section .section-label { color:var(–text); background:var(–accent); padding:8px 16px; border:none; }
.cta-section .section-title { font-size:clamp(52px,8vw,90px); margin-bottom:24px; color:#fff; text-shadow:4px 4px 0 #000; position:relative; z-index:2; }
.cta-section .section-desc { margin:0 auto 48px; text-align:center; color:#ddd; font-size:20px; font-weight:500; position:relative; z-index:2; max-width:700px; }
/* FOOTER */
.footer { background:#050505; border-top:4px solid var(–text); padding:80px 40px 30px; color:#fff; }
.footer-grid { display:grid; grid-template-columns:2fr 1.2fr 1fr 1fr 1fr; gap:40px; max-width:1300px; margin:0 auto 60px; }
.footer-brand p { font-size:15px; color:#aaa; line-height:1.6; max-width:320px; margin-top:16px; font-weight:500; }
.footer h4 { font-family:var(–font-display); font-size:22px; letter-spacing:1.5px; margin-bottom:24px; color:var(–accent); text-transform:uppercase; }
.footer ul { list-style:none; }
.footer ul li { margin-bottom:12px; }
.footer ul a { color:#bbb; text-decoration:none; font-size:15px; transition:color 0.2s; font-weight:600; }
.footer ul a:hover { color:var(–accent); padding-left:4px; }
.footer-social { display:flex; gap:16px; margin-top:24px; }
.footer-social a { width:44px; height:44px; background:rgba(255,255,255,0.05); border:2px solid rgba(255,255,255,0.1); display:flex; align-items:center; justify-content:center; color:#fff; text-decoration:none; font-size:18px; transition:all 0.2s; }
.footer-social a:hover { background:var(–accent); color:var(–text); border-color:var(–accent); transform:translateY(-4px); }
.footer-bottom { border-top:2px solid rgba(255,255,255,0.1); padding-top:32px; text-align:center; font-size:13px; color:#666; max-width:1200px; margin:0 auto; font-weight:600; letter-spacing:1px; }
.footer-bottom a { color:var(–accent); text-decoration:none; }
/* MAP */
.map-section { padding:0; border-bottom:4px solid var(–accent); }
.map-section iframe { width:100%; height:400px; border:none; filter:grayscale(0.8) contrast(1.2); }
/* STICKY BAR */
.sticky-bar { display:none; position:fixed; bottom:0; left:0; right:0; z-index:999; background:var(–text); border-top:4px solid var(–accent); padding:16px 20px; align-items:center; justify-content:space-between; box-shadow:0 -8px 30px rgba(0,0,0,0.3); }
.sticky-bar .sticky-price { font-family:var(–font-display); font-size:32px; color:var(–accent); line-height:1; }
.sticky-bar .sticky-price small { font-family:var(–font-body); font-size:12px; color:#fff; display:block; font-weight:700; text-transform:uppercase; letter-spacing:1px; }
.sticky-bar .sticky-btns { display:flex; gap:12px; }
.sticky-bar .btn-sticky-book { background:var(–accent); color:var(–text); font-weight:800; font-size:14px; padding:14px 28px; border:2px solid var(–text); text-decoration:none; text-transform:uppercase; letter-spacing:1px; display:flex; align-items:center; box-shadow:3px 3px 0px var(–text); }
/* WA FLOAT */
.wa-float { position:fixed; bottom:32px; right:32px; z-index:998; width:64px; height:64px; background:#25D366; border:2px solid #fff; display:flex; align-items:center; justify-content:center; font-size:32px; color:#fff; text-decoration:none; box-shadow:4px 4px 0px rgba(0,0,0,0.3); transition:all 0.2s; border-radius:50%; }
.wa-float:hover { transform:translate(-2px,-2px); box-shadow:6px 6px 0px rgba(0,0,0,0.4); }
/* ANIMATIONS */
@keyframes fadeInLeft { from { opacity:0; transform:translateX(-40px); } to { opacity:1; transform:translateX(0); } }
.animate-on-scroll { opacity:0; transform:translateY(30px); transition:all 0.6s cubic-bezier(0.2,0.8,0.2,1); }
.animate-on-scroll.visible { opacity:1; transform:translateY(0); }
.animate-on-scroll.from-left { transform:translateX(-40px); }
.animate-on-scroll.from-left.visible { transform:translateX(0); }
.animate-on-scroll.from-right { transform:translateX(40px); }
.animate-on-scroll.from-right.visible { transform:translateX(0); }
.stagger-children > .animate-on-scroll:nth-child(1) { transition-delay:0s; }
.stagger-children > .animate-on-scroll:nth-child(2) { transition-delay:0.1s; }
.stagger-children > .animate-on-scroll:nth-child(3) { transition-delay:0.2s; }
.stagger-children > .animate-on-scroll:nth-child(4) { transition-delay:0.3s; }
/* BOOKING HERO */
.booking-hero { background:var(–dark-section); padding:100px 40px 80px; border-bottom:4px solid var(–accent); }
.booking-hero-inner { max-width:1200px; margin:0 auto; display:grid; grid-template-columns:1fr 1.5fr; gap:64px; align-items:start; }
.bh-info { color:#fff; }
.bh-badge { display:inline-block; background:var(–accent); color:var(–text); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:2px; padding:8px 16px; margin-bottom:28px; border-radius:var(–radius); }
.bh-title { font-family:var(–font-display); font-size:clamp(44px,5.5vw,76px); line-height:0.92; text-transform:uppercase; color:#fff; margin-bottom:20px; letter-spacing:-1px; }
.bh-title .accent { color:var(–accent); display:block; }
.bh-sub { font-size:16px; color:rgba(255,255,255,0.65); line-height:1.65; margin-bottom:24px; font-weight:500; }
.bh-price { font-family:var(–font-display); font-size:56px; color:var(–accent); line-height:1; margin-bottom:4px; letter-spacing:-1px; }
.bh-price span { font-family:var(–font-body); font-size:13px; color:rgba(255,255,255,0.45); font-weight:600; display:block; margin-bottom:24px; }
.bh-includes { list-style:none; margin-bottom:28px; }
.bh-includes li { display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; color:rgba(255,255,255,0.8); padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.06); }
.bh-includes li:last-child { border-bottom:none; }
.bh-includes li i { color:var(–accent); font-size:11px; width:14px; }
.bh-trust { display:flex; gap:20px; flex-wrap:wrap; padding-top:4px; }
.bh-trust-item { font-size:11px; font-weight:800; color:rgba(255,255,255,0.4); text-transform:uppercase; letter-spacing:1px; display:flex; align-items:center; gap:6px; }
.bh-trust-item i { color:var(–accent); }
.bh-calendar { background:#fff; border-radius:var(–radius-lg); overflow:hidden; box-shadow:0 24px 80px rgba(0,0,0,0.6); position:sticky; top:100px; }
.bh-cal-header { background:var(–accent); padding:22px 28px; }
.bh-cal-header h2 { font-family:var(–font-display); font-size:30px; color:var(–text); letter-spacing:1px; }
.bh-cal-header p { font-size:13px; color:rgba(0,0,0,0.55); font-weight:600; margin-top:4px; }
.bh-cal-body { padding:20px 24px 24px; }
.bh-cal-note { background:rgba(0,0,0,0.04); padding:14px 24px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:1px; color:#999; text-align:center; border-top:1px solid rgba(0,0,0,0.06); }
.bh-quad-link { padding:12px 24px; font-size:12px; font-weight:600; color:#aaa; text-align:center; border-top:1px solid rgba(0,0,0,0.06); }
.bh-quad-link a { color:#555; font-weight:800; text-decoration:none; border-bottom:1px solid #ccc; }
.bh-quad-link a:hover { color:#222; }
.bh-photo { position:relative; border-radius:var(–radius-lg); overflow:hidden; margin-bottom:24px; border:2px solid rgba(255,255,255,0.1); flex-shrink:0; }
.bh-photo img { width:100%; height:210px; object-fit:cover; display:block; }
.bh-photo-tag { position:absolute; bottom:12px; left:12px; background:var(–accent); color:var(–text); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:2px; padding:6px 14px; border-radius:var(–radius); }
/* ROUTE WITH MAP */
.route-layout { max-width:1200px; margin:0 auto; display:grid; grid-template-columns:280px 1fr; gap:48px; align-items:start; }
.route-map-col { position:sticky; top:100px; }
.route-map-col img { width:100%; border-radius:var(–radius-lg); border:2px solid rgba(255,255,255,0.12); box-shadow:0 16px 48px rgba(0,0,0,0.5); }
.route-map-label { font-family:var(–font-display); font-size:13px; color:var(–accent); letter-spacing:2px; text-align:center; margin-top:14px; text-transform:uppercase; opacity:0.7; }
.route-stops-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
/* URGENCY BANNER */
.urgency-banner { background:var(–accent); padding:12px 40px; text-align:center; font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:2px; color:var(–text); position:relative; z-index:999; }
/* NEW BADGE */
.badge-new { display:inline-flex; align-items:center; background:#ff3d00; color:#fff; padding:4px 12px; border-radius:var(–radius); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:2px; margin-left:10px; vertical-align:middle; box-shadow:2px 2px 0px rgba(0,0,0,0.4); }
/* RESPONSIVE */
@media (max-width:1024px) {
.header-nav { display:none; }
.mobile-menu-btn { display:block; }
.booking-inner { grid-template-columns:1fr; }
.booking-hero-inner { grid-template-columns:1fr; gap:40px; }
.bh-calendar { position:static; }
.route-layout { grid-template-columns:1fr; }
.route-map-col { position:static; max-width:280px; margin:0 auto; }
.route-stops-grid { grid-template-columns:1fr 1fr; }
.route-grid { grid-template-columns:repeat(2,1fr); }
.features-grid { grid-template-columns:repeat(2,1fr); }
.direct-inner { grid-template-columns:1fr; gap:40px; }
.how-grid { grid-template-columns:repeat(3,1fr); gap:16px; }
.how-step::after { display:none; }
.how-step { padding:24px 16px; }
.how-number { width:44px; height:44px; font-size:22px; margin-bottom:12px; }
.how-step h3 { font-size:20px; }
.footer-grid { grid-template-columns:1fr 1fr 1fr; gap:32px; }
.reviews-grid { grid-template-columns:1fr; max-width:600px; margin:0 auto; }
}
@media (max-width:768px) {
.hero-content { padding:140px 24px 80px; }
.hero h1 { font-size:clamp(48px,12vw,70px); }
.hero-price { font-size:32px; }
.booking-hero { padding:80px 20px 60px; }
.bh-title { font-size:clamp(40px,10vw,60px); }
.bh-price { font-size:44px; }
.route-stops-grid { grid-template-columns:1fr; }
.section { padding:80px 24px; }
.trust-bar { gap:20px; padding:20px; }
.trust-item { font-size:13px; gap:10px; flex:1 1 45%; min-width:0; }
.booking-section { padding:60px 24px; }
.booking-price-main { font-size:56px; }
.route-grid { grid-template-columns:1fr 1fr; gap:16px; }
.route-stop-img { height:140px; }
.features-grid { grid-template-columns:1fr; gap:20px; }
.gallery-grid { grid-template-columns:1fr 1fr; grid-template-rows:200px 200px 200px; }
.gallery-item:first-child { grid-row:auto; }
.faq-section { padding:60px 24px; }
.faq-q { font-size:16px; padding:20px 0; }
.cta-section { padding:100px 24px; }
.how-section { padding:60px 20px; }
.how-grid { gap:12px; }
.how-step { padding:20px 12px; }
.how-step h3 { font-size:18px; }
.how-step p { font-size:13px; }
.footer { padding:60px 24px 30px; }
.footer-grid { grid-template-columns:1fr; gap:40px; }
.sticky-bar { display:flex; }
.wa-float { bottom:90px; right:20px; width:52px; height:52px; font-size:26px; }
.header { padding:16px; }
.header-logo { font-size:18px; }
.header-logo img { height:30px; }
.direct-section { padding:60px 24px; }
.route-section { padding:60px 24px; }
}
@media (max-width:480px) {
.route-grid { grid-template-columns:1fr; }
.hero-ctas { flex-direction:column; align-items:stretch; }
.btn-primary { text-align:center; justify-content:center; font-size:15px; padding:16px; }
.trust-item { flex:1 1 100%; }
.comp-row > div { padding:10px 6px; font-size:12px; }
.direct-comparison-header { font-size:11px; }
.footer-grid { grid-template-columns:1fr; }
.btn-book-header { display:none; }
}
🔥 NEUES ERLEBNIS · Begrenzte Quads pro Tour · Sommertermine sind schnell weg · Sichere dir dein Datum
✓
Kostenlose Stornierung 24h vorher
Bis zu 2 Personen pro Quad
★
4,9/5 — 240+ Bewertungen
⛑
Helm und Schutzbrille inklusive
Die Quad-Route
Vier ikonische Stopps an Ibizas wilder Westküste. Nur offroad erreichbar — so wie es sein soll.
Einfach und Unkompliziert
Was kostet die Quad-Tour?+
€90 für einen Fahrer mit eigenem Quad. Wenn du das Quad mit einer Begleitperson teilen möchtest, kostet es €130 pro Quad (maximal 2 Personen pro Quad). Bei der Buchung sind nur 20% Anzahlung fällig — der Rest wird am Tag der Tour bezahlt.
Brauche ich einen Führerschein?+
Ja — ein gültiger Führerschein der Klasse B (Auto) ist erforderlich. Du musst mindestens 25 Jahre alt sein, um zu fahren. Wurde dein Führerschein außerhalb der EU ausgestellt, kann eine kleine Kaution verlangt werden.
Brauche ich Quad-Erfahrung?+
Keine Erfahrung nötig. Unsere Quads sind einfach zu fahren — unsere Guides geben dir eine ausführliche Einweisung und eine kurze Übung vor dem Start. Wer Auto fahren kann, kann Quad fahren.
Ist ein Helm Pflicht?+
Ja — Integralhelme sind für alle Fahrer Pflicht. Wir stellen sie vor Ort in allen Größen desinfiziert bereit. Schutzbrillen werden ebenfalls gestellt. Geschlossene Schuhe sind vorgeschrieben (keine Flip-Flops).
Kann ich mir ein Quad mit einem Freund teilen?+
Ja — auf einem Quad haben bis zu 2 Personen Platz. Wenn du mit einer Begleitperson buchst (1 Fahrer + 1 Beifahrer auf einem Quad), kostet es €130 pro Quad. Für das echte Solo-Erlebnis buchst du dein eigenes Quad für €90.
Was soll ich tragen?+
PFLICHT: Geschlossene Schuhe — Turnschuhe oder Sneaker. Flip-Flops sind strikt verboten. EMPFOHLEN: Kleidung, die staubig werden darf, Sonnenbrille, Sonnencreme. Nimm Badesachen mit — vielleicht kannst du schwimmen gehen!
Was ist, wenn es regnet?+
Wenn die Wetterbedingungen die Tour unsicher machen, bieten wir eine kostenlose Terminänderung oder volle Rückerstattung an. Ibiza hat über 300 Sonnentage im Jahr, es kommt also selten vor — aber deine Sicherheit geht immer vor.
Was ist die Stornierungsrichtlinie?+
Kostenlose Stornierung bis 24 Stunden vor der Tour. Bei der Buchung werden nur 20% Anzahlung berechnet — der Restbetrag wird am Tag der Tour fällig.
Wo ist der Treffpunkt?+
Unsere Basis liegt in der Av. del Doctor Fleming 15, Sant Antoni de Portmany, Ibiza. Bitte komme mindestens 20 Minuten vor der geplanten Abfahrt für die Sicherheitseinweisung und Helmanpassung.
Letzte Chance
Schließe dich über 5.000 Abenteurern an, die Ibizas wilde Seite erfahren haben. Begrenzte Quads pro Tour — Sommertermine sind schnell ausgebucht.
Verfügbarkeit prüfen und buchen →
Ab €90/Person · Kostenlose Stornierung 24h · Sofortige Bestätigung
document.querySelectorAll(‚.faq-q‘).forEach(btn => {
btn.addEventListener(‚click‘, () => {
const item = btn.parentElement;
const wasOpen = item.classList.contains(‚open‘);
document.querySelectorAll(‚.faq-item‘).forEach(i => i.classList.remove(‚open‘));
if (!wasOpen) item.classList.add(‚open‘);
});
});
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => { if (entry.isIntersecting) entry.target.classList.add(‚visible‘); });
}, { threshold: 0.08, rootMargin: ‚0px 0px -40px 0px‘ });
document.querySelectorAll(‚.animate-on-scroll‘).forEach(el => observer.observe(el));
window.addEventListener(’scroll‘, () => {
document.querySelector(‚.header‘).classList.toggle(’scrolled‘, window.scrollY > 60);
const bar = document.querySelector(‚.sticky-bar‘);
if (window.innerWidth 600 ? ‚flex‘ : ’none‘;
});
const mobileBtn = document.querySelector(‚.mobile-menu-btn‘);
const headerNav = document.querySelector(‚.header-nav‘);
if (mobileBtn) {
mobileBtn.addEventListener(‚click‘, () => {
if (headerNav.style.display === ‚flex‘) { headerNav.style.display = ’none‘; }
else {
Object.assign(headerNav.style, { display:’flex‘, flexDirection:’column‘, position:’absolute‘, top:’100%‘, left:’0′, right:’0′, background:’rgba(244,244,244,0.97)‘, padding:’20px‘, gap:’16px‘, backdropFilter:’blur(20px)‘, boxShadow:’0 8px 30px rgba(0,0,0,0.08)‘, borderBottom:’1px solid rgba(0,0,0,0.06)‘ });
}
});
}