@font-face{font-family:'Tuesday Night';src:url('/assets/fonts/tuesday-night-regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap;}
/* ============================================================
   MARINE INFINITE CHARTER — Design System (Rebuild, YourTouch-nah)
   Tokens · Base · Header/Mega-Menü · Footer · Animations-Framework
   ============================================================ */
:root{
  --gelb:#F5DF4D; --grau:#949597; --tuerkis:#5DC7D5; --offwhite:#F0F2F1; --pink:#E157A5;
  --ink:#1c2b33; --ink-2:#2a5561; --tx:#4a545a;
  --hd:'Roboto Condensed',sans-serif; --bd:'Roboto',sans-serif; --script:'Tuesday Night',cursive;
  --shadow-s:0 4px 12px rgba(28,43,51,.08); --shadow-m:0 12px 30px rgba(28,43,51,.14);
  --r:10px; --header-h:78px; --wrap:1140px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--bd);font-size:16px;line-height:1.75;color:var(--tx);background:#fff}
img{max-width:100%;display:block}
a{color:var(--tuerkis)}
h1,h2,h3,h4{font-family:var(--hd);color:var(--ink);line-height:1.15}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}

/* ---------- BUTTONS ---------- */
.btn{display:inline-block;font-family:var(--hd);font-weight:700;text-transform:uppercase;
  letter-spacing:1.5px;font-size:15px;padding:15px 34px;border-radius:6px;text-decoration:none;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;cursor:pointer;border:0}
.btn--pink{background:var(--pink);color:#fff}
.btn--pink:hover{background:#d0418f;transform:translateY(-2px);box-shadow:var(--shadow-m)}
.btn--tuerkis{background:var(--tuerkis);color:#fff}
.btn--tuerkis:hover{background:#49b3c2;transform:translateY(-2px)}
.btn--ghost{background:transparent;color:#fff;border:2px solid #fff}
.btn--ghost:hover{background:#fff;color:var(--ink)}

/* ---------- HEADER (transparent -> solid) ---------- */
.mi-header{position:fixed;inset:0 0 auto 0;z-index:100;height:var(--header-h);
  transition:background .3s ease,box-shadow .3s ease}
.mi-header__inner{max-width:var(--wrap);margin:0 auto;height:100%;padding:0 22px;
  display:flex;align-items:center;gap:28px}
.mi-header__logo{margin-right:auto;display:flex;align-items:center}
.mi-header__logo img{height:44px;width:auto}
.mi-header .logo-dark{display:none}
.mi-header.is-solid{background:rgba(255,255,255,.96);backdrop-filter:blur(8px);box-shadow:var(--shadow-s)}
.mi-header.is-solid .logo-white{display:none}
.mi-header.is-solid .logo-dark{display:block}
.mi-header__cta{font-family:var(--hd);font-weight:700;text-transform:uppercase;letter-spacing:1px;
  font-size:13px;background:var(--gelb);color:var(--ink);padding:11px 20px;border-radius:6px;
  text-decoration:none;transition:transform .15s ease,box-shadow .15s ease;white-space:nowrap}
.mi-header__cta:hover{transform:translateY(-2px);box-shadow:var(--shadow-s)}

/* ---------- NAV / MEGA-MENÜ ---------- */
.mi-nav__list{list-style:none;display:flex;gap:4px}
.mi-nav__item{position:relative}
.mi-nav__item>a{display:block;font-family:var(--hd);font-weight:700;text-transform:uppercase;
  letter-spacing:1.2px;font-size:14px;color:#fff;text-decoration:none;padding:12px 14px;position:relative}
.mi-header.is-solid .mi-nav__item>a{color:var(--ink)}
.mi-nav__item>a:after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:3px;
  background:var(--gelb);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.mi-nav__item:hover>a:after,.mi-nav__item.is-active>a:after{transform:scaleX(1)}
.caret{display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);margin-left:7px}
.mi-nav__sub{list-style:none;position:absolute;top:100%;left:8px;min-width:260px;
  background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-radius:10px;box-shadow:var(--shadow-m);
  padding:10px;opacity:0;visibility:hidden;transform:translateY(14px);
  transition:opacity .22s ease,transform .22s ease,visibility .22s}
.mi-nav__item:hover>.mi-nav__sub,.mi-nav__item.is-open>.mi-nav__sub{opacity:1;visibility:visible;transform:translateY(6px)}
.mi-nav__sub .mi-nav__item>a{color:var(--ink);font-size:13px;letter-spacing:1px;padding:11px 14px;border-radius:7px}
.mi-nav__sub .mi-nav__item>a:hover{background:var(--offwhite);color:var(--ink)}
.mi-nav__sub .mi-nav__item>a:after{display:none}

/* ---------- MOBILE NAV ---------- */
.mi-burger{display:none;background:none;border:0;width:42px;height:42px;cursor:pointer;position:relative;z-index:120}
.mi-burger span{display:block;width:26px;height:3px;background:#fff;margin:5px auto;border-radius:2px;transition:.25s ease}
.mi-header.is-solid .mi-burger span,.mi-burger.is-open span{background:var(--ink)}
.mi-burger.is-open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.mi-burger.is-open span:nth-child(2){opacity:0}
.mi-burger.is-open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.mi-mobilenav{position:fixed;inset:0;z-index:110;background:rgba(255,255,255,.98);backdrop-filter:blur(10px);
  padding:100px 30px 40px;transform:translateX(100%);transition:transform .3s ease;overflow:auto}
.mi-mobilenav.is-open{transform:translateX(0)}
.mi-mobilenav__list{list-style:none}
.mi-mobilenav__list>.mi-nav__item>a{color:var(--ink);font-size:19px;padding:14px 6px;display:block;
  font-family:var(--hd);font-weight:700;text-transform:uppercase;letter-spacing:1.4px;text-decoration:none;
  border-bottom:1px solid #e4eaea}
.mi-mobilenav .mi-nav__sub{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;
  background:transparent;padding:0 0 0 16px}
.mi-mobilenav .mi-nav__sub a{color:var(--tx)!important;font-size:15px!important;text-transform:none!important}
.mi-mobilenav__cta{display:block;text-align:center;margin-top:26px}
@media(max-width:1023px){ .mi-nav,.mi-header__cta{display:none} .mi-burger{display:block} }

/* ---------- DOUBLE-HEADING (WGL-nah) ---------- */
.dh{margin-bottom:24px}
.dh__script{font-family:var(--script);color:var(--tuerkis);font-size:34px;line-height:1;display:block;margin-bottom:2px}
.dh__title{font-size:36px;font-weight:700;position:relative;display:inline-block;padding-bottom:12px}
.dh__title:after{content:"";position:absolute;left:0;bottom:0;width:70px;height:4px;background:var(--gelb);
  border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .6s ease .25s}
.is-visible .dh__title:after{transform:scaleX(1)}
.dh--center{text-align:center}
.dh--center .dh__title:after{left:50%;margin-left:-35px}
.dh--light .dh__title{color:#fff}

/* ---------- ANIMATIONS-FRAMEWORK (Scroll-Entrance) ---------- */
.rv{opacity:0;transform:translateY(38px);transition:opacity .65s ease,transform .65s ease;
  transition-delay:var(--d,0s)}
.rv.is-visible{opacity:1;transform:none}
.rv--left{transform:translateX(-46px)} .rv--right{transform:translateX(46px)}
.rv--left.is-visible,.rv--right.is-visible{transform:none}

/* Karten-Hover (infobox/tour-card) */
.hovercard{transition:transform .28s ease,box-shadow .28s ease}
.hovercard:hover{transform:translateY(-8px);box-shadow:var(--shadow-m)}

/* Ken-Burns */
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.12)}}

/* ---------- FOOTER ---------- */
.mi-footer{background:var(--ink);color:#b9c8cb;margin-top:0}
.mi-footer a{color:#dfe9eb;text-decoration:none;transition:color .15s}
.mi-footer a:hover{color:var(--gelb)}
.mi-footer__inner{max-width:var(--wrap);margin:0 auto;padding:56px 22px 40px;
  display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:44px}
.mi-footer__script{font-family:var(--script);color:var(--gelb);font-size:30px;margin:14px 0 8px}
.mi-footer__col h4{color:#fff;font-size:15px;text-transform:uppercase;letter-spacing:2px;margin-bottom:16px;
  padding-bottom:8px;border-bottom:2px solid var(--tuerkis);display:inline-block}
.mi-footer__col ul{list-style:none}
.mi-footer__col li{padding:5px 0;font-size:14.5px}
.mi-footer__bar{border-top:1px solid rgba(255,255,255,.12);padding:18px 22px;max-width:var(--wrap);
  margin:0 auto;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  font-family:var(--hd);font-size:12.5px;letter-spacing:1px}
@media(max-width:820px){ .mi-footer__inner{grid-template-columns:1fr;gap:30px} }

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .rv,.rv--left,.rv--right{opacity:1!important;transform:none!important;transition:none!important}
  .dh__title:after{transform:scaleX(1)!important;transition:none!important}
  *{animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* Lesbarkeit weisser Header-Elemente ueber hellen Hero-Bildern */
.mi-header:not(.is-solid) .mi-burger{filter:drop-shadow(0 1px 3px rgba(0,0,0,.55))}
.mi-header:not(.is-solid) .logo-white{filter:drop-shadow(0 1px 4px rgba(0,0,0,.5))}

.mi-footer__logo{width:auto;height:56px;display:block;margin-bottom:14px}
