/*
Theme Name: mehrMeer Kreuzfahrten Pro
Theme URI: https://mehrmeer-kreuzfahrten.de
Author: Philipp Benedict
Description: Fertiges WordPress-Theme für mehrMeer-Kreuzfahrten mit Startseite, WhatsApp, Impressum, Datenschutz und AGB.
Version: 4.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: mehrmeer
*/

:root {
  --navy:#0d2b52;
  --deep:#0a2445;
  --teal:#1687a7;
  --aqua:#e8f7fa;
  --gold:#c9973b;
  --sand:#f5f1ea;
  --cream:#fffaf1;
  --text:#1e2b37;
  --muted:#647587;
  --white:#ffffff;
  --whatsapp:#25D366;
  --shadow:0 18px 42px rgba(13,43,82,.10);
  --soft-shadow:0 12px 28px rgba(13,43,82,.07);
  --radius:24px;
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--text);
  background:var(--sand);
  line-height:1.62;
}
a{color:var(--teal);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
.container{width:min(var(--container),calc(100% - 32px));margin:0 auto}
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter:blur(14px);
  background:rgba(245,241,234,.94);
  border-bottom:1px solid rgba(13,43,82,.08);
}
.header-inner{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.brand{
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--navy);
  font-size:1.12rem;
  font-weight:800;
  letter-spacing:-.01em;
}
.brand:hover{text-decoration:none}
.brand img{
  width:60px;
  height:60px;
  object-fit:cover;
  border-radius:17px;
  box-shadow:var(--soft-shadow);
  background:#fff;
}
.nav-menu{
  display:flex;
  align-items:center;
  gap:22px;
}
.nav-menu a{
  color:var(--navy);
  font-weight:700;
  font-size:.98rem;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:999px;
  padding:14px 22px;
  font-weight:800;
  transition:.18s ease;
  border:2px solid transparent;
  text-decoration:none !important;
  white-space:nowrap;
}
.btn-primary{background:var(--gold);color:#fff}
.btn-secondary{background:#fff;color:var(--navy);border-color:rgba(13,43,82,.12)}
.btn-whatsapp{background:var(--whatsapp);color:#fff}
.btn:hover{transform:translateY(-1px);opacity:.95}
.hero{
  padding:76px 0 58px;
  background:
    radial-gradient(circle at 82% 12%, rgba(22,135,167,.16), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.62), rgba(245,241,234,1));
}
.hero-grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:36px;
  align-items:center;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 14px;
  border-radius:999px;
  background:#fff;
  color:var(--navy);
  box-shadow:var(--soft-shadow);
  font-size:.95rem;
  font-weight:800;
}
h1{
  font-size:clamp(2.35rem,5vw,4.65rem);
  line-height:1.04;
  margin:18px 0;
  color:var(--navy);
  letter-spacing:-.04em;
}
.hero p{
  font-size:1.1rem;
  color:var(--muted);
  max-width:64ch;
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-card{
  background:#fff;
  border-radius:34px;
  padding:22px;
  box-shadow:var(--shadow);
  overflow:hidden;
  position:relative;
}
.hero-card:after{
  content:"";
  position:absolute;
  inset:auto 20px 20px 20px;
  height:72px;
  border-radius:24px;
  background:linear-gradient(90deg,rgba(22,135,167,.08),rgba(201,151,59,.12));
  z-index:0;
}
.hero-card img{width:100%;border-radius:26px;position:relative;z-index:1}
.stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:20px;
}
.stat{
  background:#fff;
  border-radius:20px;
  padding:18px;
  box-shadow:var(--soft-shadow);
}
.stat strong{display:block;font-size:1.35rem;color:var(--navy);line-height:1.15}
.stat span{font-size:.95rem;color:var(--muted)}
.section{padding:74px 0}
.section h2{
  font-size:clamp(1.85rem,3vw,3.05rem);
  line-height:1.1;
  color:var(--navy);
  margin:0 0 14px;
  letter-spacing:-.02em;
}
.section-intro{max-width:70ch;color:var(--muted);font-size:1.04rem}
.kicker{
  color:var(--gold);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.8rem;
  margin-bottom:10px;
}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}
.card{
  background:#fff;
  border-radius:var(--radius);
  padding:28px;
  box-shadow:var(--soft-shadow);
}
.card h3{margin:10px 0;color:var(--navy);font-size:1.28rem}
.icon{
  width:54px;
  height:54px;
  border-radius:17px;
  display:grid;
  place-items:center;
  background:rgba(22,135,167,.10);
  color:var(--teal);
  font-size:1.45rem;
}
.highlight{
  background:
    radial-gradient(circle at 90% 0%, rgba(201,151,59,.25), transparent 30%),
    linear-gradient(135deg,var(--navy),#123c73);
  color:#fff;
}
.highlight h2,.highlight h3,.highlight a{color:#fff}
.highlight .section-intro{color:rgba(255,255,255,.74)}
.benefit-card{
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:24px;
}
.benefit-card p{color:rgba(255,255,255,.78)}
.benefit-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  margin-bottom:12px;
}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}
.step-number{
  display:inline-grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:999px;
  background:rgba(22,135,167,.10);
  color:var(--teal);
  font-weight:900;
  margin-bottom:12px;
}
.testimonial{display:grid;grid-template-columns:1.18fr .82fr;gap:22px;align-items:center}
.testimonial blockquote{
  margin:0;
  background:#fff;
  border-radius:var(--radius);
  padding:30px;
  box-shadow:var(--soft-shadow);
  font-size:1.18rem;
  color:var(--navy);
  font-weight:700;
}
.faq{display:grid;gap:14px;margin-top:24px}
details{background:#fff;border-radius:20px;padding:18px 20px;box-shadow:var(--soft-shadow)}
summary{cursor:pointer;font-weight:800;color:var(--navy)}
.contact-box{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px}
.contact-list{display:grid;gap:14px}
.contact-item{background:#fff;padding:20px;border-radius:20px;box-shadow:var(--soft-shadow)}
.small-note{font-size:.9rem;color:var(--muted);margin-top:20px}
.legal h1{font-size:clamp(2rem,4vw,3.3rem)}
.legal h2{margin-top:34px}
.legal p,.legal li{color:#34455a}
.site-footer{padding:34px 0 56px;color:var(--muted)}
.footer-box{
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  border-top:1px solid rgba(13,43,82,.08);
  padding-top:24px;
}
.whatsapp-float{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:999;
  background:var(--whatsapp);
  color:#fff;
  border-radius:999px;
  padding:14px 18px;
  font-weight:900;
  box-shadow:0 16px 34px rgba(37,211,102,.34);
  display:flex;
  align-items:center;
  gap:8px;
  text-decoration:none !important;
}
.whatsapp-float:hover{transform:translateY(-2px);color:#fff}
@media (max-width:980px){
  .hero-grid,.testimonial,.contact-box,.grid-3,.steps{grid-template-columns:1fr}
  .nav-menu{display:none}
  .stats{grid-template-columns:1fr}
  .hero{padding-top:44px}
  .whatsapp-float{right:14px;bottom:14px;padding:13px 15px}
}
