/*----------------------
Remail // CSS
bg@barbaragambini.com
2024-02-05
----------------------*/


body, html { width: 100%;  height: 100%; scroll-behavior: smooth;   }

::-moz-selection  { background: #FF5321; color: #ffffff; }
::selection { background: #FF5321; color: #ffffff; }
a { color:; }
a:hover { color:#1068B2; }

body { font-size:16px; color:#4a4949; font-family: 'Nunito Sans', sans-serif; }
.clear { clear:both; visibility:hidden; margin:0; }
nav { position:relative; z-index:2000;  }
a.brand, a.brand:hover { text-decoration:none; color:#212121; }

.oswald-c { font-family: 'Oswald', sans-serif; }
.lora { font-family: "Lora", serif; }


strong { font-weight:700;}
.font-weight-bold { font-weight:700!important; }
.font-weight-light { font-weight:100!important; }

.line-height-1 { line-height:1; } .line-height-1.small { line-height:1.1; }
.line-height-n { line-height: normal; }
.line-height-2 { line-height: 1.7; }

.overlay {  position:absolute; bottom:0; top:0; width:100%; height:100%; z-index:1; background:#000; opacity:.3; }


/*-------------------------
colori e grandezze font
-------------------------*/
.rosso { color:#e12422; }
.pink { color: #F93174; }
.rosso-mattone { color:#7A0A27; }
.marrone { color:#330000; }
.blu { color:#ffc700; }
.ciano { color:#4babc0;}
.giallo { color:#ffc700; }
.green { color:#78b84d; }
.light-green { color:#E0F0D7; }
.light-blue { color:#A0C8EA; }
.blu-grey { color:#647382; }
.light-grey { color:#f8f8f8; }
.nero {color:#000000}

.dark-green { color:#017a45; }
.dark-blu { color:#15253b; }
.heavy-green { color:#1d2b0b; }
.gold { color: #D7AB24; }
.bianco { color: #fff; }
.orange { color:#FF6333; }
.light-orange { color:#FF825C; }

.blu-grey-bg { background-color:#647382; }
.light-grey-bg { background-color:#f0f0f0; }

.marrone-bg { background-color:#330000; }
.rosso-mattone-bg { background-color:#7A0A27; }
.rosso-bg { background-color:#e12422; }
.ciano-bg { background-color:#1aa4bf;}
.giallo-bg { background-color:#ffc700; }
.bianco-bg { background-color:#fff; }
.blu-bg { background-color:#ffc700; }
.green-bg { background-color:#78b84d; }
.dark-green-bg { background-color:#017a45; }
.pink-bg { background-color: #F93174; }


.light-green-bg { background-color:#E0F0D7; }
.light-blue-bg { background-color:#A0C8EA; }
.heavy-green-bg { background-color:#1d2b0b; }
.dark-bg { background-color:#3b4d66; }
.white-bg { background-color:#fff; }
.orange-bg { background-color:#FF6333; }
.gold-bg { background-color: #D7AB24; }

.light-orange-bg { background-color:#FF825C; }
.light-green-bg { background-color:#c4e973; }
.cold-grey-bg { background-color:#d1d4d9 ; }
.dark-blu-bg { background-color:#15253b;}
.dark { color:#3b4d66;}

.grey { color:#333; }
.grey-bg { background-color:#333; }

.text-18 { font-size:18px; line-height: 25px; }
.text-20 { font-size:20px; line-height: 26px; }
.text-25 { font-size:25px; line-height: 30px; }
.text-30 { font-size:30px; line-height: 35px; }
.text-35 { font-size:35px; line-height: 40px; }
.text-40 { font-size:40px; line-height: 43px; }
.text-45 { font-size:45px; line-height: 48px; }
.text-50 { font-size:48px; line-height: 52px }
.text-60 { font-size:55px; line-height: 58px; }

.max-width-90 { max-width:900px; margin:auto; }
.max-width-80 { max-width:800px; margin:auto; }
.max-width-70 { max-width:700px;  }
.max-width-60 { max-width:600px; }
.max-width-50 { max-width:500px; margin:auto; }
.max-width-40 { max-width:400px;  }


.opacity-10 { opacity:.1; }
.opacity-20 { opacity:.2; }
.opacity-30 { opacity:.3; }
.opacity-40 { opacity:.4; }
.opacity-50 { opacity:.5; }
.opacity-60 { opacity:.6; }
.opacity-70 { opacity:.7; }
.opacity-80 { opacity:.8; }
.opacity-90 { opacity:.9; }


.font-weight-100 { font-weight: 100; }
.font-weight-200 { font-weight: 200; }
.font-weight-300 { font-weight: 300; }
.font-weight-400 { font-weight: 400; }
.font-weight-500 { font-weight: 500; }
.font-weight-600 { font-weight: 600; }
.font-weight-700 { font-weight: 700; }
.font-weight-800 { font-weight: 800; }
.font-weight-900 { font-weight: 900; }


.gutter-grid-var { margin-right:-8px; margin-left:-8px;}
.gutter-grid-var > .col, 
.gutter-grid-var > [class*="col-"] { padding-right:8px; padding-left:8px; }



/*----------------------------*/
.custom-list { position:relative; list-style-type: none; }
.custom-list li { font-size:; margin:0 0 12px 0; line-height:1.4; position:relative; }
.custom-list li:last-child { margin-bottom:0;  }
.custom-list i { font-size: 20px; left:-30px; position:absolute; top:3px; }
/*----------------------------*/


.custom-list-2 { list-style-type:none; }
.custom-list-2 li { margin:0 0 12px 0; line-height:1.2; position:relative; position: relative; }
.custom-list-2 li:before { background: url(img/check.svg) no-repeat center center / 70%;
width:25px;
height:25px;
display: block;
position: absolute;
left:-30px;
top: 0px;
content: "";
}

.custom-list-2 li:last-child { margin-bottom:0; }


/*------------------------------
------------------------------*/

.text-shadow { text-shadow:-3px 2px 0px rgba(0,0,0,.1); text-align:center; }
.brand { width: 450px; }
.custom-bg { background:url(img/installazioni-background_1920.jpg) no-repeat center center / cover; }

/*----------------------------*/

footer { background:; } 
footer p.copyright { margin:; text-align:left; font-size:14px; font-weight:400; }
.footer-triboo-logo { width:130px; margin:auto; }

/*----------------------------
Form
----------------------------*/

.form-control {
background:#eeeeee;
border:none;
border-radius: 0;
box-shadow: none;
color: #333;
font-size: 16px;
padding:10px;
font-weight:normal;
line-height:normal;
}

textarea.form-control { padding:10px; height:88px; border:; }

.form-control::-moz-placeholder { opacity:; color: #262f51; }
.form-control::placeholder { opacity:; color:#262f51; }
select option { opacity:1; color:#999; }
.form-group { margin-bottom:0; }

.btn-custom { border:0px solid transparent; font-weight:700; letter-spacing:.03em; padding:10px; width: 100%; border-radius:30px; display: inline-block; text-decoration:none; text-align: center; outline:0px solid #fff; outline-offset:0px; background: #395E14; color: #ffffff; cursor: pointer;}


.btn-custom:hover { background:#527e26; border:0px solid #527e26; color:#ffffff; text-decoration:none; }



.btn-custom2 { border:0px solid transparent; font-weight:700; letter-spacing:.03em; padding:10px; width: 100%; border-radius:30px; display: inline-block; text-decoration:none; text-align: center; outline:0px solid #fff; outline-offset:0px; background: #ffffff; color: #395E14; cursor: pointer;}


.btn-custom2:hover { background:#f7f7f7; border:0px solid #f7f7f7; color:#395E14; text-decoration:none; }




a.btn-custom.btn-bottom { outline-color:transparent; color:#222; }
a.btn-custom.btn-bottom:hover { text-decoration:none; background:#e12422; color:#fff;  }

a.btn-outline { border:2px solid; text-decoration:none; text-transform:uppercase;  }
a.btn-outline:hover { color:#1aa4bf; background:#fff; }


select { 
appearance:none;
-moz-appearance:none;
-webkit-appearance: none;
 border:none; width:100%;
color:#333;
	background: #eeeeee;
	padding: 10px;
}

select option { color:#666;}

.form-control.custom-select-grip { padding:0; }
.form-control select { }
.custom-select-grip { position:relative; }
.custom-select-grip:after { position:absolute; right:15px; top:3px; content:""; display:block; 
right:14px; top:50%; margin-top:-8px; width: 10px; height: 18px; background: url(img/select-grip.svg) no-repeat center center / 100% auto; z-index:; }

.form-group-privacy { line-height:1; color:; }
.form-group-privacy .small { font-weight:400; color:#666; line-height:1.3;  }

.form-group-privacy a { color:#555; } 
.form-group-privacy a:hover { color:#0c6294; }
.form-group-privacy label.radio-inline { font-size:14px; margin:0; }
label.checkbox-terms { margin:0; line-height:1;}
.form-group-privacy input { margin: 2px 8px 0 0; vertical-align: text-top; }


.form-control:focus, textarea.form-control:focus { background:#eee; border:1px solid #ccc; box-shadow:none; }
input.form-control:focus::placeholder, 
textarea:focus::placeholder{ color: transparent; }


/*----------------------------
----------------------------*/

.bottom-call-to-action { position:relative; }
a.bottom-bnt:hover { text-decoration:none; background:none; color:#fff; border:3px solid #fff; }
section hr { max-width:100px; border:none; border-bottom:1px solid #f7f7f7; opacity:1;  }

/*----------------------------*/
.hexagon .icon {
position: relative;
width: 80px;
height: 80px;
background: url(img/hega-bg.png) no-repeat center center / 100% auto;
margin: 0 auto;
margin-bottom: 0px;
-webkit-transition: 0.4s ease-in-out;
-moz-transition: 0.4s ease-in-out;
-ms-transition: 0.4s ease-in-out;
-o-transition: 0.4s ease-in-out;
transition: 0.4s ease-in-out;
margin-bottom: 40px;
}
/*----------------------------*/

.request-arrow { border-radius:50%; width:50px; height:50px; text-align:center; border:2px solid; line-height:50px; color:#e12422; }
.request-arrow i { font-size:20px; }

section.prima-dopo h3 { 
position:absolute; margin:0; background:rgba(0,0,0,.6); color:#fff; text-align:center; padding:5px 5%; line-height:1; text-transform:uppercase; border-radius:0 0 20px 0px; top:0; left:; 
}


/*------------------------------*/
@keyframes flickerAnimation {
  0%   { opacity:1; }
  50%  { opacity:1; }
  100% { opacity:0; }
}
@-o-keyframes flickerAnimation{
  0%   { opacity:1; }
  50%  { opacity:1; }
  100% { opacity:0; }
}
@-moz-keyframes flickerAnimation{
  0%   { opacity:1; }
  50%  { opacity:1; }
  100% { opacity:0; }
}
@-webkit-keyframes flickerAnimation{
  0%   { opacity:1; }
  50%  { opacity:1; }
  100% { opacity:0; }
}
.animate-flicker {
   -webkit-animation: flickerAnimation .9s infinite;
   -moz-animation: flickerAnimation .9s infinite;
   -o-animation: flickerAnimation .9s infinite;
    animation: flickerAnimation .9s infinite;
}

/*------------------------------
RUOTA
------------------------------*/	

@keyframes rotating {
from
{
transform: rotate(0deg);
-o-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
}
to
{
transform: rotate(360deg);
-o-transform: rotate(360deg);
-ms-transform: rotate(360deg);
-moz-transform: rotate(360deg);
-webkit-transform: rotate(360deg);
}
}
@-webkit-keyframes rotating {
from
{
transform: rotate(0deg);
-webkit-transform: rotate(0deg);
}
to
{
transform: rotate(360deg);
-webkit-transform: rotate(360deg);
}
}
.ruota {
-webkit-animation: rotating 22s linear infinite;
-moz-animation: rotating 22s linear infinite;
-ms-animation: rotating 22s linear infinite;
-o-animation: rotating 22s linear infinite;
animation: rotating 22s linear infinite;
}



/*----------------------------
$grid-breakpoints: (
  xs: 0,
  sm: 576px,
  md: 768px,
  lg: 992px,
  xl: 1200px,
  xxl: 1400px
);
----------------------------*/



.b-header{ background:url('img/header3.jpg') no-repeat  top center / cover;    }


.d-header{ background:url('img/header2.jpg') no-repeat  top center / cover;   }


.spazio-t { padding: 25px }


.space { margin-top: 50px; margin-bottom: 50px }

.icona {padding: 10px}

.sfumatura {background: rgb(38,47,81);
background: linear-gradient(90deg, rgba(38,47,81,1) 30%, rgba(224,57,123,1) 100%);}

.altezza-form	{min-height: 650px;}


.mobile {display: none;}

.no-mobile {display: block;}

.mobile2 {display: none;}

.no-mobile2 {display: block;}



.servizi {background: #fbdbdb; padding: 5px 15px 5px 15px; border-radius: 30px; color: #333333; white-space: nowrap; line-height: 55px; margin-right: 10px}


.sfondo {background: none; margin: 30px 0px 30px 0px; padding: 0px;}


			.lt2 {max-width: 600px}


.spazio-testo {padding: 50px 100px 50px 100px; }


.arrow-1 {
  width:350px;
  height:30px;
  display: flex;
	color: #FFFFFF;
}
.arrow-1:before {
  content: "";
  background: currentColor;
  width:15px;
  clip-path: polygon(0 10px,calc(100% - 15px) 10px,calc(100% - 15px) 0,100% 50%,calc(100% - 15px) 100%,calc(100% - 15px) calc(100% - 10px),0 calc(100% - 10px));
  animation: a1 2.5s infinite linear;
}
@keyframes a1 {
  90%,100%{flex-grow: 1}
}


.ebook {width: 85%}


.bordo {border-right: solid 3px #a0be32; }

.bordo2 {border-right: solid 3px #f1bd48; }


.altezza-imm {height: 300px }


.testo-form{padding-left: 5px; padding-right: 5px}


.sfondo-form {background: #ffffff; padding: 20px }


	.spazio-header {padding-top: 20px; padding-bottom: 20px}

	.spazio-sopra {padding-top: 240px; }

	.spazio-sotto {padding-bottom: 240px;}

.spazio-s {margin-left: 10px;}


.spazio-logo {margin-left: -190px;}

.imm {display: block;}
.imm-mobile {display: none;}




    .custom-header  {
        padding-left: 40px;
    }



/* Allineamento del testo a sinistra come un container di Bootstrap 5 */

/* Quando la larghezza del viewport è maggiore di 1000px ma inferiore a 1440px */
@media(max-width:1440px) {
    .custom-header  {
        padding-left: calc((100% - 1320px) / 2); /* Padding laterale per allineamento simile a un container 1140px */
    }
}

@media(max-width:1300px) {
    .custom-header  {
        padding-left: calc((100% - 1140px) / 2); /* Padding laterale per allineamento simile a un container 1140px */
    }
}




@media(max-width:1200px) {
    .custom-header  {
        padding-left: calc((100% - 1140px) / 2); /* Padding laterale per allineamento simile a un container 1140px */
    }
}


@media(max-width:1100px) {
    .custom-header  {
        padding-left: calc((100% - 960px) / 2); /* Padding laterale per allineamento simile a un container 1140px */
    }
}


@media(max-width:1000px) {
    .custom-header  {
        padding-left: calc((100% - 960px) / 2); /* Padding laterale per allineamento simile a un container 1140px */
    }
}


@media(max-width:999px) {
    .custom-header  {
        padding-left: 20px;
    }
}

@media(max-width:480px) {
    .custom-header  {
        padding-left: 20px;
    }
}





.dim {max-width: 450px}

.dim2 {max-width: 750px}


/*----------------------------
mobile sopra i....
----------------------------*/

@media(min-width:1920px) { }


@media(max-width:1700px) { .spazio-logo {margin-left: -120px;}
   }


@media(max-width:1550px) { .spazio-logo {margin-left: -90px;}
   }


@media(max-width:1400px) { .spazio-logo {margin-left: -80px;}
   }

@media(max-width:1200px) { .spazio-logo {margin-left: -0px;}
   }

@media(max-width:992px) { footer .text-lg-left { text-align: left!important; } 

}

/*----------------------------
mobile sotto i...
----------------------------*/


@media(max-width:1600px) {
	
	.testo-form{padding-left: 5px; padding-right: 5px}
	
	.text-35 { font-size:31px; line-height: 36px; }

			.b-header{ background:url('img/header3-2.jpg') no-repeat  top center / cover;    }

	
		.dim2 {max-width: 620px}


 }



	
@media(max-width:1200px) {
body { font-size:15px; }
.text-20 { font-size:18px; line-height: 23px; }
.text-25 { font-size:18px; line-height: 25px }
.text-30 { font-size:25px; line-height: 30px; }
.text-35 { font-size:28px; line-height: 33px; }
.text-40 { font-size:27px; line-height: 31px; }
.text-45 { font-size:35px; line-height: 38px;  }
.text-50 { font-size:36px; line-height: 40px; }
.text-60 { font-size:40px; line-height: 45px; }
	
	
.text-18 { font-size:17px; line-height: 23px; }
	
	
		.spazio-sopra {padding-top: 100px; }

	.spazio-sotto {padding-bottom: 100px;}
		.b-header{ background:url('img/header3-3.jpg') no-repeat  top center / cover;    }

	.dim2 {max-width: 550px}

	
}


@media(max-width:1190px) {
.form-control { padding:8px;  }	
	
		.altezza-form	{min-height: 670px;}
	
	
	
		.spazio-sopra {padding-top: 90px; }

	.spazio-sotto {padding-bottom: 90px;}

.dim {max-width: 250px}

	.dim2 {max-width: 450px}



}

@media(max-width:999px) {
	
	
	
.testo-centrato { text-align: center; display: block; margin:0 auto; }
	
	.py-5 { padding-top: 25px !important; padding-bottom: 25px!important; }
	
		.altezza-form	{min-height: 670px;}


	.pb	{padding-bottom: 180px}
	

		.sfondo {background: #eeeeee; padding: 20px 20px 20px 20px; margin: 0px;}
	
	.container {max-width: 100%;}

		.c-header{ background:url('img/header-tablet.jpg') no-repeat  top center / cover; margin-top: 0;  }
	
		.b-header{ background:url('img/header3-tablet.jpg') no-repeat  top center;   }
	
	.d-header{ background:url('img/header2-tablet.jpg') no-repeat  top center / cover;   }



		.pb-mobile {padding-left: 30px; padding-right: 30px}
	
	
	.tc { margin:0 auto; }
	
	.no-mobile {display: none;}
	
	.ebook {width: 65%}
	
	
	.ds {padding-left: 20px; padding-right: 20px}
		.mobile {display: block;}

	.spazio-header {padding-top: 0px; padding-bottom: 0px;}
	
	.bordo {border-right: solid 0px #a0be32; border-bottom: solid 3px #a0be32; }
	
	.bordo2 {border-right: solid 0px #f1bd48; border-bottom: solid 3px #f1bd48; }

	
		.spazio-testo {padding: 35px 35px 35px 35px; }
	
	.sfondo-form {background: #ffffff; padding: 0px }

.spazio-a {padding-bottom:  55px; }
	
			.spazio-b {margin-bottom:  -25px; }
	
	
		.spazio-sopra {padding-top: 20px; }

	.spazio-sotto {padding-bottom: 70px;}

	
	
	
	.dim {max-width: 350px}

	.dim2 {max-width: 650px}

	.testo-form{padding-left: 45px; padding-right: 45px}
	
	.imm {display: none}
.imm-mobile {display: block}

.spazio-s {margin-left: 20px}

}

@media(max-width:767px) { 		.no-mobile {display: none;}
}

@media(max-width:480px) {
body { font-size:15px; }
.text-18 { font-size:16px; line-height: 21px; }
.text-20 { font-size:17px; line-height: 22px; }
.text-25 { font-size:20px; line-height: 26px }
.text-30 { font-size:21px; line-height: 25px; }
.text-35 { font-size:25px; line-height: 30px; }
.text-40 { font-size:25px; line-height: 28px; }
.text-45 { font-size:35px; }
.text-50 { font-size:40px; line-height: 40px; }
.text-60 { font-size:33px; line-height: 37px; }

footer p { font-size: 12px; }
footer p.copyright { font-size:12px; margin:0; }
footer img { width: 80px!important; }
footer img.mb-3 { margin-bottom:.5rem!important; }
.brand { width: 330px; }
	
	
	.b-header{ background:url('img/header3-mobile.jpg') no-repeat  top center;  }
	
		.d-header{ background:url('img/header2-mobile.jpg') no-repeat  top center / cover;   }


	.space { margin-top: 0px; margin-bottom: 0px }
	
	.icona {padding: 0px 80px 20px 80px}

	.testo {padding-left: 30px; padding-right: 30px}
	
		.testo-s {padding-left: 10px; padding-right: 10px}

	.sfumatura {background: rgb(38,47,81);
background: linear-gradient(180deg, rgba(38,47,81,1) 33%, rgba(224,57,123,1) 100%);}
		
		
		.lt {max-width: 220px}
	
			.lt2 {max-width: 260px}



		.altezza-form	{min-height: 670px;}

	.p-4 {padding-top: 0px !important;}
	
	.pb-mobile {padding-left: 20px; padding-right: 20px}
	
			.c-header{ background:url('img/header-mobile.jpg') no-repeat  top center / cover; margin-top: 0;  }
	
	.mb-5 {margin-bottom: 2rem !important;}

	.mt-5 {margin-top: 2rem !important;}

	
		.mobile {display: block;}
	
	.ebook {width: 85%}

		.ds {padding-left: 20px; padding-right: 20px}

			.ds2 {margin-left: 15px; margin-right: 15px}
	
				.ds3 {margin-left: 10px; margin-right: 10px}


.spazio-t { padding: 20px 0px 20px 0px }

.spazio-header {padding-top: 0px; padding-bottom: 0px}
	
	.spazio-testo {padding: 15px 0px 15px 0px; }

.testo-centrato2 { text-align: center; display: block; margin:0 auto; }

.no-mobile2 {display: none;}
	
			.mobile2 {display: block;}

	
	.spazio-a {padding-bottom:  45px; }
	
		.spazio-b {margin-bottom:  -25px; }
	
	
			.spazio-sopra {padding-top: 20px; }

	.spazio-sotto {padding-bottom: 90px;}
	
				.spazio-h {padding-left: 15px; padding-right: 15px }


.max {max-width: 220px;}
	
	

	.dim {max-width: 200px}

		.dim2 {max-width: 320px}
	
		.testo-form{padding-left: 10px; padding-right: 10px}

.spazio-s {margin-left: 0px}


}
	
@media(max-width:414px) {}
@media(max-width:375px) { .altezza-form	{min-height: 700px;}
.text-35 { font-size:22px; line-height: 28px; }

	.text-25 { font-size:18px; line-height: 24px }
	
.text-60 { font-size:30px; line-height: 34px; }

.text-50 { font-size:37px; line-height: 37px; }

		.dim {max-width: 200px}


}



.loader-container {
    position: fixed;
    left: 0;
    right: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.loader {
    width: 100px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    z-index: 101;
}

@keyframes load {
    50% {
        transform: rotatez(180deg);
        border-style: dashed;
        border-color: #1AA4BF #66C2D4 #EB6D6B #E22422;
    }
    100% {
        transform: rotatez(360deg);
    }
}

.loader::before {
    content: "";
    color: white;
    height: 100px;
    width: 100px;
    background: transparent;
    border-radius: 50%;
    border: 20px solid #E22422;
    animation: load 1s infinite;
}

.loader-bg {
    background-color: rgba(255, 255, 255, .9);
}