@charset "utf-8";

@font-face {
    font-family: 'Integral CF Demi';
    src: url('../fonts/IntegralCF-DemiBoldOblique.woff2') format('woff2'),
        url('../fonts/IntegralCF-DemiBoldOblique.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF';
    src: url('../fonts/IntegralCF-RegularOblique.woff2') format('woff2'),
        url('../fonts/IntegralCF-RegularOblique.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF';
    src: url('../fonts/IntegralCF-Heavy.woff2') format('woff2'),
        url('../fonts/IntegralCF-Heavy.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF Extra';
    src: url('../fonts/IntegralCF-ExtraBoldOblique.woff2') format('woff2'),
        url('../fonts/IntegralCF-ExtraBoldOblique.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF';
    src: url('../fonts/IntegralCF-MediumOblique.woff2') format('woff2'),
        url('../fonts/IntegralCF-MediumOblique.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF';
    src: url('../fonts/IntegralCF-HeavyOblique.woff2') format('woff2'),
        url('../fonts/IntegralCF-HeavyOblique.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF';
    src: url('../fonts/IntegralCF-Bold.woff2') format('woff2'),
        url('../fonts/IntegralCF-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF';
    src: url('../fonts/IntegralCF-Medium.woff2') format('woff2'),
        url('../fonts/IntegralCF-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF Demi';
    src: url('../fonts/IntegralCF-DemiBold.woff2') format('woff2'),
        url('../fonts/IntegralCF-DemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF';
    src: url('../fonts/IntegralCF-BoldOblique.woff2') format('woff2'),
        url('../fonts/IntegralCF-BoldOblique.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Integral CF Extra';
    src: url('../fonts/IntegralCF-ExtraBold.woff2') format('woff2'),
        url('../fonts/IntegralCF-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


body{ font-size:16px; font-family: 'Montserrat', sans-serif !important; color:#000;}
form{ margin:0px;}
.container-fluid{ max-width:1720px;}
.mfp-bg{ z-index:999000; background:rgba(0,0,0,0.75);}
.mfp-wrap{ z-index:9999000;}
.mfp-arrow{ border-radius:0px !important}
.mfp-arrow:hover{ background:#111;}
.mfp-close:hover:before{ color:#111;}
.mfp-bottom-bar{ display:none;}
.mfp-close{ width:40px; height:40px; background:#fff; color:#111; text-shadow:0px 0px 0px #000; opacity:1; border-radius:0px; padding:0px;}
.mfp-close:before{ content:""; width:100%; height:100%; background:url(../images/icon-remove.png); background-size:30px 30px; background-position:center center; background-repeat:no-repeat;}
::selection{ background:#2b2273; color:#fff;}
::-moz-selection{ background:#2b2273; color:#fff;}
.preloader{ background-image:url(../images/loading.gif); background-size:100px auto; z-index:999999999;}
h1, h2, h3, h4, h5, h6{ font-family: 'Integral CF', sans-serif; text-transform:uppercase; font-weight:400;}
a{ color:#111; font-weight:400; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
a:hover, .widget a:not(.btn):hover{ color:#111;}
p, li{ color:#000; font-size:16px; line-height:24px; font-weight:400;}
p{ margin-bottom:15px;}
p strong{ font-weight:700;}
ul p{ line-height:22px;}
.container{ padding:0 20px;}
.container-fluid{ padding:0 60px;}
.row{ margin:0 -20px;}
.row [class*="col-"]{ padding:0 20px;}
.row.small0{ margin:0 -0px !important;}
.row.small0 [class*="col-"]{ padding:0 0px !important;}
.row.small5{ margin:0 -5px;}
.row.small5 [class*="col-"]{ padding:0 5px;}
.row.small10{ margin:0 -10px;}
.row.small10 [class*="col-"]{ padding:0 10px;}
.row.small15{ margin:0 -15px;}
.row.small15 [class*="col-"]{ padding:0 15px;}
input[type=text], input[type=email], input[type=password], input[type=search], input[type=tel], textarea{ font-family: 'Montserrat', sans-serif; height:44px; font-size:16px; font-weight:400; background:#fff; border-radius:0px; font-weight:400; border:1px solid #e1e1e1;}
.form-group > label{ font-size:16px; font-weight:400;}
.chosen-container{ border-radius:0px; background:#fff;}
.chosen-container-single .chosen-single span{ font-size:16px; font-weight:400;}
.chosen-container .chosen-results li{ font-size:16px;}
.chosen-container .chosen-results{ max-height:200px;}
.chosen-container-single .chosen-single{ text-decoration:none !important; color:#333 !important;}
.chosen-container-single .chosen-single div:after{ font-size:20px;}
textarea{ background:#fff; height:120px;}
.form-group{ margin-bottom:10px;}
.btn{ font-family: 'Montserrat', sans-serif; font-size:13px; font-weight:700; height:auto; padding:12px 25px; border-radius:0px;}
.btn.btn-primary{ height:auto !important; line-height:24px !important; text-transform:uppercase; background:#8772b3; border:1px solid #8772b3; color:#fff; vertical-align:top;}
.btn.btn-default{ height:auto !important; line-height:24px !important; text-transform:uppercase; background:#000; border:1px solid #000; color:#fff; vertical-align:top;}
.btn.btn-primary:hover, .btn.btn-primary:focus{ background:#2b2273; border-color:#2b2273; color:#fff;}
.btn.btn-default:hover, .btn.btn-default:focus{ background:#2b2273; border-color:#2b2273; color:#fff;}
.btn-readmore{ padding:0px; position:relative; color:#222; font-size:16px; padding-right:15px; font-weight:700;}
.btn-readmore:before{ content:"\f105"; font-family:FontAwesome; position:absolute; right:0px; font-size:14px; color:#222; font-weight:400;}
.btn-readmore:after{ content:""; width:0px; height:1px; position:absolute; left:0px; bottom:0px; background:#2b2273; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
.btn-readmore:hover{ color:#000;}
.btn-readmore:hover:before{ color:#000;}
.btn-readmore:hover:after{ width:100%;}
.btn-readmore.white{ color:#fff;}
.btn-readmore.white:before{ color:#fff;}
.btn-readmore.white:after{ background:#fff;}
.btn-readmore.white:hover{ color:#2b2273;}
.btn-readmore.white:hover:before{ color:#2b2273;}
.btn-readmore.white:hover:after{ width:100%;}

.header{ width:100% !important; height:101px; position:relative; float:left; font-family: 'Montserrat', sans-serif; background:#fff; border-bottom:1px solid #e1e1e1; -webkit-transition: all .4s ease-in-out; -moz-transition: all .4s ease-in-out; -o-transition: all .4s ease-in-out; transition: all .4s ease-in-out; text-align:center;}
.header a.navbar-brand{ display:inline-block; line-height:100px; font-size:0px;}
.header a.navbar-brand img{ max-height:48px; margin:0px; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; -o-transition: all .2s linear; transition: all .2s linear;}

.wrapper{ width:100%;}
.content{}
.content .row + .row{ margin-top:0px;}

.block{ padding:60px 0; position:relative;}
.block.grey{ background:#f7f7f7;}
.block.pt0{ padding-top:0px;}
.block.pb0{ padding-bottom:0px;}
.block h2{ font-size:30px; line-height:34px; color:#000; margin-bottom:20px; text-transform:none;}
.block h2 span{ color:#333;}
.block h3{ font-family:'Montserrat', sans-serif; font-size:20px; line-height:24px; color:#000; margin-bottom:20px; text-transform:none; font-weight:300;}
.block p + h3{ margin-top:20px;}
.block p + .btn{ margin-top:20px;}
.block .img-titolo{ max-width:100%; height:auto; margin-bottom:80px;}
.block ul{ margin:0px; padding:0px; margin-bottom:25px;}
.block li{ position:relative; margin-bottom:3px; padding-left:20px;}
.block li:last-child{ margin-bottom:0px;}
.block li:before{ content:"\f105"; font-family:FontAwesome; position:absolute; left:0px; font-size:16px; color:#2b2273;}
.block .columns2{ margin-top:30px; column-count:2; column-gap:30px; }

.block.presentation{}
.block.presentation h2{ margin-bottom:10px;}
.block.presentation.black h2{ color:#fff;}
.block.presentation.black p, .block.presentation.black li{ color:#e1e1e1;}
.block.presentation .main-image{ width:100%; margin-bottom:40px;}
.block.presentation .image + p{ margin-top:30px;}
.block.presentation .btn{ margin-top:20px;}
.block.presentation.center .main-image{ margin-bottom:0px;}
.block.presentation.center h2{ margin-bottom:20px;}
.block.presentation.center h2 a{ font-weight:900;}
.block.presentation .row + .row{ margin-top:40px;}

.block.map{ padding:0px;}
.block.map .iframe{ width:100%; height:500px; border-radius:0px;}
.block.map .iframe .map-content{ padding:15px; font-size:14px; line-height:20px; margin-bottom:0px;}
.block.map .iframe .map-content h2{ max-width:200px; font-size:18px; line-height:20px; color:#000; font-weight:700; margin-bottom:10px;}
.block.map .iframe .map-content{ font-family:'Montserrat', sans-serif; font-size:20px; line-height:24px; font-size:14px; line-height:20px; margin-bottom:0px;}
.block.map .iframe .map-content a{ display:inline-block; font-weight:700; margin-top:5px; text-decoration:underline;}
.block.map .iframe .map-content a:hover{ text-decoration:none;}

.block.store-locator{}
.block.store-locator .row{ margin:0 -15px; display:flex; flex-wrap:wrap;}
.block.store-locator .row:before, .block.store-locator .row:after{ content:none;}
.block.store-locator .row [class*="col-"]{ padding:0px 15px; margin-bottom:30px;}
.block.store-locator .item{ height:100%; margin-bottom:0px; background:#000; text-align:center; background: rgb(0,0,0); background: linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(102,102,102,1) 100%); padding:30px; position:relative; overflow:hidden; background:#f7f7f7;}
.block.store-locator .item .text h4{ font-size:20px; line-height:24px; margin-bottom:10px; color:#000; font-weight:400; text-transform:none; position:relative; z-index:2; }
.block.store-locator .item .text p{ font-size:16px; line-height:22px; color:#666; position:relative; z-index:2;}
.block.store-locator .item .text p:last-child{ margin-bottom:0px;}
.block.store-locator .item .actions{ clear:both; width:100%; float:left;}
.block.store-locator .item .actions ul{ margin:0px; padding:0px; display:inline-block;}
.block.store-locator .item .actions li{ clear:both; padding-left:0px; float:left; margin:0px;}
.block.store-locator .item .actions li a{ width:32px; height:32px; float:left; position:relative; background:#000; color:#fff; border-radius:50%; text-indent:-9999px; background-size:16px 16px; background-repeat:no-repeat; background-position:center center;}
.block.store-locator .item .actions li.web a{ background-image:url(../images/icon-link.png);}

.footer{ width:100%; position:relative; overflow:hidden; display:inline-block; width:100%; float:left; background:#fff; border-top:1px solid #e1e1e1; background-size:cover; background-position:center 60%; background-repeat:no-repeat;}
.footer > *:nth-child(2n){ background:none;}
.footer .footer-extra{ padding:20px 0; background:none;}
.footer .footer-extra .row{ padding:0px;}
.footer .footer-extra p{ color:#000; font-size:12px; line-height:20px; font-weight:400;}
.footer .footer-extra a{ color:#000; font-weight:400;}
.footer .footer-extra a:hover{ color:#000;}


@media (max-width: 1200px) {
	
	p, li{ font-size:16px; line-height:22px;}
	

}



@media (min-width: 992px) {
	
	.header .navbar-collapse{ display:block;}
	
}

@media (max-width: 991px) {
	

	.footer{ padding:20px 0;}
	.footer .footer-extra{ padding-top:20px;}
	.footer .footer-extra p{ line-height:16px; text-align:center;}
	.footer .footer-extra .text-right{ text-align:center;}
	


}

@media (max-width: 768px) {
	
	p, li{ font-size:15px; line-height:21px;}
	
	.block.store-locator .row [class*="col-"]{ width:100%;}
	
	
}


@media (max-width: 380px) {


}