/* ============================================================
   WICHTIG: Diese @import-Zeile muss GANZ OBEN in der zentralen
   CSS stehen (vor allen anderen Regeln), sonst ignoriert der
   Browser sie! Sie lädt die Schriften (Fraunces, Figtree) –
   <link>-Tags im Content entfernt das Programm.
   ============================================================ */
@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400;1,9..144,500&family=Figtree:wght@300;400;500;600&display=swap");

/* ============================================================
   TEIL 1: THEME/PROGRAMM-STYLES (aus der bisherigen CSS
   übernommen – steuern Header, Logo, Menü, Footer & Slider
   des Programms. NICHT löschen!)

   Bewusst ENTFERNT gegenüber der alten CSS:
   - Dancing Script (@font-face + h1–h6-Regel)  → Überschriften
     laufen jetzt in Fraunces (siehe Regel unten)
   - section-Hintergrundtextur (0structure-bg.jpg) → cleaner Look
   - .modern h3 Dunkelblau → Farben kommen aus dem neuen Design
   ============================================================ */

/* Programm-Überschriften (Seitentitel, Footer, Widgets)
   im neuen Fraunces-Serif statt Dancing Script */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
#page-title .page-title > h1 {
  font-family: 'Fraunces', Georgia, serif;
  text-transform: inherit;
  font-weight: 500;
}

#page-title[data-bg-parallax] .page-title > h1 {
  color: #fff;
  text-shadow: 3px 3px 8px rgba(0,0,0,.55);
}

.widget .widget-title, .widget > h4, .team-members .team-member .team-desc > h3 {
  text-transform: inherit;
  font-size: x-large;
  font-weight: 500;
}
#footer .widget .widget-title, #footer .widget h4 {
  text-transform: inherit;
  font-size: x-large;
  font-weight: 500;
}
#footer .flickity-slider > div > img, #footer .carousel .polo-carousel-item img {
  -webkit-filter: sepia(1);
  filter: grayscale(1);
}
#footer .flickity-slider > div > img, .carousel .polo-carousel-item img:hover, .room-image:hover {
  -webkit-filter: none !important;
  filter: none !important;
  opacity: 1;
}
.bg-overlay {
  /*opacity: 0;*/
}
.inspiro-slider .slide .slide-captions h2, .textshadow, .section-video p, .section-video h2 {
  text-shadow: 4px 4px 6px rgba(0,0,0,0.67);
}
.logo-default {
  filter: brightness(0) invert(1);
}
.logo-default img {
  max-width: 350px;
  padding: 20px;
}
.gallery .logo-default, .header-sticky .logo-default, .mainMenu-open .logo-default {
  filter: none;
}
.lines, .lines:before, .lines:after, .tags a {
  background-color: white;
}
.mainMenu-open .lines, .mainMenu-open .lines:before, .mainMenu-open .lines:after {
  background-color: black;
}
.header-sticky .logo-default img, .gallery .logo-default img {
  height: 73px;
  padding: 0;
}
#mainMenu nav > ul > li.mega-menu-item > .dropdown-menu {
  width: inherit;
}
.breakpoint-xs .mega-menu-content ul li {
  margin-right: 20px;
}
.kenburns-bg {
  background-position: 50% 50%;
}
.mainMenu-open .icon-globe, .mainMenu-open a {
  color: black !important;
}
#footer.inverted .widget-contact-us a {
  color: white !important;
}
.carousel .room-details ul {
  text-align: left;
}
/* ---------- Zimmer-Slider (Programm-Markup) im neuen Look ----------
   Die Zimmertexte aus dem Programm enthalten teils fest
   eingetragene weiße Inline-Farben – deshalb werden die Farben
   hier mit !important auf das neue Design gezwungen. */
.roomcontent {
  background: transparent;
  display: inline-block;
  padding: 0;
  width: 100%;
}
.rooms.carousel .polo-carousel-item { padding: 6px 20px 6px 0; }
.rooms.carousel .room {
  background: #faf9f3;
  border-radius: 18px;
  overflow: hidden;
  height: 100%;
}
.rooms.carousel .room-image img {
  width: 100%;
  aspect-ratio: 16/11;
  object-fit: cover;
  display: block;
}
.rooms.carousel .room-details {
  padding: 18px 22px 24px;
  text-align: left;
}
.rooms.carousel .room-details,
.rooms.carousel .room-details p,
.rooms.carousel .room-details span,
.rooms.carousel .room-details strong,
.rooms.carousel .room-details b,
.rooms.carousel .room-details li {
  color: #28322b !important;
  font-family: 'Figtree','Segoe UI',Arial,sans-serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  text-shadow: none !important;
}
.rooms.carousel .room-details p > span:first-child strong,
.rooms.carousel .room-details p strong:first-child {
  font-family: 'Fraunces',Georgia,serif !important;
  font-size: 19px !important;
  font-weight: 600 !important;
}
.rooms.carousel .room-details ul {
  margin: 10px 0 14px 18px;
  padding: 0;
}
.rooms.carousel .room-details ul li { margin-bottom: 4px; }
.rooms.carousel .plan-button a.btn,
.rooms.carousel .plan-button a.btn:visited {
  display: inline-block;
  background: #557b4a !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  padding: 10px 24px !important;
  font-family: 'Figtree','Segoe UI',Arial,sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: .02em !important;
  text-decoration: none !important;
}
.rooms.carousel .plan-button a.btn:hover { background: #446239 !important; }
/* Pfeile des Sliders dezent hell */
.rooms.carousel .flickity-prev-next-button {
  background: rgba(255,255,255,.85);
}
/* Alter FontAwesome-4-Trenner (Icon existiert in FA5 nicht):
   durch kurze, dezente Linie ersetzen */
.background-dark .seperator {
  width: 64px;
  margin: 12px auto 16px;
  border-top: 2px solid rgba(255,255,255,.35);
}
.background-dark .seperator i { display: none; }

/* ============================================================
   TEIL 2: NEUES DESIGN-SYSTEM (gp-Klassen)
   ============================================================ */

/* ============================================================
   GÄSTEHAUS PANORAMA – Design-System (Redesign 2026)
   Prefix "gp-", wirkt nur innerhalb von <div class="gp">.
   Weiches, naturnahes Design: Fraunces-Serif, Markengrün,
   Creme/Salbei-Flächen, runde Ecken, Pill-Buttons.
   ============================================================ */

.gp{
  --gp-green:#557b4a;
  --gp-green-dark:#446239;
  --gp-forest:#24402a;
  --gp-ink:#28322b;
  --gp-soft:#5d6b60;
  --gp-cream:#faf9f3;
  --gp-sage:#edf3e4;
  --gp-line:#e2e7da;
  --gp-serif:'Fraunces',Georgia,serif;
  --gp-sans:'Figtree','Segoe UI',Arial,sans-serif;
  --gp-radius:20px;
  font-family:var(--gp-sans);
  color:var(--gp-ink);
  font-weight:400;
  font-size:17px;
  line-height:1.7;
  text-align:left;
  margin:0;
  background:#fff;
}
.gp *,.gp *::before,.gp *::after{box-sizing:border-box;}
.gp img{max-width:100%;display:block;}
.gp p{margin:0 0 1.2em;color:var(--gp-ink);font-family:var(--gp-sans);}
.gp a{text-decoration:none;color:var(--gp-green-dark);}

/* ---------- Typo ---------- */
.gp .gp-eyebrow{
  display:inline-block;
  font-family:var(--gp-sans);
  font-size:13px;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gp-green-dark);
  background:var(--gp-sage);
  border-radius:999px;
  padding:8px 18px;
  margin:0 0 24px;
}
.gp .gp-h1{
  font-family:var(--gp-serif);
  font-weight:500;
  font-size:clamp(34px,4.6vw,58px);
  line-height:1.12;
  letter-spacing:-.01em;
  margin:0 0 18px;
  color:var(--gp-ink);
}
.gp .gp-h2{
  font-family:var(--gp-serif);
  font-weight:500;
  font-size:clamp(28px,3.4vw,42px);
  line-height:1.15;
  letter-spacing:-.01em;
  margin:0 0 16px;
  color:var(--gp-ink);
}
.gp .gp-h3{
  font-family:var(--gp-serif);
  font-weight:600;
  font-size:clamp(20px,2vw,24px);
  line-height:1.25;
  margin:0 0 10px;
  color:var(--gp-ink);
}
.gp .gp-h1 em,.gp .gp-h2 em{font-style:italic;color:var(--gp-green-dark);}
.gp .gp-lead{
  font-family:var(--gp-serif);
  font-style:italic;
  font-size:clamp(19px,2vw,24px);
  line-height:1.55;
  color:var(--gp-soft);
  margin-bottom:22px;
}
.gp .gp-note{font-size:15px;color:var(--gp-soft);}

/* ---------- Buttons (Pill) ---------- */
.gp .gp-btn{
  display:inline-block;
  font-family:var(--gp-sans);
  font-size:15px;
  font-weight:600;
  letter-spacing:.02em;
  padding:14px 30px;
  border-radius:999px;
  background:var(--gp-green);
  color:#fff;
  border:2px solid var(--gp-green);
  transition:background .25s,border-color .25s,color .25s;
  margin:0 8px 12px 0;
}
.gp .gp-btn:hover{background:var(--gp-green-dark);border-color:var(--gp-green-dark);color:#fff;}
.gp .gp-btn--outline{background:transparent;color:var(--gp-forest);border-color:var(--gp-line);}
.gp .gp-btn--outline:hover{background:var(--gp-sage);color:var(--gp-forest);border-color:var(--gp-sage);}
.gp .gp-btn--light{background:#fff;color:var(--gp-forest);border-color:#fff;}
.gp .gp-btn--light:hover{background:var(--gp-cream);border-color:var(--gp-cream);color:var(--gp-forest);}

/* Text-Pfeillink */
.gp .gp-more{
  display:inline-block;
  font-weight:600;
  font-size:15px;
  color:var(--gp-green-dark);
}
.gp .gp-more::after{content:" →";}
.gp .gp-more:hover{color:var(--gp-forest);}

/* ---------- Layout ---------- */
.gp .gp-wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
.gp .gp-narrow{max-width:780px;margin:0 auto;padding:0 24px;}
.gp .gp-center{text-align:center;}
.gp .gp-section{padding:clamp(64px,8vw,110px) 0;}
.gp .gp-section--tight{padding:clamp(44px,6vw,70px) 0;}

/* Volle-Breite-Flächen: Hintergrund via box-shadow verlängert,
   funktioniert auch bei nicht zentrierter Content-Spalte */
.gp .gp-bleed{clip-path:inset(0 -100vmax);}
.gp .gp-bleed--sage{background:var(--gp-sage);box-shadow:0 0 0 100vmax var(--gp-sage);}
.gp .gp-bleed--cream{background:var(--gp-cream);box-shadow:0 0 0 100vmax var(--gp-cream);}
.gp .gp-bleed--forest{background:var(--gp-forest);box-shadow:0 0 0 100vmax var(--gp-forest);}

/* dunkelgrüne Fläche: Textfarben */
.gp .gp-bleed--forest .gp-h2,
.gp .gp-bleed--forest .gp-h3{color:#fff;}
.gp .gp-bleed--forest p{color:rgba(255,255,255,.82);}
.gp .gp-bleed--forest .gp-lead{color:rgba(255,255,255,.75);}
.gp .gp-bleed--forest .gp-eyebrow{background:rgba(255,255,255,.12);color:#cfe8c4;}
.gp .gp-bleed--forest .gp-h1 em,
.gp .gp-bleed--forest .gp-h2 em{color:#cfe8c4;}
.gp .gp-bleed--forest a.gp-contact{color:#cfe8c4;}

/* ---------- Bilder ---------- */
.gp .gp-photo{
  width:100%;
  border-radius:var(--gp-radius);
  object-fit:cover;
}
.gp .gp-photo--wide{aspect-ratio:21/9;}

/* ---------- Vorteile-Karten ---------- */
.gp .gp-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
  margin-top:clamp(36px,5vw,56px);
}
.gp .gp-card{
  background:#fff;
  border:1px solid var(--gp-line);
  border-radius:var(--gp-radius);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.gp .gp-card img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.gp .gp-card__body{padding:26px 26px 30px;}
.gp .gp-card__body p{font-size:15px;color:var(--gp-soft);margin-bottom:0;}

/* Häkchen-Liste */
.gp .gp-check{list-style:none;margin:0;padding:0;}
.gp .gp-check li{
  position:relative;
  padding:7px 0 7px 30px;
  font-size:15px;
  line-height:1.5;
  color:var(--gp-ink);
  border-bottom:1px solid var(--gp-line);
}
.gp .gp-check li:last-child{border-bottom:0;}
.gp .gp-check li::before{
  content:"✓";
  position:absolute;left:2px;top:7px;
  color:var(--gp-green);
  font-weight:700;
}

/* ---------- Zimmer-Karten ---------- */
.gp .gp-rooms{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
  margin-top:clamp(36px,5vw,56px);
}
.gp .gp-room{
  background:var(--gp-cream);
  border-radius:var(--gp-radius);
  overflow:hidden;
}
.gp .gp-room img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.gp .gp-room__body{padding:26px 28px 30px;}
.gp .gp-room__body .gp-h3{margin-bottom:4px;}
.gp .gp-room__sub{font-size:14px;color:var(--gp-soft);margin-bottom:14px;}
.gp .gp-chips{margin:0 0 18px;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px;}
.gp .gp-chips li{
  font-size:13px;font-weight:500;
  background:#fff;border:1px solid var(--gp-line);
  border-radius:999px;padding:5px 13px;
  color:var(--gp-soft);
}

/* ---------- Highlight-Band (z. B. Alpakas) ---------- */
.gp .gp-highlight{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(32px,5vw,64px);
  align-items:center;
}
.gp .gp-highlight img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:var(--gp-radius);
}
/* gespiegelte Variante (Bild rechts) */
.gp .gp-highlight--flip img{order:2;}
.gp .gp-highlight + .gp-highlight{margin-top:clamp(44px,6vw,72px);}

/* ---------- Teaser-Zeile (Region) ---------- */
.gp .gp-teasers{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
  margin-top:clamp(36px,5vw,56px);
}
.gp .gp-teaser{position:relative;border-radius:var(--gp-radius);overflow:hidden;display:block;}
.gp .gp-teaser img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .4s;}
.gp .gp-teaser:hover img{transform:scale(1.04);}
.gp .gp-teaser__label{
  position:absolute;left:0;right:0;bottom:0;
  padding:44px 26px 22px;
  background:linear-gradient(180deg,rgba(20,30,20,0) 0%,rgba(20,30,20,.75) 100%);
}
.gp .gp-teaser__label strong{
  display:block;
  font-family:var(--gp-serif);
  font-weight:500;
  font-size:clamp(20px,2.2vw,26px);
  color:#fff;
}
.gp .gp-teaser__label span{font-size:14px;color:rgba(255,255,255,.85);}

/* ---------- Kontakt-Block ---------- */
.gp .gp-contactgrid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:clamp(32px,5vw,64px);
  align-items:center;
}
.gp a.gp-contact{
  display:block;
  font-family:var(--gp-serif);
  font-size:clamp(20px,2.2vw,26px);
  font-weight:500;
  margin-bottom:6px;
}
.gp .gp-address{font-size:16px;line-height:1.7;}

/* ---------- Mobile ---------- */
@media (max-width:980px){
  .gp .gp-highlight--flip img{order:0;}
  .gp .gp-cards{grid-template-columns:1fr;gap:22px;}
  .gp .gp-rooms{grid-template-columns:1fr;gap:24px;}
  .gp .gp-teasers{grid-template-columns:1fr;gap:22px;}
  .gp .gp-highlight{grid-template-columns:1fr;gap:24px;}
  .gp .gp-contactgrid{grid-template-columns:1fr;gap:28px;}
}
@media (max-width:600px){
  .gp{font-size:16px;}
  .gp .gp-btn{display:block;text-align:center;margin-right:0;}
}

/* Zimmer-Slider-Sektion (Programm-Markup "background-dark")
   im neuen Panorama-Look: Tannengrün + runde Ecken */
.container.background-dark{
  background-color:#24402a !important;
  border-radius:20px;
}
.container.background-dark .seperator{color:#cfe8c4;}

/* Chips zentriert (z. B. Themen-Tags) */
.gp .gp-chips--center{justify-content:center;}
/* eingebettete Widgets (z. B. 360°-Panorama) abrunden */
.gp .gp-embed{border-radius:var(--gp-radius);overflow:hidden;}

/* ---------- Sommerseite: großes Intro-Foto ---------- */
.gp .gp-photo--intro{
  aspect-ratio:21/9;
  object-position:50% 38%;
  margin-top:clamp(36px,5vw,56px);
}

/* ---------- Fakten-Band (dunkelgrün, volle Breite) ---------- */
.gp .gp-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:clamp(24px,4vw,56px);
  text-align:center;
}
.gp .gp-stats strong{
  display:block;
  font-family:var(--gp-serif);
  font-weight:500;
  font-size:clamp(26px,3vw,38px);
  line-height:1.15;
  color:#fff;
  margin-bottom:6px;
}
.gp .gp-stats span{font-size:15px;line-height:1.5;display:block;color:rgba(255,255,255,.75);}

/* ---------- Nummern-Pill in Karten ---------- */
.gp .gp-card__num{
  display:inline-block;
  font-size:13px;
  font-weight:700;
  letter-spacing:.14em;
  color:var(--gp-green-dark);
  background:var(--gp-sage);
  border-radius:999px;
  padding:6px 14px;
  margin:0 0 14px;
}

@media (max-width:600px){
  .gp .gp-stats{grid-template-columns:1fr;gap:20px;}
  .gp .gp-photo--intro{aspect-ratio:4/3;}
}

/* ---------- Häkchen-Liste zweispaltig (Region) ---------- */
.gp .gp-check--cols{columns:2;column-gap:56px;margin-top:clamp(24px,3vw,36px);}
.gp .gp-check--cols li{break-inside:avoid;}
@media (max-width:800px){
  .gp .gp-check--cols{columns:1;}
}

/* ============================================================
   PREISE-SEITE
   Das Programm hängt das Preismodul-iframe ANS ENDE des
   Content-Bereichs. Per Flex-Order wird es optisch zwischen
   Intro (.gp--top) und Infoteil (.gp--bottom) einsortiert.
   Gilt nur auf Seiten mit dem Preismodul (:has).
   ============================================================ */
section#page-content .content:has(> iframe[src*="pricemodul"]){
  display:flex;
  flex-direction:column;
}
section#page-content .content:has(> iframe[src*="pricemodul"]) > .gp--top{order:-1;}
section#page-content .content:has(> iframe[src*="pricemodul"]) > .gp--bottom{order:1;}
section#page-content .content > iframe[src*="pricemodul"]{
  width:100% !important;
  max-width:760px;
  margin:8px auto 0;
  border:0;
}

/* Zwei Karten nebeneinander (z. B. Preisinfos + Storno) */
.gp .gp-cards--2{grid-template-columns:1fr 1fr;}
@media (max-width:800px){
  .gp .gp-cards--2{grid-template-columns:1fr;}
}

/* ============================================================
   "Alpakas"-FIX: Die Seite heißt im Programm "Alpakas" –
   die Klammern werden per CSS ausgeblendet und der Text ohne
   Klammern neu eingesetzt: im Hauptmenü, in der Seitenliste
   (Sidebar-Tags) und im Sidebar-Widget-Titel der Alpaka-Seite.
   (Sauberer wäre, den Namen im Programm ohne Klammern zu
   erfassen – dann kann dieser Block entfallen.)
   ============================================================ */
#mainMenu a[href="alpakas"]{font-size:0 !important;-webkit-text-size-adjust:none;text-size-adjust:none;}
#mainMenu a[href="alpakas"]::after{
  content:"Alpakas";
  font-size:14px;
  font-weight:600;
  letter-spacing:.6px;
  text-transform:uppercase;
}
.tags a[href="alpakas"]{font-size:0 !important;-webkit-text-size-adjust:none;text-size-adjust:none;}
.tags a[href="alpakas"]::after{content:"Alpakas";font-size:13px;}
body:has(.gp-page-alpakas) .sidebar .widget-title{font-size:0 !important;-webkit-text-size-adjust:none;text-size-adjust:none;}
body:has(.gp-page-alpakas) .sidebar .widget-title::after{content:"Alpakas";font-size:x-large;}

/* Schlichte Liste ohne Häkchen (z. B. Stornostaffel) */
.gp .gp-list{list-style:none;margin:0;padding:0;}
.gp .gp-list li{
  padding:7px 0;
  font-size:15px;
  line-height:1.5;
  color:var(--gp-ink);
  border-bottom:1px solid var(--gp-line);
}
.gp .gp-list li:last-child{border-bottom:0;}

/* ____________________________________________________________
TEIL 3: FEINSCHLIFF 2026-10 – Header, Video-Sektionen,
Zimmer-Slider, Fußzeile, Lücke vor der Fußzeile
____________________________________________________________ */
body{overflow-x:clip;}
#topbar, #topbar.dark{background:#24402a !important;}
#topbar *{font-family:'Figtree','Segoe UI',Arial,sans-serif !important;font-size:14px !important;letter-spacing:.02em;}
#topbar li a:hover{color:#cfe8c4 !important;}
#mainMenu nav > ul > li > a{font-family:'Figtree','Segoe UI',Arial,sans-serif !important;font-weight:600 !important;font-size:13px !important;letter-spacing:.07em !important;padding-left:11px !important;padding-right:11px !important;position:relative;}
#mainMenu nav > ul > li > a::before{content:"";position:absolute;left:11px;right:11px;bottom:5px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s;}
#mainMenu nav > ul > li:hover > a::before,#mainMenu nav > ul > li.current > a::before{transform:scaleX(1);}
#mainMenu a[href="alpakas"]::after{font-family:'Figtree','Segoe UI',Arial,sans-serif !important;font-size:13px !important;letter-spacing:.07em !important;}
#header[data-transparent="true"]:not(.header-sticky) #mainMenu nav > ul > li > a{text-shadow:0 1px 10px rgba(0,0,0,.45);}
#header[data-transparent="true"]:not(.header-sticky) #mainMenu nav > ul > li.current > a,#header[data-transparent="true"]:not(.header-sticky) #mainMenu nav > ul > li:hover > a{color:#fff !important;}
#header.header-sticky #mainMenu nav > ul > li > a,#header:not([data-transparent="true"]) #mainMenu nav > ul > li > a{color:#28322b !important;text-shadow:none !important;}
#header.header-sticky #mainMenu nav > ul > li.current > a,#header.header-sticky #mainMenu nav > ul > li:hover > a,#header:not([data-transparent="true"]) #mainMenu nav > ul > li.current > a,#header:not([data-transparent="true"]) #mainMenu nav > ul > li:hover > a{color:#557b4a !important;}
#mainMenu nav > ul > li .dropdown-menu{border:0 !important;border-radius:12px !important;box-shadow:0 14px 34px rgba(36,64,42,.16) !important;padding:8px 0 !important;}
#mainMenu nav > ul > li .dropdown-menu a{font-family:'Figtree','Segoe UI',Arial,sans-serif !important;font-size:14px !important;}
#mainMenu nav > ul > li .dropdown-menu a:hover{color:#557b4a !important;background:#f3f6ee !important;}
.header-sticky #header-wrap{box-shadow:0 6px 24px rgba(36,64,42,.10) !important;}

/* Video-Sektionen: volle Breite, Overlay, Fraunces */
section.section-video{width:100vw !important;max-width:100vw !important;position:relative;left:50%;margin-left:-50vw !important;min-height:min(78vh,640px);display:flex;align-items:center;}
section.section-video::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,34,22,.15) 0%,rgba(20,34,22,.55) 100%);z-index:1;pointer-events:none;}
section.section-video > .container{position:relative;z-index:2;}
section.section-video h2.text-lg{font-family:'Fraunces',Georgia,serif !important;font-weight:500 !important;font-size:clamp(38px,5.4vw,72px) !important;line-height:1.08 !important;letter-spacing:-.01em !important;text-transform:none !important;margin-bottom:14px !important;}
section.section-video p.lead{font-family:'Fraunces',Georgia,serif !important;font-style:italic;font-size:clamp(18px,2vw,24px) !important;margin-bottom:26px !important;}
section.section-video a.btn{font-family:'Figtree','Segoe UI',Arial,sans-serif !important;background:#fff !important;color:#24402a !important;border:0 !important;border-radius:999px !important;padding:14px 32px !important;font-size:15px !important;font-weight:600 !important;letter-spacing:.02em !important;text-transform:none !important;height:auto !important;line-height:1.2 !important;}
section.section-video a.btn::after{content:" \2192";}
section.section-video a.btn:hover{background:#faf9f3 !important;color:#24402a !important;}

/* Zimmer-Slider: volle Breite Tannengrün, gleich hohe Karten */
section:has(> .container.background-dark){background:#24402a;width:100vw;max-width:100vw;position:relative;left:50%;margin-left:-50vw !important;padding:clamp(64px,8vw,110px) 0 !important;}
.container.background-dark{background:transparent !important;border-radius:0 !important;padding-left:0 !important;padding-right:0 !important;}
.container.background-dark > .text-center h2{font-family:'Fraunces',Georgia,serif !important;font-weight:500 !important;font-size:clamp(30px,3.6vw,46px) !important;color:#fff !important;}
.container.background-dark > .text-center .lead{font-family:'Fraunces',Georgia,serif !important;font-style:italic;font-size:clamp(18px,2vw,22px) !important;color:rgba(255,255,255,.75) !important;}
.container.background-dark .seperator{border-top-color:#cfe8c4 !important;width:48px !important;}
.rooms.carousel.carousel-loaded .flickity-slider > .polo-carousel-item{min-height:100%;display:flex;flex-direction:column;}
.rooms.carousel .room{display:flex;flex-direction:column;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,.18);}
.rooms.carousel.carousel-loaded .room{flex:1 1 auto;}
.rooms.carousel .room-image{overflow:hidden;}
.rooms.carousel .room-image img{transition:transform .5s;}
.rooms.carousel .room:hover .room-image img{transform:scale(1.04);}
.rooms.carousel .room-details{display:flex;flex-direction:column;flex:1;}
.rooms.carousel .room-details .roomcontent{flex:1;}
.rooms.carousel .room-details ul{list-style:none !important;margin:12px 0 18px !important;}
.rooms.carousel .room-details ul li{position:relative;padding-left:24px;margin-bottom:6px !important;}
.rooms.carousel .room-details ul li::before{content:"\2713";position:absolute;left:0;top:0;color:#557b4a;font-weight:700;}
.rooms.carousel .plan-button{margin-top:auto;}
.rooms.carousel .plan-button a.btn::after{content:" \2192";}

/* Leere Seitenleiste vor der Fußzeile: Lücke weg */
section.sidebar-right:not(:has(.content > *)){padding:0 !important;}
section.sidebar-right:not(:has(.content > *)) > .container{display:none;}
section.sidebar-right .shape-divider path{fill:#24402a !important;}
section:has(.content > .gp:last-child > .gp-bleed:last-child){padding-bottom:0 !important;}
.content:has(> .gp:last-child > .gp-bleed:last-child){margin-bottom:0 !important;padding-bottom:0 !important;}
body:has(.content > .gp:last-child > .gp-bleed--cream:last-child) section.sidebar-right:not(:has(.content > *)){background:#faf9f3 !important;}
body:has(.content > .gp:last-child > .gp-bleed--sage:last-child) section.sidebar-right:not(:has(.content > *)){background:#edf3e4 !important;}

/* Fußzeile: Tannengrün, Figtree, farbige Logos, Adresse (Feld "Adresse" ist auch E-Mail-tauglich) */
#footer, #footer.inverted{background-color:#24402a !important;}
#footer .copyright-content{background-color:#1a3020 !important;}
#footer, #footer p, #footer a, #footer li, #footer .copyright-text{font-family:'Figtree','Segoe UI',Arial,sans-serif !important;}
#footer .footer-content{padding:70px 0 50px !important;}
#footer .gp-foot{text-align:left !important;color:rgba(255,255,255,.85) !important;font-family:'Figtree','Segoe UI',Arial,sans-serif !important;}
#footer .gp-foot p{margin:0 0 12px !important;color:rgba(255,255,255,.85) !important;text-align:left !important;font-size:15px !important;line-height:1.7 !important;}
#footer .gp-foot .gp-foot__title{font-family:'Fraunces',Georgia,serif !important;font-size:22px !important;font-weight:500 !important;color:#fff !important;margin-bottom:8px !important;}
#footer .gp-foot a{color:#cfe8c4 !important;font-weight:600 !important;}
#footer .gp-foot .gp-foot__uid{font-size:12px !important;color:rgba(255,255,255,.55) !important;}
#footer #map, #footer .leaflet-container{border-radius:16px;overflow:hidden;}
#footer .carousel .polo-carousel-item img, #footer .flickity-slider > div > img{filter:none !important;-webkit-filter:none !important;background:#fff;border-radius:14px;padding:12px 18px;}

/* Unterseiten Anreise/Anfragen: Links in Karten */
.gp .gp-card .gp-check a{color:var(--gp-green-dark);font-weight:600;}
.gp .gp-contactgrid .gp-more{margin-top:6px;}
.col-lg-9 .gp a.gp-contact{font-size:18px;overflow-wrap:anywhere;}

/* Zimmer-Detailseite: Beschreibung lesbar (Raumtext enthält color:white) */
#page-content .content > .roomcontent:not(.carousel){display:block;margin:30px 0 14px;padding:28px 32px 20px;background:#faf9f3;border:1px solid #e2e7da;border-radius:20px;}
#page-content .content > .roomcontent:not(.carousel),
#page-content .content > .roomcontent:not(.carousel) *{color:#3a443d !important;}
#page-content .content > .roomcontent:not(.carousel) p{margin:0 0 6px !important;text-align:left !important;}
#page-content .content > .roomcontent:not(.carousel) strong{font-family:'Fraunces',Georgia,serif !important;font-weight:500 !important;font-size:24px !important;line-height:1.3 !important;color:#24402a !important;}
#page-content .content > .roomcontent:not(.carousel) ul{list-style:none !important;padding:0 !important;margin:14px 0 0 !important;columns:2;column-gap:32px;}
#page-content .content > .roomcontent:not(.carousel) li{position:relative;padding-left:26px;margin-bottom:8px;break-inside:avoid;font-family:'Figtree','Segoe UI',Arial,sans-serif !important;font-size:16px !important;}
#page-content .content > .roomcontent:not(.carousel) li::before{content:"\2713";position:absolute;left:0;top:0;color:#557b4a !important;font-weight:700;}
@media (max-width:575px){#page-content .content > .roomcontent:not(.carousel){padding:22px 20px 14px;}#page-content .content > .roomcontent:not(.carousel) ul{columns:1;}}

/* AktivPass (2026-10): Biber-Bild ganz zeigen, Lücke vor Fußzeile auch bei Vorlagen ohne Spalte */
.gp-highlight img[src*="93928500_1789974266"]{aspect-ratio:757/838 !important;height:auto !important;object-fit:cover;background:#1d1d1d;}
section:has(> .container > .gp:last-child > .gp-bleed:last-child){padding-bottom:0 !important;}

/* Navigation Tablet + Handy (2026-10) */
@media (max-width:991.98px){
#mainMenu nav > ul > li{border-bottom:1px solid #e2e7da !important;}
#mainMenu nav > ul > li > a{font-family:'Figtree','Segoe UI',Arial,sans-serif !important;font-size:15px !important;font-weight:600 !important;letter-spacing:.06em !important;color:#24402a !important;text-shadow:none !important;padding-top:14px !important;padding-bottom:14px !important;}
#mainMenu nav > ul > li > a::before{display:none !important;}
#header#header #mainMenu nav > ul > li > a{color:#24402a !important;text-shadow:none !important;}
#header#header #mainMenu nav > ul > li > a:hover{color:#557b4a !important;}
#mainMenu a[href="alpakas"]::after{display:inline !important;font-size:15px !important;letter-spacing:.06em !important;}
#mainMenu nav > ul > li:has(> ul)::before{height:48px !important;}
#mainMenu nav > ul > li:not(:has(> ul)) > .dropdown-arrow,
#mainMenu nav > ul > li:not(:has(> ul))::before{display:none !important;}
#mainMenu nav > ul > li .dropdown-menu{box-shadow:none !important;border-radius:0 !important;background:transparent !important;padding:0 0 0 14px !important;margin:0 !important;}
#mainMenu nav > ul > li.hover-active > .dropdown-menu{margin-bottom:8px !important;}
#mainMenu nav > ul > li .dropdown-menu a{font-size:15px !important;font-weight:400 !important;color:#3a443d !important;padding-top:8px !important;padding-bottom:8px !important;background:transparent !important;}
}
@media (min-width:992px) and (max-width:1199.98px){
#logo{width:auto !important;max-width:230px !important;margin-right:0 !important;}
#mainMenu nav > ul > li > a{font-size:12px !important;letter-spacing:.04em !important;padding-left:8px !important;padding-right:8px !important;}
#mainMenu nav > ul > li > a::before{left:8px;right:8px;}
#mainMenu a[href="alpakas"]::after{font-size:12px !important;letter-spacing:.04em !important;}
}

/* Topbar-Telefonnummern immer weiß (2026-10) */
#topbar a, #topbar.dark a{color:#fff !important;}
#topbar a:hover{color:#cfe8c4 !important;}
