/* Shared production styles are generated and maintained here. */

.cookie-banner {
  position: fixed;
  z-index: 1000;
  right: 1rem;
  bottom: 1rem;
  left: 1rem;
  display: flex;
  align-items: center;
  gap: 1.125rem;
  max-width: 57.5rem;
  margin-inline: auto;
  padding: 1.25rem 1.375rem;
  border: 0;
  border-radius: 1rem;
  background: #111;
  color: #d7d7d7;
  box-shadow: 0 1.125rem 3.125rem rgb(0 0 0 / 28%);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: .84375rem;
  line-height: 1.55;
}

.cookie-banner p {
  flex: 1 1 30rem;
  min-width: 15rem;
  margin: 0;
}

.cookie-banner a {
  color: #ffdd00;
  text-decoration: underline;
  text-underline-offset: .15em;
}

.cookie-banner__actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: .75rem;
}

.cookie-banner button {
  min-height: 2.75rem;
  padding: .75rem 1rem;
  border: 1px solid #fff;
  border-radius: .75rem;
  background: transparent;
  color: #fff;
  cursor: pointer;
  font: 700 .875rem/1 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  white-space: nowrap;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
}

.cookie-banner button[data-consent="accept"] {
  border-color: #ffdd00;
  background: #ffdd00;
  color: #111;
}

.cookie-banner button:hover { transform: translateY(-1px); }
.cookie-banner button[data-consent="reject"]:hover { background: #fff; color: #111; }
.cookie-banner button[data-consent="accept"]:hover { border-color: #ffe438; background: #ffe438; }
.cookie-banner button:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
[data-form-status][data-state="error"] { color: #a11212; }
[data-form-status][data-state="success"] { color: #176c38; }
[aria-invalid="true"] { border-color: #b91c1c; }
[aria-busy="true"] { cursor: wait; }
.responsive-picture { display: contents; }
.responsive-picture--cropped {
  display: block;
  width: 100%;
  overflow: hidden;
}
.responsive-picture--cropped > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.faq-summary { list-style: none; }
.faq-summary::-webkit-details-marker { display: none; }
.faq-summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: .375rem;
  color: #f2c200;
  font-size: 1.625rem;
  font-weight: 400;
  line-height: 1;
  transform: translateY(-50%);
}
.faq-item[open] > .faq-summary::after { content: "–"; }
.faq-answer { padding-bottom: 1.375rem; }
.lead-section { padding: 4rem 1rem; }
.lead-section__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 2rem; align-items: start; }
.b2b-task:has(input) { display: block; }
input:checked + .b2b-task { background: #FFF0B8 !important; border-color: #111 !important; }
.lead-form { display: grid; gap: .75rem; padding: 1.5rem; border-radius: 1rem; background: #fff; color: #111; }
.lead-form label:not(.lead-form__consent, .form-honeypot) { display: grid; gap: .35rem; font-weight: 600; }
.lead-form input:not([type="checkbox"]), .lead-form textarea { width: 100%; padding: .85rem; border: 1.5px solid #c7c7c7; border-radius: .625rem; font: inherit; }
.lead-form__consent { display: flex; gap: .6rem; align-items: flex-start; font-size: .875rem; }
.lead-form__consent input { width: 1.25rem; height: 1.25rem; flex: none; }
.form-error { min-height: 1em; color: #a11212; font-size: .8125rem; }
.form-honeypot { position: absolute !important; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.media-placeholder { width: 100%; height: 100%; min-height: 11.25rem; display: grid; place-items: center; padding: 1.25rem; border: 2px dashed #c9c9c9; border-radius: .75rem; background: #f6f7f9; color: #5b5b5b; text-align: center; font-size: .875rem; }
[data-r="fgrid"] { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.2fr) !important; }
[data-r="fgrid"] > * { min-width: 0; }
[data-r="fgrid"] a, [data-r="fgrid"] div { overflow-wrap: anywhere; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

@media (max-width: 48rem) {
  .cookie-banner {
    right: .75rem;
    bottom: .75rem;
    left: .75rem;
    display: block;
    padding: 1rem;
  }
  .cookie-banner p { min-width: 0; }
  .cookie-banner__actions { margin-top: .875rem; }
  .cookie-banner button { flex: 1 1 12rem; white-space: normal; }
  .lead-section__grid { grid-template-columns: 1fr; }
  [data-r="fgrid"] { grid-template-columns: 1fr !important; }
}

@media (min-width: 48.01rem) and (max-width: 60rem) {
  [data-r="fgrid"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
