@font-face {
  font-family: "UniversForSchueco";
  src: url("../fonts/universforschueco-430reg-woff2-data.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "UniversForSchueco";
  src: url("../fonts/universforschueco-630bold-woff2-data.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --schueco: #258979;
  --schueco-dark: #000;
  --beige: #ebe8df;
  --green-box: #dceae6;
  --footer: #eef1f1;
  --page-width: 1668px;
  --page-header-width: 1120px;
  --inner-width: 1120px;
  --bs-border-radius:0px;
  --bs-border-width:0px;
      --bs-btn-color: #fff;
    --bs-btn-bg: #258979;
    --bs-btn-border-color: #258979;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #258979;
    --bs-btn-hover-border-color: #258979;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #258979!important;
    --bs-btn-active-border-color: #258979!important;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #258979;
    --bs-btn-disabled-border-color: #258979;
	--bs-body-color: #000;
}
.g-2, .gy-2 {
    --bs-gutter-y: 0.5rem;
}
.g-2, .gx-2 {
    --bs-gutter-x: 0.5rem;
}
.form-data label, .form-data legend{
	font-size:15px;
}
.form-data .message label, .form-data legend{
	margin-bottom:15px;
}
.form-check {
    padding-left: 0px;
}
.form-check input {
    margin-right: 5px;
}
html { scroll-behavior: smooth;  }
body {
  margin: 0;
  font-family: "UniversForSchueco", Arial, Helvetica, sans-serif;
  color: var(--schueco-dark);
  background: #fff;
  font-size: 18px;
  line-height: 1.35;
}
img { max-width: 100%; display: block; }
a { color: inherit; }
.page-width { max-width: var(--page-width); }
.hidden{display:none;}
.site-header {
  z-index: 1030;
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid rgba(24,50,58,.05);
  box-shadow: rgba(14, 63, 126, 0.04) 0px 0px 0px 1px, rgba(42, 51, 69, 0.04) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.04) 0px 6px 6px -3px, rgba(14, 63, 126, 0.04) 0px 12px 12px -6px, rgba(14, 63, 126, 0.04) 0px 24px 24px -12px;

}
.site-header.sticky{
	position:sticky;
	top:0px;
}
.header-row {
  min-height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
      padding: 30px 0;
}
.site-header.sticky .header-row {
	padding: 10px 0;
}
.brand img { width: 220px; height: auto; }
.top-nav { display: flex; align-items: center; gap: 44px; white-space: nowrap; }
.top-nav a { text-decoration: none; font-weight: 700;padding: 0 10px 10px; border-bottom: 2px solid white;position: relative; }
.top-nav a::after {
  border-bottom: 2px solid var(--schueco);
  position: absolute;
  left: 50%;
  content: ' ';
  transform: translateX(-50%);
  transition: width 0.1s linear;
  width: 0;
  height: 0;
  bottom: 0;
}

.top-nav a:hover::after, .top-nav a.active::after {
  width: 100%
}

.hero-wrap { padding-bottom: 44px; }
.hero-row { min-height: 530px; }
.hero-image-wrap { min-height: 530px; height: 100%; position: relative; overflow: hidden; }
.hero-image { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-message {
  position: absolute; left: 70px; bottom: 74px; max-width: 700px;
  color: #fff; padding: 25px 25px 35px 25px;
      background: rgba(36, 50, 55, .60);
/*background: #1C2E35 0% 0% no-repeat padding-box;
opacity: 1;*/
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
}
.ai-generated {
	position: absolute; right: 0px; top: 30px; max-width: 100px;
	background: rgba(36, 50, 55, .50);
	color:white;
	font-size:8px;
	padding:2px 5px;
	border-radius:10px;
	 transform: rotate(270deg);
}
.hero-message span { display: block; font-size: 28px; margin-bottom: 25px; }
.hero-message h1 { margin: 0; font-size: 38px; line-height: 1.3; font-weight: 700; }
.form-control {
    padding: 13px;
    font-size: 13px;
}
.request-box { min-height: 530px; height: 100%; background: var(--beige); padding: 20px; }
.request-box h2 { font-size: 26px; line-height: 1.2; margin: 0 0 30px; font-weight: 700; }
.request-form .form-control, .request-form .form-select {
  border: 0; border-radius: 0; background: #fff; min-height: 39px; padding: 9px 10px;
  font-size: 10px; color: #405055;
}
.request-form textarea.form-control { min-height: 68px; resize: vertical; }
.request-form .form-label, .request-form legend { font-size: 9px; font-weight: 700; margin-bottom: 6px; }
.material-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px 12px; font-size: 9px; }
.material-options label { display: flex; align-items: center; gap: 4px; }
.material-options input { width: 15px; height: 15px; margin-right:5px; accent-color:var(--beige); }
.request-form .form-check { font-size: 9px; }
.request-form .form-check-input { border-radius: 0; }
.request-form .form-check-label a { text-decoration: underline; }

.brand-button {
  display: inline-flex; align-items: center; gap: 35px;
  background: var(--schueco); color: #fff; border: 0; border-radius: 0;
  font-size: 16px; font-weight: 700; padding: 13px 18px;
}
.brand-button:hover, .brand-button:focus, .brand-button:active { background: #1d7669!important; border-color: #1d7669!important;color: #fff; }
.brand-button img { width: 16px; height: 16px; filter: brightness(0) invert(1); }

.promo-section { padding: 34px 0 70px; }
.promo-card { min-height: 960px; padding: 35px 38px 28px; display: flex; flex-direction: column; }
.promo-beige { background: var(--beige); }
.promo-green { background: var(--green-box); }
.promo-head { width: 100%; height: auto; object-fit: contain; object-position: left center; }
.promo-zero {    max-width: 434px;    filter: grayscale(100%) contrast(500%);}
.promo-bonus {
    max-width: 520px;
	    filter: grayscale(100%) contrast(500%);
}
.promo-line { height: 2px; background: var(--schueco-dark); margin: 0px 0 50px; }
.promo-line-corta {
    height: 2px;
    background: var(--schueco-dark);
    margin: 17px 122px 37px 0px;
	position:relative;
}
.promo-line-corta span {
    color: var(--schueco-dark);
	position:absolute;
	right: -130px;
    top: -11px;
}
.promo-card h2 { font-size: 47px; line-height: 1.5; margin: 0 0 2px; font-weight: 700; }
.promo-card h3 { font-size: 27px; line-height: 1.5; margin: 0 0 18px; font-weight: 400; }
.fiditalia { width: 210px; margin: 18px 0 12px; }
.legal-placeholder { font-size: 12px !important; line-height: 1.2; margin-top: 14px; opacity: .8; }

.cta-band { padding: 10px 0 70px; }
.cta-band p { margin: 0 0 20px; font-size: 25px; }
.intro-section { padding: 10px 0 70px; }
.light-title { margin: 0; font-size: 47px; line-height: 1.3; font-weight: 400; }

.benefits-section { margin: 10px 0 70px;background: var(--beige); }
.benefits-box {  padding: 70px 72px 70px; }
.benefits-box > h2 { text-align: center; margin: 0 0 30px; font-size: 45px; line-height: 1.3; font-weight: 700; }
.benefit-item:hover .messaggio-visuale{visibility: hidden;height:0px;
    opacity: 0;}
.benefit-item img { height: 120px; width: auto; margin: 0 auto 25px; object-fit: contain; }
.benefit-item .messaggio-visuale{
	       transition: opacity .5s ease-in-out;
  -moz-transition: opacity .5s ease-in-out;
  -webkit-transition: opacity .5s ease-in-out;
}
.benefit-item .messaggio-visuale p {  margin-top: 43px; font-size:24px;}
.benefit-item .messaggio-testuale {visibility: hidden;height:0px;
    opacity: 0;}
.benefit-item .messaggio-testuale p {  font-size:16px; padding:0 90px;}
  .benefit-item:hover  .messaggio-testuale{visibility: visible;height:auto;
       transition: opacity .5s ease-in-out;
  -moz-transition: opacity .5s ease-in-out;
  -webkit-transition: opacity .5s ease-in-out;
  opacity: 1;}

.accordion-section { padding: 10px 0 70px; }
.accordion-section > .container > h2, .consultation-section h2 { font-size: 45px; line-height: 1.3; font-weight: 700; margin: 0 0 40px; }
.schueco-accordion { --bs-accordion-border-color: #66777b; --bs-accordion-btn-icon: none; --bs-accordion-btn-active-icon: none; }
.schueco-accordion .accordion-item { border-left: 0; border-right: 0;  border-bottom: 2px solid !important;}
.schueco-accordion .accordion-button { padding: 25px 0; box-shadow: none; background: transparent; color: var(--schueco-dark); font-size: 20px; font-weight: 700;    }
.schueco-accordion .accordion-button::after { background-image: url("../images/icon-plus.svg"); width: 18px; height: 18px; background-size: contain; transform: none; }
.schueco-accordion .accordion-button:not(.collapsed)::after { transform: rotate(45deg); }
.schueco-accordion .accordion-body { padding: 0 0 18px; font-size: 20px; }

.consultation-section { padding: 50px 0 70px; }
.consultation-section .row>*{margin-top:0px;}
.premium-logo { width: 250px; margin-top: 60px; }
.consultation-image { width: 100%; }
.form-control::-webkit-input-placeholder { color: #000; }
.form-control::-moz-input-placeholder { color: #000; }
.form-control::-ms-input-placeholder { color: #000; }
    .section-video iframe {
        height: 340px;
    }
.gallery-section { padding: 10px 0 70px; }
.gallery-card { display: block; background: var(--beige); text-decoration: none; overflow: hidden; }
.gallery-card > img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.gallery-caption { min-height: 72px; display: flex; align-items: center; justify-content: space-between; padding: 17px 23px; font-size: 28px; line-height: 1.3; }
.gallery-arrow { width: 30px; height: 30px; display: grid; place-items: center; border: 2px solid #1C2E35; font-size: 20px; color: #1C2E35;}
.cta-last { padding-bottom: 100px; }
.site-footer { background: var(--footer); min-height: 45px; padding: 20px 0;     text-align: center; font-size: 13px; color: #687679; }
#autocomplete-list:not(:empty), #autocomplete-modal-list:not(:empty) {    border: 1px solid #000;    border-top: 0;}#autocomplete-list, #autocomplete-modal-list {    position: absolute;    background: #FFF;    z-index: 999;    color: #000;    width: 100%;    padding-left: 0;}#autocomplete-list li, #autocomplete-modal-list li {    font-size: 13px;    cursor: pointer;    padding: 5px 8px;    list-style: none;    text-align: left;}
@media (max-width: 991px){#autocomplete-list, #autocomplete-modal-list {    width: 305px;    left: 50%;    -webkit-transform: translateX(-50%);    transform: translateX(-50%);}}
@media (max-width: 991.98px) {
  .top-nav { gap: 10px; }
  .hero-row, .hero-image-wrap, .request-box { min-height: auto; }
  .hero-image-wrap { aspect-ratio: 16 / 10; }
  .request-box { padding: 28px; }
  .promo-card { min-height: 560px; }
}

@media (max-width: 767.98px) {
	.benefit-item .messaggio-testuale p {
    font-size: 16px;
    padding: 0 10px;
}
    .section-video iframe {
        height: 250px;
    }
  .page-width, .inner-width { padding-left: 18px; padding-right: 18px; }
  .site-header .page-width { padding-left: 0; padding-right: 0; }
  .header-row { min-height: 0; display: block; padding-top: 12px; }
  .brand { display: block; padding: 0 18px 10px; }
  .brand img { width: 120px;margin: 0 auto; }
  .top-nav { width: 100%; gap: 25px; overflow-x: auto; padding: 10px 18px 0px; border-top: 1px solid rgba(24,50,58,.08); scrollbar-width: none;align-items: center;
  justify-content: center;}
  .top-nav::-webkit-scrollbar { display: none; }
  .top-nav a { font-size: 17px; }
  .hero-wrap .page-width { padding-left: 0; padding-right: 0; }
  .hero-image-wrap { aspect-ratio: 4 / 3; overflow: unset;height:auto;}
  .hero-message { left: 0px; right: 18px; bottom: 18px; max-width: none; padding: 15px 17px 17px; position:relative;}
  .hero-message span { font-size: 12px; }
  .hero-message h1 { font-size: 23px; }
  .request-box { padding: 24px 18px 28px; }
  .request-box h2 { font-size: 21px; }
  .material-options { grid-template-columns: repeat(2, 1fr); }
  .promo-section { padding-top: 10px; }
  .promo-card { min-height: 0; padding: 28px 24px; }
  .promo-head { height: 100px; }
  .cta-band { padding: 8px 18px 38px; }
  .cta-band p { font-size: 16px; }
  .intro-section { padding: 45px 0 50px; }
  .light-title { font-size: 29px; }
  .benefits-section .page-width { padding: 0; }
  .benefits-box { padding: 42px 20px 25px; }
  .benefits-box > h2 { font-size: 27px; }
  .benefit-item { padding-bottom: 18px; }
  .benefit-item img { height: 70px; }
  .accordion-section { padding: 6px 0 45px; }
  .accordion-section > .container > h2, .consultation-section h2 { font-size: 28px; }
  .consultation-section { padding: 48px 0; }
  .premium-logo { margin-top: 25px; margin-bottom: 24px; }
  .gallery-section { padding: 44px 0; }
  .gallery-card { max-width: 520px; margin: 0 auto; }
  .cta-last { padding-bottom: 60px; }
  .promo-card h2 {
    font-size: 37px;
    line-height: 1.2;
}
.col-6 {
    width: 100%;
}
}
