
/* ===== FEWO-Killer v6 =====
   Fonts: Inter-Variable.woff2, PlayfairDisplay-Variable.woff2
   @font-face binden diese lokal ein. Externe Google-Fonts im <head> wurden auskommentiert.
   Diese können aber, sollte der Bedarf bestehen, damit auch von extern eingebunden werden.   */
@font-face{
  font-family:"Inter";
  src: url("../fonts/Inter-Variable.woff2") format("woff2");
  font-weight: 100 900; font-style: normal; font-display: swap;
}
@font-face{
  font-family:"Playfair Display";
  src: url("../fonts/PlayfairDisplay-Variable.woff2") format("woff2");
  font-weight: 400 900; font-style: normal; font-display: swap;
}

/* Design Sheet – FEWO-Killer v6 */
:root{
  --green:#2E5949; /* Waldgrün */
  --sage:#A3B18A;  /* Salbeigrün */
  --terra:#A55A3C; /* Terrakotta */
  --cream:#F5F1E6; /* Creme */
  --anthra:#2B2D2F;/* Anthrazit */

  --bg:var(--cream);
  --text:var(--anthra);
  --accent:var(--terra);
  --radius:14px;
  --shadow:0 12px 30px rgba(0,0,0,.12);
  --appbar-height: 84px;
  --hero-height:78vh; --hero-height-mobile:58vh;
}

html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.7;font-size:18px}
h1,h2,h3,h4{font-family:"Playfair Display",serif;line-height:1.2;letter-spacing:.2px}
img{max-width:100%;display:block;border-radius:12px}
a{color:var(--green);text-decoration:none}
a:hover{text-decoration:underline}

/* Navbar transition:background = basis Dropshadow */
.appbar{position:sticky;top:0;z-index:60;backdrop-filter:saturate(140%) blur(6px);transition:background .25s ease, box-shadow .25s ease}
.appbar-transparent{background:transparent}
.appbar.scrolled{background:rgba(245,241,230,.95);box-shadow:0 6px 20px rgba(0,0,0,.12)}
.appbar .container{display:flex;align-items:center;justify-content:space-between;gap:.75rem;height:var(--appbar-height)}
.appbar .brand{display:flex;align-items:center;gap:.75rem;color:var(--anthra);font-weight:700}
.appbar img.logo{display:block;height:auto;width:auto;max-height:56px;border-radius:10px}
.brand-text{font-size:1.15rem;letter-spacing:.3px}
.appbar .menu{display:flex;align-items:center;gap:.6rem}
.appbar .menu a,.appbar .menu .linklike{appearance:none;background:transparent;border:none;padding:.65rem .9rem;border-radius:12px;font-weight:700;letter-spacing:.2px;color:var(--anthra)}
.appbar .menu a:hover,.appbar .menu .linklike:hover{background:rgba(163,177,138,.25);text-decoration:none}
.appbar .menu a.active{background:var(--terra);color:#fff;box-shadow:var(--shadow)}
.appbar .dropdown{position:relative}
.appbar .dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #e6e6e6;border-radius:12px;box-shadow:var(--shadow);padding:.5rem;display:none;min-width:220px}
.appbar .dropdown.open .dropdown-menu{display:block}
.appbar .dropdown-menu a{display:block;padding:.6rem .8rem;border-radius:10px;color:var(--anthra)}
.appbar .dropdown-menu a:hover{background:rgba(0,0,0,.04)}
.appbar .toggle{display:none}
@media (max-width:992px){
  .appbar .menu{display:none;position:absolute;top:var(--appbar-height);left:0;right:0;background:rgba(245,241,230,.98);box-shadow:var(--shadow);padding:1rem}
  .appbar .menu.open{display:block}
  .appbar .toggle{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:1px solid #ddd;padding:.6rem .85rem;border-radius:12px;font-weight:700}
}

/* Hero */
.hero-full{position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;width:100vw}
.hero-full .slides{position:relative;height:var(--hero-height)} 
@media (max-width:768px){.hero-full .slides{height:var(--hero-height-mobile)}}
.hero-full .slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;background:#000}
.hero-full .slide.active{opacity:1}
.hero-full .slide img{width:100%;height:100%;object-fit:cover;filter:brightness(.72)}
.hero-full .overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:2.2rem}
.hero-full .overlay h1{font-weight:700;font-size:clamp(2.4rem,5.5vw,4.8rem)}
.hero-full .overlay p{opacity:.98;font-size:clamp(1.1rem,2.2vw,1.6rem);margin-top:.6rem}

/* Sections */
.section{padding:2.2rem 0}
.section-title{position:relative;display:inline-block;padding-bottom:.5rem;margin-bottom:1rem}
.section-title:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:var(--green);border-radius:2px}

/* Cards & grid */
.card{background:#fff;border:1px solid #ececec;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.06);overflow:hidden}
.card-body{padding:1.1rem}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
@media (max-width:992px){.gallery{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.gallery{grid-template-columns:1fr}}
.gallery .item img{width:100%;height:280px;object-fit:cover}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.15rem;border-radius:12px;border:1px solid transparent;cursor:pointer;text-decoration:none;font-weight:700}
.btn-primary{background:var(--terra);color:#fff}
.btn-outline{background:transparent;border-color:var(--terra);color:var(--terra)}

/* Footer */
footer{background:#1e2123;color:#d7d8da;padding:2.2rem 0;margin-top:3rem;margin-bottom:0}
footer a{color:#d7d8da;text-decoration:underline}

/* Utility */
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}
.row{display:flex;flex-wrap:wrap;margin-left:-.75rem;margin-right:-.75rem}
[class^="col-"]{padding-left:.75rem;padding-right:.75rem}
.col-12{flex:0 0 100%;max-width:100%}
.col-6{flex:0 0 50%;max-width:50%}
.col-8{flex:0 0 66.666%;max-width:66.666%}
.col-4{flex:0 0 33.333%;max-width:33.333%}
@media (max-width:992px){.col-lg-6,.col-lg-4{flex:0 0 100%;max-width:100%}}
@media (max-width:768px){.col-md-12,.col-6{flex:0 0 100%;max-width:100%}}

.reveal{opacity:0;transform:translateY(12px);transition:opacity .5s ease, transform .5s ease}
.reveal.visible{opacity:1;transform:none}

/* ===== FEWO-Killer v6: Spacing Utilities & Layout =====
   .spacer-xxl zwischen Blöcken */
.section{padding:3.2rem 0}
.spacer-s{height:.75rem}
.spacer-m{height:1.25rem}
.spacer-l{height:2rem}
.spacer-xl{height:3rem}
.spacer-xxl{height:5rem}

.split{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
@media (max-width:992px){.split{grid-template-columns:1fr;gap:1.25rem}}

/* Menüeinträge */
.appbar .menu a,.appbar .menu .linklike{font-family:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:600}

/* Brand-Text ausblenden (Fallback) */
.brand-text{display:none !important}

/* Footer Abstand zum Bildschirmrand */
body{padding-bottom:0}
footer{padding-top:2.6rem;padding-bottom:2.6rem}

/* ===== FEWO-Killer v6: Carousel ===== */
.carousel{position:relative; background:#fff; border-radius:14px; box-shadow:0 2px 10px rgba(0,0,0,.06); overflow:hidden; border:1px solid #ececec}
.carousel-track{display:flex; transition:transform .45s ease; will-change:transform}
.carousel-slide{min-width:100%; user-select:none}
.carousel-slide img{display:block; width:100%; height:420px; object-fit:cover}
/* Hero 100% */
.carousel-nav{position:absolute; inset:0; display:flex; align-items:center; justify-content:space-between; pointer-events:none}
.carousel-btn{pointer-events:auto; border:0; background:rgba(0,0,0,.45); color:#fff; width:42px; height:42px; border-radius:50%; display:grid; place-items:center; margin:0 .6rem}
.carousel-dots{position:absolute; left:0; right:0; bottom:10px; display:flex; gap:.4rem; justify-content:center}
.carousel-dot{width:10px; height:10px; border-radius:50%; background:rgba(0,0,0,.28); border:0}
.carousel-dot.active{background:var(--terra)}

/* Menü-Buttons */
.appbar .menu .linklike{
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif !important;
  font-weight:600 !important;
  font-size:1rem;
  letter-spacing:.2px;
  appearance:none;
  -webkit-appearance:none;
  background:transparent;
  border:none;
  padding:.65rem .9rem;
  border-radius:12px;
  color:var(--anthra);
  line-height:1.2;
}

/* Hero-Slider */
.hero-full .slides{position:relative;height:var(--hero-height)}
.hero-full .slides .slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}
.hero-full .slides .slide.active{opacity:1}
.hero-full .slides .slide img{width:100%;height:100%;object-fit:cover;filter:brightness(.72)}

/* Hero-Carousel */
.hero-full{position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;width:100vw}
#hero.carousel{height:var(--hero-height)}
@media (max-width:768px){#hero.carousel{height:var(--hero-height-mobile)}}
#hero.carousel .carousel-track{height:100%}
#hero.carousel .carousel-slide{height:100%}
#hero.carousel .carousel-slide img{height:100%;width:100%;object-fit:cover}
/* Abstand unter Hero  */
.hero-full + .spacer-xl{height:3.5rem}

/* Card-Titles in Playfair Display */
.card-title{font-family:"Playfair Display",serif; font-weight:700; margin-bottom:.25rem}

/* Mobile-Menü Header Toggle */
.appbar{z-index:9999}
.appbar .toggle{position:relative; z-index:10000; pointer-events:auto}
@media (max-width:992px){
  .appbar .menu{z-index:9998}
}
.hero-full{position:relative; z-index:1}

/* Mobile-Menü-Fixes */
.appbar, .appbar *{pointer-events:auto}
.hero-full .overlay{pointer-events:none}
@media (max-width:992px){
  .appbar .menu{position:fixed; top:var(--appbar-height); left:0; right:0; z-index:9998}
}

/* Mobiler Header */
.header-spacer{height:var(--appbar-height)}
@media (max-width:992px){
  .appbar{position:fixed; top:0; left:0; right:0}
  .appbar .menu{display:none; position:fixed; top:var(--appbar-height); left:0; right:0; z-index:9998; pointer-events:none}
  .appbar .menu.open{display:block; pointer-events:auto}
}

/* Mobile-Menü als Liste */
@media (max-width:992px){
  .appbar .menu{
    display:none;
    position:fixed;
    top:var(--appbar-height);
    left:0; right:0;
    background:rgba(245,241,230,.98);
    box-shadow:var(--shadow);
    padding:.25rem 0;
  }
  .appbar .menu.open{display:block}
  .appbar .menu a,
  .appbar .menu .linklike{
    display:block;
    width:100%;
    text-align:left;
    padding:1rem 1.25rem;
    border-radius:0;
    border-bottom:1px solid #e9e6dd;
  }
  .appbar .menu a:last-child{border-bottom:none}
  .appbar .menu a.active{
    background:var(--terra);
    color:#fff;
  }
  /* Dropdown: Unterpunkte */
  .appbar .dropdown{position:static}
  .appbar .dropdown .linklike{font-weight:700}
  .appbar .dropdown-menu{
    position:static;
    display:block; /* immer sichtbar im mobilen Menü */
    background:transparent;
    border:none;
    box-shadow:none;
    padding:0;
    margin:0;
  }
  .appbar .dropdown-menu a{
    padding-left:2rem; /* Einrückung für Unterpunkte */
    border-bottom:1px solid #e9e6dd;
  }
}

@media (max-width: 992px){
  :root{ --appbar-height: 72px; }
}

/* breites FEWO-Logo */
.appbar img.logo-wide{ width:clamp(160px, 22vw, 280px); max-height:none }
@media (max-width: 992px){
  .appbar img.logo-wide{ width:clamp(140px, 45vw, 220px) }
}
html, body {
  max-width: 100%;
  overflow-x: hidden;
}

/* Mobile: Menü-Button in Waldgrün */
	@media (max-width: 768px) {
  .appbar .toggle {
    color: #2E5949;
    /* optional:
    border-color: #2E5949;
    */
	}
}
/* sksdesign © 2025 All rights reserved*/
/*Unauthorized copying of this file, via any medium, is strictly prohibited.*/