.brandtastic-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: max(440px, calc((100vw - 1440px) / 2 + 480px)) minmax(0, 1fr);
  min-height: 600px;
  width: 100%;
  background: #38454f;
  overflow: hidden;
}
.brandtastic-hero__media { grid-column: 2; grid-row: 1; position: relative; min-width: 0; }
.brandtastic-hero__slides { position: absolute; inset: 0; }
.brandtastic-hero__slides,
.brandtastic-hero__slide,
.brandtastic-hero__slide picture,
.brandtastic-hero .slick-list,
.brandtastic-hero .slick-track,
.brandtastic-hero .slick-slide,
.brandtastic-hero .slick-slide > div { height: 100%; }
.brandtastic-hero__slide picture { display: block; }
.brandtastic-hero__slides:not(.slick-initialized) .brandtastic-hero__slide:not(:first-child) { display: none; }
.brandtastic-hero img.brandtastic-hero__image { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
.brandtastic-hero__rail {
  grid-column: 1; grid-row: 1; position: relative; z-index: 2;
  display: flex; align-items: flex-start; justify-content: flex-end;
  padding: 40px 72px 40px max(24px, calc((100vw - 1440px) / 2 + 24px));
}
.brandtastic-hero__rail::after { content: ''; position: absolute; inset: 0 -210px 0 auto; width: 300px; pointer-events: none; background: url('../../../../themes/chimneysolutions-2025/img/slider.webp') no-repeat right center / 100% 100%; }
.brandtastic-hero__form { width: 100%; max-width: 360px; color: #fff; }
.brandtastic-hero__form h2 { margin: 0 0 10px; color: #fff; text-align: center; font-family: 'nimbus-roman', serif; font-size: 36px; font-weight: 700; line-height: 1.2; }
.brandtastic-hero .wpforms-container { width: 100%; margin: 0 !important; padding: 0; }
.brandtastic-hero div.wpforms-container .wpforms-field { padding: 7px 0 8px; }
.brandtastic-hero div.wpforms-container .wpforms-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
.brandtastic-hero div.wpforms-container .wpforms-form select,
.brandtastic-hero div.wpforms-container .wpforms-form textarea { width: 100%; max-width: 100%; border: 1px solid transparent; border-radius: 0; background: #fff; color: #212427; box-sizing: border-box; }
.brandtastic-hero div.wpforms-container .wpforms-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
.brandtastic-hero div.wpforms-container .wpforms-form select { height: 38px; min-height: 38px; line-height: normal; }
.brandtastic-hero div.wpforms-container .wpforms-form textarea { height: 80px; min-height: 80px; }
.brandtastic-hero div.wpforms-container .wpforms-field-layout-columns { gap: 12px; }
.brandtastic-hero div.wpforms-container .wpforms-field-layout-column { min-width: 0; padding: 0; }
.brandtastic-hero div.wpforms-container .wpforms-submit-container { margin: 0; padding-top: 10px !important; text-align: center; }
.brandtastic-hero div.wpforms-container .wpforms-form button.wpforms-submit { background: #d80a0c; color: #fff; border: 0; border-radius: 5px; padding: 8px 20px; height: auto; line-height: 1.5; }
.brandtastic-hero .wpforms-error { color: #fff2b3 !important; }
.brandtastic-hero__controls { position: absolute; right: 24px; bottom: 20px; display: flex; align-items: center; gap: 8px; z-index: 3; }
.brandtastic-hero__controls[hidden] { display: none; }
.brandtastic-hero__controls button { border: 1px solid #fff; border-radius: 4px; background: #263640e6; color: #fff; padding: 8px 14px; font: inherit; cursor: pointer; }
.brandtastic-hero button:focus-visible, .brandtastic-hero input:focus-visible, .brandtastic-hero select:focus-visible, .brandtastic-hero textarea:focus-visible { outline: 3px solid #ffc44d; outline-offset: 3px; }
.brandtastic-hero--no-form { grid-template-columns: 1fr; }
.brandtastic-hero--no-form .brandtastic-hero__media { grid-column: 1; }
@media (max-width: 959px) {
  .brandtastic-hero { grid-template-columns: 1fr; min-height: 0; }
  .brandtastic-hero__media { grid-column: 1; grid-row: 1; height: clamp(240px, 66.67vw, 480px); }
  .brandtastic-hero__rail { grid-column: 1; grid-row: 2; padding: 32px 24px; justify-content: center; }
  .brandtastic-hero__rail::before, .brandtastic-hero__rail::after { display: none; }
  .brandtastic-hero__form { max-width: 520px; }
  .brandtastic-hero__controls { right: 16px; bottom: 16px; }
}
