/* Gemeinsame Übertragung der geprüften Küchen-V06-Aktionsgestaltung. */
:root {
  --v06-bronze: #d2af7d;
  --v06-frame: #73776a;
}

/* Rechteckige, transparente Aktionsflächen auf beiden Seiten. */
.button,
.line-link,
.service-detail .line-link {
  min-height: 48px;
  border: 1px solid var(--v06-frame);
  border-radius: 0;
  background: transparent;
  color: var(--paper);
  padding: 14px 22px;
  font: 600 13px/1.3 Arial, Helvetica, sans-serif;
  letter-spacing: 0;
  text-decoration: none;
  transition: border-color .2s ease, color .2s ease, background-color .2s ease;
}

.button:hover,
.line-link:hover,
.service-detail .line-link:hover {
  background: transparent;
  border-color: var(--v06-bronze);
  color: var(--v06-bronze);
}

.button:focus-visible,
.line-link:focus-visible,
.service-detail .line-link:focus-visible {
  outline: 2px solid var(--v06-bronze);
  outline-offset: 4px;
}

.nav .button { min-height: 48px; }
.hero-actions .button { justify-content: space-between; gap: 18px; }
.hero-actions .hero-whatsapp,
body.landing-minimal .hero-actions .hero-whatsapp { background: transparent; color: var(--paper); border-color: var(--v06-frame); }
.hero-actions .hero-whatsapp:hover,
body.landing-minimal .hero-actions .hero-whatsapp:hover { background: transparent; color: var(--v06-bronze); border-color: var(--v06-bronze); }
.line-link { padding: 12px 18px; flex-shrink: 0; }
.service-detail .line-link { display: inline-flex; margin-top: 18px; color: var(--paper); }
.photo-title a { min-width: 48px; min-height: 48px; display: inline-flex; justify-content: center; align-items: center; border: 1px solid var(--v06-frame); }
.photo-title a:hover { color: var(--v06-bronze); border-color: var(--v06-bronze); }
.image-expand,
.image-dialog-close {
  min-height: 48px;
  padding: 12px 16px;
  border: 1px solid var(--v06-frame);
  border-radius: 0;
  background: rgba(17,20,19,.72);
  color: var(--paper);
  font: 600 13px/1.3 Arial, Helvetica, sans-serif;
  cursor: pointer;
}
.image-expand:hover,
.image-dialog-close:hover { border-color: var(--v06-bronze); color: var(--v06-bronze); background: rgba(17,20,19,.9); }
.image-expand:focus-visible,
.image-dialog-close:focus-visible { outline: 2px solid var(--v06-bronze); outline-offset: 4px; }
.landing-minimal .gallery.static-photo .image-expand { position: absolute; z-index: 3; left: 18px; bottom: 18px; }
.landing-minimal .feature-image .image-expand { position: absolute; z-index: 2; right: 14px; bottom: 62px; }
.image-dialog {
  width: min(92vw, 1120px);
  max-width: none;
  max-height: 92vh;
  padding: 18px;
  border: 1px solid #73776a;
  border-radius: 0;
  background: #111413;
  color: #f4f0e8;
}
.image-dialog::backdrop { background: rgba(0,0,0,.88); }
.image-dialog-inner { display: grid; grid-template-rows: auto minmax(0,1fr) auto; gap: 12px; max-height: calc(92vh - 36px); }
.image-dialog-close { justify-self: end; }
.image-dialog img { width: 100%; height: min(76vh,760px); object-fit: contain; }
.image-dialog-caption { color: #bfc3bf; font-size: 12px; line-height: 1.5; }

/* Die Fensterseite übernimmt die dunkle Bildsprache und das weiße Logo. */
.landing-minimal { background: var(--ink); color: var(--paper); }
.landing-minimal .site-header { background: var(--ink); }
.landing-minimal .site-header .brand { background: transparent; padding: 0; }
.landing-minimal .site-header .brand img {
  filter: brightness(0) saturate(100%) invert(94%) sepia(10%) saturate(249%) hue-rotate(350deg) brightness(102%) contrast(92%);
}
.landing-minimal .hero { background: var(--ink); color: var(--paper); }
.landing-minimal .hero .gallery { background: var(--ink); }
.landing-minimal .hero .gallery::after {
  background: linear-gradient(90deg, rgba(8,11,9,.86) 0%, rgba(8,11,9,.62) 38%, rgba(8,11,9,.12) 76%), linear-gradient(0deg, rgba(7,9,8,.66), transparent 62%);
}
.landing-minimal .hero-footnote { color: var(--paper); background: rgba(17,20,19,.8); }
.landing-minimal .hero h1 { color: var(--paper); }
.landing-minimal .hero .eyebrow { color: #e0c69f; }
.landing-minimal .feature-copy .eyebrow { color: #d2af7d; }
.landing-minimal .service-index { border-color: var(--line); }
.landing-minimal .service-index details { border-color: var(--line); }
.landing-minimal .service-detail { color: var(--muted); }
.landing-minimal .local-proof { color: var(--muted); }

/* Kontaktbereich mit ruhigem Warmton und gut lesbaren Formularfeldern. */
.landing-minimal .contact {
  color: var(--paper);
  background: linear-gradient(135deg, rgba(179,150,106,.16), rgba(25,29,27,.98) 48%), var(--panel);
}
.landing-minimal .inquiry-description,
.landing-minimal .direct-contact p,
.landing-minimal .whatsapp-number,
.landing-minimal .form-note,
.landing-minimal .contact-choice legend span { color: #c7c7bf; }
.landing-minimal .whatsapp-link { color: var(--paper); border-color: var(--v06-frame); }
.landing-minimal .whatsapp-link:hover { color: var(--v06-bronze); border-color: var(--v06-bronze); background: transparent; }
.landing-minimal .form-field input,
.landing-minimal .form-field select,
.landing-minimal .form-field textarea { color: var(--paper); border-bottom-color: #73776a; }
.landing-minimal .form-field input::placeholder,
.landing-minimal .form-field textarea::placeholder { color: #bfc3bf; }
.landing-minimal .form-field input:focus-visible,
.landing-minimal .form-field select:focus-visible,
.landing-minimal .form-field textarea:focus-visible { outline-color: var(--v06-bronze); }
.landing-minimal .form-field input[type=file]::file-selector-button {
  color: var(--paper); border: 1px solid var(--v06-frame); background: transparent; border-radius: 0; min-height: 48px;
}
.landing-minimal .privacy input { accent-color: var(--v06-bronze); }
.landing-minimal .privacy a { color: var(--paper); }
.landing-minimal .optional-details { border-color: #555b54; }
.landing-minimal .form-status:not(:empty) { color: var(--paper); background: rgba(210,175,125,.12); }
.landing-minimal .form-status.error { color: #ffd5cb; }
.landing-minimal .form-status.success { color: #d4efcf; }
.landing-minimal .form-submit button.button {
  border: 1px solid var(--v06-frame);
  border-radius: 0;
  background: transparent;
  color: var(--paper);
}
.landing-minimal .form-submit button.button:hover {
  background: transparent;
  border-color: var(--v06-bronze);
  color: var(--v06-bronze);
}

/* Auf dunklem Kontaktgrund bekommt der Hauptseiten-Button denselben Rahmenstil. */
.home-page .contact .button-dark {
  color: #171a18;
  border-color: var(--v06-frame);
}
.home-page .contact .form-submit button.button-dark { border: 1px solid var(--v06-frame); background: transparent; }
.home-page .contact .button-dark:hover { color: #171a18; border-color: #8a6e45; }
.home-page .contact .whatsapp-link { color: #171a18; border-color: var(--v06-frame); }
.home-page .contact .whatsapp-link:hover { color: #171a18; border-color: #8a6e45; }

@media (max-width: 720px) {
  .hero-actions .button,
  .landing-minimal .hero-actions .button { width: 100%; max-width: 350px; min-height: 48px; }
  .landing-minimal .hero .gallery::after {
    background: linear-gradient(0deg, rgba(8,11,9,.93), rgba(8,11,9,.38) 62%, rgba(8,11,9,.12));
  }
  .landing-minimal .hero-footnote { color: var(--muted); background: transparent; }
  .windows .line-link { width: 100%; }
  .image-dialog { padding: 12px; }
  .image-dialog-inner { max-height: calc(92vh - 24px); }
  .image-dialog img { height: min(72vh,640px); }
}

@media (max-width: 360px) {
  .home-page .hero h1 { font-size: clamp(40px, 12.5vw, 44px); }
}

@media (prefers-reduced-motion: reduce) {
  .button, .line-link { transition: none; }
}
