/* NaturFreunde Essen – Alle Seiten Modern 1.5.0
   Eine sichere, seitenbezogene Gestaltungsschicht. Keine pauschalen Layout-Zerstörer. */
:root{
  --nfe-as-green:#143f2d;
  --nfe-as-green-2:#1f6548;
  --nfe-as-green-3:#2d7b59;
  --nfe-as-red:#c91d2e;
  --nfe-as-lime:#dce96f;
  --nfe-as-ink:#14231c;
  --nfe-as-muted:#65736c;
  --nfe-as-paper:#fff;
  --nfe-as-soft:#f4f7f4;
  --nfe-as-sand:#f4efe5;
  --nfe-as-line:#dce4de;
  --nfe-as-max:1180px;
  --nfe-as-radius:28px;
  --nfe-as-radius-sm:18px;
  --nfe-as-shadow:0 18px 55px rgba(16,52,36,.10);
  --nfe-as-shadow-hover:0 26px 75px rgba(16,52,36,.16);
  --nfe-as-header-h:84px;
}
html{scroll-behavior:smooth;scroll-padding-top:132px}
body.nfe-as-unified{
  margin:0!important;
  color:var(--nfe-as-ink);
  background:#fff;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  overflow-x:hidden;
  text-rendering:optimizeLegibility;
}
body.nfe-as-unified *{box-sizing:border-box}
body.nfe-as-unified img{max-width:100%;height:auto}
body.nfe-as-unified :where(a,button,input,select,textarea){font:inherit}
body.nfe-as-unified :where(a,button){-webkit-tap-highlight-color:transparent}
body.nfe-as-unified :focus-visible{outline:3px solid rgba(220,233,111,.95);outline-offset:3px}
body.nfe-as-menu-open{overflow:hidden}

/* Nur bekannte alte globale Kopf-/Footer-Schichten ausblenden. Fachinhalte bleiben unberührt. */
body.nfe-as-unified :is(.nf7-header,.nf7-mobile-nav,.nf7-menu-drawer,.nfe-global-header,.nfe-global-backdrop,.nfe-global-drawer,.portal-header,.site-header,.top){display:none!important}
body.nfe-as-unified > .site-footer{display:none!important}

/* ---------- Header ---------- */
.nfe-as-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:10050;pointer-events:none;background:transparent}
.nfe-as-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--nfe-as-lime),#fff06a,var(--nfe-as-red));transition:width .08s linear}
.nfe-as-header{
  position:sticky;top:0;z-index:10020;
  background:rgba(255,255,255,.92);
  border-bottom:1px solid rgba(20,63,45,.08);
  backdrop-filter:blur(20px) saturate(1.35);
  -webkit-backdrop-filter:blur(20px) saturate(1.35);
  transition:box-shadow .25s ease,background .25s ease;
}
.nfe-as-header.is-scrolled{background:rgba(255,255,255,.97);box-shadow:0 12px 35px rgba(17,51,36,.08)}
.nfe-as-header-inner{width:min(var(--nfe-as-max),92vw);min-height:var(--nfe-as-header-h);margin:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px}
.nfe-as-brand{display:flex;align-items:center;min-width:170px;text-decoration:none}
.nfe-as-brand img{display:block;width:auto;height:58px;max-width:210px;object-fit:contain;transition:transform .2s ease,height .2s ease}
.nfe-as-brand:hover img{transform:translateY(-2px)}
.nfe-as-nav{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0}
.nfe-as-nav-link{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 12px;border-radius:999px;color:#31473b!important;text-decoration:none!important;font-size:13px;font-weight:820;white-space:nowrap;transition:.2s ease}
.nfe-as-nav-link:hover{background:#edf4ef;color:var(--nfe-as-green)!important;transform:translateY(-1px)}
.nfe-as-nav-link.is-active{background:var(--nfe-as-green);color:#fff!important}
.nfe-as-actions{display:flex;align-items:center;gap:8px}
.nfe-as-members{background:var(--nfe-as-lime)!important;color:#243220!important;padding-inline:15px!important}
.nfe-as-members.is-active{box-shadow:inset 0 0 0 2px var(--nfe-as-green)}
.nfe-as-menu-button{display:inline-flex;align-items:center;gap:10px;height:42px;padding:0 14px;border:1px solid #d7e0da;border-radius:999px;background:#fff;color:var(--nfe-as-green);font-weight:850;cursor:pointer;transition:.2s ease}
.nfe-as-menu-button:hover{background:var(--nfe-as-green);color:#fff;border-color:var(--nfe-as-green)}
.nfe-as-menu-button i,.nfe-as-menu-button i:before,.nfe-as-menu-button i:after{display:block;width:16px;height:2px;border-radius:4px;background:currentColor}
.nfe-as-menu-button i{position:relative}.nfe-as-menu-button i:before,.nfe-as-menu-button i:after{content:"";position:absolute;left:0}.nfe-as-menu-button i:before{top:-5px}.nfe-as-menu-button i:after{top:5px}

/* Drawer */
.nfe-as-backdrop{position:fixed;inset:0;z-index:10030;background:rgba(5,20,12,.46);backdrop-filter:blur(5px)}
.nfe-as-drawer{position:fixed;z-index:10040;top:0;right:0;bottom:0;width:min(610px,94vw);padding:28px;background:#f8faf8;transform:translateX(103%);box-shadow:-30px 0 90px rgba(0,0,0,.22);transition:transform .34s cubic-bezier(.2,.8,.2,1);overflow:auto}
.nfe-as-drawer.is-open{transform:none}
.nfe-as-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;padding:10px 4px 26px}
.nfe-as-drawer-head small{display:block;color:var(--nfe-as-red);font-size:10px;font-weight:900;letter-spacing:.16em}
.nfe-as-drawer-head strong{display:block;margin-top:8px;color:var(--nfe-as-green);font-size:clamp(34px,6vw,54px);line-height:.92;letter-spacing:-.055em}
.nfe-as-drawer-head button{width:44px;height:44px;border:0;border-radius:50%;background:#e8eee9;color:var(--nfe-as-green);font-size:28px;cursor:pointer}
.nfe-as-drawer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.nfe-as-drawer-grid a{position:relative;min-height:128px;padding:17px;border:1px solid #dbe4de;border-radius:22px;background:#fff;color:var(--nfe-as-ink)!important;text-decoration:none!important;overflow:hidden;transition:.22s ease}
.nfe-as-drawer-grid a:before{content:"";position:absolute;inset:auto -30px -45px auto;width:100px;height:100px;border-radius:50%;background:#eef5ef;transition:.22s ease}
.nfe-as-drawer-grid a:hover{transform:translateY(-4px);border-color:#bdd0c3;box-shadow:var(--nfe-as-shadow)}
.nfe-as-drawer-grid a:hover:before{transform:scale(1.25);background:#e4efdd}
.nfe-as-drawer-grid span,.nfe-as-drawer-grid b,.nfe-as-drawer-grid small{position:relative;display:block}.nfe-as-drawer-grid span{color:var(--nfe-as-red);font-size:9px;font-weight:950;letter-spacing:.12em}.nfe-as-drawer-grid b{margin-top:22px;font-size:18px;line-height:1.05}.nfe-as-drawer-grid small{margin-top:6px;color:var(--nfe-as-muted);font-size:11px;line-height:1.35}
.nfe-as-drawer-foot{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.nfe-as-drawer-foot a,.nfe-as-drawer-foot button{min-height:52px;padding:0 16px;border:0;border-radius:16px;display:flex;align-items:center;justify-content:space-between;font-weight:850;text-decoration:none!important;cursor:pointer}.nfe-as-drawer-foot a{background:var(--nfe-as-lime);color:#21351f!important}.nfe-as-drawer-foot button{background:var(--nfe-as-green);color:#fff}

/* ---------- gemeinsame Achse ---------- */
body.nfe-as-unified :is(.wrap,.nf7-wrap,.nf7-page-wrap,.nfe-home-wrap){width:min(var(--nfe-as-max),92vw)!important;max-width:var(--nfe-as-max)!important;margin-left:auto!important;margin-right:auto!important}
body.nfe-as-unified main{min-width:0}
body.nfe-as-unified .section{padding:clamp(62px,8vw,108px) 0}
body.nfe-as-unified .section.soft{background:var(--nfe-as-soft)}
body.nfe-as-unified .section.sand{background:var(--nfe-as-sand)}
body.nfe-as-unified .section-title{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}
body.nfe-as-unified .section-title h2{margin:.25rem 0 0;font-size:clamp(32px,4.5vw,54px);line-height:.98;letter-spacing:-.045em;color:var(--nfe-as-ink)}
body.nfe-as-unified .section-title p{max-width:660px;color:var(--nfe-as-muted);font-size:16px;line-height:1.65}
body.nfe-as-unified :is(.eyebrow,.nf7-kicker){display:inline-flex;align-items:center;gap:8px;color:var(--nfe-as-green-2);font-size:11px;font-weight:930;letter-spacing:.13em;text-transform:uppercase}
body.nfe-as-unified :is(.eyebrow,.nf7-kicker):before{content:"";width:24px;height:3px;border-radius:99px;background:currentColor}

/* ---------- Ein Hero-System ---------- */
body.nfe-as-unified .nf7-page-hero{
  position:relative;isolation:isolate;overflow:hidden;
  min-height:360px;padding:58px 0 54px!important;
  display:flex;align-items:center;
  background:
    radial-gradient(circle at 84% 16%,rgba(220,233,111,.18),transparent 25%),
    radial-gradient(circle at 72% 90%,rgba(255,255,255,.08),transparent 28%),
    linear-gradient(135deg,#113625 0%,#1b573e 58%,#246e50 100%)!important;
  color:#fff!important;
}
body.nfe-as-unified .nf7-page-hero:after{content:"";position:absolute;z-index:-1;right:-110px;top:-150px;width:420px;height:420px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 68px rgba(255,255,255,.025),0 0 0 138px rgba(255,255,255,.018)}
body.nfe-as-unified .nf7-page-hero .wrap{position:relative;z-index:1}
body.nfe-as-unified .nf7-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:28px;color:rgba(255,255,255,.64);font-size:11px;font-weight:750}.nf7-breadcrumb a{color:inherit!important;text-decoration:none!important}.nf7-breadcrumb a:hover{color:var(--nfe-as-lime)!important}
body.nfe-as-unified .nf7-page-hero-grid{display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr)!important;gap:clamp(35px,6vw,82px)!important;align-items:end!important}
body.nfe-as-unified .nf7-page-hero :is(.nf7-page-hero-eyebrow,.nf7-kicker){color:var(--nfe-as-lime)!important}
body.nfe-as-unified .nf7-page-hero h1{max-width:820px;margin:10px 0 16px!important;color:#fff!important;font-size:clamp(46px,6.2vw,76px)!important;line-height:.94!important;letter-spacing:-.06em!important;text-wrap:balance}
body.nfe-as-unified .nf7-page-hero-intro{max-width:720px!important;margin:0!important;color:rgba(255,255,255,.86)!important;font-size:clamp(16px,1.7vw,19px)!important;line-height:1.58!important}
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat){min-height:104px;padding:18px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:20px!important;background:rgba(255,255,255,.10)!important;box-shadow:inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(8px);color:#fff!important}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) strong{display:block;color:#fff!important;font-size:clamp(23px,3vw,34px)!important;line-height:1!important;letter-spacing:-.03em}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) span{display:block;margin-top:7px;color:rgba(255,255,255,.72)!important;font-size:11px!important;line-height:1.25!important}

/* Farbton-Varianten behalten Markencharakter, aber keine schlechten Kontraste. */
body.nfe-as-unified .nf7-page-hero.red{background:radial-gradient(circle at 82% 16%,rgba(255,255,255,.13),transparent 24%),linear-gradient(135deg,#8f1422,#c61d31)!important}
body.nfe-as-unified .nf7-page-hero.sky{background:radial-gradient(circle at 82% 16%,rgba(220,233,111,.18),transparent 24%),linear-gradient(135deg,#173d34,#286655)!important}
body.nfe-as-unified .nf7-page-hero.sand{background:radial-gradient(circle at 82% 16%,rgba(220,233,111,.18),transparent 24%),linear-gradient(135deg,#4c3e25,#765e32)!important;color:#fff!important}

/* Sticky Subnav */
body.nfe-as-unified .subnav{position:sticky!important;top:var(--nfe-as-header-h)!important;z-index:120!important;border:0!important;border-bottom:1px solid var(--nfe-as-line)!important;background:rgba(255,255,255,.92)!important;backdrop-filter:blur(16px)}
body.nfe-as-unified .subnav-inner{display:flex!important;gap:6px!important;padding:9px 0!important;overflow:auto!important;scrollbar-width:none}.subnav-inner::-webkit-scrollbar{display:none}
body.nfe-as-unified .subnav a{position:relative;flex:0 0 auto;padding:9px 13px!important;border-radius:999px!important;color:#52645a!important;text-decoration:none!important;font-size:12px!important;font-weight:820!important;transition:.2s ease}.subnav a:hover,.subnav a.is-active{background:#eaf2ec!important;color:var(--nfe-as-green)!important}.subnav a.is-active:after{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:2px;border-radius:99px;background:var(--nfe-as-red)}

/* ---------- gemeinsame UI-Bausteine ---------- */
body.nfe-as-unified :is(.info-card,.panel,.card,.quick-action,.nf-house-room-card,.nf-house-contact-card,.nfj-lead-card,.nf-contact-1091-card,.nfch-entry-card,.nfch-group-grid>*,.nfch-source-grid>*){
  border-radius:var(--nfe-as-radius-sm);
}
body.nfe-as-unified :is(.info-card,.panel,.quick-action,.nf-house-room-card,.nf-house-contact-card,.nfj-lead-card){border:1px solid var(--nfe-as-line);background:#fff;box-shadow:0 8px 28px rgba(20,48,27,.045)}
body.nfe-as-unified [data-nfe-as-spotlight]{position:relative;overflow:hidden;transform:translateZ(0);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
body.nfe-as-unified [data-nfe-as-spotlight]:before{content:"";position:absolute;pointer-events:none;inset:-1px;background:radial-gradient(280px circle at var(--nfe-mx,50%) var(--nfe-my,50%),rgba(220,233,111,.18),transparent 58%);opacity:0;transition:opacity .2s ease}
body.nfe-as-unified [data-nfe-as-spotlight]:hover{transform:translateY(-5px);box-shadow:var(--nfe-as-shadow-hover);border-color:#c7d7cc}
body.nfe-as-unified [data-nfe-as-spotlight]:hover:before{opacity:1}
body.nfe-as-unified .nfe-as-reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.8,.2,1)}
body.nfe-as-unified .nfe-as-reveal.is-visible{opacity:1;transform:none}
body.nfe-as-unified :is(.btn,.text-link){transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease}
body.nfe-as-unified .btn{border-radius:999px!important;padding:12px 18px!important;font-weight:850!important;text-decoration:none!important}.btn:hover{transform:translateY(-2px)}
body.nfe-as-unified .btn.green{background:var(--nfe-as-green)!important;color:#fff!important}.btn.red{background:var(--nfe-as-red)!important;color:#fff!important}.btn.white{background:#fff!important;color:var(--nfe-as-green)!important}.btn.outline{border:1px solid #b9c9bf!important;background:#fff!important;color:var(--nfe-as-green)!important}

/* ---------- Termine ---------- */
body.nfe-as-view-termine #filter{background:linear-gradient(180deg,#f3f7f4,#fff)}
body.nfe-as-view-termine .event-filter-panel{padding:clamp(20px,3vw,30px)!important;border:1px solid var(--nfe-as-line)!important;border-radius:26px!important;background:#fff!important;box-shadow:var(--nfe-as-shadow)!important}
body.nfe-as-view-termine .filter-box{display:flex!important;align-items:center!important;gap:10px!important;padding:10px 14px!important;border:1px solid #d6e0d9!important;border-radius:16px!important;background:#f9fbf9!important}.filter-box input{width:100%!important;border:0!important;outline:0!important;background:transparent!important;padding:7px 0!important}
body.nfe-as-view-termine .event-filter-group{margin-top:18px}.event-filter-group>strong{display:block;margin-bottom:8px;color:var(--nfe-as-muted);font-size:10px;letter-spacing:.11em;text-transform:uppercase}
body.nfe-as-view-termine .event-filter-chips{display:flex;gap:7px;flex-wrap:wrap}.event-filter-chip{border:1px solid #d7e0da!important;background:#fff!important;color:#405248!important;border-radius:999px!important;padding:8px 12px!important;font-size:12px!important;font-weight:800!important;cursor:pointer}.event-filter-chip:hover{border-color:#aac3b2!important;background:#f2f7f3!important}.event-filter-chip.is-active{background:var(--nfe-as-green)!important;color:#fff!important;border-color:var(--nfe-as-green)!important}
body.nfe-as-view-termine .event-filter-status{margin-top:20px!important;padding-top:16px!important;border-top:1px solid #e3e9e5!important;color:var(--nfe-as-muted)!important}
body.nfe-as-view-termine .event-grid,body.nfe-as-view-termine .nf-event-grid{gap:16px!important}
body.nfe-as-view-termine .event-card,body.nfe-as-view-termine .nf-event-card{border:1px solid var(--nfe-as-line)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 10px 34px rgba(20,48,27,.055)!important;transition:.24s ease!important;overflow:hidden}.event-card:hover,.nf-event-card:hover{transform:translateY(-4px);box-shadow:var(--nfe-as-shadow)!important;border-color:#bdd1c3!important}

/* ---------- Vor Ort ---------- */
body.nfe-as-view-bezirksgruppen .nf-district-hub{background:linear-gradient(180deg,#fff 0%,#f4f7f4 100%)}
body.nfe-as-view-bezirksgruppen .nf-district-hub-intro{max-width:800px;margin-bottom:34px}.nf-district-hub-intro h2{font-size:clamp(34px,5vw,56px);line-height:.98;letter-spacing:-.05em}.nf-district-hub-intro p{color:var(--nfe-as-muted);font-size:17px;line-height:1.65}
body.nfe-as-view-bezirksgruppen .nf-district-hub-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
body.nfe-as-view-bezirksgruppen .nf-district-hub-card{position:relative!important;min-height:390px!important;padding:26px!important;border:0!important;border-radius:30px!important;overflow:hidden!important;color:#fff!important;background:linear-gradient(145deg,#163e2f,#2b7052)!important;box-shadow:var(--nfe-as-shadow);transition:.28s ease!important}.nf-district-hub-card:after{content:"";position:absolute;right:-45px;bottom:-70px;width:190px;height:190px;border-radius:50%;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 40px rgba(255,255,255,.035)}.nf-district-hub-card:hover{transform:translateY(-8px) rotate(-.25deg);box-shadow:0 30px 80px rgba(16,52,36,.21)}.nf-district-hub-card *{position:relative;z-index:1;color:inherit!important}.nf-district-hub-west{background:linear-gradient(145deg,#153e2c,#2c7451)!important}.nf-district-hub-baldeney{background:linear-gradient(145deg,#21483c,#326d62)!important}.nf-district-hub-ruhr{background:linear-gradient(145deg,#6b2028,#a72b38)!important}
body.nfe-as-view-bezirksgruppen .nf-district-hub-note{margin-top:20px;padding:20px 22px;border-radius:20px;background:#eef4ef;color:#496056}

/* ---------- Chronik ---------- */
body.nfe-as-view-chronik .nfch-hub{background:#fff}
body.nfe-as-view-chronik .nfch-hub-head,body.nfe-as-view-chronik .nfch-title-row{margin-bottom:30px}.nfch-hub-head h2,.nfch-title-row h2{font-size:clamp(34px,5vw,58px)!important;line-height:.96!important;letter-spacing:-.05em!important;color:var(--nfe-as-ink)!important}
body.nfe-as-view-chronik .nfch-entry-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}.nfch-entry-card{min-height:260px!important;padding:26px!important;border:0!important;border-radius:28px!important;box-shadow:var(--nfe-as-shadow)!important;transition:.25s ease!important}.nfch-entry-card:hover{transform:translateY(-6px)}.nfch-entry-card.is-green{background:linear-gradient(145deg,#143e2d,#236347)!important;color:#fff!important}.nfch-entry-card.is-red{background:linear-gradient(145deg,#961827,#c92537)!important;color:#fff!important}.nfch-entry-card.is-paper{background:#f5f0e6!important;color:var(--nfe-as-ink)!important}.nfch-entry-card.is-green *,.nfch-entry-card.is-red *{color:inherit!important}.nfch-entry-no{font-size:12px!important;font-weight:900!important;letter-spacing:.12em!important;opacity:.72}
body.nfe-as-view-chronik .nfch-yearrail{padding:22px!important;border-radius:25px!important;background:#12382a!important;box-shadow:var(--nfe-as-shadow)!important;overflow:auto!important}.nfch-yearrail *{color:#fff}.nfch-yearrail button,.nfch-yearrail a{border-radius:16px!important}
body.nfe-as-view-chronik .nfch-person-research{padding:clamp(22px,4vw,38px)!important;border:1px solid #dbe4de!important;border-radius:30px!important;background:#fff!important;box-shadow:var(--nfe-as-shadow)!important}.nf-person-finder-inputrow{gap:10px!important}.nf-person-input-wrap input{border:1px solid #cfdad3!important;border-radius:15px!important;background:#f9fbf9!important;padding:13px 15px!important}
body.nfe-as-view-chronik .nfch-group-grid{gap:14px!important}.nfch-group-grid>*{border:1px solid var(--nfe-as-line)!important;background:#fff!important;box-shadow:0 8px 28px rgba(20,48,27,.05)!important}
body.nfe-as-view-chronik .nfch-memory{background:linear-gradient(135deg,#101c17,#17382c)!important;color:#fff!important}.nfch-memory *{color:inherit}.nfch-memory-grid>*{border-radius:24px!important}
body.nfe-as-view-chronik .nfch-elfie{background:linear-gradient(135deg,#e9f1e9,#fff)!important}.nfch-elfie-grid{gap:clamp(30px,6vw,70px)!important;align-items:center!important}.nfch-bot-box{border-radius:28px!important;box-shadow:var(--nfe-as-shadow)!important}
body.nfe-as-view-chronik .nfch-source-grid>*{border:1px solid #e3dccf!important;background:#fff!important}

/* ---------- Naturfreundejugend ---------- */
body.nfe-as-view-naturfreundejugend .nfj-intro{background:linear-gradient(180deg,#fff,#f8fbf8)}
body.nfe-as-view-naturfreundejugend .nfj-intro-grid{display:grid!important;grid-template-columns:1.15fr .85fr!important;gap:clamp(28px,6vw,72px)!important;align-items:center!important}.nfj-intro h2{font-size:clamp(36px,5vw,58px)!important;line-height:.98!important;letter-spacing:-.05em!important}.nfj-intro p{font-size:17px;line-height:1.68;color:var(--nfe-as-muted)}
body.nfe-as-view-naturfreundejugend .nfj-lead-card{padding:28px!important;border-radius:28px!important;background:linear-gradient(145deg,#143e2d,#246c4d)!important;color:#fff!important}.nfj-lead-card *{color:inherit!important}
body.nfe-as-view-naturfreundejugend .nfj-facts,body.nfe-as-view-naturfreundejugend .nfj-program-grid,body.nfe-as-view-naturfreundejugend .nfj-principle-grid,body.nfe-as-view-naturfreundejugend .nfj-steps,body.nfe-as-view-naturfreundejugend .nfj-safety-grid{gap:14px!important}.nfj-program-grid>*,.nfj-principle-grid>*,.nfj-steps>*,.nfj-safety-grid>*{border-radius:24px!important;border:1px solid var(--nfe-as-line)!important;background:#fff!important;box-shadow:0 8px 30px rgba(20,48,27,.05)!important}
body.nfe-as-view-naturfreundejugend .nfj-values{background:linear-gradient(135deg,#a61728,#cf2638)!important;color:#fff!important}.nfj-values *{color:inherit!important}.nfj-quote{font-size:clamp(30px,4.8vw,54px)!important;line-height:1.06!important;letter-spacing:-.045em!important}
body.nfe-as-view-naturfreundejugend .nfj-contact{background:#112f24!important;color:#fff!important}.nfj-contact *{color:inherit}

/* ---------- Naturfreundehaus ---------- */
body.nfe-as-view-naturfreundehaus .nf-house-intro-grid{display:grid!important;grid-template-columns:1.15fr .85fr!important;gap:clamp(28px,6vw,68px)!important;align-items:start!important}.nf-house-intro .prose h2{font-size:clamp(36px,5vw,58px)!important;line-height:.98!important;letter-spacing:-.05em!important}.nf-house-intro .prose p{font-size:17px!important;line-height:1.7!important;color:var(--nfe-as-muted)!important}
body.nfe-as-view-naturfreundehaus .nf-house-contact-card{padding:28px!important;border-radius:28px!important;background:linear-gradient(145deg,#153f2d,#26684b)!important;color:#fff!important}.nf-house-contact-card *{color:inherit!important}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid,body.nfe-as-view-naturfreundehaus .nf-house-room-grid,body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid,body.nfe-as-view-naturfreundehaus .nf-house-target-grid,body.nfe-as-view-naturfreundehaus .nf-house-steps{gap:14px!important}.nf-house-fact-grid>*,.nf-house-equipment-grid>*,.nf-house-target-grid>*,.nf-house-steps>*{border:1px solid var(--nfe-as-line)!important;border-radius:23px!important;background:#fff!important;box-shadow:0 8px 26px rgba(20,48,27,.045)!important}
body.nfe-as-view-naturfreundehaus .nf-house-room-card{padding:25px!important}.nf-house-room-card-accent{background:#eef5e9!important;border-color:#c8d9c4!important}
body.nfe-as-view-naturfreundehaus .nf-house-price-layout,body.nfe-as-view-naturfreundehaus .nf-house-location-grid,body.nfe-as-view-naturfreundehaus .nf-house-inquiry-grid{gap:clamp(24px,5vw,60px)!important}.nf-house-price-card,.nf-house-travel-card,.nf-house-direct{border-radius:28px!important;box-shadow:var(--nfe-as-shadow)!important}
body.nfe-as-view-naturfreundehaus .nf-house-outdoor{background:linear-gradient(135deg,#153b2b,#245c43)!important;color:#fff!important}.nf-house-outdoor *{color:inherit!important}

/* ---------- Kontakt ---------- */
body.nfe-as-view-kontakt .nf-contact-1091{padding:clamp(65px,8vw,110px) 0!important;background:linear-gradient(180deg,#fff,#f4f7f4)!important}.nf-contact-1091-head h2,.nf-contact-1091-topic-head h2,.nf-contact-1091-faq-head h2{font-size:clamp(34px,5vw,56px)!important;line-height:.98!important;letter-spacing:-.05em!important}.nf-contact-1091-main{gap:16px!important}.nf-contact-1091-card{border-radius:28px!important;border:1px solid var(--nfe-as-line)!important;box-shadow:var(--nfe-as-shadow)!important}.nf-contact-1091-card.primary{background:linear-gradient(145deg,#143e2d,#24664a)!important;color:#fff!important}.nf-contact-1091-card.primary *{color:inherit!important}.nf-contact-1091-topics,.nf-contact-1091-form-section,.nf-contact-1091-faq{padding:clamp(62px,8vw,105px) 0!important}.nf-contact-1091-formbox{border-radius:28px!important;box-shadow:var(--nfe-as-shadow)!important}

/* ---------- Über uns / Ehrenamt / Mitmachen ---------- */
body.nfe-as-view-ueber-uns .intro-grid,body.nfe-as-view-ehrenamt .intro-grid{gap:clamp(28px,6vw,66px)!important}.prose h2{font-size:clamp(34px,4.5vw,52px)!important;line-height:1!important;letter-spacing:-.045em!important}.highlight{border-radius:26px!important;border:0!important;background:#eaf2e8!important;padding:28px!important}.cards-3,.quick-actions{gap:14px!important}.info-card,.quick-action{padding:24px!important}.info-card.emphasis{background:linear-gradient(145deg,#143e2d,#24664a)!important;color:#fff!important}.info-card.emphasis *{color:inherit!important}.quick-action{min-height:150px!important;transition:.23s ease}.quick-action:hover{transform:translateY(-5px);box-shadow:var(--nfe-as-shadow)!important}.timeline-item strong{color:var(--nfe-as-red)!important}
body.nfe-as-view-ehrenamt #gesucht .panel{padding:30px!important;border-radius:28px!important}

/* ---------- Footer ---------- */
.nfe-as-site-footer{position:relative;z-index:10;margin:0!important;padding:48px 0 34px;background:#10261d;color:#fff}.nfe-as-site-footer-inner{width:min(var(--nfe-as-max),92vw);margin:auto;display:grid;grid-template-columns:1.1fr 1fr auto;gap:35px;align-items:end}.nfe-as-footer-brand strong{display:block;font-size:22px;letter-spacing:-.03em}.nfe-as-footer-brand p{max-width:380px;margin:7px 0 0;color:rgba(255,255,255,.62);font-size:13px}.nfe-as-footer-nav{display:flex;gap:7px;flex-wrap:wrap}.nfe-as-footer-nav a{padding:7px 10px;border-radius:999px;color:rgba(255,255,255,.76)!important;text-decoration:none!important;font-size:12px;font-weight:750}.nfe-as-footer-nav a:hover{background:rgba(255,255,255,.08);color:#fff!important}.nfe-as-footer-meta{color:rgba(255,255,255,.45);font-size:11px;white-space:nowrap}

/* ---------- responsive ---------- */
@media(max-width:1080px){
  .nfe-as-nav{display:none}.nfe-as-header-inner{grid-template-columns:auto 1fr auto}.nfe-as-actions{grid-column:3}
  body.nfe-as-unified .nf7-page-hero-grid{grid-template-columns:1fr!important;gap:28px!important}.nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){max-width:650px}
  body.nfe-as-view-bezirksgruppen .nf-district-hub-grid{grid-template-columns:1fr 1fr!important}.nf-district-hub-card:last-child{grid-column:1/-1}
  body.nfe-as-view-naturfreundejugend .nfj-intro-grid,body.nfe-as-view-naturfreundehaus .nf-house-intro-grid{grid-template-columns:1fr!important}
  .nfe-as-site-footer-inner{grid-template-columns:1fr 1fr}.nfe-as-footer-meta{grid-column:1/-1}
}
@media(max-width:720px){
  :root{--nfe-as-header-h:72px}
  .nfe-as-header-inner{min-height:72px;gap:12px}.nfe-as-brand{min-width:0}.nfe-as-brand img{height:48px;max-width:165px}.nfe-as-members{display:none!important}.nfe-as-menu-button span{display:none}.nfe-as-menu-button{width:42px;padding:0;justify-content:center}
  .nfe-as-drawer{padding:20px}.nfe-as-drawer-grid{grid-template-columns:1fr}.nfe-as-drawer-grid a{min-height:95px}.nfe-as-drawer-grid b{margin-top:12px}.nfe-as-drawer-foot{grid-template-columns:1fr}
  body.nfe-as-unified .nf7-page-hero{min-height:0;padding:46px 0 42px!important}.nf7-breadcrumb{margin-bottom:20px!important}.nf7-page-hero h1{font-size:clamp(40px,13vw,58px)!important}.nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){grid-template-columns:1fr 1fr!important}.nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat){min-height:88px!important;padding:14px!important}
  body.nfe-as-unified .section{padding:54px 0}.section-title{align-items:flex-start!important;flex-direction:column!important;gap:12px!important}.section-title h2{font-size:clamp(30px,10vw,43px)!important}
  body.nfe-as-view-bezirksgruppen .nf-district-hub-grid,body.nfe-as-view-chronik .nfch-entry-grid{grid-template-columns:1fr!important}.nf-district-hub-card:last-child{grid-column:auto}.nf-district-hub-card{min-height:310px!important}
  body.nfe-as-unified :is(.cards-3,.quick-actions){grid-template-columns:1fr!important}
  .nfe-as-site-footer-inner{grid-template-columns:1fr;align-items:start}.nfe-as-footer-meta{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.nfe-as-drawer,.nfe-as-progress span,body.nfe-as-unified *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.nfe-as-reveal{opacity:1!important;transform:none!important}
}

/* ==========================================================
   v1.5.2 – EIN HEADER. EIN FOOTER. KLARE PORTAL-NAVIGATION.
   ========================================================== */

/* Das Plugin ist die sichtbare Shell. Alte Theme-/Plugin-Shells bleiben funktional,
   werden aber nicht zusätzlich dargestellt. */
body.nfe-as-unified :is(
  header.site-header,
  .site-header,
  .portal-header,
  .nf7-header,
  .nf7-mobile-nav,
  .nf7-menu-drawer,
  .nfe-global-header,
  .nfe-global-backdrop,
  .nfe-global-drawer,
  .top
){display:none!important;visibility:hidden!important}

body.nfe-as-unified :is(
  footer.site-footer,
  footer.nf7-footer,
  footer.portal-footer,
  .site-footer:not(.nfe-as-site-footer),
  .nf7-footer,
  .portal-footer
){display:none!important;visibility:hidden!important}

.nfe-as-header{
  height:auto!important;
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid #e8ede9!important;
  box-shadow:0 7px 24px rgba(17,51,36,.055)!important;
  backdrop-filter:blur(18px)!important;
}
.nfe-as-header-inner{
  width:min(1240px,94vw)!important;
  min-height:78px!important;
  grid-template-columns:minmax(185px,235px) minmax(0,1fr) auto!important;
  gap:24px!important;
}
.nfe-as-brand{min-width:0!important;align-self:stretch!important;display:flex!important;align-items:center!important}
.nfe-as-brand img{
  width:auto!important;
  height:54px!important;
  max-width:220px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.nfe-as-brand:hover img{transform:none!important;filter:brightness(.96)}

.nfe-as-nav{
  justify-self:center!important;
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  padding:5px!important;
  border:1px solid #e4ebe6!important;
  border-radius:16px!important;
  background:#f5f8f5!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.nfe-as-nav-link{
  min-height:38px!important;
  padding:0 12px!important;
  border-radius:11px!important;
  color:#28533e!important;
  font-size:13px!important;
  font-weight:820!important;
  letter-spacing:-.01em!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
.nfe-as-nav-link:hover{
  background:#fff!important;
  color:#143e2d!important;
  box-shadow:0 3px 12px rgba(17,51,36,.08)!important;
}
.nfe-as-nav-link.is-active{
  background:#174f39!important;
  color:#fff!important;
  box-shadow:0 5px 14px rgba(23,79,57,.18)!important;
}
.nfe-as-actions{display:flex!important;align-items:center!important;gap:8px!important;justify-content:flex-end!important}
.nfe-as-actions .nfe-as-members{
  min-height:42px!important;
  padding:0 15px!important;
  border-radius:12px!important;
  background:#ddec58!important;
  color:#17251d!important;
  border:0!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.nfe-as-actions .nfe-as-members:hover{background:#cfdf42!important;color:#17251d!important}
.nfe-as-menu-button{
  height:42px!important;
  padding:0 15px!important;
  border:0!important;
  border-radius:12px!important;
  background:#14231c!important;
  color:#fff!important;
  box-shadow:none!important;
}
.nfe-as-menu-button:hover{background:#246247!important;color:#fff!important}

/* Der Plugin-Footer ist der einzige sichtbare Abschluss. */
.nfe-as-site-footer{
  margin:0!important;
  padding:42px 0 30px!important;
  background:linear-gradient(135deg,#10271d 0%,#173e2e 100%)!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
}
.nfe-as-site-footer-inner{width:min(1240px,94vw)!important}

@media(max-width:1120px){
  .nfe-as-header-inner{grid-template-columns:auto 1fr auto!important}
  .nfe-as-nav{display:none!important}
}
@media(max-width:720px){
  .nfe-as-header-inner{min-height:68px!important;width:min(94vw,1240px)!important;gap:10px!important}
  .nfe-as-brand img{height:45px!important;max-width:168px!important}
  .nfe-as-actions .nfe-as-members{display:none!important}
  .nfe-as-menu-button{width:44px!important;padding:0!important}
  .nfe-as-menu-button span{display:none!important}
}
/* v1.6.0 – Seitenharmonie */
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){grid-template-columns:repeat(auto-fit,minmax(125px,1fr))!important;align-items:stretch!important}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat){display:flex!important;min-height:104px!important;height:100%!important;flex-direction:column!important;justify-content:center!important}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) :is(strong,b){color:#fff!important}body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) :is(span,small){color:rgba(255,255,255,.76)!important}
body.nfe-as-view-bezirksgruppen .nf-district-hub-grid{align-items:stretch!important}body.nfe-as-view-bezirksgruppen .nf-district-hub-card{display:flex!important;min-height:320px!important;height:100%!important;flex-direction:column!important;justify-content:flex-end!important;padding:30px!important}body.nfe-as-view-bezirksgruppen .nf-district-hub-card :is(h3,strong){font-size:clamp(27px,3vw,39px)!important;line-height:1!important;letter-spacing:-.04em!important}
body.nfe-as-view-chronik .nfch-elfie{position:relative!important;overflow:hidden!important;background:radial-gradient(circle at 20% 45%,rgba(220,233,123,.28),transparent 27%),linear-gradient(135deg,#e7f0e9,#fff)!important}body.nfe-as-view-chronik .nfch-elfie :is(h2,h3,strong){color:#10261d!important}body.nfe-as-view-chronik .nfch-elfie :is(p,span){color:#40564a!important}body.nfe-as-view-chronik .nfch-elfie :is(.nfch-kicker,.kicker,small){color:#176b46!important}
body.nfe-as-view-chronik .nfe-chronik-elfie-figure{position:relative;display:grid;min-height:390px;place-items:end center;align-self:stretch;border-radius:30px;background:radial-gradient(circle at 50% 52%,rgba(220,233,123,.6),rgba(220,233,123,.12) 34%,transparent 65%);overflow:hidden}body.nfe-as-view-chronik .nfe-chronik-elfie-figure:before{content:"ELFIE";position:absolute;top:18px;left:22px;color:#176b46;font-size:10px;font-weight:950;letter-spacing:.18em}body.nfe-as-view-chronik .nfe-chronik-elfie-figure img{display:block;width:min(310px,88%);max-height:370px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 20px 24px rgba(15,55,38,.18));animation:nfeChronikElfie 4.8s ease-in-out infinite;transform-origin:50% 100%}body.nfe-as-view-chronik .nfe-chronik-elfie-figure button{position:absolute;right:18px;bottom:18px;padding:10px 13px;border:0;border-radius:999px;background:#173f30;color:#fff;font-weight:900;cursor:pointer}@keyframes nfeChronikElfie{0%,100%{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-7px) rotate(.7deg)}}
body.nfe-as-view-mitglieder .nfe-members-rebuild{padding:clamp(55px,7vw,90px) 0;background:linear-gradient(180deg,#fff,#f2f6f3)}.nfe-members-inner{width:min(var(--nfe-as-max),92vw);margin:auto}.nfe-members-head{display:grid;grid-template-columns:1fr .8fr;gap:35px;align-items:end;margin-bottom:25px}.nfe-members-head small{color:#176b46;font-size:10px;font-weight:950;letter-spacing:.15em}.nfe-members-head h2{margin:7px 0 0;color:#10261d;font-size:clamp(38px,5vw,62px);line-height:.94;letter-spacing:-.055em}.nfe-members-head p{margin:0;color:#52655a;font-size:16px;line-height:1.6}.nfe-members-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:14px}.nfe-member-card{position:relative;display:flex;min-height:250px;flex-direction:column;padding:26px;border:1px solid #dce5df;border-radius:27px;background:#fff;color:#10261d!important;text-decoration:none!important;box-shadow:0 12px 38px rgba(18,58,40,.06);overflow:hidden;transition:.25s ease}.nfe-member-card:first-child{grid-row:span 2;min-height:514px;background:linear-gradient(145deg,#143e2d,#24664a);color:#fff!important}.nfe-member-card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(18,58,40,.12)}.nfe-member-card .no{font-size:10px;font-weight:950;letter-spacing:.12em;color:#2a7452}.nfe-member-card:first-child .no{color:#dce97b}.nfe-member-card h3{margin:auto 0 8px;font-size:clamp(24px,3vw,38px);line-height:1;color:inherit}.nfe-member-card p{margin:0;color:#617268;line-height:1.55}.nfe-member-card:first-child p{color:rgba(255,255,255,.72)}.nfe-member-card b{margin-top:18px;color:inherit}.nfe-member-card:after{content:"→";position:absolute;right:24px;top:22px;font-size:22px;color:#c32132}.nfe-member-card:first-child:after{color:#dce97b}
body.nfe-as-view-kontakt .nf-contact-1091{background:#fff!important}.nf-contact-1091-head{max-width:780px!important}.nf-contact-1091-main{display:grid!important;grid-template-columns:1.15fr .85fr!important;align-items:stretch!important}.nf-contact-1091-card{min-height:250px!important;padding:30px!important}.nf-contact-1091-card.primary{background:radial-gradient(circle at 90% 10%,rgba(220,233,123,.18),transparent 30%),linear-gradient(145deg,#143e2d,#24664a)!important}.nf-contact-1091-topics{background:#f2f6f3!important}.nf-contact-1091-topics .nf-contact-1091-topic-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}.nf-contact-1091-topic-grid>*{min-height:180px!important;border:1px solid #dce5df!important;border-radius:24px!important;background:#fff!important;box-shadow:0 10px 30px rgba(18,58,40,.05)!important;transition:.22s ease!important}.nf-contact-1091-topic-grid>*:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(18,58,40,.1)!important}.nf-contact-1091-form-section{background:linear-gradient(135deg,#10261d,#173f30)!important;color:#fff!important}.nf-contact-1091-form-section :is(h2,h3){color:#fff!important}.nf-contact-1091-form-section p{color:rgba(255,255,255,.72)!important}.nf-contact-1091-formbox{background:#fff!important;color:#10261d!important;padding:clamp(22px,4vw,38px)!important}.nf-contact-1091-formbox :is(label,h3){color:#10261d!important}.nf-contact-1091-formbox input,.nf-contact-1091-formbox select,.nf-contact-1091-formbox textarea{border:1px solid #d3dfd7!important;border-radius:14px!important;background:#f8faf8!important}.nf-contact-1091-formbox button[type=submit]{border-radius:999px!important;background:#c32132!important;color:#fff!important}
@media(max-width:900px){.nfe-members-head{grid-template-columns:1fr}.nfe-members-grid{grid-template-columns:1fr 1fr}.nfe-member-card:first-child{grid-row:auto;grid-column:1/-1;min-height:300px}.nf-contact-1091-main{grid-template-columns:1fr!important}.nf-contact-1091-topics .nf-contact-1091-topic-grid{grid-template-columns:1fr 1fr!important}}@media(max-width:620px){.nfe-members-grid,.nf-contact-1091-topics .nf-contact-1091-topic-grid{grid-template-columns:1fr!important}.nfe-member-card:first-child{grid-column:auto}.nfe-chronik-elfie-figure{min-height:300px!important}}

/* v1.6.1 – Hero-System und Seitenkarten präzisiert */
body.nfe-as-unified .nf7-page-hero{min-height:380px!important;padding:54px 0!important}
body.nfe-as-unified .nf7-page-hero .wrap{width:min(var(--nfe-as-max),92vw)!important;margin-inline:auto!important}
body.nfe-as-unified .nf7-page-hero-grid{min-height:272px!important;align-items:stretch!important}
body.nfe-as-unified .nf7-page-hero-grid>*{min-width:0!important}
body.nfe-as-unified .nf7-page-hero-grid>div:first-child{display:flex!important;flex-direction:column!important;justify-content:center!important}
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){align-self:stretch!important;grid-auto-rows:1fr!important}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat){min-height:0!important;height:100%!important;padding:20px!important;justify-content:center!important;border-radius:18px!important}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) :is(strong,b){font-size:clamp(24px,2.5vw,32px)!important}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) :is(span,small){font-size:11px!important;line-height:1.35!important}

/* Die drei Bezirksgruppen sind gleichwertige, gleich hohe Orientierungskarten. */
body.nfe-as-view-bezirksgruppen .nf-district-hub-grid{grid-auto-rows:1fr!important;align-items:stretch!important}
body.nfe-as-view-bezirksgruppen .nf-district-hub-card{min-height:350px!important;height:100%!important;padding:30px!important;justify-content:space-between!important}
body.nfe-as-view-bezirksgruppen .nf-district-hub-card>*{max-width:100%!important}

/* Rote/braune Hero-Varianten behalten exakt dieselbe Geometrie wie der grüne Hero. */
body.nfe-as-unified .nf7-page-hero.red,body.nfe-as-unified .nf7-page-hero.sand,body.nfe-as-unified .nf7-page-hero.sky{min-height:380px!important;padding:54px 0!important}

/* Chronik: nur EIN Elfie-Erklärbereich. Der eingebettete Bot darunter wird visuell integriert statt gedoppelt. */
body.nfe-as-view-chronik .nfch-elfie-grid{align-items:stretch!important}
body.nfe-as-view-chronik .nfe-chronik-elfie-figure{min-height:360px!important}
body.nfe-as-view-chronik .nfch-elfie :is(h1,h2,h3,h4,strong,b){color:#10261d!important}
body.nfe-as-view-chronik .nfch-elfie :is(p,li,span){color:#40564a!important}
body.nfe-as-view-chronik .nfch-elfie :is(button,a){color:inherit}

@media(max-width:900px){body.nfe-as-unified .nf7-page-hero-grid{min-height:0!important}body.nfe-as-unified .nf7-page-hero{min-height:0!important}.nfe-as-view-bezirksgruppen .nf-district-hub-card{min-height:300px!important}}


/* ==========================================================
   v1.6.2 – HERO RESET: eine Geometrie auf allen Hauptseiten
   ========================================================== */

/* Der Kopfbereich ist auf Termine, Vor Ort, NFJ, NFH und Chronik bewusst identisch
   aufgebaut. Farbvarianten dürfen sich unterscheiden – Maße und Typografie nicht. */
body.nfe-as-unified .nf7-page-hero,
body.nfe-as-unified .nf7-page-hero.red,
body.nfe-as-unified .nf7-page-hero.sky,
body.nfe-as-unified .nf7-page-hero.sand{
  min-height:430px!important;
  padding:48px 0!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
body.nfe-as-unified .nf7-page-hero>.wrap,
body.nfe-as-unified .nf7-page-hero .wrap{
  width:min(var(--nfe-as-max),92vw)!important;
  margin-inline:auto!important;
}
body.nfe-as-unified .nf7-page-hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.72fr)!important;
  gap:clamp(34px,5vw,72px)!important;
  min-height:315px!important;
  align-items:center!important;
}
body.nfe-as-unified .nf7-page-hero-grid>div:first-child{
  display:flex!important;
  min-width:0!important;
  height:100%!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
}
body.nfe-as-unified .nf7-breadcrumb{
  margin:0 0 22px!important;
  color:rgba(255,255,255,.62)!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.055em!important;
}
body.nfe-as-unified .nf7-breadcrumb :is(a,span){color:inherit!important}
body.nfe-as-unified .nf7-page-hero :is(.nf7-page-hero-eyebrow,.nf7-kicker){
  display:inline-flex!important;
  align-items:center!important;
  min-height:27px!important;
  margin:0 0 11px!important;
  color:#dce96f!important;
  font-size:11px!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
body.nfe-as-unified .nf7-page-hero h1{
  max-width:760px!important;
  margin:0 0 15px!important;
  color:#fff!important;
  font-size:clamp(44px,5.1vw,68px)!important;
  font-weight:900!important;
  line-height:.96!important;
  letter-spacing:-.055em!important;
}
body.nfe-as-unified .nf7-page-hero-intro{
  max-width:720px!important;
  margin:0!important;
  color:rgba(255,255,255,.84)!important;
  font-size:17px!important;
  line-height:1.58!important;
}
/* Die drei Schnelllinks im Hero bleiben sekundär und sehen auf jeder Seite gleich aus. */
body.nfe-as-unified .nf7-page-hero :is(.nf7-page-hero-links,.hero-links,.nf7-hero-links){
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:22px!important;
}
body.nfe-as-unified .nf7-page-hero :is(.nf7-page-hero-links,.hero-links,.nf7-hero-links) a{
  display:inline-flex!important;
  min-height:38px!important;
  align-items:center!important;
  padding:0 13px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:850!important;
  text-decoration:none!important;
  backdrop-filter:blur(7px)!important;
}
body.nfe-as-unified .nf7-page-hero :is(.nf7-page-hero-links,.hero-links,.nf7-hero-links) a:hover{
  background:#fff!important;
  color:#173f30!important;
  transform:translateY(-1px)!important;
}

/* KPI-/Info-Karten rechts: keine weiße Schrift auf weißem Grund mehr. */
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-rows:98px!important;
  gap:10px!important;
  width:100%!important;
  align-self:center!important;
  align-content:center!important;
}
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>:last-child:nth-child(odd){grid-column:1/-1!important}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat){
  display:flex!important;
  min-width:0!important;
  min-height:98px!important;
  height:98px!important;
  padding:15px 17px!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:17px!important;
  background:rgba(9,31,23,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 26px rgba(4,22,15,.08)!important;
  color:#fff!important;
  backdrop-filter:blur(10px)!important;
  overflow:hidden!important;
}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) :is(strong,b){
  display:block!important;
  margin:0!important;
  color:#e3ee78!important;
  font-size:clamp(21px,2vw,29px)!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
  white-space:normal!important;
}
body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) :is(span,small){
  display:block!important;
  margin-top:6px!important;
  color:rgba(255,255,255,.79)!important;
  font-size:11px!important;
  font-weight:750!important;
  line-height:1.25!important;
  letter-spacing:.01em!important;
}
/* Falls ein Fachtemplate seinen KPI-Karten explizit einen weißen Hintergrund gibt. */
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>*{
  background:rgba(9,31,23,.28)!important;
  color:#fff!important;
}
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>* :is(strong,b){color:#e3ee78!important}
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>* :is(span,small,p){color:rgba(255,255,255,.79)!important}

/* Bezirksgruppen: drei Angaben bekommen eine ruhige, symmetrische 2+1-Anordnung. */
body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>:last-child:nth-child(3){grid-column:1/-1!important}

/* Chronik: genau EINE sichtbare Elfie-Inszenierung im Inhalt.
   Der globale Bot-Launcher bleibt technisch vorhanden, wird auf der Chronikseite aber
   nicht als zweiter Teaser gezeigt. Der zentrale Button kann ihn weiterhin auslösen. */
body.nfe-as-view-chronik :is(.nfe-elfie-teaser,.nfcb-launch,[data-elfie-open]){
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.nfe-as-view-chronik .nfch-elfie :is(h1,h2,h3,h4,strong,b){color:#10261d!important}
body.nfe-as-view-chronik .nfch-elfie :is(p,li,span){color:#41584c!important}
body.nfe-as-view-chronik .nfch-elfie :is(.nfch-kicker,.kicker,small){color:#176b46!important}

@media(max-width:900px){
  body.nfe-as-unified .nf7-page-hero,
  body.nfe-as-unified .nf7-page-hero.red,
  body.nfe-as-unified .nf7-page-hero.sky,
  body.nfe-as-unified .nf7-page-hero.sand{min-height:0!important;padding:42px 0!important}
  body.nfe-as-unified .nf7-page-hero-grid{grid-template-columns:1fr!important;min-height:0!important;gap:28px!important}
  body.nfe-as-unified .nf7-page-hero h1{font-size:clamp(39px,10vw,58px)!important}
  body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){grid-auto-rows:90px!important;max-width:none!important}
  body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat){min-height:90px!important;height:90px!important}
}
@media(max-width:520px){
  body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){grid-template-columns:1fr 1fr!important;gap:8px!important}
  body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat){padding:13px 14px!important}
  body.nfe-as-unified .nf7-page-hero :is(.stat,.nf7-stat,.nf7-page-hero-stat) :is(strong,b){font-size:21px!important}
}


/* ==========================================================
   v1.6.3 – HERO FACT PANEL
   Die rechten Info-Kästen sind jetzt EIN konsistentes System:
   gleiche Position, gleiche Außenfläche, gleiche Kartenhöhe,
   gleiche Typografie und garantierter Kontrast auf jeder Seite.
   ========================================================== */
body.nfe-as-unified .nf7-page-hero-grid{
  grid-template-columns:minmax(0,1.42fr) minmax(340px,390px)!important;
  align-items:center!important;
}

body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:246px!important;
  min-height:246px!important;
  margin:0!important;
  padding:12px!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  align-self:center!important;
  align-content:stretch!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:26px!important;
  background:rgba(8,29,22,.22)!important;
  box-shadow:0 24px 55px rgba(7,25,19,.16),inset 0 1px 0 rgba(255,255,255,.08)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}

body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>*{
  box-sizing:border-box!important;
  grid-column:auto!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:16px 17px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:0!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.065))!important;
  box-shadow:none!important;
  color:#fff!important;
  text-align:left!important;
  backdrop-filter:none!important;
}

body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>* :is(strong,b){
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#e5ef79!important;
  font-family:inherit!important;
  font-size:clamp(22px,2vw,30px)!important;
  font-weight:950!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
  text-shadow:none!important;
}

body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>* :is(span,small,p){
  display:block!important;
  margin:7px 0 0!important;
  padding:0!important;
  color:rgba(255,255,255,.86)!important;
  font-family:inherit!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.25!important;
  letter-spacing:.025em!important;
  text-transform:none!important;
  text-shadow:none!important;
}

/* Drei Bezirksgruppen: nicht mehr 2+1 und keine überbreite letzte Karte.
   Sie sitzen als drei gleich hohe Zeilen im exakt gleich großen Außenpanel. */
body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){
  grid-template-columns:1fr!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
}
body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>*{
  grid-column:1!important;
  padding:13px 18px!important;
}
body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>* :is(strong,b){font-size:22px!important}
body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>* :is(span,small,p){margin-top:4px!important}

/* Die bisherigen Sonderregeln für ungerade KPI-Anzahlen dürfen dieses System nicht mehr verzerren. */
body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>:last-child:nth-child(odd){grid-column:auto!important}
body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>:last-child:nth-child(3){grid-column:1!important}

/* Farbvarianten verändern nur den Hero-Hintergrund – die Infofläche selbst bleibt identisch. */
body.nfe-as-unified .nf7-page-hero.red :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats),
body.nfe-as-unified .nf7-page-hero.sand :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats),
body.nfe-as-unified .nf7-page-hero.sky :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){
  background:rgba(13,25,21,.24)!important;
}

@media(max-width:900px){
  body.nfe-as-unified .nf7-page-hero-grid{grid-template-columns:1fr!important}
  body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){
    height:auto!important;
    min-height:0!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:none!important;
  }
  body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:1fr!important;
  }
  body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>*{
    min-height:88px!important;
  }
}
@media(max-width:620px){
  body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats),
  body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:none!important;
    padding:9px!important;
  }
  body.nfe-as-view-bezirksgruppen .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>:last-child{
    grid-column:1/-1!important;
  }
  body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>*{
    min-height:82px!important;
    padding:13px 14px!important;
  }
  body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats)>* :is(strong,b){font-size:21px!important}
}


/* ==========================================================
   v1.6.4 – HERO FACT PANEL: EXAKTE HÖHENLINIE
   Rechts liegende Fakten beginnen nicht mehr zu hoch. Ihre
   Unterkante sitzt exakt auf der Aktionszeile
   "Termine · Mitmachen · Mitglieder". Zusätzlich wird der
   Block etwas zur Seitenmitte gezogen.
   ========================================================== */
@media(min-width:901px){
  body.nfe-as-unified .nf7-page-hero-grid{
    grid-template-columns:minmax(0,1.48fr) minmax(330px,380px)!important;
    column-gap:30px!important;
    align-items:end!important;
  }

  /* Die linke Hero-Spalte endet an der Aktionszeile. */
  body.nfe-as-unified .nf7-page-hero-grid>div:first-child{
    align-self:end!important;
    min-width:0!important;
  }

  body.nfe-as-unified .nf7-page-links{
    min-height:34px!important;
    margin-top:20px!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
  }
  body.nfe-as-unified .nf7-page-links>a{
    min-height:34px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:8px 12px!important;
    line-height:1!important;
  }

  /* Tatsächlich vom Theme verwendeter Faktenblock. */
  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack{
    box-sizing:border-box!important;
    width:380px!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    align-self:end!important;
    justify-self:end!important;
    transform:translateX(-18px)!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:minmax(88px,1fr)!important;
    gap:9px!important;
    padding:11px!important;
    border:1px solid rgba(255,255,255,.16)!important;
    border-radius:24px!important;
    background:rgba(8,29,22,.24)!important;
    box-shadow:0 22px 52px rgba(7,25,19,.16),inset 0 1px 0 rgba(255,255,255,.08)!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
  }

  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack>div{
    box-sizing:border-box!important;
    min-width:0!important;
    min-height:88px!important;
    margin:0!important;
    padding:14px 16px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:15px!important;
    background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.065))!important;
    color:#fff!important;
    overflow:hidden!important;
  }
  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack strong{
    margin:0!important;
    color:#e5ef79!important;
    font-size:clamp(22px,2vw,29px)!important;
    font-weight:950!important;
    line-height:.98!important;
    letter-spacing:-.035em!important;
  }
  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack span{
    margin-top:6px!important;
    color:rgba(255,255,255,.86)!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1.25!important;
  }

  /* Drei Bezirksgruppen nutzen dieselbe Außenfläche, aber drei ruhige Zeilen. */
  body.nfe-as-view-bezirksgruppen .nf7-page-hero .nf7-stat-stack{
    grid-template-columns:1fr!important;
    grid-auto-rows:minmax(56px,1fr)!important;
  }
  body.nfe-as-view-bezirksgruppen .nf7-page-hero .nf7-stat-stack>div{
    min-height:56px!important;
    padding:11px 16px!important;
  }
  body.nfe-as-view-bezirksgruppen .nf7-page-hero .nf7-stat-stack strong{font-size:21px!important}
  body.nfe-as-view-bezirksgruppen .nf7-page-hero .nf7-stat-stack span{margin-top:3px!important}

  /* Falls einzelne Templates alternative Statistik-Klassen verwenden,
     gelten dieselbe Flucht und dieselbe Unterkante. */
  body.nfe-as-unified .nf7-page-hero :is(.hero-stat,.nf7-page-hero-stats,.nf7-hero-stats){
    align-self:end!important;
    justify-self:end!important;
    transform:translateX(-18px)!important;
  }
}

@media(max-width:900px){
  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    padding:9px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:22px!important;
    background:rgba(8,29,22,.22)!important;
  }
  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack>div{
    min-height:82px!important;
    padding:13px 14px!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.10)!important;
  }
  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack strong{color:#e5ef79!important}
  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack span{color:rgba(255,255,255,.86)!important}
  body.nfe-as-view-bezirksgruppen .nf7-page-hero .nf7-stat-stack{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:620px){
  body.nfe-as-view-bezirksgruppen .nf7-page-hero .nf7-stat-stack,
  body.nfe-as-unified .nf7-page-hero .nf7-stat-stack{
    grid-template-columns:1fr 1fr!important;
  }
  body.nfe-as-view-bezirksgruppen .nf7-page-hero .nf7-stat-stack>div:last-child:nth-child(3){grid-column:1/-1!important}
}

/* ==========================================================
   v1.6.5 – NATURFREUNDEHAUS: HAUS-DASHBOARD + KONTRAST
   Nur die Seite Tönisheide; keine globalen Kartenregeln.
   ========================================================== */
body.nfe-as-view-naturfreundehaus{
  --nfe-house-ink:#11281f;
  --nfe-house-green:#174b37;
  --nfe-house-green-2:#21684c;
  --nfe-house-lime:#dce96f;
  --nfe-house-sand:#f2ebdc;
  --nfe-house-line:#dce5de;
}

/* 33 Betten · 9 Zimmer · 5 Duschen · Räume · Selbstversorgung */
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:12px!important;
  margin-top:26px!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*{
  position:relative!important;
  isolation:isolate!important;
  grid-column:span 4!important;
  min-height:138px!important;
  overflow:hidden!important;
  padding:23px 22px!important;
  border:1px solid rgba(23,75,55,.12)!important;
  border-radius:26px!important;
  background:linear-gradient(145deg,#ffffff 0%,#f4f8f4 100%)!important;
  box-shadow:0 12px 34px rgba(17,40,31,.07)!important;
  color:var(--nfe-house-ink)!important;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:before{
  content:"";position:absolute;z-index:-1;right:-34px;bottom:-48px;width:122px;height:122px;
  border-radius:50%;background:rgba(220,233,111,.28);transition:transform .28s ease!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:hover{
  transform:translateY(-5px)!important;border-color:rgba(23,75,55,.27)!important;
  box-shadow:0 19px 46px rgba(17,40,31,.12)!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:hover:before{transform:scale(1.3)!important}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>* :is(strong,b,.number,.value){
  color:var(--nfe-house-green)!important;font-size:clamp(30px,3.1vw,43px)!important;
  line-height:.95!important;letter-spacing:-.055em!important;font-weight:900!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>* :is(span,small,p){
  color:#40564d!important;line-height:1.35!important;font-weight:700!important;
}
/* Die beiden Raum-Karten etwas breiter – das Raster wirkt weniger monoton. */
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(4),
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(5){grid-column:span 6!important}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(6){
  grid-column:1/-1!important;min-height:112px!important;
  background:linear-gradient(120deg,var(--nfe-house-green),var(--nfe-house-green-2))!important;
  border-color:transparent!important;color:#fff!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(6):before{background:rgba(220,233,111,.15)}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(6) :is(strong,b,.number,.value){color:var(--nfe-house-lime)!important}
body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(6) :is(span,small,p){color:rgba(255,255,255,.88)!important}

/* Zimmer/Schlafplätze/Sanitär: eine Kartenfamilie, keine fremden Textfarben. */
body.nfe-as-view-naturfreundehaus .nf-house-room-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-room-grid>*{
  min-height:190px!important;padding:27px!important;border:1px solid var(--nfe-house-line)!important;
  border-radius:27px!important;background:#fff!important;box-shadow:0 10px 32px rgba(17,40,31,.055)!important;
  color:var(--nfe-house-ink)!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-room-grid>* :is(h3,h4,strong,b){color:var(--nfe-house-ink)!important}
body.nfe-as-view-naturfreundehaus .nf-house-room-grid>* :is(p,span,small){color:#52665d!important}
body.nfe-as-view-naturfreundehaus .nf-house-room-card-accent,
body.nfe-as-view-naturfreundehaus .nfe-house-total-card{
  background:linear-gradient(145deg,#e8f1e5,#f7faf5)!important;border-color:#c8d8c7!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-room-card-accent :is(h3,h4,strong,b),
body.nfe-as-view-naturfreundehaus .nfe-house-total-card :is(h3,h4,strong,b){color:#153f2f!important}
body.nfe-as-view-naturfreundehaus .nf-house-room-card-accent :is(p,span,small),
body.nfe-as-view-naturfreundehaus .nfe-house-total-card :is(p,span,small){color:#40594e!important}
body.nfe-as-view-naturfreundehaus .nfe-house-sanitary-card{
  background:linear-gradient(145deg,#173d34,#245d4b)!important;border-color:transparent!important;color:#fff!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-sanitary-card :is(h3,h4,strong,b){color:var(--nfe-house-lime)!important}
body.nfe-as-view-naturfreundehaus .nfe-house-sanitary-card :is(p,span,small){color:rgba(255,255,255,.84)!important}

/* INSGESAMT / 33 Schlafplätze – Textkontrast unabhängig vom Theme. */
body.nfe-as-view-naturfreundehaus .nfe-house-total-card .nfe-house-total-label{
  color:#587066!important;font-size:11px!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-total-card .nfe-house-total-value{color:#163f2e!important}

/* Draußen / In der Nähe: moderne Distanz-Chips statt blasser Schrift. */
body.nfe-as-view-naturfreundehaus .nf-house-outdoor{
  background:radial-gradient(circle at 88% 18%,rgba(220,233,111,.15),transparent 24%),linear-gradient(135deg,#14392b,#215a43)!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-outdoor :is(h2,h3,h4,strong){color:#fff!important}
body.nfe-as-view-naturfreundehaus .nf-house-outdoor p{color:rgba(255,255,255,.80)!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby{
  margin-top:24px!important;padding:22px!important;border:1px solid rgba(255,255,255,.16)!important;
  border-radius:26px!important;background:rgba(255,255,255,.09)!important;backdrop-filter:blur(10px)!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby :is(h3,h4){margin:0 0 14px!important;color:var(--nfe-house-lime)!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-items{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-item{
  display:flex!important;min-height:82px!important;flex-direction:column!important;justify-content:center!important;
  padding:15px 16px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:19px!important;
  background:rgba(255,255,255,.08)!important;transition:transform .2s ease,background .2s ease!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-item:hover{transform:translateY(-3px)!important;background:rgba(255,255,255,.14)!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-item :is(strong,b,span:first-child){color:#fff!important;font-weight:850!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-item :is(small,span:last-child){margin-top:4px!important;color:var(--nfe-house-lime)!important;font-weight:850!important}

@media(max-width:900px){
  body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*{grid-column:span 6!important}
  body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(6){grid-column:1/-1!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-nearby-items{grid-template-columns:1fr!important}
}
@media(max-width:640px){
  body.nfe-as-view-naturfreundehaus .nf-house-fact-grid{grid-template-columns:1fr!important}
  body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*{grid-column:1!important;min-height:112px!important}
  body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(4),
  body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(5),
  body.nfe-as-view-naturfreundehaus .nf-house-fact-grid>*:nth-child(6){grid-column:1!important}
  body.nfe-as-view-naturfreundehaus .nf-house-room-grid{grid-template-columns:1fr!important}
}

/* =========================================================
   1.7.0 · NATURFREUNDEHAUS – KLARER, KÜRZER, EINMALIG
   Hero = Überblick. Danach jede Information nur noch einmal.
   ========================================================= */
body.nfe-as-view-naturfreundehaus .nfe-house-duplicate-overview,
body.nfe-as-view-naturfreundehaus .nfe-house-redundant-card,
body.nfe-as-view-naturfreundehaus .nfe-house-redundant-faq,
body.nfe-as-view-naturfreundehaus .nfe-house-editor-block,
body.nfe-as-view-naturfreundehaus .nfe-house-inline-duplicate{display:none!important}

body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid>*:not(.nfe-house-redundant-card){
  min-height:190px!important;padding:30px!important;border-radius:28px!important;
  display:flex!important;flex-direction:column!important;justify-content:flex-end!important;
  overflow:hidden!important;position:relative!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid>*:not(.nfe-house-redundant-card):first-child{
  background:linear-gradient(145deg,#173f2f,#24674b)!important;color:#fff!important;border-color:transparent!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid>*:not(.nfe-house-redundant-card):first-child *{color:inherit!important}
body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid>*:not(.nfe-house-redundant-card):last-child{
  background:linear-gradient(145deg,#edf4e8,#f8f4e8)!important;border-color:#d6dfd1!important;
}

body.nfe-as-view-naturfreundehaus .nfe-house-final-cta{
  padding:0 24px 72px!important;background:transparent!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-final-cta-inner{
  width:min(1180px,100%)!important;margin:0 auto!important;padding:clamp(28px,5vw,54px)!important;
  border-radius:34px!important;background:linear-gradient(120deg,#123c2c 0%,#1d5b42 62%,#284d3c 100%)!important;
  color:#fff!important;display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr)!important;
  gap:40px!important;align-items:end!important;box-shadow:0 24px 70px rgba(17,56,41,.18)!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-final-cta small{display:block!important;margin-bottom:10px!important;color:#dce96f!important;font-weight:900!important;letter-spacing:.14em!important}
body.nfe-as-view-naturfreundehaus .nfe-house-final-cta h2{margin:0 0 12px!important;color:#fff!important;font-size:clamp(32px,4vw,50px)!important;line-height:1!important;letter-spacing:-.04em!important}
body.nfe-as-view-naturfreundehaus .nfe-house-final-cta p{margin:0!important;max-width:720px!important;color:rgba(255,255,255,.78)!important;font-size:16px!important;line-height:1.65!important}
body.nfe-as-view-naturfreundehaus .nfe-house-final-actions{display:grid!important;gap:10px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-final-actions a{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:54px!important;padding:0 18px!important;border-radius:15px!important;background:#fff!important;color:#153f2f!important;font-weight:900!important;text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease!important}
body.nfe-as-view-naturfreundehaus .nfe-house-final-actions a:after{content:'→';font-size:18px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-final-actions a:hover{transform:translateX(4px)!important;box-shadow:0 12px 28px rgba(0,0,0,.14)!important}

/* Mehr Luft zwischen den jetzt klar getrennten Kapiteln. */
body.nfe-as-view-naturfreundehaus main>section{scroll-margin-top:105px}
body.nfe-as-view-naturfreundehaus .nf-house-room-grid,
body.nfe-as-view-naturfreundehaus .nf-house-price-layout,
body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid,
body.nfe-as-view-naturfreundehaus .nf-house-target-grid,
body.nfe-as-view-naturfreundehaus .nf-house-location-grid,
body.nfe-as-view-naturfreundehaus .nf-house-inquiry-grid{margin-top:24px!important}

@media(max-width:760px){
  body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid{grid-template-columns:1fr!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-final-cta{padding:0 16px 52px!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-final-cta-inner{grid-template-columns:1fr!important;gap:24px!important;border-radius:26px!important;padding:28px!important}
}

/* =========================================================
   1.7.1 · TÖNISHEIDE EXPERIENCE
   Weniger Infotapete, mehr räumliche Hierarchie + Interaktion.
   Nur Naturfreundehaus, andere Seiten bleiben unberührt.
   ========================================================= */
body.nfe-as-view-naturfreundehaus{
  --nfh-night:#102f25;
  --nfh-forest:#174837;
  --nfh-moss:#2f7152;
  --nfh-lime:#dce96f;
  --nfh-cream:#f6f3e8;
  --nfh-ink:#132b22;
  --nfh-muted:#53675e;
  --nfh-line:rgba(19,43,34,.12);
}

/* Die Seite bekommt einen bewussteren Rhythmus statt gleich aussehender Blöcke. */
body.nfe-as-view-naturfreundehaus main .section{
  position:relative!important;
  overflow:clip!important;
}
body.nfe-as-view-naturfreundehaus main .section>.wrap{
  position:relative!important;
  z-index:1!important;
}
body.nfe-as-view-naturfreundehaus main .section:nth-of-type(even):not(.nf-house-outdoor){
  background:linear-gradient(180deg,#fbfcf8 0%,#f3f6ef 100%)!important;
}
body.nfe-as-view-naturfreundehaus main h2{
  color:var(--nfh-ink)!important;
  letter-spacing:-.035em!important;
}
body.nfe-as-view-naturfreundehaus main .eyebrow,
body.nfe-as-view-naturfreundehaus main .kicker{
  color:#50705f!important;
}

/* Sticky Kapitel-Navigation: fühlt sich wie eine kleine Haus-App an. */
body.nfe-as-view-naturfreundehaus .subnav{
  position:sticky!important;top:72px!important;z-index:28!important;
  width:min(1180px,calc(100% - 32px))!important;margin:18px auto 8px!important;
  padding:7px!important;border:1px solid rgba(18,55,42,.10)!important;
  border-radius:20px!important;background:rgba(249,250,246,.90)!important;
  box-shadow:0 14px 40px rgba(21,60,44,.10)!important;
  backdrop-filter:blur(18px) saturate(1.15)!important;
}
body.nfe-as-view-naturfreundehaus .subnav a{
  min-height:42px!important;border-radius:14px!important;color:#24483a!important;
  font-weight:800!important;transition:background .2s ease,color .2s ease,transform .2s ease!important;
}
body.nfe-as-view-naturfreundehaus .subnav a:hover{transform:translateY(-1px)!important;background:#edf3e8!important}
body.nfe-as-view-naturfreundehaus .subnav a.is-active{background:var(--nfh-night)!important;color:#fff!important;box-shadow:0 7px 18px rgba(16,47,37,.18)!important}

/* Intro: mehr Editorial-Charakter. */
body.nfe-as-view-naturfreundehaus .nf-house-intro-grid{
  gap:clamp(24px,4vw,54px)!important;align-items:stretch!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-intro-grid>*{
  border-radius:30px!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-intro-grid>div:first-child{
  position:relative!important;padding:clamp(26px,4vw,46px)!important;
  background:linear-gradient(145deg,#f4f7ef,#fff)!important;border:1px solid var(--nfh-line)!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-intro-grid>div:first-child:after{
  content:'F 9';position:absolute!important;right:24px!important;top:22px!important;
  font-size:clamp(44px,7vw,88px)!important;line-height:1!important;font-weight:950!important;
  letter-spacing:-.08em!important;color:rgba(23,72,55,.055)!important;pointer-events:none!important;
}

/* Interaktiver Gruppenplaner – neu in 1.7.1 */
body.nfe-as-view-naturfreundehaus .nfe-house-planner{
  width:min(1180px,calc(100% - 48px))!important;margin:28px auto 76px!important;
  border-radius:34px!important;overflow:hidden!important;
  background:radial-gradient(circle at 93% 8%,rgba(220,233,111,.20),transparent 30%),linear-gradient(135deg,var(--nfh-night),#1d5b43 70%,#2d6f51)!important;
  box-shadow:0 28px 80px rgba(15,50,37,.18)!important;color:#fff!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-inner{
  display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)!important;gap:34px!important;
  padding:clamp(28px,5vw,56px)!important;align-items:center!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner small{
  display:block!important;margin-bottom:10px!important;color:var(--nfh-lime)!important;font-weight:950!important;letter-spacing:.14em!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner h2{
  margin:0 0 13px!important;color:#fff!important;font-size:clamp(34px,5vw,58px)!important;line-height:.98!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner p{margin:0!important;color:rgba(255,255,255,.76)!important;max-width:650px!important;line-height:1.65!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-box{
  padding:22px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:25px!important;background:rgba(255,255,255,.08)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.09)!important;backdrop-filter:blur(10px)!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-counter{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin-bottom:14px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-counter button{
  width:46px!important;height:46px!important;border:0!important;border-radius:14px!important;background:#fff!important;color:var(--nfh-night)!important;
  font-size:24px!important;font-weight:900!important;cursor:pointer!important;transition:transform .18s ease,background .18s ease!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-counter button:hover{transform:scale(1.06)!important;background:var(--nfh-lime)!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-number{font-size:42px!important;font-weight:950!important;letter-spacing:-.06em!important;color:#fff!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-number span{display:block!important;font-size:11px!important;letter-spacing:.1em!important;color:rgba(255,255,255,.60)!important;text-transform:uppercase!important;text-align:center!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-range{width:100%!important;accent-color:var(--nfh-lime)!important;cursor:pointer!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-presets{display:flex!important;gap:7px!important;flex-wrap:wrap!important;margin:13px 0 18px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-presets button{
  border:1px solid rgba(255,255,255,.14)!important;border-radius:999px!important;padding:8px 11px!important;background:rgba(255,255,255,.06)!important;color:#fff!important;font-size:12px!important;font-weight:850!important;cursor:pointer!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-presets button:hover{background:rgba(255,255,255,.14)!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-result{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-result>div{
  min-height:90px!important;padding:15px!important;border-radius:18px!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.10)!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-result b{display:block!important;color:var(--nfh-lime)!important;font-size:16px!important;line-height:1.15!important}
body.nfe-as-view-naturfreundehaus .nfe-house-planner-result span{display:block!important;margin-top:5px!important;color:rgba(255,255,255,.68)!important;font-size:12px!important;line-height:1.35!important}

/* Schlafen / Sanitär: klarer, grafischer, weniger WordPress-Kartenoptik. */
body.nfe-as-view-naturfreundehaus .nf-house-room-grid>*{
  position:relative!important;overflow:hidden!important;border-radius:30px!important;
  transition:transform .24s ease,box-shadow .24s ease!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-room-grid>*:hover{transform:translateY(-5px)!important;box-shadow:0 22px 52px rgba(17,55,41,.11)!important}
body.nfe-as-view-naturfreundehaus .nf-house-room-grid>*:before{
  content:'';position:absolute!important;width:120px!important;height:120px!important;border-radius:999px!important;right:-54px!important;top:-48px!important;background:rgba(29,91,66,.07)!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-sanitary-card:before{background:rgba(220,233,111,.10)!important}

/* Ausstattung: große, unterschiedliche Flächen statt fünf gleiche Kästchen. */
body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid>*:not(.nfe-house-redundant-card){
  transition:transform .25s ease,box-shadow .25s ease!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-equipment-grid>*:not(.nfe-house-redundant-card):hover{transform:translateY(-5px)!important;box-shadow:0 24px 58px rgba(18,54,41,.12)!important}

/* Für wen? – klick-/hover-artige Zielgruppenkarten mit klarer Hierarchie. */
body.nfe-as-view-naturfreundehaus .nf-house-target-grid>*{
  position:relative!important;overflow:hidden!important;min-height:150px!important;border-radius:24px!important;
  border:1px solid var(--nfh-line)!important;background:#fff!important;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-target-grid>*:hover{transform:translateY(-4px)!important;border-color:rgba(40,105,76,.30)!important;box-shadow:0 18px 44px rgba(16,54,40,.09)!important}
body.nfe-as-view-naturfreundehaus .nf-house-target-grid>*:after{content:'↗';position:absolute!important;right:16px!important;top:14px!important;color:#779285!important;font-weight:900!important}

/* DRAUSSEN: eigener Erlebnisblock. Er zwingt alle Texte in sicheren Kontrast. */
body.nfe-as-view-naturfreundehaus .nf-house-outdoor,
body.nfe-as-view-naturfreundehaus .nfe-house-outdoor-section{
  position:relative!important;background:radial-gradient(circle at 84% 12%,rgba(220,233,111,.18),transparent 25%),linear-gradient(140deg,#102f25 0%,#174b38 58%,#28684b 100%)!important;color:#fff!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-outdoor :is(h1,h2,h3,h4,h5,strong,b),
body.nfe-as-view-naturfreundehaus .nfe-house-outdoor-section :is(h1,h2,h3,h4,h5,strong,b){color:#fff!important}
body.nfe-as-view-naturfreundehaus .nf-house-outdoor :is(p,li,span),
body.nfe-as-view-naturfreundehaus .nfe-house-outdoor-section :is(p,li,span){color:rgba(255,255,255,.80)!important}

/* In der Nähe wird vollständig als eigener Block gebaut – kein Weiß-auf-Weiß mehr möglich. */
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-original{display:none!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2{
  margin-top:30px!important;padding:clamp(22px,3vw,32px)!important;border-radius:30px!important;
  background:#f1f5e9!important;border:1px solid rgba(220,233,111,.30)!important;color:var(--nfh-ink)!important;
  box-shadow:0 18px 44px rgba(7,34,24,.14)!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-head{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:18px!important;margin-bottom:18px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2 small{display:block!important;color:#587065!important;font-weight:950!important;letter-spacing:.13em!important;text-transform:uppercase!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2 h3{margin:4px 0 0!important;color:#14392b!important;font-size:clamp(25px,3vw,36px)!important;letter-spacing:-.04em!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-note{color:#66786f!important;font-size:13px!important;font-weight:750!important;white-space:nowrap!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-card{
  position:relative!important;min-height:142px!important;padding:19px!important;border-radius:22px!important;background:#fff!important;border:1px solid rgba(20,57,43,.10)!important;
  color:var(--nfh-ink)!important;overflow:hidden!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-card:hover{transform:translateY(-5px)!important;box-shadow:0 18px 38px rgba(18,58,43,.12)!important;border-color:rgba(35,105,75,.26)!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-card .icon{font-size:27px!important;line-height:1!important;display:block!important;margin-bottom:18px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-card b{display:block!important;color:#14392b!important;font-size:17px!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-card .distance{display:block!important;margin-top:5px!important;color:#2c6c50!important;font-size:23px!important;font-weight:950!important;letter-spacing:-.04em!important}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-card:after{
  content:'';position:absolute!important;width:84px!important;height:84px!important;border-radius:50%!important;right:-35px!important;bottom:-38px!important;background:#edf3d0!important;transition:transform .22s ease!important;
}
body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-card:hover:after{transform:scale(1.25)!important}

/* Lage: Adresse und Anreise wie ein echtes Service-Modul. */
body.nfe-as-view-naturfreundehaus .nf-house-location-grid>*{
  border-radius:28px!important;border:1px solid var(--nfh-line)!important;background:#fff!important;box-shadow:0 12px 34px rgba(18,55,42,.06)!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-location-grid a{font-weight:900!important}

/* Anfrage: bewusst als finaler Handlungspunkt hervorheben. */
body.nfe-as-view-naturfreundehaus .nf-house-inquiry-grid{
  border-radius:34px!important;padding:clamp(18px,3vw,30px)!important;background:linear-gradient(145deg,#f1f5eb,#fff)!important;border:1px solid rgba(22,65,48,.10)!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-inquiry-grid :is(input,select,textarea){
  border-radius:14px!important;border:1px solid rgba(19,59,43,.16)!important;background:#fff!important;transition:border-color .18s ease,box-shadow .18s ease!important;
}
body.nfe-as-view-naturfreundehaus .nf-house-inquiry-grid :is(input,select,textarea):focus{border-color:#2d7555!important;box-shadow:0 0 0 4px rgba(45,117,85,.10)!important;outline:none!important}

@media(max-width:900px){
  body.nfe-as-view-naturfreundehaus .subnav{top:66px!important;overflow-x:auto!important;justify-content:flex-start!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-planner-inner{grid-template-columns:1fr!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-grid{grid-template-columns:1fr!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-head{align-items:start!important;flex-direction:column!important}
}
@media(max-width:640px){
  body.nfe-as-view-naturfreundehaus .nfe-house-planner{width:calc(100% - 24px)!important;margin-bottom:50px!important;border-radius:26px!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-planner-inner{padding:25px!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-planner-result{grid-template-columns:1fr!important}
  body.nfe-as-view-naturfreundehaus .nfe-house-planner h2{font-size:36px!important}
}
@media(prefers-reduced-motion:reduce){
  body.nfe-as-view-naturfreundehaus .nfe-house-nearby-v2-card,
  body.nfe-as-view-naturfreundehaus .nf-house-room-grid>*,
  body.nfe-as-view-naturfreundehaus .nf-house-target-grid>*{transition:none!important;transform:none!important}
}
