
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */

/* --- nächster inline-Block --- */

:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-color]){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}

/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */

/* --- nächster inline-Block --- */

/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
/*# sourceURL=/wp-includes/css/classic-themes.min.css */

/* --- nächster inline-Block --- */

:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
/*# sourceURL=global-styles-inline-css */

/* --- nächster inline-Block --- */
:root{--raumle-dark:#1B4965;--raumle-petal:#cbeef2;--raumle-orange:#FF9F1C;--raumle-peach:#FFBC7D;--raumle-ink:#283C4F;--raumle-gray:#53595F;}
/* --- nächster inline-Block --- */

/*
Theme Name: Räumle Stuttgart
Theme URI: https://raeumle.de/
Author: Codys Fummelbude (für RÄUMLE / 5 STRIPES)
Author URI: https://raeumle.de/
Description: WordPress-Theme für die Eventlocation RÄUMLE Stuttgart. Markenfarben: Dunkelblau #1B4965, Orange #FF9F1C. Front-Page mit Event-Kalkulator und Buchungsanfrage; für die weitere Bearbeitung mit Elementor Pro vorbereitet.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: raumle
Tags: eventlocation, one-column, custom-logo, custom-menu, editor-style, featured-images
*/

/*
Hinweis: Alle Design-Tokens & Komponenten-Styles liegen in assets/css/raumle.css
und werden über functions.php geladen. Diese Datei enthält nur den Theme-Header
und minimale Basis-Fallbacks (z. B. wenn JS/CSS blockiert wird).
*/

body {
  margin: 0;
  font-family: "Figtree", "Segoe UI", Arial, sans-serif;
  color: #283C4F;
  background: #fcfcfc;
}


/* --- nächster inline-Block --- */

/* ============================================================
   RÄUMLE STUTTGART – Komponenten-Styles
   Markenfarben (aus Elementor-Kit von raeumle.de):
   --raumle-dark:   #1B4965  (Dunkelblau, Primär)
   --raumle-petal:  #cbeef2  (Hellblau, Akzentfläche)
   --raumle-orange: #FF9F1C  (Orange, CTA)
   --raumle-peach:  #FFBC7D  (Peach, Hover)
   --raumle-ink:    #283C4F  (Text)
   --raumle-gray:   #53595F  (Text sekundär)
   ============================================================ */

:root {
	--raumle-dark: #1B4965;
	--raumle-petal: #cbeef2;
	--raumle-orange: #FF9F1C;
	--raumle-peach: #FFBC7D;
	--raumle-ink: #283C4F;
	--raumle-gray: #53595F;
	--raumle-bg: #fcfcfc;
	--raumle-radius: 18px;
	--raumle-font-body: "Figtree", "Segoe UI", Arial, sans-serif;
	--raumle-font-head: "Montserrat", "Figtree", Arial, sans-serif;
	--raumle-shadow: 0 14px 40px rgba(27, 73, 101, 0.14);
	--raumle-container: 1180px;
}

html { scroll-behavior: smooth; }

body {
	margin: 0;
	font-family: var(--raumle-font-body);
	color: var(--raumle-ink);
	background: var(--raumle-bg);
	line-height: 1.65;
	font-size: 17px;
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 {
	font-family: var(--raumle-font-head);
	line-height: 1.18;
	margin: 0 0 .5em;
	letter-spacing: -0.01em;
}

h1 { font-size: clamp(2.2rem, 5vw, 3.6rem); font-weight: 800; }
h2 { font-size: clamp(1.7rem, 3.4vw, 2.5rem); font-weight: 700; }
h3 { font-size: 1.25rem; font-weight: 700; }
p  { margin: 0 0 1em; }
a  { color: var(--raumle-dark); }
img { max-width: 100%; height: auto; display: block; }

.raumle-container {
	max-width: var(--raumle-container);
	margin: 0 auto;
	padding: 0 24px;
}

.eyebrow, .raumle-eyebrow {
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-weight: 700;
	font-size: .78rem;
	color: var(--raumle-orange);
	margin: 0 0 12px;
}

/* ---------- Buttons ---------- */
.raumle-btn {
	display: inline-block;
	padding: 14px 28px;
	border-radius: 999px;
	font-weight: 600;
	font-size: .98rem;
	text-decoration: none;
	border: 2px solid transparent;
	cursor: pointer;
	transition: transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
	font-family: var(--raumle-font-body);
}
.raumle-btn:hover { transform: translateY(-2px); }
.raumle-btn--primary {
	background: var(--raumle-orange);
	color: var(--raumle-dark);
}
.raumle-btn--primary:hover { background: var(--raumle-peach); }
.raumle-btn--ghost {
	background: transparent;
	color: #fff;
	border-color: rgba(255,255,255,.6);
}
.raumle-btn--ghost:hover { border-color: #fff; background: rgba(255,255,255,.1); }
.raumle-btn--small {
	padding: 10px 20px;
	font-size: .88rem;
}

/* ---------- Header ---------- */
.raumle-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(252, 252, 252, .92);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid rgba(27, 73, 101, .08);
}
.raumle-header__inner {
	display: flex;
	align-items: center;
	gap: 28px;
	padding-top: 14px;
	padding-bottom: 14px;
}
.raumle-header__brand a { display: inline-block; }
.raumle-header__logo-img { height: 44px; width: auto; }
.raumle-nav { margin-left: auto; }
.raumle-nav__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 26px;
}
.raumle-nav__list a {
	text-decoration: none;
	color: var(--raumle-ink);
	font-weight: 600;
	font-size: .95rem;
}
.raumle-nav__list a:hover { color: var(--raumle-orange); }
.raumle-header__cta { padding: 10px 22px; font-size: .9rem; }
.raumle-burger {
	display: none;
	background: none;
	border: 0;
	font-size: 1.6rem;
	color: var(--raumle-dark);
	cursor: pointer;
}

@media (max-width: 860px) {
	.raumle-burger { display: block; margin-left: auto; }
	.raumle-header__cta { display: none; }
	.raumle-nav {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: var(--raumle-bg);
		padding: 16px 24px;
		border-bottom: 1px solid rgba(27,73,101,.1);
	}
	.raumle-nav.is-open { display: block; }
	.raumle-nav__list { flex-direction: column; gap: 14px; }
}

/* ---------- Hero ---------- */
.raumle-hero {
	position: relative;
	color: #fff;
	padding: 130px 0 120px;
	overflow: hidden;
}
.raumle-hero__bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	filter: saturate(1.05);
}
.raumle-hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg, rgba(27,73,101,.88) 0%, rgba(27,73,101,.62) 45%, rgba(27,73,101,.28) 100%);
}
.raumle-hero__inner { position: relative; max-width: 780px; }
.raumle-hero__eyebrow {
	color: var(--raumle-peach);
	text-transform: uppercase;
	letter-spacing: .16em;
	font-weight: 700;
	font-size: .82rem;
	margin-bottom: 18px;
}
.raumle-hero__title { color: #fff; margin-bottom: 20px; }
.raumle-hero__sub {
	font-size: 1.15rem;
	max-width: 620px;
	color: rgba(255,255,255,.92);
	margin-bottom: 34px;
}
.raumle-hero__actions { display: flex; gap: 14px; flex-wrap: wrap; }

/* ---------- Stats ---------- */
.raumle-stats {
	background: var(--raumle-dark);
	color: #fff;
	padding: 34px 0;
}
.raumle-stats__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	text-align: center;
}
.raumle-stats__num {
	font-family: var(--raumle-font-head);
	font-size: 2.6rem;
	font-weight: 800;
	color: var(--raumle-orange);
	display: block; white-space: nowrap; }
.raumle-stats__suffix { font-size: 1.4rem; }
.raumle-stats__label {
	display: block;
	font-size: .92rem;
	color: rgba(255,255,255,.8);
}
@media (max-width: 720px) {
	.raumle-stats__grid { grid-template-columns: 1fr; gap: 18px; }
	.raumle-stats__num { font-size: 2rem; }
}

/* ---------- Sections ---------- */
.raumle-section { padding: 90px 0; }
.raumle-section__head {
	max-width: 720px;
	margin: 0 auto 56px;
	text-align: center;
}
.raumle-section__head--light h2 { color: #fff; }
.raumle-section__lead { color: rgba(255,255,255,.75); margin-top: 8px; }
.raumle-section--petal { background: var(--raumle-petal); }
.raumle-section--dark { background: var(--raumle-dark); color: #fff; }
.raumle-section--dark h2 { color: #fff; }
.raumle-section--petal .raumle-eyebrow, .raumle-section--dark .raumle-eyebrow { color: var(--raumle-orange); }

/* ---------- Räume ---------- */
.raumle-rooms {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}
.raumle-room {
	background: #fff;
	border-radius: var(--raumle-radius);
	overflow: hidden;
	box-shadow: var(--raumle-shadow);
	display: flex;
	flex-direction: column;
}
.raumle-room__img {
	height: 240px;
	background-size: cover;
	background-position: center;
	position: relative;
}
.raumle-room__badge {
	position: absolute;
	top: 16px;
	left: 16px;
	background: rgba(27,73,101,.9);
	color: #fff;
	font-size: .78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	padding: 6px 14px;
	border-radius: 999px;
}
.raumle-room__badge--orange { background: var(--raumle-orange); color: var(--raumle-dark); }
.raumle-room__body { padding: 26px; display: flex; flex-direction: column; gap: 14px; flex: 1; }
.raumle-room__facts {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	font-size: .9rem;
	color: var(--raumle-gray);
}
.raumle-room__facts strong { color: var(--raumle-dark); font-size: 1.02rem; display: block; }
.raumle-room__body .raumle-btn { margin-top: auto; align-self: flex-start; }
@media (max-width: 960px) { .raumle-rooms { grid-template-columns: 1fr; max-width: 560px; margin: 0 auto; } }

/* ---------- Anlässe ---------- */
.raumle-anlaesse {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}
.raumle-anlass {
	position: relative;
	min-height: 230px;
	border-radius: var(--raumle-radius);
	background-size: cover;
	background-position: center;
	overflow: hidden;
	display: flex;
	align-items: flex-end;
	text-decoration: none;
	transition: transform .18s ease;
}
.raumle-anlass::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(27,73,101,.82) 0%, rgba(27,73,101,.12) 55%, transparent 100%);
}
.raumle-anlass:hover { transform: translateY(-4px); }
.raumle-anlass__label {
	position: relative;
	z-index: 1;
	color: #fff;
	padding: 18px 20px;
}
.raumle-anlass__label strong {
	display: block;
	font-family: var(--raumle-font-head);
	font-size: 1.1rem;
	margin-bottom: 4px;
}
.raumle-anlass__label small { font-size: .84rem; opacity: .85; }
@media (max-width: 900px) { .raumle-anlaesse { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .raumle-anlaesse { grid-template-columns: 1fr; } }

/* ---------- Kalkulator ---------- */
.raumle-calc {
	display: grid;
	grid-template-columns: 1.25fr 1fr;
	gap: 28px;
	background: rgba(255,255,255,.05);
	border: 1px solid rgba(255,255,255,.14);
	border-radius: var(--raumle-radius);
	padding: 34px;
}
.raumle-calc__field { margin-bottom: 22px; }
.raumle-calc__field label {
	display: block;
	font-weight: 600;
	margin-bottom: 8px;
	color: #fff;
}
.raumle-calc__field select,
.raumle-calc__field input[type="number"] {
	width: 100%;
	padding: 12px 14px;
	border-radius: 12px;
	border: 1px solid rgba(255,255,255,.25);
	background: rgba(255,255,255,.1);
	color: #fff;
	font-size: 1rem;
	font-family: inherit;
}
.raumle-calc__field select option { color: var(--raumle-ink); }
.raumle-calc__field input[type="range"] { width: 100%; accent-color: var(--raumle-orange); }
.raumle-calc__field output { display: block; margin-top: 6px; font-weight: 700; color: var(--raumle-peach); }
.raumle-calc__addon-title {
	display: block;
	font-weight: 600;
	margin-bottom: 10px;
	color: #fff;
}
.raumle-calc__addons { display: grid; gap: 10px; }
.raumle-check {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	cursor: pointer;
	font-size: .95rem;
	color: rgba(255,255,255,.9);
}
.raumle-check input { accent-color: var(--raumle-orange); margin-top: 4px; }
.raumle-check em { font-style: normal; color: var(--raumle-peach); font-weight: 600; margin-left: 4px; }

.raumle-calc__result {
	background: #fff;
	border-radius: 16px;
	padding: 28px;
	color: var(--raumle-ink);
	display: flex;
	flex-direction: column;
}
.raumle-calc__result-label {
	text-transform: uppercase;
	letter-spacing: .12em;
	font-size: .78rem;
	font-weight: 700;
	color: var(--raumle-gray);
}
.raumle-calc__price {
	font-family: var(--raumle-font-head);
	font-size: 2.8rem;
	font-weight: 800;
	color: var(--raumle-dark);
	margin: 6px 0 18px;
	line-height: 1;
}
.raumle-calc__breakdown {
	list-style: none;
	margin: 0 0 18px;
	padding: 0 0 18px;
	border-bottom: 1px dashed rgba(27,73,101,.25);
	display: grid;
	gap: 8px;
	font-size: .95rem;
}
.raumle-calc__breakdown li { display: flex; justify-content: space-between; }
.raumle-calc__breakdown li span:first-child { color: var(--raumle-gray); }
.raumle-calc__price-total { font-size: .98rem; margin-bottom: 20px; }
.raumle-calc__price-total strong { color: var(--raumle-dark); font-size: 1.2rem; }
.raumle-calc__cta { text-align: center; }
.raumle-calc__fineprint { font-size: .78rem; color: var(--raumle-gray); margin: 14px 0 0; text-align: center; }

@media (max-width: 900px) { .raumle-calc { grid-template-columns: 1fr; } }

/* ---------- USP ---------- */
.raumle-usp {
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: 48px;
	align-items: center;
}
.raumle-usp__img {
	min-height: 380px;
	border-radius: var(--raumle-radius);
	background-size: cover;
	background-position: center;
	box-shadow: var(--raumle-shadow);
}
.raumle-usp__list {
	list-style: none;
	margin: 22px 0 0;
	padding: 0;
	display: grid;
	gap: 10px;
	font-weight: 500;
}
@media (max-width: 860px) { .raumle-usp { grid-template-columns: 1fr; } .raumle-usp__img { min-height: 260px; } }

/* ---------- Buchungsformular ---------- */
.raumle-booking-wrap {
	background: #fff;
	border-radius: 24px;
	box-shadow: var(--raumle-shadow);
	padding: 44px;
	display: grid;
	grid-template-columns: 1fr 1.3fr;
	gap: 40px;
}
.raumle-booking-wrap__head h2 { margin-bottom: 10px; }
.raumle-booking-wrap__head p { color: var(--raumle-gray); }
@media (max-width: 900px) { .raumle-booking-wrap { grid-template-columns: 1fr; padding: 28px; } }

.raumle-form label {
	display: block;
	font-weight: 600;
	font-size: .92rem;
	margin-bottom: 16px;
}
.raumle-form input,
.raumle-form select,
.raumle-form textarea {
	display: block;
	width: 100%;
	margin-top: 6px;
	padding: 12px 14px;
	border-radius: 12px;
	border: 1.5px solid rgba(27,73,101,.22);
	font-size: .98rem;
	font-family: inherit;
	background: #fff;
	color: var(--raumle-ink);
}
.raumle-form input:focus,
.raumle-form select:focus,
.raumle-form textarea:focus {
	outline: none;
	border-color: var(--raumle-orange);
	box-shadow: 0 0 0 3px rgba(255,159,28,.18);
}
.raumle-form button { width: auto; }
.raumle-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.raumle-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
@media (max-width: 640px) {
	.raumle-grid-2, .raumle-grid-3 { grid-template-columns: 1fr; }
}
.raumle-form__note { font-size: .8rem; color: var(--raumle-gray); margin: 4px 0 18px; }
.raumle-notice {
	padding: 16px 20px;
	border-radius: 12px;
	font-weight: 600;
}
.raumle-notice--success {
	background: rgba(0,208,132,.12);
	color: #0a7a4d;
	border: 1px solid rgba(0,208,132,.35);
}
.raumle-notice--error {
	background: rgba(224,74,63,.10);
	color: #a3271c;
	border: 1px solid rgba(224,74,63,.4);
	margin-bottom: 18px;
}
.raumle-notice--error ul { margin: 8px 0 0; padding-left: 18px; font-weight: 500; }
.raumle-notice--error li { margin: 2px 0; }
.raumle-notice--info {
	background: rgba(255,159,28,.14);
	color: #7a4a00;
	border: 1px solid rgba(255,159,28,.45);
}
/* Honeypot: für Menschen unsichtbar, für Bots erreichbar. */
.raumle-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	opacity: 0 !important;
}

/* ---------- Kontakt ---------- */
.raumle-kontakt {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 48px;
	align-items: center;
}
.raumle-kontakt__line { font-size: 1.25rem; font-weight: 600; color: var(--raumle-peach); }
.raumle-kontakt__adresse h4 {
	color: #fff;
	font-size: .95rem;
	text-transform: uppercase;
	letter-spacing: .1em;
	margin: 18px 0 4px;
}
.raumle-kontakt__adresse h4:first-child { margin-top: 0; }
.raumle-kontakt__adresse p { color: rgba(255,255,255,.8); margin: 0; }
@media (max-width: 800px) { .raumle-kontakt { grid-template-columns: 1fr; gap: 30px; } }

/* ---------- Footer ---------- */
.raumle-footer {
	background: var(--raumle-ink);
	color: rgba(255,255,255,.78);
	padding: 64px 0 0;
	font-size: .95rem;
}
.raumle-footer__grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 36px;
	padding-bottom: 44px;
}
.raumle-footer__logo { height: 40px; width: auto; margin-bottom: 16px; }
.raumle-footer h4 {
	color: #fff;
	font-size: .9rem;
	text-transform: uppercase;
	letter-spacing: .1em;
	margin-bottom: 14px;
}
.raumle-footer a { color: rgba(255,255,255,.78); text-decoration: none; }
.raumle-footer a:hover { color: var(--raumle-orange); }
.raumle-footer__menu { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.raumle-footer__legal {
	border-top: 1px solid rgba(255,255,255,.12);
	padding: 18px 0;
	font-size: .82rem;
	text-align: center;
}
@media (max-width: 860px) { .raumle-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .raumle-footer__grid { grid-template-columns: 1fr; } }

/* ---------- Elementor-Kompatibilität ----------
   Damit das Theme sauber mit Elementor Pro zusammenarbeitet:
   - WP-Editor-Styles für WYSIWYG
   - Container-Klassen dürfen überschrieben werden */
.elementor-widget-container .raumle-btn { text-decoration: none; }
.elementor-heading-title { font-family: var(--raumle-font-head); }

/* ---------- Editor (Gutenberg) ---------- */
.editor-styles-wrapper { font-family: var(--raumle-font-body); color: var(--raumle-ink); }
.editor-styles-wrapper h1, .editor-styles-wrapper h2, .editor-styles-wrapper h3 {
	font-family: var(--raumle-font-head);
}



/* --- nächster inline-Block --- */

/* ===== RAUM-UNTERSEITEN (Dummy) ===== */
.demo-banner { background:#1B4965; color:#fff; text-align:center; padding:10px 16px; font-size:.85rem; font-weight:600; letter-spacing:.02em; }
.raumle-tour { padding: 90px 0; background: #1C2126; }  /* Anthrazit statt Markenblau: neutraler Ton, damit die Sektion nicht mit der Zahlenleiste konkurriert (Nova) */
.raumle-tour .raumle-section__head h2 { color:#fff; }
.raumle-tour .raumle-section__lead { color: rgba(255,255,255,.75); }
.raumle-tour__box { border-radius: var(--raumle-radius); overflow: hidden; box-shadow: 0 22px 60px rgba(0,0,0,.4); background:#111; }
.raumle-tour__frame { display:block; width:100%; height:640px; border:0; }
.raumle-tour__hint { color: rgba(255,255,255,.78); font-size:.92rem; text-align:center; margin:18px 0 0; }
.raumle-tour__hint a { color: var(--raumle-peach); font-weight:600; }
.raumle-gallery { display:grid; grid-template-columns: repeat(3,1fr); gap:18px; }
.raumle-gallery__item { position:relative; margin:0; border-radius: var(--raumle-radius); overflow:hidden; box-shadow: var(--raumle-shadow); background:#fff; }
.raumle-gallery__item img { width:100%; height:280px; object-fit:cover; display:block; }
.raumle-gallery__item figcaption { position:absolute; left:0; right:0; bottom:0; padding:16px 18px 12px; background:linear-gradient(to top, rgba(27,73,101,.85) 0%, rgba(27,73,101,.35) 60%, transparent 100%); color:#fff; font-size:.9rem; font-weight:600; }
.raumle-cta { text-align:center; }
.raumle-cta__cross { margin-top:22px; font-size:.95rem; }
.raumle-cta__cross a { font-weight:700; }
@media (max-width:900px){ .raumle-gallery{grid-template-columns:repeat(2,1fr);} .raumle-tour__frame{height:460px;} }
@media (max-width:560px){ .raumle-gallery{grid-template-columns:1fr;} .raumle-tour{padding:60px 0;} .raumle-tour__frame{height:360px;} .raumle-gallery__item img{height:240px;} }

/* Zahlenleiste: 4 Werte in EINER Zeile, Preis bricht nicht um (Nova, 20.09.2026) */
@media (max-width: 1080px) and (min-width: 861px) {
  .raumle-stats__grid { gap: 16px; }
  .raumle-stats__num { font-size: 2.1rem; }
  .raumle-stats__label { font-size: .84rem; }
}

/* ---------- Grundrisse + stille Anlaesse (Nova, 21.09.2026) ---------- */
.raumle-grundriss { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 8px; }
.raumle-grundriss__item { margin: 0; padding: 18px; background: #F4F6F8; border: 1px solid rgba(27,73,101,.10); border-radius: var(--raumle-radius); box-shadow: var(--raumle-shadow); }
.raumle-grundriss__item img { display: block; width: 100%; height: auto; background: #fff; border-radius: calc(var(--raumle-radius) - 6px); }
.raumle-grundriss__item a { display: block; }
.raumle-grundriss__cap { display: block; margin-top: 14px; font-size: .95rem; line-height: 1.5; color: var(--raumle-gray); }
.raumle-grundriss__cap strong { display: block; margin-bottom: 3px; font-family: Montserrat, Figtree, sans-serif; font-size: 1.02rem; color: var(--raumle-ink); }
.raumle-grundriss__legend { margin: 0 auto; max-width: 720px; font-size: .95rem; line-height: 1.6; color: var(--raumle-gray); }
.raumle-grundriss__legend strong { color: var(--raumle-ink); }
.raumle-grundriss__item--weit { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 30px; align-items: center; }
.raumle-grundriss__item--hoch { max-width: 460px; }
.raumle-cta__still { margin-top: 16px; font-size: .92rem; color: var(--raumle-gray); }
.raumle-cta__still strong { color: var(--raumle-ink); }
@media (max-width: 900px) {
	.raumle-grundriss { grid-template-columns: 1fr; }
	.raumle-grundriss__item--weit { grid-template-columns: 1fr; gap: 16px; }
}

/* ---------- v1.2.1: Event-Planner (O1: wie Hauptseite, aus index.css extrahiert) ---------- */
/* ============================================================
   EVENT-PLANNER V2 (Startseite) — Design Nova, Umsetzung Cody
   Scoped Prefix .rlp- · Tokens aus diesem Stylesheet
   ============================================================ */
.raumle-planner { position: relative; z-index: 1; }
.raumle-planner .rlp-card {
	background: #fff; border-radius: 22px; box-shadow: 0 30px 70px rgba(8, 29, 45, .35);
	display: grid; grid-template-columns: 1fr 400px; overflow: hidden;
}
.raumle-planner .rlp-inputs { padding: 30px 30px 26px; display: flex; flex-direction: column; gap: 26px; }
.raumle-planner .rlp-step { display: flex; flex-direction: column; gap: 13px; }
.raumle-planner .rlp-step-head { display: flex; align-items: center; gap: 11px; }
.raumle-planner .rlp-step-num {
	width: 26px; height: 26px; border-radius: 50%; background: var(--raumle-orange); color: #fff;
	font-size: 14px; font-weight: 700; display: grid; place-items: center; flex: none;
	font-family: var(--raumle-font-head);
}
.raumle-planner .rlp-step-head h3 { font-size: 17.5px; font-weight: 700; letter-spacing: -.2px; color: var(--raumle-ink); }
.raumle-planner .rlp-hint { margin-left: auto; font-size: 13.5px; color: var(--raumle-gray); }

/* Standort-Karten */
.raumle-planner .rlp-locs { display: grid; grid-template-columns: repeat(3, 1fr) .85fr; gap: 11px; }
.raumle-planner .rlp-loc {
	position: relative; border: 1.5px solid #e3e9ee; border-radius: 13px; overflow: hidden;
	background: #fff; cursor: pointer; text-align: left; padding: 0; font: inherit; color: inherit;
	transition: border-color .15s, box-shadow .15s, transform .15s;
}
.raumle-planner .rlp-loc:hover { border-color: #b9cbd8; }
.raumle-planner .rlp-loc[aria-checked="true"] { border-color: var(--raumle-orange); box-shadow: 0 0 0 3px rgba(255, 159, 28, .18); }
.raumle-planner .rlp-loc img { width: 100%; height: 98px; object-fit: cover; display: block; }
.raumle-planner .rlp-loc-meta { padding: 8px 10px 10px; }
.raumle-planner .rlp-loc-meta strong { display: block; font-size: 14px; font-weight: 700; letter-spacing: -.1px; color: var(--raumle-ink); }
.raumle-planner .rlp-loc-meta span { display: block; font-size: 12.5px; color: var(--raumle-gray); margin-top: 2px; }
.raumle-planner .rlp-loc-tick {
	position: absolute; top: 8px; right: 8px; width: 22px; height: 22px; border-radius: 50%;
	background: var(--raumle-orange); color: #fff; font-size: 13px; display: none; place-items: center;
}
.raumle-planner .rlp-loc[aria-checked="true"] .rlp-loc-tick { display: grid; }
.raumle-planner .rlp-loc--unsure {
	display: flex; align-items: center; justify-content: center; text-align: center;
	border-style: dashed; padding: 12px 8px;
}
.raumle-planner .rlp-loc--unsure .rlp-loc-meta strong { font-size: 13.5px; }
.raumle-planner .rlp-loc--unsure .rlp-loc-meta span { font-size: 12px; }

/* Kalender */
.raumle-planner .rlp-when { display: grid; grid-template-columns: 1fr 250px; gap: 16px; align-items: start; }
.raumle-planner .rlp-cal { border: 1.5px solid #e3e9ee; border-radius: 13px; padding: 11px 12px 12px; }
.raumle-planner .rlp-cal-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.raumle-planner .rlp-cal-head h4 { font-size: 14.5px; font-weight: 700; color: var(--raumle-ink); }
.raumle-planner .rlp-cal-nav { display: flex; gap: 5px; }
.raumle-planner .rlp-cal-nav button {
	width: 25px; height: 25px; border: 1.5px solid #e3e9ee; background: #fff; border-radius: 7px;
	cursor: pointer; color: var(--raumle-ink); font-size: 13px; line-height: 1;
}
.raumle-planner .rlp-cal-nav button:hover { border-color: var(--raumle-orange); color: var(--raumle-orange); }
.raumle-planner .rlp-cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.raumle-planner .rlp-dow {
	font-size: 11px; font-weight: 700; color: var(--raumle-gray); text-align: center;
	text-transform: uppercase; letter-spacing: .5px; padding: 2px 0 4px;
}
.raumle-planner .rlp-day {
	height: 29px; border: 0; background: #f4f7f9; border-radius: 7px;
	font: inherit; font-size: 12.5px; color: var(--raumle-ink); cursor: pointer;
	display: grid; place-items: center;
	transition: background .12s, color .12s;
}
.raumle-planner .rlp-day:hover:not(:disabled) { background: var(--raumle-petal); }
.raumle-planner .rlp-day:disabled { cursor: default; }
.raumle-planner .rlp-day.past { background: transparent; color: #c3ccd4; }
.raumle-planner .rlp-day.booked { background: #f7efef; color: #c1a4a4; text-decoration: line-through; cursor: not-allowed; }
.raumle-planner .rlp-day.sel { background: var(--raumle-orange); color: #fff; font-weight: 700; }
.raumle-planner .rlp-cal-legend { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 9px; font-size: 12px; color: var(--raumle-gray); }
.raumle-planner .rlp-cal-legend i { width: 10px; height: 10px; border-radius: 3px; display: inline-block; margin-right: 4px; vertical-align: -1px; }

.raumle-planner .rlp-fieldbox { border: 1.5px solid #e3e9ee; border-radius: 13px; padding: 14px; display: flex; flex-direction: column; gap: 12px; }
.raumle-planner .rlp-fieldbox label { font-size: 12.5px; font-weight: 700; letter-spacing: .4px; text-transform: uppercase; color: var(--raumle-gray); }
.raumle-planner .rlp-value { font-size: 17px; font-weight: 700; color: var(--raumle-ink); }
.raumle-planner .rlp-value small { display: block; font-size: 13px; font-weight: 500; color: var(--raumle-gray); margin-top: 3px; }
.raumle-planner .rlp-value--small { font-size: 14.5px; }

/* Slider */
.raumle-planner .rlp-sliders { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.raumle-planner .rlp-slider { border: 1.5px solid #e3e9ee; border-radius: 13px; padding: 14px 16px 18px; }
.raumle-planner .rlp-slider-top { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 16px; }
.raumle-planner .rlp-slider-top span { font-size: 13.5px; font-weight: 600; color: var(--raumle-gray); }
.raumle-planner .rlp-slider-top b { font-size: 22px; letter-spacing: -.5px; color: var(--raumle-ink); font-family: var(--raumle-font-head); }
.raumle-planner .rlp-slider-top b em { font-style: normal; font-size: 14px; font-weight: 600; color: var(--raumle-gray); margin-left: 3px; }
.raumle-planner input[type=range] {
	-webkit-appearance: none; appearance: none; width: 100%; height: 6px; border-radius: 6px;
	background: linear-gradient(90deg, var(--raumle-orange) var(--fill, 50%), #e6ecf0 var(--fill, 50%));
	outline: none; cursor: pointer;
}
.raumle-planner input[type=range]::-webkit-slider-thumb {
	-webkit-appearance: none; width: 24px; height: 24px; border-radius: 50%; background: #fff;
	border: 3px solid var(--raumle-orange); box-shadow: 0 2px 6px rgba(27, 73, 101, .25); cursor: grab;
}
.raumle-planner input[type=range]::-moz-range-thumb {
	width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 3px solid var(--raumle-orange);
	box-shadow: 0 2px 6px rgba(27, 73, 101, .25);
}
.raumle-planner input[type=range]:focus-visible { outline: 2px solid var(--raumle-orange); outline-offset: 4px; }
.raumle-planner .rlp-scale { display: flex; justify-content: space-between; font-size: 12px; color: #8b98a3; margin-top: 8px; }

/* Bausteine */
.raumle-planner .rlp-addons { display: grid; grid-template-columns: repeat(2, 1fr); gap: 11px; }
.raumle-planner .rlp-addon {
	display: flex; gap: 12px; align-items: flex-start; border: 1.5px solid #e3e9ee; border-radius: 13px;
	padding: 13px 14px; cursor: pointer; background: #fff;
	transition: border-color .15s, background .15s;
}
.raumle-planner .rlp-addon:hover { border-color: #b9cbd8; }
.raumle-planner .rlp-addon[aria-checked="true"] { border-color: var(--raumle-orange); background: #fffaf2; }
.raumle-planner .rlp-addon:focus-visible { outline: 2px solid var(--raumle-orange); outline-offset: 2px; }
.raumle-planner .rlp-addon-box {
	width: 21px; height: 21px; border-radius: 6px; border: 1.8px solid #c3ced7; flex: none; margin-top: 1px;
	display: grid; place-items: center; color: #fff; font-size: 12.5px; background: #fff;
}
.raumle-planner .rlp-addon[aria-checked="true"] .rlp-addon-box { background: var(--raumle-orange); border-color: var(--raumle-orange); }
.raumle-planner .rlp-addon strong { display: block; font-size: 14.5px; color: var(--raumle-ink); }
.raumle-planner .rlp-addon span { display: block; font-size: 12.6px; color: var(--raumle-gray); margin-top: 3px; line-height: 1.35; }
.raumle-planner .rlp-addon-price { margin-left: auto; font-size: 13px; font-weight: 700; color: var(--raumle-dark); white-space: nowrap; }
.raumle-planner .rlp-addon-price span { font-size: 11.5px; color: #8b98a3; font-weight: 500; }


/* ---------- v1.3.1: Auswahl-Kacheln Kalkulator (Cody, 25.09.2026) ---------- */
.raumle-planner .rlp-addon-radio { cursor: default; display: block; padding-left: 14px; }
.raumle-planner .rlp-addon-radio[aria-checked="true"] { border-color: var(--raumle-orange); background: #fffaf2; }
.raumle-planner .rlp-addon-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.raumle-planner .rlp-addon-opts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 11px; }
.raumle-planner .rlp-opt { display: flex; align-items: center; gap: 8px; border: 1.5px solid #e3e9ee; border-radius: 10px; padding: 8px 11px; background: #fff; cursor: pointer; transition: border-color .15s, background .15s; }
.raumle-planner .rlp-opt:hover { border-color: #b9cbd8; }
.raumle-planner .rlp-opt input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.raumle-planner .rlp-opt input:checked + span { font-weight: 700; color: var(--raumle-ink); }
.raumle-planner .rlp-opt input:checked ~ * { color: var(--raumle-ink); }
.raumle-planner .rlp-opt input:checked ~ span { color: var(--raumle-ink); }
.raumle-planner .rlp-opt:has(input:checked) { border-color: var(--raumle-orange); background: #fffaf2; }
.raumle-planner .rlp-opt input:focus-visible ~ span { outline: 2px solid var(--raumle-orange); outline-offset: 2px; border-radius: 4px; }
.raumle-planner .rlp-opt span { flex: 1; font-size: 12.8px; color: var(--raumle-gray); line-height: 1.3; }
.raumle-planner .rlp-opt b { font-size: 12.8px; font-weight: 700; color: var(--raumle-dark); white-space: nowrap; }
.raumle-planner .rlp-opt small { font-size: 10.5px; color: #8b98a3; font-weight: 500; }
.raumle-planner .rlp-qty-wrap { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.raumle-planner .rlp-qty-label { font-size: 11px; font-weight: 700; letter-spacing: .4px; text-transform: uppercase; color: var(--raumle-gray); }
.raumle-planner .rlp-qty { width: 64px; border: 1.5px solid #e3e9ee; border-radius: 9px; padding: 7px 9px; font: inherit; font-size: 14px; font-weight: 700; color: var(--raumle-ink); text-align: center; }
.raumle-planner .rlp-qty:focus { outline: none; border-color: var(--raumle-orange); }
.raumle-planner .rlp-qty-unit { font-size: 12px; color: #8b98a3; font-weight: 500; white-space: nowrap; }
.raumle-planner .rlp-qty-unit b { color: var(--raumle-dark); }
.raumle-planner .rlp-hint { font-size: 12px; color: var(--raumle-gray); margin-top: 9px; line-height: 1.45; border-left: 3px solid var(--raumle-peach); padding-left: 9px; }
@media (max-width: 980px) {
	.raumle-planner .rlp-addon-opts { grid-template-columns: 1fr; }
}

/* Ergebnis */
.raumle-planner .rlp-summary {
	background: var(--raumle-dark); color: #fff; padding: 28px 26px 26px;
	display: flex; flex-direction: column; gap: 18px;
}
.raumle-planner .rlp-label { font-size: 12px; letter-spacing: 2px; text-transform: uppercase; color: var(--raumle-peach); font-weight: 700; }
.raumle-planner .rlp-big { font-size: 34px; font-weight: 800; letter-spacing: -1px; line-height: 1.05; font-family: var(--raumle-font-head); }
.raumle-planner .rlp-perguest { font-size: 14.5px; color: #bcd4e0; margin-top: 8px; }
.raumle-planner .rlp-summary hr { border: 0; border-top: 1px solid rgba(255, 255, 255, .14); }
.raumle-planner .rlp-breakdown { display: flex; flex-direction: column; gap: 9px; font-size: 13.8px; }
.raumle-planner .rlp-breakdown div { display: flex; justify-content: space-between; gap: 12px; color: #d7e6ee; }
.raumle-planner .rlp-breakdown div b { color: #fff; font-weight: 600; white-space: nowrap; }
.raumle-planner .rlp-breakdown-total { color: #9fbccb; }
.raumle-planner .rlp-breakdown-total b { color: var(--raumle-peach); }
.raumle-planner .rlp-cta {
	display: flex; align-items: center; justify-content: center; gap: 9px; background: var(--raumle-orange);
	color: #fff; border: 0; border-radius: 12px; padding: 15px 18px; font: inherit; font-size: 16px;
	font-weight: 700; cursor: pointer; text-decoration: none;
	transition: transform .12s, box-shadow .12s;
}
.raumle-planner .rlp-cta:hover { transform: translateY(-1px); box-shadow: 0 12px 26px rgba(255, 159, 28, .3); color: #fff; }
.raumle-planner .rlp-trust { display: flex; gap: 8px; align-items: flex-start; font-size: 12.4px; color: #bcd4e0; }
.raumle-planner .rlp-trust svg { flex: none; margin-top: 2px; }
.raumle-planner .rlp-demo-note {
	background: rgba(255, 255, 255, .08); border: 1px dashed rgba(255, 255, 255, .25); border-radius: 10px;
	padding: 10px 12px; font-size: 12.2px; color: #c9dbe6; line-height: 1.45;
}

/* Mobil / schmal */
@media (max-width: 980px) {
	.raumle-planner .rlp-card { grid-template-columns: 1fr; }
	.raumle-planner .rlp-locs { grid-template-columns: repeat(2, 1fr); }
	.raumle-planner .rlp-when { grid-template-columns: 1fr; }
	.raumle-planner .rlp-sliders { grid-template-columns: 1fr; }
	.raumle-planner .rlp-addons { grid-template-columns: 1fr; }
	.raumle-planner .rlp-inputs { padding: 22px 18px; }
	.raumle-planner .rlp-summary { padding: 24px 18px; }
	.raumle-planner .rlp-big { font-size: 28px; }
}

/* ---------- Anlass-Hinweis leise ergaenzt (Nova, 21.09.2026) ---------- */
.raumle-anlass-note { max-width: 660px; margin: 34px auto 0; padding-top: 22px; border-top: 1px solid rgba(27,73,101,.14); text-align: center; font-size: .95rem; line-height: 1.6; color: var(--raumle-gray); }
.raumle-anlass-note strong { color: var(--raumle-ink); }
.raumle-anlass-note a { font-weight: 600; }

/* ---------- v1.2.1: Eventformat (O3) ---------- */
.raumle-planner .rlp-occ { display: flex; flex-wrap: wrap; gap: 10px; }
.raumle-planner .rlp-occ-item { position: relative; flex: none; }
.raumle-planner .rlp-occ-item input { position: absolute; opacity: 0; inset: 0; }
.raumle-planner .rlp-occ-item span { display: block; padding: 9px 16px; border-radius: 999px;
  border: 1.5px solid var(--raumle-peach); background: #fff; color: var(--raumle-ink);
  font-weight: 600; font-size: .92rem; cursor: pointer;
  transition: border-color .15s, background .15s, color .15s; }
.raumle-planner .rlp-occ-item:hover span { border-color: var(--raumle-orange); }
.raumle-planner .rlp-occ-item input:checked + span { background: var(--raumle-orange);
  border-color: var(--raumle-orange); color: #fff; }
.raumle-planner .rlp-occ-item input:focus-visible + span { outline: 2px solid var(--raumle-dark);
  outline-offset: 2px; }
/* ---------- v1.2.1: Beispielbilder Addons (O2) ---------- */
.raumle-planner .rlp-addon { position: relative; padding-left: 96px; }
.raumle-planner .rlp-addon-img { position: absolute; left: 10px; top: 10px; width: 76px;
  height: 57px; border-radius: 10px; overflow: hidden; background: #eef3f6; }
.raumle-planner .rlp-addon-img img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ---------- v1.2.1: Eventformat (O3) ---------- */
.raumle-planner .rlp-occ { display: flex; flex-wrap: wrap; gap: 10px; }
.raumle-planner .rlp-occ-item { position: relative; flex: none; }
.raumle-planner .rlp-occ-item input { position: absolute; opacity: 0; inset: 0; }
.raumle-planner .rlp-occ-item span { display: block; padding: 9px 16px; border-radius: 999px;
  border: 1.5px solid var(--raumle-peach); background: #fff; color: var(--raumle-ink);
  font-weight: 600; font-size: .92rem; cursor: pointer;
  transition: border-color .15s, background .15s, color .15s; }
.raumle-planner .rlp-occ-item:hover span { border-color: var(--raumle-orange); }
.raumle-planner .rlp-occ-item input:checked + span { background: var(--raumle-orange);
  border-color: var(--raumle-orange); color: #fff; }
.raumle-planner .rlp-occ-item input:focus-visible + span { outline: 2px solid var(--raumle-dark);
  outline-offset: 2px; }
/* ---------- v1.2.1: Beispielbilder Addons (O2) ---------- */
.raumle-planner .rlp-addon { position: relative; padding-left: 96px; }
.raumle-planner .rlp-addon-img { position: absolute; left: 10px; top: 10px; width: 76px;
  height: 57px; border-radius: 10px; overflow: hidden; background: #eef3f6; }
.raumle-planner .rlp-addon-img img { width: 100%; height: 100%; object-fit: cover; display: block; }


/* ---------- v1.3: Hero-Slideshow (Nova, 22.09.2026) ----------
   Gleiche Mechanik wie auf der WEST-Seite. Regeln liegen bewusst in jeder
   Seiten-CSS, weil jede Seite nur ihre eigene Datei laedt. */
.raumle-hero__slideshow { overflow: hidden; }
.raumle-hero__slide {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  opacity: 0;
  animation: raeumleSlideFade 20s ease-in-out infinite;
  will-change: opacity;
}
.raumle-hero__slide:nth-child(1) { animation-delay:  5s; }
.raumle-hero__slide:nth-child(2) { animation-delay: 10s; }
.raumle-hero__slide:nth-child(3) { animation-delay: 15s; }
@keyframes raeumleSlideFade {
  0% { opacity: 0; } 4% { opacity: 1; } 21% { opacity: 1; } 25% { opacity: 0; } 100% { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { .raumle-hero__slide { animation: none; opacity: 0; } }

/* --- Ausstattung: was im Raum schon da ist (aus der Hochzeits-Broschuere) --- */
.raumle-ausstattung { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 18px; margin-top: 34px; }
.raumle-ausstattung__item {
  background: #fff; border-radius: 16px; padding: 22px 22px 20px;
  box-shadow: 0 2px 14px rgba(20,20,30,.06);
  border-left: 4px solid var(--raumle-orange, #e8952e);
}
.raumle-ausstattung__item h3 { margin: 0 0 8px; font-size: 1.06rem; line-height: 1.3; }
.raumle-ausstattung__item p { margin: 0; font-size: .95rem; line-height: 1.55; color: var(--raumle-gray, #555); }
.raumle-ausstattung__note { margin-top: 22px; font-size: .93rem; color: var(--raumle-gray, #555); }

/* ===== RÄUMLE v1.3 (Nova, 23.09.2026) ===== */
.raumle-nav__list a.is-active { color: #FF9F1C; }
.raumle-nav__list a.is-active::after { content: ""; display: block; height: 2px; margin-top: 3px; background: #FF9F1C; border-radius: 2px; }

/* Nav-Eintrag "Event anfragen" nur im mobilen Menue zeigen (Header-CTA ist < 900px aus) */
.raumle-nav__cta-item { display: list-item; }
.raumle-nav__cta-item a { color: var(--raumle-orange); }
@media (min-width: 901px) { .raumle-nav__cta-item { display: none; } }
/* ===== v1.3 · Besichtigungs-Maske (Nova, 23.09.2026) ===== */
.raumle-besichtigung-section { padding-top: 90px; }
.raumle-besichtigung {
	display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
	gap: 2.5rem; align-items: start; background: #fff;
	border: 1px solid var(--raumle-petal); border-radius: 20px;
	padding: 2.1rem 2.3rem; box-shadow: 0 18px 40px rgba(27,73,101,.08);
}
.raumle-besichtigung__text h2 { margin: .3rem 0 .7rem; color: var(--raumle-dark); font-size: 1.75rem; line-height: 1.25; }
.raumle-besichtigung__text p { color: var(--raumle-gray); margin: 0 0 .6rem; }
.raumle-besichtigung__meta { font-size: .9rem; }
.raumle-besichtigung__meta a { color: var(--raumle-dark); font-weight: 600; }
.raumle-besichtigung__form { display: grid; grid-template-columns: 1fr 1fr; gap: .95rem 1.1rem; }
.raumle-besichtigung__form label {
	display: flex; flex-direction: column; gap: .35rem;
	font: 600 .83rem/1.3 Figtree, system-ui, sans-serif; color: var(--raumle-dark);
}
.raumle-besichtigung__form input[type="text"],
.raumle-besichtigung__form input[type="email"],
.raumle-besichtigung__form input[type="date"],
.raumle-besichtigung__form select,
.raumle-besichtigung__form textarea {
	width: 100%; box-sizing: border-box; border: 1px solid #d9e4e9; border-radius: 10px;
	padding: .62rem .72rem; font: 400 .95rem/1.35 Figtree, system-ui, sans-serif;
	color: var(--raumle-ink); background: #fff; resize: vertical;
}
.raumle-besichtigung__form input:focus,
.raumle-besichtigung__form select:focus,
.raumle-besichtigung__form textarea:focus { outline: 2px solid var(--raumle-orange); outline-offset: 1px; }
.rbf-wide { grid-column: 1 / -1; }
.rbf-opt { font-weight: 400; color: #8b969d; }
.rbf-consent { flex-direction: row !important; align-items: flex-start; gap: .55rem !important;
	font-weight: 400 !important; font-size: .78rem !important; color: var(--raumle-gray) !important; line-height: 1.45; }
.rbf-consent input { margin-top: .15rem; flex: 0 0 auto; }
.rbf-consent a { color: var(--raumle-dark); }
.rbf-actions { margin: .1rem 0 0; }
button.raumle-btn { border: 0; font-family: inherit; }
.raumle-btn--block { display: block; width: 100%; text-align: center; margin: 0; }
.raumle-besichtigung__done { background: #EAF7F9; border: 1px solid var(--raumle-petal);
	border-radius: 12px; padding: .85rem 1rem; color: var(--raumle-ink); font-size: .9rem; }
@media (max-width: 900px) {
	.raumle-besichtigung { grid-template-columns: 1fr; padding: 1.4rem 1.15rem; gap: 1.4rem; }
	.raumle-besichtigung__form { grid-template-columns: 1fr; }
}

/* Nav-Eintrag "Event anfragen" nur im mobilen Menue zeigen (Header-CTA ist < 900px aus) */
.raumle-nav__cta-item { display: list-item; }
.raumle-nav__cta-item a { color: var(--raumle-orange); }
@media (min-width: 901px) { .raumle-nav__cta-item { display: none; } }

/* ===== v1.3 · DAS-BÜRO-Verweis (Nova, 23.09.2026) ===== */
.raumle-section--buddy { padding-top: 0; }
.raumle-buddy { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
	gap: 1.4rem; background: #fff; border: 1px solid var(--raumle-petal); border-left: 4px solid var(--raumle-orange);
	border-radius: 14px; padding: 1.3rem 1.6rem; }
.raumle-buddy__text h3 { margin: .2rem 0 .45rem; color: var(--raumle-dark); font-size: 1.15rem; }
.raumle-buddy__text p { margin: 0; color: var(--raumle-gray); font-size: .95rem; max-width: 62ch; }
.raumle-buddy__cta { margin: 0; }
.raumle-btn--outline { display: inline-block; padding: 12px 24px; border-radius: 999px; border: 2px solid var(--raumle-dark);
	color: var(--raumle-dark); font-weight: 600; font-size: .93rem; text-decoration: none; background: transparent;
	transition: background .2s, color .2s; }
.raumle-btn--outline:hover { background: var(--raumle-dark); color: #fff; }
.raumle-buddy-line { font-size: .92rem; color: var(--raumle-gray); margin: 18px 2px 0; }
.raumle-buddy-line a { color: var(--raumle-dark); font-weight: 600; }

/* ===== v1.3 · Hochzeiten-Teaser auf der Startseite ===== */
.raumle-section--hz { padding-top: 90px; }
.hz-teaser { display: grid; grid-template-columns: 1.05fr 1fr; gap: 0; overflow: hidden;
	background: #fff; border: 1px solid var(--raumle-petal); border-radius: 20px;
	box-shadow: 0 18px 40px rgba(27,73,101,.10); }
.hz-teaser__img { min-height: 320px; background-size: cover; background-position: center; }
.hz-teaser__text { padding: 2.1rem 2.3rem; }
.hz-teaser__text h2 { margin: .25rem 0 .8rem; color: var(--raumle-dark); }
.hz-teaser__text p { color: var(--raumle-gray); }
.hz-teaser__cta { display: flex; flex-wrap: wrap; gap: 12px; margin: 18px 0 0; }
.raumle-anlass__more { position: absolute; right: 16px; bottom: 16px; font-size: .82rem; font-weight: 700;
	color: #fff; background: rgba(255,159,28,.92); color: #12384E; padding: 5px 12px; border-radius: 999px; }
@media (max-width: 900px) {
	.hz-teaser { grid-template-columns: 1fr; }
	.hz-teaser__img { min-height: 220px; }
	.hz-teaser__text { padding: 1.4rem 1.2rem; }
	.hz-teaser__cta .raumle-btn { width: 100%; text-align: center; }
}

/* --- Startzeit-Auswahl im Kalkulator (Zeitmodell: ab 8 / ab 20 Uhr) --- */
.rlp-start{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap;margin:0 0 1.1rem;padding:.7rem .9rem;border:1px solid #e3e9ee;border-radius:10px;background:#fbfdfe}
.rlp-start-label{font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;color:#7b95a6;font-weight:600}
.rlp-start label{display:inline-flex;align-items:center;gap:.45rem;font-size:.95rem;cursor:pointer;color:#283C4F}
.rlp-start input[type="radio"]{accent-color:#FF9F1C;width:1.05rem;height:1.05rem;cursor:pointer}
.rlp-start label:has(input:checked){font-weight:650}


/* ---------- v1.3.1: Mobil-Fix Kalkulator-Bausteine (Nova, 25.09.2026) ----------
   Die Bausteine-Kacheln (Mengen-Felder Tischdecken/Stuhlhussen, Auswahl-Kacheln)
   erzwangen auf schmalen Bildschirmen eine Mindestbreite von 445 px und sprengten
   damit die Karte (342 px). Folge: Inhalt links und rechts abgeschnitten. */
@media (max-width: 640px) {
  .raumle-planner .rlp-inputs,
  .raumle-planner .rlp-step,
  .raumle-planner .rlp-addons,
  .raumle-planner .rlp-addon,
  .raumle-planner .rlp-addon-opts,
  .raumle-planner .rlp-opt,
  .raumle-planner .rlp-summary { min-width: 0; }
  .raumle-planner .rlp-addon { flex-wrap: wrap; }
  .raumle-planner .rlp-addon-head { flex-wrap: wrap; }
  .raumle-planner .rlp-addon-price { margin-left: 0; }
  .raumle-planner .rlp-addon-opts { grid-template-columns: 1fr; }
  .raumle-planner .rlp-qty-wrap { margin-left: 0; width: 100%; flex-wrap: wrap; }
  .raumle-planner .rlp-opt { flex-wrap: wrap; }
}


/* ---------- v1.3.1: Flex-Container dürfen schrumpfen (Nova, 25.09.2026) ----------
   .rlp-inputs und die Bausteine-Kacheln erzwangen per Mindestbreite (min-width:auto)
   eine Innenbreite von 888 px. Die Karte (1180 px, davon 400 px Preisspalte) schnitt
   deshalb rechts 108 px ab — auf dem Handy links und rechts. */
.raumle-planner .rlp-inputs,
.raumle-planner .rlp-step,
.raumle-planner .rlp-addons,
.raumle-planner .rlp-addon,
.raumle-planner .rlp-addon-opts,
.raumle-planner .rlp-opt,
.raumle-planner .rlp-qty-wrap { min-width: 0; }


/* ---------- v1.3.2: Auswahl-Kacheln automatisch ein-/mehrspaltig + Umbruch (Nova, 25.09.2026) ----------
   Gemessen: .rlp-addon-opts stand fix in 2 Spalten — 117 px bei 1440, 93 px bei 1130, 64 px bei 1024.
   Der Optionstext braucht 130–157 px. Folge: Text lief aus der Kachel (Überlappung).
   Jetzt: so viele Spalten, wie wirklich Platz haben (min. 200 px je Option), sonst eine. */
.raumle-planner .rlp-addon-opts { grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr)); }
.raumle-planner .rlp-opt { min-width: 0; flex-wrap: wrap; }
.raumle-planner .rlp-opt span { min-width: 0; overflow-wrap: break-word; }
.raumle-planner .rlp-opt b,
.raumle-planner .rlp-opt small { white-space: nowrap; }
.raumle-planner .rlp-qty-wrap { flex-wrap: wrap; }
.raumle-planner .rlp-addon { flex-wrap: wrap; }
.raumle-planner .rlp-addon-head { flex-wrap: wrap; }
