/* Entrümpel-Meister · base + interaction styles.
   Layout styles live inline in the Blade views;
   this file only holds what can't be done inline. */

* { box-sizing: border-box; }
body { margin: 0; background: #F8F9FA; -webkit-font-smoothing: antialiased; }
.page { font-family: 'Work Sans', Helvetica, sans-serif; color: #1A1F1C; background: #F8F9FA; overflow-x: hidden; }
a { color: #2D6A4F; text-decoration: none; }
a:hover { color: #1B4332; }
input, select, textarea, button { font-family: inherit; }
:focus-visible { outline: 2px solid #2D6A4F; outline-offset: 2px; }

@keyframes riseIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

/* Hover- und Focus-Zustände (aus dem Entwurf generiert) */
.i1:hover{background: #1B4332 !important}
.i2:hover{border-color: #2D6A4F !important; color: #2D6A4F !important}
.i3:hover{transform: translateY(-4px) !important; box-shadow: 0 22px 44px -28px rgba(26,31,28,0.4) !important; border-color: rgba(45,106,79,0.34) !important}
.i4:hover{color: #2D6A4F !important}
.i5:focus{border-color: #2D6A4F !important; box-shadow: 0 0 0 3px rgba(45,106,79,0.14) !important}
.i6:focus{border-color: #2D6A4F !important}
.i7:hover{background: #FFFFFF !important}
.nav-link:hover { color: #2D6A4F !important; }
.nav-link.is-active { color: #2D6A4F !important; font-weight: 500; }
.gal-filter.is-active { background: #2D6A4F !important; color: #F8F9FA !important; border-color: #2D6A4F !important; }

/* Vorher/Nachher-Regler */
[data-ba] { touch-action: pan-y; }
[data-ba] img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; user-select: none; -webkit-user-drag: none; pointer-events: none; }

/* Mobile Navigation */
.nav-toggle { display: none; background: none; border: 0; padding: 8px; cursor: pointer; flex-direction: column; gap: 5px; }
.nav-toggle span { display: block; width: 22px; height: 2px; background: #1A1F1C; }

@media (max-width: 1000px) {
  .nav-phone { display: none !important; }
  .footer-grid { grid-template-columns: 1fr 1fr !important; }
  [style*="grid-template-columns: repeat(4"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  [style*="grid-template-columns: repeat(3"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 860px) {
  .nav-toggle { display: flex; }
  .nav-links { display: none !important; position: absolute; left: 0; right: 0; top: 76px; flex-direction: column !important; align-items: stretch !important;
    gap: 4px !important; padding: 14px 22px 22px; background: #F8F9FA; border-bottom: 1px solid rgba(45,106,79,0.14); }
  .nav-links.is-open { display: flex !important; }
  .nav-links a { padding: 10px 0; }
  .page section[style*="grid-template-columns"],
  .page div[style*="grid-template-columns"],
  .footer-grid { grid-template-columns: 1fr !important; }
  .page section { padding-left: 20px !important; padding-right: 20px !important; }
}
