.elementor-kit-535{--e-global-color-primary:#4E7B39;--e-global-color-secondary:#22301F;--e-global-color-text:#54604C;--e-global-color-accent:#D9C1A2;--e-global-color-f898f31:#FFFFFF;--e-global-color-c6c574f:#F5F5F5;--e-global-color-0d046a4:#E6E6E6;--e-global-color-e5f246a:#C0C0C0;--e-global-color-7ad78f4:#FFFFFFE6;--e-global-color-8630d9f:#7E222200;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Hanken Grotesk";--e-global-typography-text-font-family:"Hanken Grotesk";--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"DM Mono";--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.3em;--e-global-typography-2c11d45-font-size:3.5rem;--e-global-typography-2c11d45-font-weight:700;--e-global-typography-2c11d45-line-height:1.1em;--e-global-typography-f8a9e51-font-size:2.75rem;--e-global-typography-f8a9e51-font-weight:700;--e-global-typography-f8a9e51-text-transform:uppercase;--e-global-typography-f8a9e51-line-height:1.15em;--e-global-typography-6ed476c-font-size:0.9rem;--e-global-typography-6ed476c-font-weight:600;--e-global-typography-6ed476c-text-transform:uppercase;--e-global-typography-0009af8-font-size:1.25rem;--e-global-typography-0009af8-font-weight:500;--e-global-typography-0009af8-text-transform:uppercase;--e-global-typography-0009af8-font-style:normal;--e-global-typography-0009af8-line-height:1.3em;--e-global-typography-cdaaf6a-font-size:1.1rem;--e-global-typography-cdaaf6a-font-weight:500;--e-global-typography-cdaaf6a-line-height:1.25em;--e-global-typography-ef2c50b-font-size:1rem;--e-global-typography-ef2c50b-font-weight:500;--e-global-typography-ef2c50b-text-transform:uppercase;--e-global-typography-ef2c50b-line-height:1em;--e-global-typography-a119c88-font-weight:400;--e-global-typography-a119c88-text-transform:uppercase;--e-global-typography-a119c88-line-height:1.4em;--e-global-typography-6e7f7dc-font-size:1.1rem;--e-global-typography-6e7f7dc-font-weight:600;--e-global-typography-6e7f7dc-line-height:1.3em;--e-global-typography-22fb25e-font-size:0.8rem;--e-global-typography-22fb25e-text-transform:uppercase;--e-global-typography-22fb25e-line-height:1.5em;color:#595959;font-family:"Hanken Grotesk", Sans-serif;font-size:1rem;font-weight:400;}.elementor-kit-535 button,.elementor-kit-535 input[type="button"],.elementor-kit-535 input[type="submit"],.elementor-kit-535 .elementor-button{background-color:var( --e-global-color-primary );font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var( --e-global-color-f898f31 );padding:17px 28px 17px 28px;}.elementor-kit-535 button:hover,.elementor-kit-535 button:focus,.elementor-kit-535 input[type="button"]:hover,.elementor-kit-535 input[type="button"]:focus,.elementor-kit-535 input[type="submit"]:hover,.elementor-kit-535 input[type="submit"]:focus,.elementor-kit-535 .elementor-button:hover,.elementor-kit-535 .elementor-button:focus{background-color:#EE741CCC;color:var( --e-global-color-f898f31 );}.elementor-kit-535 e-page-transition{background-color:#FFBC7D;}.elementor-kit-535 p{margin-block-end:1.7em;}.elementor-kit-535 a{color:var( --e-global-color-primary );}.elementor-kit-535 a:hover{color:#C85F12;}.elementor-kit-535 h1{color:var( --e-global-color-secondary );font-family:"Montserrat", Sans-serif;font-size:3.1rem;font-weight:700;line-height:1.15em;}.elementor-kit-535 h2{color:var( --e-global-color-secondary );font-size:2.6rem;font-weight:600;line-height:1.2em;}.elementor-kit-535 h3{color:var( --e-global-color-secondary );font-size:1.5rem;font-weight:600;line-height:1.25em;}.elementor-kit-535 h4{color:var( --e-global-color-secondary );font-size:1.3rem;font-weight:500;line-height:1.3em;}.elementor-kit-535 h5{color:var( --e-global-color-secondary );font-size:1.2rem;font-weight:600;line-height:1.4em;}.elementor-kit-535 h6{color:var( --e-global-color-secondary );font-family:"DM Mono", Sans-serif;font-size:1rem;font-weight:600;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--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:1366px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:90%;}.e-con{--container-max-width:90%;}}@media(max-width:1200px){.elementor-kit-535{--e-global-typography-f8a9e51-font-size:2.7em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:95%;}.e-con{--container-max-width:95%;}}@media(max-width:767px){.elementor-kit-535{--e-global-typography-primary-font-size:1.2em;--e-global-typography-secondary-font-size:1.2em;--e-global-typography-text-font-size:1.1em;--e-global-typography-accent-font-size:1.1em;--e-global-typography-2c11d45-font-size:2.25rem;--e-global-typography-f8a9e51-font-size:2rem;--e-global-typography-6ed476c-font-size:0.8rem;--e-global-typography-cdaaf6a-font-size:1.25rem;--e-global-typography-ef2c50b-font-size:15px;--e-global-typography-a119c88-font-size:1em;--e-global-typography-6e7f7dc-font-size:1.1em;}.elementor-kit-535 h1{font-size:2rem;}.elementor-kit-535 h2{font-size:1.7rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:90%;}.e-con{--container-max-width:90%;}}/* Start custom CSS *//* =========================================================================
   BASIS · Bestand aus der Basisbox (nicht ändern/löschen)
   ========================================================================= */

/* --- Links: einheitliche Übergangszeit -------------------- */
.elementor a { transition: .4s; }

/* --- Fluide Sektions-Abstände (Utility-Klassen) ----------- */
/* Klasse an den Hauptcontainer: -sm kompakt, ohne Zusatz Standard, -lg großzügig */
.section-pad    { padding-block: clamp(2.5rem, 5vw, 5rem); }   /* 40 → 80px */
.section-pad-sm { padding-block: clamp(1.5rem, 3vw, 3rem); }   /* 24 → 48px */
.section-pad-lg { padding-block: clamp(3.5rem, 7vw, 7rem); }   /* 56 → 112px */

/* --- Anker-Offset ----------------------------------------- */
/* Kein CSS nötig. Header-Anker regelt das Snippet „Header-Anker · Offset & fluessiges
   Scrollen“ (liest die Header-Höhe beim Klick live). „Page scroll to id“: Offset 0. */

/* --- Sticky-Header: Shrink, Schatten, Logo ----------------- */
/* Klasse .dgs-header an den Header-Container, .sticky-logo ans Logo-Widget,
   sticky_effects_offset > 0. Ohne .dgs-header greifen die Regeln auf JEDES
   Sticky-Element. Der Container rendert als <div> — "header.elementor-…" trifft nichts. */
.dgs-header .sticky-logo img { transition: width .3s ease-in-out; }

/* !important nötig: Elementor deckelt Bild-Widgets (bei SVG auf width:48px) */
.dgs-header.elementor-sticky--effects .sticky-logo img {
  width: clamp(45px, 5.9vw, 60px) !important;   /* 45 → 60px, ersetzt Festwert + Media Query */
  height: auto !important;
  max-width: none !important;
}

.dgs-header.elementor-sticky--effects {
  box-shadow: 0 0 40px 0 #00000033;
  clip-path: inset(0 0 -100vh 0);   /* Schatten nur nach unten austreten lassen */
}

/* Der eigentliche Höhen-Schrumpf auf Desktop (Widget setzt 47px) */
.dgs-header.elementor-sticky--effects .elementor-nav-menu--main .elementor-item {
  padding-block: clamp(1.25rem, 2.4vw, 2.1875rem) !important;   /* 20 → 35px */
}

/* --- Mobiles Klappmenü: Abstand zum Header ---------------- */
.dgs-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { margin-top: 30px; }
.dgs-header.elementor-sticky--effects nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { margin-top: 20px; }

/* --- Aktiver Menüpunkt in der Markenfarbe ----------------- */
.dgs-header .current-page-ancestor > a,
.dgs-header .current-menu-ancestor > a { color: var(--e-global-color-primary) !important; }


/* --- JetTabs-Akkordeon: fluessiges Schliessen -------- */
/* JetTabs setzt beim Wechsel style.height hart von auto auf 0 - von auto aus
   ist height nicht animierbar, es klappt ruckartig zu. Das Snippet
   "JetTabs-Akkordeon fluessig schliessen" friert vorher die Pixelhoehe ein.
   Transition unter 500 ms halten - danach setzt JetTabs height:auto. */
.jet-toggle__content { transition: height .42s cubic-bezier(.22,.61,.36,1); }
.jet-toggle.is-closing > .jet-toggle__content { visibility: visible !important; overflow: hidden; }
.jet-toggle.is-closing > .jet-toggle__content > .jet-toggle__content-inner { opacity: 0; transition: opacity .3s ease; }
@media (prefers-reduced-motion: reduce) { .jet-toggle__content { transition: none; } }

/* =========================================================================
   OBERHUBER · Bausteine zur HTML-Vorlage (Winterdienst Salespage - Gartengestaltung Oberhuber.html)
   ========================================================================= */

/* --- Seite & Wurzel-Container ----- */
body.page-id-60 { overflow-x: clip; }
html:has(body.page-id-60) { scroll-behavior: smooth; }
#oberhuber-salespage { gap: 0; row-gap: 0; }
#oberhuber-salespage > .e-con-inner { width: 100%; max-width: none; padding: 0; }
#oberhuber-salespage .elementor-widget-html, #oberhuber-salespage .elementor-widget-container { width: 100%; }

/* --- Basis der Vorlage ----- */
.oberhuber-landing { font-family: 'Hanken Grotesk', Helvetica, sans-serif; color: #22301F; font-size: 16px; line-height: normal; -webkit-font-smoothing: antialiased; }
.oberhuber-landing *, .oberhuber-footer * { box-sizing: border-box; }
.oberhuber-landing :is(h1,h2,h3,p,ul,ol,figure) { margin: 0; padding: 0; }
.oberhuber-landing :is(h1,h2,h3) { color: inherit; }
.oberhuber-landing :is(ul,ol) { list-style: none; }
.oberhuber-landing section { overflow: hidden; }
.oberhuber-landing a, .oberhuber-footer a { color: #4E7B39; text-decoration: none; }
.oberhuber-landing a:hover { color: #3F6A32; }
.oberhuber-landing img { max-width: 100%; }
.oberhuber-landing ::placeholder { color: #8A9184; opacity: 1; }
.oberhuber-landing :is(a,button,input,textarea,summary):focus-visible, .oberhuber-landing label:focus-within { outline: 3px solid #D9C1A2; outline-offset: 2px; }
@keyframes wdFall { 0% { transform: translate3d(0,-30px,0); opacity: 0; } 10% { opacity: .9; } 100% { transform: translate3d(var(--dx,20px),760px,0); opacity: 0; } }
@keyframes wdPulse { 0%,100% { opacity: 1; transform: scale(1); } 50% { opacity: .45; transform: scale(.82); } }
@media (prefers-reduced-motion: reduce) { .oberhuber-landing * { animation: none !important; transition: none !important; } html:has(body.page-id-60) { scroll-behavior: auto; } }

/* --- Icons (Sprite im Hero-Widget) ----- */
.oberhuber-landing .ob-i { width: 1em; height: 1em; fill: currentColor; display: block; }

/* --- Hover & Fokus (Klassen aus der Vorlage) ----- */
@media (hover: hover) and (pointer: fine) {
  .ob-h0:hover { color: #D9C1A2 !important; }
  .ob-h1:hover { background: #C2A883 !important; color: #20402D !important; transform: translateY(-3px) !important; }
  .ob-h2:hover { border-color: #D9C1A2 !important; color: #D9C1A2 !important; }
  .ob-h3:hover { transform: translateY(-6px) !important; box-shadow: 0 24px 44px -30px rgba(20,28,18,.5) !important; }
  .ob-h4:hover { background: #22301F !important; color: #fff !important; }
  .ob-h6:hover { border-color: #4E7B39 !important; background: #F7F8F5 !important; }
  .ob-h7:hover { background: #C2A883 !important; transform: translateY(-3px) !important; }
}
.ob-h5:focus { border-color: #4E7B39 !important; box-shadow: 0 0 0 3px rgba(78,123,57,.16) !important; }

/* --- Hello-Elementor-Reset: Buttons, Felder ----- */
.oberhuber-landing :is(button,[type=button],[type=submit]) { border-radius: 0; text-transform: none; letter-spacing: normal; font: inherit; box-shadow: none; }
.oberhuber-landing :is(input:not([type=checkbox]):not([type=file]),textarea) { font: inherit; border-radius: 0; color: #22301F; box-shadow: none; width: 100%; }
.oberhuber-landing [type=submit] { font-family: Montserrat, Helvetica, sans-serif; font-weight: 800; font-size: 15px; letter-spacing: .09em; text-transform: uppercase; }

/* --- Hero ----- */
.ob-hero-spacer { pointer-events: none; }

/* --- Formular: Chips, Fehler, Danke ----- */
.ob-form label:has([data-ob-file]) { position: relative; }
.ob-form button[aria-pressed] { background: #fff !important; color: #22301F !important; border-color: #C7CDBF !important; text-transform: none !important; letter-spacing: normal !important; }
@media (hover: hover) and (pointer: fine) { .ob-form button[aria-pressed="false"]:hover { background: #F7F8F5 !important; border-color: #4E7B39 !important; color: #22301F !important; } }
.ob-form button[aria-pressed="true"] { background: #2F5226 !important; color: #fff !important; border-color: #2F5226 !important; }
.ob-form button[type=submit]:hover { background: #C2A883; color: #20402D; }
.ob-form button[type=submit][disabled] { opacity: .6; cursor: wait; }
.ob-form [type=checkbox] { width: 22px; height: 22px; margin: 0; accent-color: #4E7B39; flex: none; }
.ob-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.ob-error { margin-top: 18px; padding: 13px 16px; background: #FBEDE8; border-left: 4px solid #B5482A; color: #7A2B14; font-size: 14.5px; line-height: 1.5; }
.ob-error[hidden], .ob-sent[hidden], .ob-form[hidden] { display: none; }
.ob-sent { text-align: center; padding: clamp(24px, 4vw, 48px) 0; }
.ob-sent-icon { display: inline-flex; font-size: 64px; color: #4E7B39; }
.ob-sent-title { margin-top: 14px; font-family: Montserrat, Helvetica, sans-serif; font-weight: 700; font-size: clamp(22px, 2.4vw, 28px); line-height: 1.25; color: #22301F; text-transform: uppercase; }
.ob-sent-text { margin: 14px auto 0; max-width: 460px; font-size: 16px; line-height: 1.6; color: #54604C; }
.ob-sent-reset { margin-top: 26px; padding: 14px 26px; border: 2px solid #22301F; background: transparent; color: #22301F; font-family: Montserrat, Helvetica, sans-serif; font-weight: 700; font-size: 13px; letter-spacing: .09em; text-transform: uppercase; cursor: pointer; }
@media (hover: hover) and (pointer: fine) { .ob-sent-reset:hover { background: #22301F; color: #fff; } }

/* --- FAQ (details statt Button: kein Marker) ----- */
.ob-faq > summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 22px; cursor: pointer; }
.ob-faq > summary::-webkit-details-marker { display: none; }
.ob-faq-i { transition: transform .25s; }
.ob-faq[open] .ob-faq-i { transform: rotate(45deg); }

/* --- Header-Logo (breit, Basisbox-Schrumpf auf 60px überschreiben) ----- */
.dgs-header .sticky-logo img { width: 100%; }
.dgs-header.elementor-sticky--effects .sticky-logo img { width: clamp(120px, 12vw, 150px) !important; }

/* --- Burger im transparenten Zustand hell ----- */
.dgs-header-transparent:not(.elementor-sticky--effects) .elementor-widget-icon:not(.e-off-canvas *) .elementor-icon { color: #fff !important; fill: #fff !important; }

/* --- Off-Canvas-Menü dunkel auf hellem Grund ----- */
.dgs-header-transparent:not(.elementor-sticky--effects) .e-off-canvas .elementor-nav-menu a.elementor-item { color: #22301F !important; }
.dgs-header-transparent:not(.elementor-sticky--effects) .e-off-canvas .elementor-nav-menu a.elementor-item:hover { color: #4E7B39 !important; }

/* --- Header: Logo links, Menü mittig, CTA rechts ----- */
.dgs-header .hdr-side { flex: 1 1 0 !important; width: auto !important; min-width: 0; }
.dgs-header .hdr-side:first-child { max-width: 190px; }
.dgs-header .hdr-mid { flex: 0 0 auto !important; width: auto !important; }
.dgs-header .hdr-right { gap: 16px; }
@media (max-width: 1024px) { .dgs-header .hdr-side:first-child { max-width: none; } }

/* --- Header & Footer ----- */
body.page-id-60 .elementor-location-header, body.page-id-792 .elementor-location-header { position: absolute; top: 0; left: 0; right: 0; z-index: 50; }
.oberhuber-footer img { display: block; }
/* --- Header-Logo Tablet/Mobil ----- */
@media (max-width:1024px){ .elementor-location-header .dgs-header .elementor-widget-image img, .elementor-location-header .dgs-header .sticky-logo img{ width:150px !important; max-width:150px !important; height:auto !important; } .elementor-location-header .hdr-side:first-child{ min-width:0; flex:0 0 auto; } }
@media (max-width:480px){ .elementor-location-header .dgs-header .elementor-widget-image img, .elementor-location-header .dgs-header .sticky-logo img{ width:120px !important; max-width:120px !important; } }
/* --- Header-Feinschliff: Raster, Menü, Button, Logo ----- */
@media (min-width:1025px){ .dgs-header > .e-con-inner { display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; } }
@media (max-width:1024px){ .dgs-header > .e-con-inner { display: grid !important; grid-template-columns: 1fr auto; align-items: center; } }
.dgs-header > .e-con-inner > .hdr-side { width: auto !important; max-width: none !important; flex: none !important; }
.dgs-header > .e-con-inner > .hdr-side:first-child { justify-self: start; }
.dgs-header > .e-con-inner > .hdr-right { justify-self: end; }
.dgs-header .hdr-mid { justify-self: center; }
@media (max-width:1024px){ .dgs-header .hdr-mid { display: none !important; } }
.dgs-header .hdr-side:first-child .logo-stack, .dgs-header .hdr-side:first-child .logo-stack > .e-con-inner { justify-items: start; justify-content: start; align-items: start; }
.dgs-header .sticky-logo { width: 190px !important; justify-self: start; transition: width .3s ease-in-out; }
.dgs-header.elementor-sticky--effects .sticky-logo { width: 150px !important; }
.elementor-location-header .dgs-header.dgs-header .sticky-logo img { width: 100% !important; max-width: 100% !important; }
@media (max-width:1024px){ .dgs-header .sticky-logo, .dgs-header.elementor-sticky--effects .sticky-logo { width: 150px !important; } }
@media (max-width:480px){ .dgs-header .sticky-logo, .dgs-header.elementor-sticky--effects .sticky-logo { width: 120px !important; } }
.dgs-header .sticky-logo .elementor-widget-container { text-align: left; }
.dgs-header .sticky-logo img { transform-origin: left center; }
/* Menü wie Vorlage: Montserrat 600, 13px, 0.09em, Versalien */
.dgs-header .hdr-mid .elementor-nav-menu--main a.elementor-item { font-family: Montserrat, Helvetica, sans-serif !important; font-size: 13px !important; font-weight: 600 !important; font-style: normal !important; letter-spacing: .09em !important; text-transform: uppercase !important; position: relative; }
.dgs-header .hdr-mid .elementor-nav-menu--main .elementor-item::before { display: none !important; }
.dgs-header .hdr-mid .elementor-nav-menu--main .elementor-item::after { content: '' !important; display: block !important; position: absolute !important; left: 0 !important; right: 0 !important; width: auto !important; top: calc(50% + 15px) !important; bottom: auto !important; height: 1px !important; background: #4E7B39 !important; opacity: 1 !important; transform: scaleX(0) !important; transform-origin: left center !important; transition: transform .3s ease !important; }
.dgs-header .hdr-mid .elementor-nav-menu--main .elementor-item:hover::after, .dgs-header .hdr-mid .elementor-nav-menu--main .elementor-item:focus::after, .dgs-header .hdr-mid .elementor-nav-menu--main .elementor-item.elementor-item-active::after { transform: scaleX(1) !important; }
.dgs-header-transparent:not(.elementor-sticky--effects) .hdr-mid .elementor-nav-menu--main a.elementor-item { color: rgba(255,255,255,.85) !important; }
.dgs-header-transparent:not(.elementor-sticky--effects) .hdr-mid .elementor-nav-menu--main a.elementor-item:hover, .dgs-header-transparent:not(.elementor-sticky--effects) .hdr-mid .elementor-nav-menu--main a.elementor-item.elementor-item-active { color: #D9C1A2 !important; }
.dgs-header-transparent:not(.elementor-sticky--effects) .hdr-mid .elementor-nav-menu--main .elementor-item::after { background: #D9C1A2 !important; }
/* Button wie Hero (Header + Off-Canvas) */
body .elementor-location-header .dgs-header .elementor-widget-button a.elementor-button { display: inline-flex; align-items: center; gap: 10px; min-height: 58px; padding: 0 30px; border: 0 !important; border-radius: 0; background: #D9C1A2 !important; color: #20402D !important; fill: #20402D !important; font-family: Montserrat, Helvetica, sans-serif !important; font-weight: 800 !important; font-size: 14px !important; font-style: normal !important; letter-spacing: .09em !important; text-transform: uppercase !important; transition: background-color .25s, transform .25s; box-shadow: none; }
body .elementor-location-header .dgs-header .elementor-widget-button a.elementor-button::after { content: ''; width: 22px; height: 22px; flex: none; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z'/%3E%3C/svg%3E") center/contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z'/%3E%3C/svg%3E") center/contain no-repeat; }
@media (hover:hover) and (pointer:fine) { body .elementor-location-header .dgs-header .elementor-widget-button a.elementor-button:hover { background: #C2A883 !important; color: #20402D !important; transform: translateY(-3px); } }
@media (max-width:480px) { body .elementor-location-header .dgs-header .elementor-widget-button a.elementor-button { min-height: 48px; padding: 0 18px; font-size: 12px !important; } }
/* Top-Button: fixiert rechts unten, gleitet beim Scrollen ein (wie Basisbox) */
.ob-totop { position: fixed; right: 25px; bottom: 25px; z-index: 90; display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; background: #D9C1A2; color: #20402D; opacity: 0; visibility: hidden; transform: translateY(24px); transition: opacity .35s ease, transform .35s ease, visibility .35s, background-color .25s; }
.ob-totop.is-visible { opacity: 1; visibility: visible; transform: none; }
.ob-totop svg { width: 24px; height: 24px; fill: currentColor; }
@media (hover:hover) and (pointer:fine) { .oberhuber-footer .ob-totop.is-visible:hover { background: #C2A883; color: #20402D; transform: translateY(-3px); } }
@media (max-width:767px) { .ob-totop { right: 16px; bottom: 16px; } }
@media (prefers-reduced-motion: reduce) { .ob-totop { transition: none; transform: none; } }
/* --- Header: oben luftig, Sticky deutlich flacher; kleinerer Button ----- */
@media (min-width:1025px){
  .elementor-location-header .dgs-header.dgs-header { padding-block: 20px !important; transition: padding .3s ease-in-out, background-color .3s; }
  .elementor-location-header .dgs-header.dgs-header.elementor-sticky--effects { padding-block: 20px !important; }
  .elementor-location-header .dgs-header .hdr-mid .elementor-nav-menu--main a.elementor-item { padding-block: 34px !important; transition: padding .3s ease-in-out, color .25s; }
  .elementor-location-header .dgs-header.elementor-sticky--effects .hdr-mid .elementor-nav-menu--main a.elementor-item { padding-block: 16px !important; }
}
@media (max-width:1024px){
  .elementor-location-header .dgs-header.dgs-header { padding-block: 14px !important; transition: padding .3s ease-in-out, background-color .3s; }
  .elementor-location-header .dgs-header.dgs-header.elementor-sticky--effects { padding-block: 11px !important; }
}
body .elementor-location-header .dgs-header .elementor-widget-button a.elementor-button { min-height: 46px; padding: 0 22px; font-size: 13px !important; gap: 8px; }
body .elementor-location-header .dgs-header .elementor-widget-button a.elementor-button::after { width: 20px; height: 20px; }
/* --- Anfrage: linke Spalte sticky (overflow:hidden der Section würde Sticky blocken) ----- */
.oberhuber-landing section#anfrage { overflow: clip; }
@media (min-width:900px){ #anfrage div[style*='position:sticky'] { top: 144px !important; } }
@media (min-width:900px){ body.admin-bar #anfrage div[style*='position:sticky'] { top: 176px !important; } }
@media (max-width:899px){ #anfrage div[style*='position:sticky'] { position: static !important; } }
.ob-faq.is-closing .ob-faq-i { transform: none; }
/* --- Hero: Schraege liegt ueber dem naechsten Abschnitt (Widget-Stapelreihenfolge) ----- */
#oberhuber-hero { z-index: 2; }

/* --- Formular-Button mobil: auf Boxbreite begrenzen, Text darf umbrechen ----- */
@media (max-width:480px){ .ob-h7 { box-sizing: border-box; max-width: 100%; padding: 12px 16px !important; font-size: clamp(12px, 3.6vw, 14px) !important; letter-spacing: .05em !important; line-height: 1.3; white-space: normal; text-align: center; gap: 8px !important; } }

/* ===== OBERHUBER-ENDE ===== *//* End custom CSS */