.elementor-kit-9{--e-global-color-primary:#B8893B;--e-global-color-secondary:#15130F;--e-global-color-text:#544D43;--e-global-color-accent:#8A6420;--e-global-color-cfggold:#B8893B;--e-global-color-cfggdk0:#8A6420;--e-global-color-cfgglt0:#E0C07A;--e-global-color-cfgink0:#15130F;--e-global-color-cfgink2:#221F1A;--e-global-color-cfgtext:#544D43;--e-global-color-cfgmute:#6E665A;--e-global-color-cfgivor:#FBF8F2;--e-global-color-cfgsand:#F4EEE3;--e-global-color-cfgline:#E7DECF;--e-global-color-cfgwhit:#FFFFFF;--e-global-color-cfgodrk:#D8D1C4;--e-global-color-cfgddim:#A39A8B;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:600;--e-global-typography-cfgdisp-font-family:"Montserrat";--e-global-typography-cfgdisp-font-size:clamp(40px, 4vw, 58px);--e-global-typography-cfgdisp-font-weight:700;--e-global-typography-cfgdisp-text-transform:none;--e-global-typography-cfgdisp-line-height:1.1em;--e-global-typography-cfgdisp-letter-spacing:-0.022em;--e-global-typography-cfgh100-font-family:"Montserrat";--e-global-typography-cfgh100-font-size:clamp(36px, 3.5vw, 50px);--e-global-typography-cfgh100-font-weight:700;--e-global-typography-cfgh100-text-transform:none;--e-global-typography-cfgh100-line-height:1.14em;--e-global-typography-cfgh100-letter-spacing:-0.02em;--e-global-typography-cfgh200-font-family:"Montserrat";--e-global-typography-cfgh200-font-size:clamp(30px, 2.7vw, 40px);--e-global-typography-cfgh200-font-weight:700;--e-global-typography-cfgh200-text-transform:none;--e-global-typography-cfgh200-line-height:1.2em;--e-global-typography-cfgh200-letter-spacing:-0.016em;--e-global-typography-cfgh300-font-family:"Montserrat";--e-global-typography-cfgh300-font-size:16.5px;--e-global-typography-cfgh300-font-weight:700;--e-global-typography-cfgh300-text-transform:uppercase;--e-global-typography-cfgh300-line-height:1.4em;--e-global-typography-cfgh300-letter-spacing:0.04em;--e-global-typography-cfgh3l0-font-family:"Montserrat";--e-global-typography-cfgh3l0-font-size:21px;--e-global-typography-cfgh3l0-font-weight:700;--e-global-typography-cfgh3l0-text-transform:none;--e-global-typography-cfgh3l0-line-height:1.3em;--e-global-typography-cfgh3l0-letter-spacing:-0.008em;--e-global-typography-cfgh400-font-family:"Montserrat";--e-global-typography-cfgh400-font-size:16.5px;--e-global-typography-cfgh400-font-weight:600;--e-global-typography-cfgh400-text-transform:none;--e-global-typography-cfgh400-line-height:1.4em;--e-global-typography-cfgh400-letter-spacing:0em;--e-global-typography-cfgled2-font-family:"Montserrat";--e-global-typography-cfgled2-font-size:18px;--e-global-typography-cfgled2-font-weight:600;--e-global-typography-cfgled2-text-transform:none;--e-global-typography-cfgled2-line-height:1.5em;--e-global-typography-cfgled2-letter-spacing:-0.005em;--e-global-typography-cfgeyeb-font-family:"Montserrat";--e-global-typography-cfgeyeb-font-size:12.5px;--e-global-typography-cfgeyeb-font-weight:600;--e-global-typography-cfgeyeb-text-transform:uppercase;--e-global-typography-cfgeyeb-line-height:1.4em;--e-global-typography-cfgeyeb-letter-spacing:0.2em;--e-global-typography-cfglead-font-family:"Inter";--e-global-typography-cfglead-font-size:19px;--e-global-typography-cfglead-font-weight:400;--e-global-typography-cfglead-text-transform:none;--e-global-typography-cfglead-line-height:1.65em;--e-global-typography-cfglead-letter-spacing:-0.003em;--e-global-typography-cfgbody-font-family:"Inter";--e-global-typography-cfgbody-font-size:16.5px;--e-global-typography-cfgbody-font-weight:400;--e-global-typography-cfgbody-text-transform:none;--e-global-typography-cfgbody-line-height:1.72em;--e-global-typography-cfgbody-letter-spacing:0em;--e-global-typography-cfgsmal-font-family:"Inter";--e-global-typography-cfgsmal-font-size:14.5px;--e-global-typography-cfgsmal-font-weight:400;--e-global-typography-cfgsmal-text-transform:none;--e-global-typography-cfgsmal-line-height:1.6em;--e-global-typography-cfgsmal-letter-spacing:0em;--e-global-typography-cfgmicr-font-family:"Inter";--e-global-typography-cfgmicr-font-size:13px;--e-global-typography-cfgmicr-font-weight:400;--e-global-typography-cfgmicr-text-transform:none;--e-global-typography-cfgmicr-line-height:1.55em;--e-global-typography-cfgmicr-letter-spacing:0.005em;--e-global-typography-cfgbtn0-font-family:"Montserrat";--e-global-typography-cfgbtn0-font-size:13.5px;--e-global-typography-cfgbtn0-font-weight:600;--e-global-typography-cfgbtn0-text-transform:uppercase;--e-global-typography-cfgbtn0-line-height:1.2em;--e-global-typography-cfgbtn0-letter-spacing:0.1em;--e-global-typography-cfgnav0-font-family:"Montserrat";--e-global-typography-cfgnav0-font-size:13.5px;--e-global-typography-cfgnav0-font-weight:600;--e-global-typography-cfgnav0-text-transform:uppercase;--e-global-typography-cfgnav0-line-height:1.2em;--e-global-typography-cfgnav0-letter-spacing:0.09em;--e-global-typography-cfgnum0-font-family:"Montserrat";--e-global-typography-cfgnum0-font-size:44px;--e-global-typography-cfgnum0-font-weight:700;--e-global-typography-cfgnum0-text-transform:none;--e-global-typography-cfgnum0-line-height:1em;--e-global-typography-cfgnum0-letter-spacing:-0.02em;--e-global-typography-cfgquot-font-family:"Inter";--e-global-typography-cfgquot-font-size:17.5px;--e-global-typography-cfgquot-font-weight:400;--e-global-typography-cfgquot-text-transform:none;--e-global-typography-cfgquot-font-style:italic;--e-global-typography-cfgquot-line-height:1.7em;--e-global-typography-cfgquot-letter-spacing:0em;--e-global-typography-cfglabl-font-family:"Montserrat";--e-global-typography-cfglabl-font-size:13px;--e-global-typography-cfglabl-font-weight:600;--e-global-typography-cfglabl-text-transform:none;--e-global-typography-cfglabl-line-height:1.4em;--e-global-typography-cfglabl-letter-spacing:0.02em;background-color:var( --e-global-color-cfgivor );color:var( --e-global-color-cfgtext );font-family:var( --e-global-typography-cfgbody-font-family ), Sans-serif;font-size:var( --e-global-typography-cfgbody-font-size );font-weight:var( --e-global-typography-cfgbody-font-weight );text-transform:var( --e-global-typography-cfgbody-text-transform );line-height:var( --e-global-typography-cfgbody-line-height );letter-spacing:var( --e-global-typography-cfgbody-letter-spacing );}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{background-color:var( --e-global-color-cfggold );font-family:var( --e-global-typography-cfgbtn0-font-family ), Sans-serif;font-size:var( --e-global-typography-cfgbtn0-font-size );font-weight:var( --e-global-typography-cfgbtn0-font-weight );text-transform:var( --e-global-typography-cfgbtn0-text-transform );line-height:var( --e-global-typography-cfgbtn0-line-height );letter-spacing:var( --e-global-typography-cfgbtn0-letter-spacing );color:var( --e-global-color-cfgink0 );border-style:none;border-radius:2px 2px 2px 2px;padding:18px 28px 18px 28px;}.elementor-kit-9 button:hover,.elementor-kit-9 button:focus,.elementor-kit-9 input[type="button"]:hover,.elementor-kit-9 input[type="button"]:focus,.elementor-kit-9 input[type="submit"]:hover,.elementor-kit-9 input[type="submit"]:focus,.elementor-kit-9 .elementor-button:hover,.elementor-kit-9 .elementor-button:focus{background-color:var( --e-global-color-cfgink0 );color:var( --e-global-color-cfgwhit );}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 a{color:var( --e-global-color-cfggdk0 );}.elementor-kit-9 a:hover{color:var( --e-global-color-cfgink0 );}.elementor-kit-9 h1{color:var( --e-global-color-cfgink0 );font-family:var( --e-global-typography-cfgh100-font-family ), Sans-serif;font-size:var( --e-global-typography-cfgh100-font-size );font-weight:var( --e-global-typography-cfgh100-font-weight );text-transform:var( --e-global-typography-cfgh100-text-transform );line-height:var( --e-global-typography-cfgh100-line-height );letter-spacing:var( --e-global-typography-cfgh100-letter-spacing );}.elementor-kit-9 h2{color:var( --e-global-color-cfgink0 );font-family:var( --e-global-typography-cfgh200-font-family ), Sans-serif;font-size:var( --e-global-typography-cfgh200-font-size );font-weight:var( --e-global-typography-cfgh200-font-weight );text-transform:var( --e-global-typography-cfgh200-text-transform );line-height:var( --e-global-typography-cfgh200-line-height );letter-spacing:var( --e-global-typography-cfgh200-letter-spacing );}.elementor-kit-9 h3{color:var( --e-global-color-cfgink0 );font-family:var( --e-global-typography-cfgh3l0-font-family ), Sans-serif;font-size:var( --e-global-typography-cfgh3l0-font-size );font-weight:var( --e-global-typography-cfgh3l0-font-weight );text-transform:var( --e-global-typography-cfgh3l0-text-transform );line-height:var( --e-global-typography-cfgh3l0-line-height );letter-spacing:var( --e-global-typography-cfgh3l0-letter-spacing );}.elementor-kit-9 h4{color:var( --e-global-color-cfgink0 );font-family:var( --e-global-typography-cfgh400-font-family ), Sans-serif;font-size:var( --e-global-typography-cfgh400-font-size );font-weight:var( --e-global-typography-cfgh400-font-weight );text-transform:var( --e-global-typography-cfgh400-text-transform );line-height:var( --e-global-typography-cfgh400-line-height );letter-spacing:var( --e-global-typography-cfgh400-letter-spacing );}.elementor-kit-9 h5{color:var( --e-global-color-cfgink0 );}.elementor-kit-9 h6{color:var( --e-global-color-cfgink0 );}.elementor-kit-9 label{color:var( --e-global-color-cfgink0 );font-family:var( --e-global-typography-cfglabl-font-family ), Sans-serif;font-size:var( --e-global-typography-cfglabl-font-size );font-weight:var( --e-global-typography-cfglabl-font-weight );text-transform:var( --e-global-typography-cfglabl-text-transform );line-height:var( --e-global-typography-cfglabl-line-height );letter-spacing:var( --e-global-typography-cfglabl-letter-spacing );}.elementor-kit-9 input:not([type="button"]):not([type="submit"]),.elementor-kit-9 textarea,.elementor-kit-9 .elementor-field-textual{font-family:var( --e-global-typography-cfgbody-font-family ), Sans-serif;font-size:var( --e-global-typography-cfgbody-font-size );font-weight:var( --e-global-typography-cfgbody-font-weight );text-transform:var( --e-global-typography-cfgbody-text-transform );line-height:var( --e-global-typography-cfgbody-line-height );letter-spacing:var( --e-global-typography-cfgbody-letter-spacing );color:var( --e-global-color-cfgink0 );background-color:var( --e-global-color-cfgwhit );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-cfgline );border-radius:2px 2px 2px 2px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-9{--e-global-typography-cfgdisp-font-size:44px;--e-global-typography-cfgh100-font-size:40px;--e-global-typography-cfgh200-font-size:32px;--e-global-typography-cfgh300-font-size:16.5px;--e-global-typography-cfgh3l0-font-size:20px;--e-global-typography-cfgh400-font-size:16.5px;--e-global-typography-cfgled2-font-size:18px;--e-global-typography-cfgeyeb-font-size:12.5px;--e-global-typography-cfglead-font-size:18px;--e-global-typography-cfgbody-font-size:16px;--e-global-typography-cfgsmal-font-size:14.5px;--e-global-typography-cfgmicr-font-size:13px;--e-global-typography-cfgbtn0-font-size:13.5px;--e-global-typography-cfgnav0-font-size:13.5px;--e-global-typography-cfgnum0-font-size:40px;--e-global-typography-cfgquot-font-size:17px;--e-global-typography-cfglabl-font-size:13px;font-size:var( --e-global-typography-cfgbody-font-size );line-height:var( --e-global-typography-cfgbody-line-height );letter-spacing:var( --e-global-typography-cfgbody-letter-spacing );}.elementor-kit-9 h1{font-size:var( --e-global-typography-cfgh100-font-size );line-height:var( --e-global-typography-cfgh100-line-height );letter-spacing:var( --e-global-typography-cfgh100-letter-spacing );}.elementor-kit-9 h2{font-size:var( --e-global-typography-cfgh200-font-size );line-height:var( --e-global-typography-cfgh200-line-height );letter-spacing:var( --e-global-typography-cfgh200-letter-spacing );}.elementor-kit-9 h3{font-size:var( --e-global-typography-cfgh3l0-font-size );line-height:var( --e-global-typography-cfgh3l0-line-height );letter-spacing:var( --e-global-typography-cfgh3l0-letter-spacing );}.elementor-kit-9 h4{font-size:var( --e-global-typography-cfgh400-font-size );line-height:var( --e-global-typography-cfgh400-line-height );letter-spacing:var( --e-global-typography-cfgh400-letter-spacing );}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{font-size:var( --e-global-typography-cfgbtn0-font-size );line-height:var( --e-global-typography-cfgbtn0-line-height );letter-spacing:var( --e-global-typography-cfgbtn0-letter-spacing );}.elementor-kit-9 label{font-size:var( --e-global-typography-cfglabl-font-size );line-height:var( --e-global-typography-cfglabl-line-height );letter-spacing:var( --e-global-typography-cfglabl-letter-spacing );}.elementor-kit-9 input:not([type="button"]):not([type="submit"]),.elementor-kit-9 textarea,.elementor-kit-9 .elementor-field-textual{font-size:var( --e-global-typography-cfgbody-font-size );line-height:var( --e-global-typography-cfgbody-line-height );letter-spacing:var( --e-global-typography-cfgbody-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-9{--e-global-typography-cfgdisp-font-size:33px;--e-global-typography-cfgh100-font-size:31px;--e-global-typography-cfgh200-font-size:27px;--e-global-typography-cfgh300-font-size:16px;--e-global-typography-cfgh3l0-font-size:19px;--e-global-typography-cfgh400-font-size:16px;--e-global-typography-cfgled2-font-size:17px;--e-global-typography-cfgeyeb-font-size:12px;--e-global-typography-cfglead-font-size:17px;--e-global-typography-cfgbody-font-size:16px;--e-global-typography-cfgsmal-font-size:14.5px;--e-global-typography-cfgmicr-font-size:13px;--e-global-typography-cfgbtn0-font-size:13.5px;--e-global-typography-cfgnav0-font-size:15px;--e-global-typography-cfgnum0-font-size:36px;--e-global-typography-cfgquot-font-size:16.5px;--e-global-typography-cfglabl-font-size:13px;font-size:var( --e-global-typography-cfgbody-font-size );line-height:var( --e-global-typography-cfgbody-line-height );letter-spacing:var( --e-global-typography-cfgbody-letter-spacing );}.elementor-kit-9 h1{font-size:var( --e-global-typography-cfgh100-font-size );line-height:var( --e-global-typography-cfgh100-line-height );letter-spacing:var( --e-global-typography-cfgh100-letter-spacing );}.elementor-kit-9 h2{font-size:var( --e-global-typography-cfgh200-font-size );line-height:var( --e-global-typography-cfgh200-line-height );letter-spacing:var( --e-global-typography-cfgh200-letter-spacing );}.elementor-kit-9 h3{font-size:var( --e-global-typography-cfgh3l0-font-size );line-height:var( --e-global-typography-cfgh3l0-line-height );letter-spacing:var( --e-global-typography-cfgh3l0-letter-spacing );}.elementor-kit-9 h4{font-size:var( --e-global-typography-cfgh400-font-size );line-height:var( --e-global-typography-cfgh400-line-height );letter-spacing:var( --e-global-typography-cfgh400-letter-spacing );}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{font-size:var( --e-global-typography-cfgbtn0-font-size );line-height:var( --e-global-typography-cfgbtn0-line-height );letter-spacing:var( --e-global-typography-cfgbtn0-letter-spacing );}.elementor-kit-9 label{font-size:var( --e-global-typography-cfglabl-font-size );line-height:var( --e-global-typography-cfglabl-line-height );letter-spacing:var( --e-global-typography-cfglabl-letter-spacing );}.elementor-kit-9 input:not([type="button"]):not([type="submit"]),.elementor-kit-9 textarea,.elementor-kit-9 .elementor-field-textual{font-size:var( --e-global-typography-cfgbody-font-size );line-height:var( --e-global-typography-cfgbody-line-height );letter-spacing:var( --e-global-typography-cfgbody-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* cfg:start — generated by build/kit.php from site.css; edits inside this block are overwritten on rebuild */
/* Clean Facility Group — effects Elementor has no control for.
   Colours, fonts, spacing and layout live in each widget/container and in the kit globals. */
:root {
	--cfg-gold-grad: linear-gradient(120deg, #8A6420 0%, #C39445 26%, #EBD08C 50%, #B98A3A 74%, #8A6420 100%);
	--cfg-gold-btn: linear-gradient(120deg, #AC8036 0%, #C9A04E 24%, #EBD08C 50%, #C69A4A 76%, #AC8036 100%);
	--cfg-gold-line: linear-gradient(90deg, rgba(184,137,59,0) 0%, #B8893B 18%, #E9CD88 50%, #B8893B 82%, rgba(184,137,59,0) 100%);
	--cfg-lift: 0 28px 60px -34px rgba(21,19,15,.42);
}
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; }
::selection { background: rgba(184,137,59,.28); color: #15130F; }

/* German compounds: hyphenate body copy and small titles, never let a word overflow */
.elementor-widget-text-editor, .elementor-widget-icon-list, .cfg-card .elementor-heading-title, .cfg-values .elementor-heading-title {
	-webkit-hyphens: auto; hyphens: auto; overflow-wrap: break-word;
}
.elementor-heading-title { overflow-wrap: break-word; }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor-widget-text-editor p { margin-block: 0 1em; }

/* Anchor targets clear the sticky header */
.e-con[id] { scroll-margin-top: 110px; }

/* Keyboard focus */
a:focus-visible, .elementor-button:focus-visible, button:focus-visible, .elementor-field:focus-visible {
	outline: 2px solid #B8893B; outline-offset: 3px;
}

/* ---------- eyebrow: gold rule + caps label ---------- */
.cfg-eyebrow .elementor-heading-title { display: inline-flex; align-items: center; gap: 14px; }
.cfg-eyebrow .elementor-heading-title::before {
	content: ""; flex: none; width: 34px; height: 1px; background: var(--cfg-gold-grad);
}
.cfg-eyebrow--center .elementor-heading-title::after {
	content: ""; flex: none; width: 34px; height: 1px; background: var(--cfg-gold-grad);
}

/* ---------- metallic gold ---------- */
.cfg-gold-text {
	background: var(--cfg-gold-grad); -webkit-background-clip: text; background-clip: text;
	color: transparent; -webkit-text-fill-color: transparent;
}
.cfg-btn-gold .elementor-button {
	background-image: var(--cfg-gold-btn); background-size: 220% 100%; background-position: 0% 0;
	box-shadow: 0 12px 26px -16px rgba(138,100,32,.9);
	transition: background-position .6s ease, box-shadow .3s ease, transform .3s ease;
}
.cfg-btn-gold .elementor-button:hover, .cfg-btn-gold .elementor-button:focus-visible {
	background-position: 100% 0; box-shadow: 0 16px 32px -16px rgba(138,100,32,1); transform: translateY(-1px);
}
.cfg-btn .elementor-button { transition: background-color .3s ease, color .3s ease, border-color .3s ease, transform .3s ease; }
.cfg-btn .elementor-button-icon svg { transition: transform .3s ease; }
.cfg-btn .elementor-button:hover .elementor-button-icon svg { transform: translateX(3px); }
.cfg-ico .elementor-icon { box-shadow: 0 12px 24px -14px rgba(138,100,32,.8); }
/* the icons are line drawings: Elementor fills SVGs, so draw them with the icon colour instead */
.cfg-ico .elementor-icon svg { fill: none !important; stroke: currentColor; }
.cfg-ico--gold .elementor-icon { background-image: var(--cfg-gold-grad); }
.cfg-num .elementor-heading-title {
	background: var(--cfg-gold-grad); -webkit-background-clip: text; background-clip: text;
	color: transparent; -webkit-text-fill-color: transparent;
}
.cfg-rule { position: relative; }
.cfg-rule::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; background: var(--cfg-gold-line); }

/* ---------- header ---------- */
.cfg-mainbar { transition: box-shadow .35s ease; }
.cfg-mainbar::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: var(--cfg-gold-line); opacity: .65; pointer-events: none;
}
.cfg-mainbar.elementor-sticky--effects { box-shadow: 0 14px 34px -22px rgba(21,19,15,.45); }
.cfg-topbar a { transition: color .25s ease; }
.cfg-nav .elementor-nav-menu--dropdown { border-top: 1px solid #E7DECF; box-shadow: 0 24px 40px -28px rgba(21,19,15,.45); }
.cfg-nav .elementor-menu-toggle { border-radius: 2px; }
/* narrow desktops (1025–1199px, incl. a 17px Windows scrollbar): logo + menu + button must fit one row */
@media (min-width: 1025px) and (max-width: 1199px) {
	.cfg-mainbar .cfg-logo img { height: 50px !important; }
	.cfg-nav .elementor-nav-menu--main .elementor-item { padding-left: 9px !important; padding-right: 9px !important; letter-spacing: .05em; }
	.cfg-mainbar .cfg-btn .elementor-button { padding: 13px 16px !important; letter-spacing: .06em; }
}
/* touch screens: list links get a 28px tap target (WCAG 2.2 asks for 24px); header button sits beside the menu toggle */
@media (max-width: 1024px) {
	.elementor-icon-list-item > a { min-height: 28px; }
	.cfg-mainbar .cfg-logo { margin-right: auto; }
	.cfg-mainbar .cfg-nav.elementor-widget { flex-grow: 0 !important; }
}

/* ---------- hero photo frame + badge ---------- */
.cfg-frame { isolation: isolate; }
.cfg-frame::before {
	content: ""; position: absolute; inset: 28px -28px -28px 28px; border: 1px solid rgba(184,137,59,.6);
	border-radius: 4px; z-index: -1; pointer-events: none;
}
.cfg-frame--left::before { inset: 28px 28px -28px -28px; }
@media (max-width: 1024px) {
	.cfg-frame::before { inset: 18px -14px -18px 18px; }
	.cfg-frame--left::before { inset: 18px 18px -18px -14px; }
}
@media (max-width: 767px) {
	.cfg-frame::before, .cfg-frame--left::before { inset: 12px -8px -12px 12px; }
}
.cfg-badge { backdrop-filter: saturate(1.1); }

/* ---------- cards ---------- */
.cfg-card { transition: transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s ease, border-color .35s ease; }
.cfg-card:hover { transform: translateY(-4px); box-shadow: var(--cfg-lift); }
a.cfg-card, a.cfg-card:hover { color: inherit; text-decoration: none; }
.cfg-more .elementor-heading-title::after { content: "\2192"; display: inline-block; margin-left: 8px; transition: transform .3s ease; }
.cfg-card:hover .cfg-more .elementor-heading-title::after { transform: translateX(4px); }
.cfg-card .elementor-widget-text-editor { flex-grow: 1; }

/* two-column check lists */
@media (min-width: 768px) {
	.cfg-checks--2 .elementor-icon-list-items { display: grid; grid-template-columns: 1fr 1fr; column-gap: 32px; align-items: start; }
	.cfg-checks--2 .elementor-icon-list-item { padding-bottom: 0 !important; margin: 0 0 14px !important; }
}
/* keep every list item's text on the first line, level with its icon */
.elementor-widget-icon-list.cfg-checks--2 .elementor-icon-list-item { align-items: flex-start; }

/* service anchor chips on the Leistungen hero */
.cfg-chips .elementor-icon-list-items { gap: 10px 10px; }
.cfg-chips .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
.cfg-chips .elementor-icon-list-item::after { display: none !important; }
.cfg-chips .elementor-icon-list-item > a {
	display: inline-flex; align-items: center; padding: 10px 16px; border: 1px solid rgba(224,192,122,.38); border-radius: 999px;
	transition: border-color .25s ease, background-color .25s ease;
}
.cfg-chips .elementor-icon-list-item > a:hover { border-color: #E0C07A; background: rgba(224,192,122,.10); }

/* dark sections: gold hairline on top */
.cfg-cta, .cfg-footer, .cfg-phero { position: relative; }
.cfg-cta::after, .cfg-footer::after {
	content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: var(--cfg-gold-grad); z-index: 2;
}
.cfg-phero::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: var(--cfg-gold-line); z-index: 2;
}

/* testimonials */
.cfg-quote .elementor-testimonial-content { margin-bottom: 22px; }
.cfg-quote .elementor-testimonial-meta-inner { gap: 0; }

/* contact cards + "So geht es weiter" — long e-mail addresses may break on small phones instead of overflowing */
.cfg-contact-card a { text-decoration: none; }
.cfg-contact-card .e-con { min-width: 0; }
.elementor-icon-list-item a[href^="mailto:"] .elementor-icon-list-text { overflow-wrap: anywhere; }
/* phones: long German compounds in headings hyphenate at syllables instead of overflowing */
@media (max-width: 767px) {
	.elementor-heading-title { -webkit-hyphens: auto; hyphens: auto; }
}
.cfg-steps-mini ol { list-style: none; counter-reset: cfgstep; margin: 0; padding: 0; }
.cfg-steps-mini li { counter-increment: cfgstep; position: relative; padding-left: 40px; margin-bottom: 10px; }
.cfg-steps-mini li:last-child { margin-bottom: 0; }
.cfg-steps-mini li::before {
	content: counter(cfgstep, decimal-leading-zero); position: absolute; left: 0; top: 0;
	font-family: "Montserrat", sans-serif; font-weight: 700; font-size: 13px; letter-spacing: .06em; color: #8A6420;
}

/* forms */
.cfg-form .elementor-field-group .elementor-field-textual, .cfg-form .elementor-field-group select {
	min-height: 52px; transition: border-color .25s ease, box-shadow .25s ease;
}
.cfg-form .elementor-field-group textarea.elementor-field-textual { min-height: 0; }
.cfg-form .elementor-field-group .elementor-field-textual:focus, .cfg-form .elementor-field-group select:focus {
	border-color: #B8893B !important; box-shadow: 0 0 0 3px rgba(184,137,59,.18); outline: none;
}
.cfg-form .elementor-select-wrapper::before { color: #8A6420; }
.cfg-form input[type="checkbox"] { accent-color: #8A6420; width: 24px; height: 24px; margin-top: 0; flex: none; }
.cfg-form .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option { display: flex; align-items: flex-start; gap: 10px; }
.cfg-form .elementor-field-type-acceptance label { font-size: 14px; line-height: 1.55; color: #544D43; }
.cfg-form .elementor-field-type-acceptance label a { color: #8A6420; text-decoration: underline; }
.cfg-form .elementor-button[type="submit"] {
	background-image: var(--cfg-gold-btn); background-size: 220% 100%; background-position: 0 0;
	transition: background-position .6s ease, color .3s ease, box-shadow .3s ease;
	box-shadow: 0 12px 26px -16px rgba(138,100,32,.9);
}
.cfg-form .elementor-button[type="submit"]:hover { background-position: 100% 0; color: #15130F; }
.cfg-form .elementor-message { margin-top: 14px; font-size: 15px; }
.cfg-form .elementor-message.elementor-message-success { color: #2F6B3A; }
.cfg-form input[type="date"] { min-height: 52px; }

/* placeholder notes (remove before launch) */
.cfg-note { border: 1px dashed rgba(138,100,32,.6) !important; }

/* legal pages */
.cfg-legal h2 { font-family: "Montserrat", sans-serif; font-size: 22px; line-height: 1.3; font-weight: 700; color: #15130F; margin: 2.2em 0 .6em; }
.cfg-legal h3 { font-family: "Montserrat", sans-serif; font-size: 17px; line-height: 1.4; font-weight: 600; color: #15130F; margin: 1.6em 0 .4em; }
.cfg-legal h2:first-child { margin-top: 0; }
.cfg-legal ul { margin: 0 0 1em 1.2em; padding: 0; }
.cfg-legal li { margin-bottom: .35em; }
.cfg-legal a { color: #8A6420; text-decoration: underline; }
.cfg-legal mark { background: rgba(224,192,122,.35); color: inherit; padding: 0 .2em; }

/* footer */
.cfg-footer a { transition: color .25s ease; }
.cfg-footer .elementor-icon-list-text { overflow-wrap: anywhere; }

/* cfg:end *//* End custom CSS */