
:root{
  color-scheme:light;
  --night:#0b0b0d;
  --night2:#141417;
  --charcoal:#25252a;
  --gold:#c99b34;
  --goldLight:#f4cb63;
  --cream:#faf9f6;
  --paper:#ffffff;
  --ink:#242428;
  --muted:#666872;
  --stroke:#e8e5df;
  --soft:#f3f1eb;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:94px}
body{margin:0;background:var(--cream);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit}
a:focus-visible{outline:3px solid var(--goldLight);outline-offset:4px;border-radius:3px}
img{display:block;max-width:100%}
.wrap{width:min(1216px,calc(100% - 48px));margin-inline:auto}
.skip-link{position:absolute;top:-100px;left:16px;z-index:50;background:#fff;color:#121212;padding:9px 12px;border-radius:6px}
.skip-link:focus{top:16px}
/* Solid, compact site navigation */
.site-header{position:sticky;top:0;z-index:15;background:rgba(10,10,12,.97);border-bottom:1px solid rgba(243,201,97,.28);backdrop-filter:blur(14px);color:#fff}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:24px}
.brand{white-space:nowrap;font-weight:800;letter-spacing:-.015em;text-decoration:none;font-size:1.04rem}
.brand .mark{display:inline-block;background:var(--goldLight);width:9px;height:9px;transform:rotate(45deg);margin:0 13px 2px 0}
.brand strong{color:var(--goldLight)}
.navigation{display:flex;gap:clamp(12px,2.2vw,30px);align-items:center}
.navigation>a{color:#e8e7e5;text-decoration:none;font-size:.89rem;font-weight:600;white-space:nowrap}
.navigation>a:hover{color:var(--goldLight)}
.navigation .nav-action{color:#17140a;background:var(--goldLight);border-radius:999px;padding:8px 15px;font-weight:800}
.navigation .nav-action:hover{background:#fff0b6;color:#14120b}
/* The banner is intentionally NEVER cropped or covered. */
.banner{background:#050505;overflow:hidden;border-bottom:1px solid rgba(243,201,97,.48)}
.banner img{display:block;width:100%;height:auto;object-fit:contain;object-position:center top}
/* Profile follows banner, rather than overlaying any artwork. */
.intro-band{background:linear-gradient(180deg,#0b0b0d,#111114);color:#f6f5f2;padding:28px 0 48px}
.intro-panel{display:grid;grid-template-columns:144px minmax(0,1fr) auto;gap:28px;align-items:center;border:1px solid #414039;background:linear-gradient(110deg,#19191d,#101013);border-radius:24px;padding:25px 30px;box-shadow:0 18px 35px rgba(0,0,0,.15)}
.portrait{border:2px solid #cda343;padding:6px;background:#0d0d10;border-radius:24px;box-shadow:0 0 0 5px rgba(217,170,66,.06)}
.portrait img{width:128px;height:128px;aspect-ratio:1;object-fit:contain;border-radius:17px}
.pretitle{margin:0 0 7px;font-size:.72rem;letter-spacing:.15em;font-weight:800;text-transform:uppercase;color:var(--goldLight)}
h1{margin:0;color:#fff;font-size:clamp(1.85rem,3.5vw,3rem);line-height:1.08;letter-spacing:-.038em}
h1 span{color:var(--goldLight)}
.hero-summary{font-size:.98rem;color:#d8d6d3;max-width:690px;margin:10px 0 0}
.intro-actions{display:flex;flex-direction:column;gap:10px;min-width:190px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;font-weight:800;font-size:.89rem;line-height:1.25;padding:13px 17px;border-radius:10px;transition:transform .18s,background .18s;white-space:nowrap}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--goldLight);color:#201700}
.button-primary:hover{background:#ffe39a}
.button-outline{background:#25252a;border:1px solid #44444a;color:#fff}
.button-outline:hover{background:#34343a}
/* Editorial content */
.section{padding:76px 0}
.section-tight{padding-top:48px}
.section-white{background:#fff}
.section-soft{background:var(--cream)}
.kicker{margin:0 0 12px;color:#a77816;font-size:.78rem;letter-spacing:.13em;font-weight:850;text-transform:uppercase}
h2{font-size:clamp(1.75rem,3.3vw,2.6rem);line-height:1.18;letter-spacing:-.03em;margin:0 0 17px}
h3{line-height:1.3}
.copy{color:#505058;max-width:790px;font-size:1.045rem;margin:0 0 16px}
.our-story{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:60px;align-items:center}
.story-facts{background:#18181b;color:#fff;padding:28px;border-radius:20px;border-top:3px solid var(--goldLight)}
.story-facts h3{margin:0 0 17px;font-size:1.15rem;color:#fff}
.story-facts dl{margin:0}
.story-facts .fact{border-top:1px solid #333338;padding:13px 0;display:grid;gap:2px}
.story-facts dt{color:#bebdc1;font-size:.83rem}
.story-facts dd{margin:0;color:#fff;font-weight:700}
.fine-link{display:inline-flex;gap:8px;align-items:center;font-weight:800;text-decoration:none;color:#dba932;margin-top:18px}
.fine-link:hover{text-decoration:underline}
.cards-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}
.cards-head p{max-width:650px;color:var(--muted);margin:0}
.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.theme-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--stroke);border-radius:17px;padding:26px 22px 22px;min-height:282px;box-shadow:0 7px 20px rgba(21,21,21,.035);transition:border-color .18s,transform .18s}
.theme-card:hover{border-color:#c99b34;transform:translateY(-3px)}
.theme-icon{font-size:2rem;line-height:1.4;margin-bottom:14px}
.theme-card h3{font-size:1.1rem;margin:0 0 10px;letter-spacing:-.01em}
.theme-card p{font-size:.935rem;line-height:1.58;color:#66686f;flex:1;margin:0 0 22px}
.theme-link{font-size:.88rem;font-weight:850;color:#88630b;text-decoration:none;border-top:1px solid #ece9e2;padding-top:16px;display:flex;justify-content:space-between;align-items:center;gap:6px}
.theme-link:hover{color:#1b1b1f}
.playlist-bar{margin-top:21px;display:flex;flex-wrap:wrap;gap:10px}
.playlist-bar a{border:1px solid #e6decb;background:#fffaf0;color:#635022;text-decoration:none;border-radius:999px;font-size:.82rem;font-weight:750;padding:9px 13px}
.playlist-bar a:hover{background:#f5e9cd}
.promise-section{background:#111114;color:#fff;padding:52px 0}
.promise-inner{display:grid;grid-template-columns:1fr 1.2fr;gap:52px;align-items:center}
.promise-inner .kicker{color:var(--goldLight)}
.promise-inner h2{color:#fff;margin-bottom:0}
.promise-inner p{color:#e5e3dd;margin:0 0 14px}
.promise-inner .closing{color:var(--goldLight);font-weight:800}
.link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:25px}
.link-box{display:flex;flex-direction:column;gap:5px;padding:21px 23px;background:#fff;border:1px solid var(--stroke);text-decoration:none;border-radius:14px;transition:transform .18s,border-color .18s}
.link-box:hover{transform:translateY(-2px);border-color:#d7ab4c}
.link-box .small{color:#a57822;letter-spacing:.11em;text-transform:uppercase;font-size:.72rem;font-weight:850}
.link-box strong{font-size:1.03rem}
.link-box span{font-size:.89rem;color:#6a6c72}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.contact-panel{padding:32px;border:1px solid #e9e5dc;background:#fff;border-radius:17px}
.contact-panel h2{font-size:1.6rem}
.contact-panel p{color:#60616a;margin:0 0 15px}
.contact-panel a:not(.button){color:#8b6110;font-weight:750;overflow-wrap:anywhere}
.contact-panel .big-mail{font-size:1.14rem}
footer{background:#0b0b0d;color:#d3d2d4;padding:30px 0;font-size:.89rem}
.footer-grid{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.footer-links{display:flex;gap:20px;flex-wrap:wrap}
.footer-links a{text-decoration:none;color:#fff}
.footer-links a:hover{color:var(--goldLight)}
@media (max-width:1080px){
 .intro-panel{grid-template-columns:128px 1fr;gap:23px}
 .portrait img{width:112px;height:112px}
 .intro-actions{grid-column:2;flex-direction:row;flex-wrap:wrap}
 .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:780px){
 .navigation .nav-action{display:none}
 .header-inner{flex-wrap:wrap;padding:12px 0;min-height:0}
 .navigation{gap:13px;overflow-x:auto;width:100%;padding-bottom:4px}
 .navigation>a{font-size:.82rem}
 .intro-panel{grid-template-columns:88px 1fr;padding:18px;gap:18px;border-radius:17px}
 .portrait{padding:4px;border-radius:15px}
 .portrait img{width:76px;height:76px;border-radius:10px}
 .intro-actions{grid-column:1 / -1}
 .intro-band{padding:19px 0 29px}
 .pretitle{font-size:.65rem;letter-spacing:.07em}
 h1{font-size:clamp(1.55rem,5vw,2.25rem)}
 .hero-summary{font-size:.92rem}
 .section{padding:53px 0}
 .our-story,.promise-inner,.contact-grid{grid-template-columns:1fr;gap:24px}
 .cards-head{display:block}
 .link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:520px){
 .wrap{width:min(100% - 30px,1216px)}
 .brand{font-size:.94rem}
 .banner img{width:100%;height:auto}
 .intro-panel{grid-template-columns:1fr;gap:12px}
 .portrait{width:94px}
 .portrait img{width:80px;height:80px}
 .intro-actions{grid-column:auto;flex-direction:column;width:100%}
 .intro-actions .button{width:100%}
 .card-grid,.link-grid{grid-template-columns:1fr}
 .theme-card{min-height:0}
 .playlist-bar a{font-size:.79rem}
 .contact-panel{padding:22px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none !important}}

/* Version 3: eight editorial category previews, no third-party image requests */
#themen .cards-head{margin-bottom:24px}
#themen .cards-head p{max-width:820px}
#themen .card-grid{column-gap:18px;row-gap:20px}
#themen .theme-card{padding:0;min-height:0;overflow:hidden;border-radius:18px;box-shadow:0 12px 30px rgba(20,19,17,.055)}
#themen .theme-media{width:100%;overflow:hidden;background:#151518;aspect-ratio:2/1}
#themen .theme-media img{width:100%;height:100%;object-fit:cover;display:block}
#themen .theme-body{display:flex;flex-direction:column;flex:1;padding:20px 20px 18px}
#themen .theme-body h3{font-size:1.07rem;margin:0 0 9px;min-height:2.3em}
#themen .theme-body p{font-size:.91rem;line-height:1.54;flex:1;margin:0 0 16px;color:#585960}
#themen .theme-link{padding-top:12px;font-size:.845rem;min-height:42px}
#themen .playlist-extra{margin-top:35px;padding-top:21px;border-top:1px solid #e8e0d0}
#themen .playlist-extra h3{font-size:1.05rem;color:#272624;margin:0 0 14px}
#themen .playlist-bar{margin-top:0}
#themen .theme-card:hover .theme-media img{filter:brightness(1.10)}
@media(max-width:520px){
 #themen .theme-card{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:stretch;min-height:0}
 #themen .theme-media{aspect-ratio:auto;height:100%;min-height:174px}
 #themen .theme-media img{height:100%;object-fit:cover;object-position:center}
 #themen .theme-body{padding:15px 14px 14px}
 #themen .theme-body h3{font-size:1.01rem;margin-bottom:5px;min-height:0}
 #themen .theme-body p{font-size:.87rem;line-height:1.43;margin-bottom:10px}
 #themen .theme-link{font-size:.82rem;min-height:34px}
}
@media(max-width:360px){#themen .theme-card{grid-template-columns:94px minmax(0,1fr)}#themen .theme-body{padding:11px}}

/* Keep anchored content visible below the sticky navigation */
section[id]{scroll-margin-top:100px}
@media(max-width:780px){section[id]{scroll-margin-top:145px}}
#themen .theme-media picture{display:block;width:100%;height:100%}


/* Mehrseiten-Erweiterung */
.page-hero{background:linear-gradient(125deg,#101013,#222124);border-top:2px solid #c99b34;color:#fff;padding:65px 0 60px}
.page-hero .kicker{color:var(--goldLight)}
.page-hero h1{max-width:900px;font-size:clamp(2.4rem,5vw,4.1rem);line-height:1.13}
.page-hero p{max-width:780px;color:#deddd8;font-size:1.09rem;margin:19px 0 0}
.content-narrow{max-width:820px}
.story-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}
.story-grid img{width:100%;max-width:400px;border:2px solid #d6ac43;border-radius:24px;background:#111}
.story-section h2{margin:0 0 17px}
.story-section p{font-size:1.07rem;color:#55565c}
.story-section a{color:#8d620d;font-weight:800}
.story-band{background:#161619;color:#fff;border-radius:24px;padding:30px;max-width:1000px}
.story-band h2,.story-band p{color:#fff}
.story-band p{color:#e2dfda}
.topic-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}
.topic-panel{background:#fff;border:1px solid var(--stroke);border-radius:20px;padding:26px}
.topic-panel h2{font-size:1.4rem;margin-bottom:10px}
.topic-panel p{color:#55565d}
.topic-panel a{color:#8e650f;font-weight:800;text-decoration:none}
.topic-panel a:hover{text-decoration:underline}
.form-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.65fr);gap:30px;align-items:start}
.contact-form{background:white;border:1px solid var(--stroke);border-radius:23px;padding:30px;box-shadow:0 8px 30px rgba(0,0,0,.045)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-field{margin:0 0 18px}
.form-field label{display:block;font-weight:750;margin-bottom:7px;color:#232323}
.form-field input,.form-field select,.form-field textarea{width:100%;font:inherit;color:#222;background:#fff;border:1px solid #a7a7a8;border-radius:10px;padding:12px 13px}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:3px solid #f1d989;outline-offset:1px;border-color:#a17b25}
.form-field textarea{min-height:170px;resize:vertical}
.form-notice{font-size:.88rem;color:#55565d;line-height:1.55;margin:0 0 18px}
.form-notice a{color:#835a06;font-weight:800}
.form-submit{border:0;font:inherit;cursor:pointer;background:#e6b745;color:#15110b;border-radius:11px;padding:14px 22px;font-weight:850}
.form-submit:hover{background:#f5cd63}
.alert{padding:14px 16px;border-radius:12px;margin-bottom:20px;font-weight:650}
.alert-success{background:#eaf6e9;color:#1d5426;border:1px solid #a8cfaa}
.alert-error{background:#fff0ef;color:#83342b;border:1px solid #e9aaa3}
.contact-side{background:#161619;color:#fff;border-radius:22px;padding:28px}
.contact-side h2{color:#fff;font-size:1.4rem}
.contact-side p{color:#dedbdd}
.contact-side a{color:#f3cb65;overflow-wrap:anywhere}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.form-layout,.story-grid,.topic-rows{grid-template-columns:1fr}.story-grid img{max-width:320px}}
@media(max-width:630px){.form-row{grid-template-columns:1fr}.contact-form{padding:20px}.page-hero{padding:46px 0}.wrap{width:min(1216px,calc(100% - 30px))}}




/* Über-uns Fotobereich */
.about-photo-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px;align-items:start}
.about-photo-row figure{margin:0}
.about-photo-row img{width:100%;border:2px solid #d6ac43;border-radius:22px;background:#111;box-shadow:0 10px 28px rgba(0,0,0,.08)}
.about-photo-row figcaption{margin-top:8px;color:#666872;font-size:.9rem;line-height:1.45}
@media(max-width:760px){.about-photo-row{grid-template-columns:1fr;gap:18px}}


/* WomoReisen: kompakte, unverzerrte 16:9-Fotogalerie unter „Über uns“ */
.about-photo-row {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,320px));
  justify-content:center;
  align-items:start;
  gap:20px;
  width:100%;
  margin:26px auto 0;
}
.about-photo-row figure { margin:0; min-width:0; }
.about-photo-row .photo-thumb {
  display:block;
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  border:2px solid #d6ac43;
  border-radius:14px;
  background:#161619;
  box-shadow:0 6px 19px rgba(0,0,0,.10);
  cursor:zoom-in;
}
.about-photo-row .photo-thumb img {
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  aspect-ratio:16/9;
  object-fit:contain;
  object-position:center;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:#161619;
}
.about-photo-row figcaption {
  margin-top:7px;
  color:#666872;
  font-size:.83rem;
  line-height:1.35;
  text-align:center;
}
.photo-zoom-hint {
  position:absolute;
  bottom:8px;
  right:9px;
  padding:3px 8px;
  border-radius:6px;
  color:#fff;
  background:rgba(10,10,12,.82);
  font-size:.72rem;
  pointer-events:none;
}
.photo-lightbox {
  width:min(96vw,1540px);
  max-width:1540px;
  max-height:96dvh;
  padding:0;
  border:1px solid rgba(243,201,97,.5);
  border-radius:12px;
  background:#0c0c0e;
  color:white;
  overflow:auto;
  box-shadow:0 30px 110px rgba(0,0,0,.65);
}
.photo-lightbox::backdrop { background:rgba(0,0,0,.87); }
.photo-lightbox-inner { position:relative; padding:42px 14px 12px; }
.photo-lightbox-inner img {
  width:auto;
  max-width:100%;
  max-height:calc(96dvh - 115px);
  height:auto;
  aspect-ratio:16/9;
  object-fit:contain;
  display:block;
  margin:auto;
}
.photo-lightbox-inner p { margin:12px 0 3px;text-align:center;color:#ddd;font-size:.9rem; }
.photo-lightbox-close {
  position:absolute;
  right:9px;
  top:5px;
  width:37px;
  height:37px;
  border-radius:50%;
  border:1px solid #a58a4d;
  background:#202024;
  color:#fff;
  font-size:1.7rem;
  line-height:1;
  cursor:pointer;
}
.photo-lightbox-close:focus-visible { outline:3px solid #f4cb63; outline-offset:2px; }
@media (max-width:540px) {
  .about-photo-row { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px; }
  .about-photo-row .photo-thumb { border-radius:9px; }
  .about-photo-row figcaption { font-size:.75rem; }
  .photo-zoom-hint { display:none; }
  .photo-lightbox-inner { padding:45px 8px 12px; }
}
