/* Shared rendering safeguards for locally-served/static pages. */

:root {
  --anvir-accent: #dc143c;
  --anvir-accent-dark: #8b0000;
  --anvir-text: #1a1a1a;
  --anvir-surface: #ffffff;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  background: var(--anvir-surface);
}

body {
  color: var(--anvir-text);
  background: var(--anvir-surface);
  overflow-x: hidden;
}


img,
svg,
video,
canvas {
  max-width: 100%;
  height: auto;
}

iframe[src*="facebook.com/plugins/video.php"] {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 560 / 314;
}

.aa-video-container,
.video-responsive {
  width: min(100%, 560px);
  max-width: 100%;
  margin-inline: auto;
}

.video-responsive {
  position: relative;
  aspect-ratio: 16 / 9;
  height: auto !important;
  padding-bottom: 0 !important;
}

.video-responsive iframe {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
}

.footer-links {
  flex-wrap: wrap !important;
  row-gap: 10px;
}

.footer-links a {
  margin-left: 0 !important;
}

.gtranslate_wrapper {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 9997;
}

.gt_float_switcher,
#gt_float_wrapper {
  left: 16px !important;
  right: auto !important;
  top: auto !important;
  bottom: 16px !important;
  z-index: 9997 !important;
}

.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
.VIpgJd-ZVi9od-ORHb-OEVmcd,
iframe.goog-te-banner-frame {
  display: none !important;
}

.whatsapp-float {
  bottom: 16px !important;
  right: 16px !important;
  width: 56px !important;
  height: 56px !important;
  z-index: 9998 !important;
}

.whatsapp-float img {
  width: 32px !important;
  height: 32px !important;
}

img[style*="width: 392px"] {
  width: 100% !important;
  max-width: 392px !important;
}

img[width="800"],
img[width="985"],
img[width="1981"] {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
}

@media (max-width: 768px) {
  body > header.aa-site-header > div[data-global-resource-path] > header.aa-site-header {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  .footer-content,
  .footer-right,
  .footer-bottom {
    flex-direction: column;
  }

  .footer-left,
  .footer-right {
    max-width: 100% !important;
    width: 100%;
  }

  .footer-links {
    justify-content: center !important;
  }

  .footer-content {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 32px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .footer-section,
  .email-form,
  .email-input {
    min-width: 0;
    max-width: 100%;
  }

  .email-input {
    padding-right: 120px !important;
  }

  .submit-btn {
    padding-left: 24px !important;
    padding-right: 24px !important;
    max-width: 48%;
  }

  .aa-hero__body,
  .aa-content,
  .aa-inner {
    max-width: 100%;
  }

  .gtranslate_wrapper,
  .gt_float_switcher,
  #gt_float_wrapper {
    left: 12px !important;
    bottom: 12px !important;
    transform: scale(0.92);
    transform-origin: left bottom;
  }

  .whatsapp-float {
    bottom: 12px !important;
    right: 12px !important;
    width: 52px !important;
    height: 52px !important;
  }

  .whatsapp-float::after {
    display: none !important;
  }
}


/* ==========================================================================
   Statische Formulare (Angebotsanfrage + Newsletter) - de.anvirs.co.za
   ========================================================================== */

.aa-quote-form {
  max-width: 560px;
  margin: 0 auto;
  text-align: left;
}

.aa-quote-form .qf-group {
  margin-bottom: 16px;
}

.aa-quote-form label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 6px;
  color: #111;
}

.aa-quote-form input[type="text"],
.aa-quote-form input[type="tel"],
.aa-quote-form input[type="email"],
.aa-quote-form select,
.aa-quote-form textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #cfcfcf;
  border-radius: 4px;
  background: #fff;
  color: #111;
  font-size: 15px;
  font-family: inherit;
  box-sizing: border-box;
}

.aa-quote-form input:focus,
.aa-quote-form select:focus,
.aa-quote-form textarea:focus {
  outline: none;
  border-color: #111;
}

.aa-quote-form textarea {
  min-height: 90px;
  resize: vertical;
}

.aa-quote-form .qf-consent,
.aa-inline-newsletter .qf-consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 16px 0;
  font-size: 13px;
  line-height: 1.45;
  color: #111;
}

.aa-quote-form .qf-consent input,
.aa-inline-newsletter .qf-consent input {
  margin-top: 3px;
  flex: 0 0 auto;
}

.aa-quote-form .qf-submit,
.aa-inline-newsletter .qf-submit {
  background: #111;
  color: #fff;
  border: none;
  padding: 13px 34px;
  font-size: 14px;
  letter-spacing: 0.08em;
  cursor: pointer;
  border-radius: 4px;
  white-space: nowrap;
  font-family: inherit;
}

.aa-quote-form .qf-submit:hover,
.aa-inline-newsletter .qf-submit:hover {
  background: #333;
}

.aa-quote-form .qf-submit:disabled,
.aa-inline-newsletter .qf-submit:disabled {
  opacity: 0.6;
  cursor: default;
}

.qf-invalid {
  border-color: #c0392b !important;
}

.qf-status {
  margin-top: 10px;
  font-size: 14px;
  min-height: 1em;
}

.qf-status--success {
  color: #1a7f37;
}

.qf-status--error {
  color: #c0392b;
}

/* Inline-Newsletter (eingefügte Formulare) */
.aa-inline-newsletter {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.aa-inline-newsletter input[type="email"] {
  flex: 1 1 220px;
  padding: 12px 14px;
  border: 1px solid #cfcfcf;
  border-radius: 4px;
  font-size: 15px;
  font-family: inherit;
  box-sizing: border-box;
}

.aa-inline-newsletter input[type="email"]:focus {
  outline: none;
  border-color: #111;
}

.aa-inline-newsletter .qf-consent {
  flex: 1 1 100%;
  margin: 4px 0 0;
}

/* Status im Seitenfooter (dunkler Hintergrund) */
.footer .qf-status--success,
footer.footer .qf-status--success {
  color: #7ee2a8;
}

.footer .qf-status--error,
footer.footer .qf-status--error {
  color: #ffb3ab;
}

@media (max-width: 600px) {
  .aa-inline-newsletter {
    flex-direction: column;
  }

  .aa-inline-newsletter .qf-submit {
    width: 100%;
  }
}
