/* Keep the campaign composition; reserve clear space for the contact form. */
.reference-home.winter-contact .site-layout {
  height: auto;
  min-height: 100svh !important;
}
.reference-home.winter-contact .container-home.winter-home {
  height: auto !important;
  min-height: 46.6vw !important;
  flex: none !important;
}
.reference-home.winter-contact .container-home .banda-blue {
  height: 6.2rem !important;
  min-height: 0 !important;
  pointer-events: none;
}
.reference-home.winter-contact .contact-form-panel {
  position: relative;
  z-index: 220;
  width: 28%;
  max-width: 610px;
  margin: 13rem auto 0;
  padding-bottom: 1rem;
  color: #fff;
}
.winter-contact .contact-form-panel #formular-contact {
  width: 100%;
  padding: 1rem;
  background: #16479eb3;
  border-radius: 12px;
  text-align: center;
  font-family: Arial, sans-serif;
}
.winter-contact .contact-form-panel .form-title {
  margin: 0 0 .5rem;
  font-family: var(--fontStdBlack), Arial, sans-serif;
  font-size: 1.45455rem;
  line-height: 1.05;
  color: #fff;
}
.winter-contact .contact-form-panel .form-info-text {
  font-family: var(--fontStdBold), Arial, sans-serif;
  font-size: .818182rem;
  line-height: 1.35;
  margin-bottom: 0;
}
.winter-contact .contact-form-panel .form-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  width: 100%;
}
.winter-contact .contact-form-panel .group { margin: 0; min-width: 0; width: 100%; }
.winter-contact .contact-form-panel .label-style {
  display: block;
  margin: 0;
  padding: .5rem 0 .4rem;
  font-family: var(--fontStdBold), Arial, sans-serif;
  font-size: .818182rem;
  line-height: 1.3;
  color: #fff;
}
.winter-contact .contact-form-panel .input-style {
  display: block;
  width: 100%;
  min-height: 2.3rem;
  height: auto;
  border: 1px solid transparent;
  border-radius: .2rem;
  background: #fff;
  color: var(--baseColorBlue);
  padding: .5rem .7rem;
  font: 1rem/1 Arial, sans-serif;
  text-align: center;
  text-align-last: center;
  box-shadow: none;
}
.winter-contact .contact-form-panel .winter-captcha-title { text-align: center; }
.winter-contact .contact-form-panel textarea.input-style {
  min-height: 4.1rem;
  resize: vertical;
}
.winter-contact .contact-form-panel .input-style.file {
  position: relative;
  color: #fff;
  background: var(--baseColorBlue);
  border: .1rem solid var(--baseColorPrimary);
  overflow: hidden;
}
.winter-contact .contact-form-panel .input-style.file input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
.winter-contact .contact-form-panel .input-style:focus,
.winter-contact .contact-form-panel .input-style.file:focus-within {
  outline: 3px solid var(--winterGreen);
  outline-offset: 2px;
}
.winter-contact .contact-form-panel .text-info.obligatorii {
  margin: .5rem 0 0;
  font-size: .8rem;
  line-height: 1.3;
}
.winter-contact .contact-form-panel .container-btn-contact { display: block; }
.winter-contact .contact-form-panel .btn-std-contact {
  margin-top: .6rem;
  padding: .8rem 3rem;
  border: 0;
  background: var(--baseColorBlue);
  color: #fff;
  font: 1.125rem Arial, sans-serif;
  cursor: pointer;
}
.winter-contact .contact-form-panel .btn--bl--content { background: none; padding: 0; }
.winter-contact .contact-form-panel .btn-std-contact:hover { background: #59a83a; }
.winter-contact .contact-form-panel .input-style::placeholder { color: var(--baseColorBlue); opacity: 1; }
.winter-contact .contact-form-panel .input-style.file.file-selected { background: #fff; color: var(--baseColorBlue); }
.winter-contact .contact-form-panel .input-style.file > div { line-height: 1.4; overflow-wrap: anywhere; }
.winter-contact .contact-form-panel .btn-std-contact:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.winter-contact .contact-form-panel .contact-form-message { font-size: 16px; }
@media (max-width: 1023px) {
  .reference-home.winter-contact {
    --contact-home-height: calc(100svh - clamp(120px, 17svh, 170px));
    --contact-band-top: calc(var(--contact-home-height) * .25);
  }
  .reference-home.winter-contact .site-layout { height: auto !important; }
  .reference-home.winter-contact .container-home .text-headline-logo { top: calc(var(--contact-home-height) * .09 + 12px) !important; }
  .reference-home.winter-contact .container-home .banda-blue { top: var(--contact-band-top) !important; height: 6.2rem !important; }
  .reference-home.winter-contact .container-home.winter-home { min-height: 0 !important; }
  .reference-home.winter-contact .contact-form-panel {
    width: calc(100% - 24px);
    max-width: 680px;
    margin: calc(var(--contact-band-top) + 4rem) auto 0;
    padding-bottom: 34rem;
  }
  .winter-contact .contact-form-panel .form-title { padding: .2rem 0; font-size: 24px; }
  .winter-contact .contact-form-panel .form-info-text { font-size: 14px; }
  .winter-contact .contact-form-panel .form-wrapper { margin-top: .4rem; }
  .winter-contact .contact-form-panel .label-style { font-size: 14px; padding: .3rem 0; }
  .winter-contact .contact-form-panel .input-style { min-height: 44px; padding: 10px; font-size: 16px; }
  .winter-contact .contact-form-panel .input-style.file > div { line-height: 1.2; }
  .winter-contact .contact-form-panel .btn-std-contact { padding: .8rem 3rem; }
  .reference-home.winter-contact .container-home .bottle-with-lines-mobile .winter-standard-bottle { height: 23rem !important; bottom: 2rem !important; }
  .reference-home.winter-contact .container-home .bottle-with-lines-mobile .winter-xmas-bottle { height: 29rem !important; bottom: 2rem !important; }
  .reference-home.winter-contact .winter-home::after { height: 7rem !important; }
  .reference-home.winter-contact .container-home .corner-white { height: 9rem !important; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .reference-home.winter-contact .contact-form-panel { margin-top: calc(var(--contact-band-top) + 7rem); }
}
@media (max-width: 599px) {
  .winter-contact .contact-form-panel .form-wrapper { grid-template-columns: 1fr; }
}
@media (min-width: 600px) and (max-width: 1023px), (max-width: 1023px) and (max-height: 700px) and (orientation: portrait) {
  .reference-home.winter-contact .container-home .text-headline-logo { top: calc(var(--contact-home-height) * .13) !important; }
}
@media (max-width: 1023px) and (max-height: 700px) and (orientation: portrait) {
  .reference-home.winter-contact { --contact-band-top: calc(var(--contact-home-height) * .28); }
}
@media (max-width: 1023px) and (orientation: landscape) {
  .reference-home.winter-contact { --contact-home-height: calc(max(100svh, 720px) - clamp(120px, 17svh, 170px)); }
}
