/* ==========================================================================
   MONTREE GmbH — style.css
   Generiert aus den Inline-Styles der urspruenglichen Design-Vorlage.
   Enthaelt: globale Basis-Styles, Hover-Effekte (ehemals style-hover-Attribute),
   Reveal-on-Scroll-Grundzustand und Cross-Browser-Fallbacks.
   ========================================================================== */

*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%;}
body{margin:0;font-family:'Manrope',system-ui,sans-serif;color:#15181b;background:#f6f4ef;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
::selection{background:#ea5a1e;color:#fff;}
input,textarea,button{font-family:inherit;}
input:focus,textarea:focus{outline:none;border-color:#4f9e2e !important;box-shadow:0 0 0 3px rgba(79,158,46,0.16);}
a{text-decoration:none;color:inherit;}
img{max-width:100%;}

/* Reveal-on-scroll Grundzustand (JS entfernt data-reveal-in bei Sichtbarkeit) */
[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.16,.84,.44,1),transform .8s cubic-bezier(.16,.84,.44,1);}
[data-reveal].is-visible{opacity:1;transform:none;}

/* Skip-Link fuer Tastatur-/Screenreader-Nutzer */
.skip-link{position:absolute;left:-9999px;top:0;background:#16341f;color:#fff;padding:12px 20px;z-index:1000;border-radius:0 0 8px 0;font-weight:700;}
.skip-link:focus{left:0;}

@media (max-width:860px){
  [data-navlinks]{display:none !important;}
  [data-sectionpad]{padding-top:72px !important;padding-bottom:72px !important;}
}
@media (max-width:560px){
  [data-navcta]{display:none !important;}
}

/* Nav ueber dem hellen Hero-Varianten-Fall (aktuell inaktiv, da nur Hero A produktiv ist) */
nav[data-theme="light"] [data-navlink]{color:rgba(40,46,42,.85) !important;}
nav[data-theme="light"] [data-navlink]:hover{color:#15201a !important;}
nav[data-theme="light"] [data-navwordmark]{filter:brightness(0) !important;}

/* Mobiles Menue (falls spaeter ergaenzt) - aktuell werden Navlinks nur ausgeblendet, wie im Original */

/* Unterseiten (Impressum/Datenschutz) haben keinen dunklen Vollbild-Hero unter der
   fixierten Nav - hier ist die Nav daher von Anfang an "solide" dunkel. */
body[data-subpage] [data-nav]{background:rgba(10,20,13,0.92) !important;border-bottom-color:rgba(255,255,255,0.09) !important;-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px);}

/* Einfache Seiten-Kopfzeile fuer Impressum/Datenschutz */
.legal-hero{padding:150px 32px 64px;background:#0a140d;position:relative;overflow:hidden;}
.legal-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:26px 26px;opacity:.45;}
.legal-hero > div{position:relative;max-width:900px;margin:0 auto;}
.legal-hero h1{font-family:'Archivo',sans-serif;font-weight:700;font-size:clamp(32px,5vw,52px);line-height:1.05;letter-spacing:-.02em;color:#fbfaf6;margin:0;}
.legal-content{padding:80px 32px 120px;background:#f6f4ef;}
.legal-content > div{max-width:820px;margin:0 auto;}
.legal-content h2{font-family:'Archivo',sans-serif;font-weight:700;font-size:26px;letter-spacing:-.01em;margin:40px 0 14px;color:#15181b;}
.legal-content h2:first-child{margin-top:0;}
.legal-content p, .legal-content li{font-size:16px;line-height:1.7;color:#3c423d;}
.legal-content ul{padding-left:20px;}
.legal-content a{color:#16341f;font-weight:600;text-decoration:underline;}
.legal-content .todo{background:#fbeae2;border:1px solid #f0c8b3;color:#a8451a;border-radius:8px;padding:2px 8px;font-weight:700;font-size:0.95em;}

/* ==========================================================================
   Hover-Effekte (ehemals style-hover="..." Attribute im Design-Tool-Markup)
   ========================================================================== */

.hv-b5927153{transition:inherit;}
.hv-b5927153:hover{color:#fff;}
.hv-b5927153:focus-visible{color:#fff;}

.hv-95d23aa8{transition:inherit;}
.hv-95d23aa8:hover{background:#d44d14; transform:translateY(-1px);}
.hv-95d23aa8:focus-visible{background:#d44d14; transform:translateY(-1px);}

.hv-6f7b28b7{transition:inherit;}
.hv-6f7b28b7:hover{background:#d44d14; transform:translateY(-2px);}
.hv-6f7b28b7:focus-visible{background:#d44d14; transform:translateY(-2px);}

.hv-7a2bbe1c{transition:inherit;}
.hv-7a2bbe1c:hover{background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.4);}
.hv-7a2bbe1c:focus-visible{background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.4);}

.hv-ad3c0a29{transition:inherit;}
.hv-ad3c0a29:hover{transform:translateY(-4px); box-shadow:0 20px 40px rgba(0,0,0,.08);}
.hv-ad3c0a29:focus-visible{transform:translateY(-4px); box-shadow:0 20px 40px rgba(0,0,0,.08);}

.hv-20261415{transition:inherit;}
.hv-20261415:hover{transform:translateY(-3px); border-color:#4f9e2e;}
.hv-20261415:focus-visible{transform:translateY(-3px); border-color:#4f9e2e;}

.hv-f4977767{transition:inherit;}
.hv-f4977767:hover{transform:translateY(-5px); box-shadow:0 24px 50px rgba(0,0,0,.1);}
.hv-f4977767:focus-visible{transform:translateY(-5px); box-shadow:0 24px 50px rgba(0,0,0,.1);}

.hv-14b675be{transition:inherit;}
.hv-14b675be:hover{transform:translateY(-5px);}
.hv-14b675be:focus-visible{transform:translateY(-5px);}

.hv-7e8a4cd9{transition:inherit;}
.hv-7e8a4cd9:hover{background:#1d4a2c;}
.hv-7e8a4cd9:focus-visible{background:#1d4a2c;}

/* ==========================================================================
   Cross-Browser Fallbacks / Vendor-Prefixe
   ========================================================================== */
[data-nav]{-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px);}
/* background-clip:text Fallback fuer aeltere Browser: der markierte Text im H1
   (Variante B) nutzt hier keinen background-clip:text, sondern einen linear-gradient
   Marker-Hintergrund via background-image + box-decoration-break - unten abgesichert. */
[style*='box-decoration-break']{-webkit-box-decoration-break:clone;box-decoration-break:clone;}

.back-to-top-visible{opacity:1 !important;transform:translateY(0) !important;pointer-events:auto !important;}

/* Sichtbarkeitsklasse fuer Counter (kein Style-Effekt, nur Marker fuer JS) */