@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@200;300;400;600;700&display=swap');

body{ font-size:16px; font-family: 'Outfit', sans-serif !important; background-color:#f7f7f7; color:#000; min-height:100vh;}
body:before{ content:""; width:100%; height:100%; position:fixed; left:0px; top:0px;}

.fancybox-container{ z-index:99999999;}

body.compleanno:before{ background-image:url(../images/texture/texture-compleanno01.png); opacity:0.1;}
body.compleanno2:before{ background-image:url(../images/texture/texture-compleanno02.png); opacity:0.05;}
body.halloween:before{ background-image:url(../images/texture/texture-halloween01.png); opacity:0.035;}
body.halloween2:before{ background-image:url(../images/texture/texture-halloween02.png); opacity:0.05;}
body.sanvalentino:before{ background-image:url(../images/texture/texture-sanvalentino01.png); opacity:0.1;}
body.sanvalentino2:before{ background-image:url(../images/texture/texture-sanvalentino02.png); opacity:0.1;}
body.natale:before{ background-image:url(../images/texture/texture-natale01.png); opacity:0.1;}
body.natale2:before{ background-image:url(../images/texture/texture-natale02.png); opacity:0.05;}
body.pasqua:before{ background-image:url(../images/texture/texture-pasqua01.png); opacity:0.1;}
body.pasqua2:before{ background-image:url(../images/texture/texture-pasqua02.png); opacity:0.035;}
body.laurea:before{ background-image:url(../images/texture/texture-laurea01.png); opacity:0.05;}
body.laurea2:before{ background-image:url(../images/texture/texture-laurea02.png); opacity:0.05;}
body.battesimo:before{ background-image:url(../images/texture/texture-battesimo01.png); opacity:0.05;}
body.battesimo2:before{ background-image:url(../images/texture/texture-battesimo02.png); opacity:0.05;}
body.matrimonio:before{ background-image:url(../images/texture/texture-matrimonio01.png); opacity:0.1;}
body.matrimonio2:before{ background-image:url(../images/texture/texture-matrimonio02.png); opacity:0.05;}
body.ferragosto:before{ background-image:url(../images/texture/texture-ferragosto01.png); opacity:0.05;}
body.ferragosto2:before{ background-image:url(../images/texture/texture-ferragosto02.png); opacity:0.05;}
body.addiocelibato:before{ background-image:url(../images/texture/texture-addiocelibato01.png); opacity:0.05;}
body.addiocelibato2:before{ background-image:url(../images/texture/texture-addiocelibato02.png); opacity:0.03;}
body.addionubilato:before{ background-image:url(../images/texture/texture-addionubilato01.png); opacity:0.05;}
body.addionubilato2:before{ background-image:url(../images/texture/texture-addionubilato02.png); opacity:0.05;}
body.cenaaziendale:before{ background-image:url(../images/texture/texture-cenaaziendale01.png); opacity:0.05;}
body.cenaaziendale2:before{ background-image:url(../images/texture/texture-cenaaziendale02.png); opacity:0.05;}
body.capodanno:before{ background-image:url(../images/texture/texture-capodanno01.png); opacity:0.05;}
body.capodanno2:before{ background-image:url(../images/texture/texture-capodanno02.png); opacity:0.1;}

form{ margin:0px;}
::selection{ background:var(--primary-color-website); color:#fff; -webkit-background-clip: unset; -webkit-text-fill-color:#fff;}
::-moz-selection{ background:var(--primary-color-website); color:#fff; -webkit-background-clip: unset; -webkit-text-fill-color:#fff;}
h1, h2, h3, h4, h5, h6{ font-family: 'Outfit', sans-serif; font-weight:700;}
a{ color:var(--primary-color-website); 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, a:focus{ color:var(--primary-color-website);}
p, li{ color:#000; font-size:17px; line-height:1.3; font-weight:300;}
p{ margin-bottom:10px;}
p strong{ font-weight:600;}
strong{ font-weight:600;}
ul p{ line-height:26px;}
.container-fluid{ padding:0 60px;}
.container-fluid.container0{ padding:0px;}
.row{ margin:0 -20px;}
.row [class*="col-"]{ padding:0 20px;}
.row.row0{ margin:0px;}
.row.row0 > [class*="col-"]{ padding:0;}
.row.row01{ margin-left:-1px; margin-right:-1px;}
.row.row01 > [class*="col-"]{ padding:0 1px;}
.row.row05{ margin-left:-5px; margin-right:-5px;}
.row.row05 > [class*="col-"]{ padding:0 5px;}
.row.row10{ margin-left:-10px; margin-right:-10px;}
.row.row10 > [class*="col-"]{ padding:0 10px;}
.row.row15{ margin-left:-15px; margin-right:-15px;}
.row.row15 > [class*="col-"]{ padding:0 15px;}
.row.row40{ margin-left:-40px; margin-right:-40px;}
.row.row40 > [class*="col-"]{ padding:0 40px;}
.row.row30{ margin-left:-30px; margin-right:-30px;}
.row.row30 > [class*="col-"]{ padding:0 30px;}
.row.row60{ margin-left:-60px; margin-right:-60px;}
.row.row60 > [class*="col-"]{ padding:0 60px;}
.row.flex{ display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap;}
.row.flex > [class*="col-"]{ display:-webkit-box; display:-ms-flexbox; display:flex; }
.row.flex:before, .row.flex:after{ content:none;}
.row.center{ align-items: center;}
.row.bottom{ align-items: end;}
.row.flex [class*="col-"].pull-right{ order:2;}
.mt0{ margin-top:0px !important;}
.countup{ display:inline; font-size:inherit; font-weight:inherit; margin:0px; white-space:normal; color:inherit;}
.countup > *{ float:left; font-size:inherit; font-weight:inherit;}
hr{ max-width:100%; margin:20px auto;}
hr.site{ width:100%; max-width:100%; height:1px; margin:0px; border:0px; background:#e1e1e1;}

label{ font-size:14px; text-align:left; font-weight:400; color:#000;}
input[type=text], input[type=email], input[type=password], input[type=search], input[type=tel], select, textarea{ font-family: 'Outfit', sans-serif; height:45px; font-size:15px; font-weight:300; background:#fff; border-radius:3px; -webkit-appearance: none; -moz-appearance: none; appearance: none; border:1px solid #d3d3d3; box-shadow:1px 1px 15px rgba(0,0,0,0.05);}
input[type="text"].error, input[type="email"].error{ background:rgba(193,30,30,0.1); border-color:#c11e1e; box-shadow:0 0 0 3px rgba(193,30,30,0.2);}
input[type="text"].error::placeholder, input[type="email"].error::placeholder{ color:c11e1e; opacity:1; }
input[type="text"].error:-ms-input-placeholder, input[type="email"].error:-ms-input-placeholder{ color:#b5b5b5;}
input[type="text"].error::-ms-input-placeholder, input[type="email"].error{ color:#b5b5b5;}
select{ width:100%; padding:10px 15px; -webkit-appearance:none;}
textarea, textarea.form-control{ height:100px; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
input[type=text]:focus, input[type=email]:focus, input[type=password]:focus, input[type=search]:focus, input[type=tel]:focus, textarea:focus{ border-color:#000;}
.form-group > label{ font-size:14px; text-align:left; font-weight:400; color:#000;}
.form-group > label span{ font-size:12px; color:#000; vertical-align:top;}

.chosen-container{ border-radius:0px; font-size:15px; background:#fff;}
.chosen-container-single .chosen-single{ height:48px; line-height:48px; padding-left:20px;}
.chosen-container-single .chosen-single span{ font-size:15px; font-weight:400; margin-right:35px;}
.chosen-container .chosen-drop{ border-radius:0px;}
.chosen-container .chosen-results{ border-radius:0px; padding:10px;}
.chosen-container .chosen-results li{ font-size:15px; line-height:30px; border-radius:0px; color:#1a1a1a;}
.chosen-container .chosen-results li:hover{ background:var(--primary-color-website); color:#fff; border-radius:0px;}
.chosen-container-single .chosen-single div:after{ line-height:43px; font-size:20px;}
.widget .chosen-single{ font-weight:400; background:#f7f7f7;}
.widget .chosen-drop{ background:#f7f7f7;}
input[type="submit"].btn{ height:50px;}
.form-group{ margin-bottom:25px;}
.preloader{ position: fixed; left: 0; top: 0; opacity: 1; z-index: 99999; width: 100%; height: 100%; background-image:url(../images/loading.gif); background-position:center center; background-size:200px 200px; z-index:99999999;}

.btn{ font-family: 'Outfit', sans-serif; font-size:16px; height:auto; padding:15px 25px; line-height:24px; font-weight:400; margin:0px; text-transform:uppercase; border-radius:5px; white-space:normal;}
.btn.btn-default{ background:var(--primary-color-website); border:1px solid var(--primary-color-website); color:#fff; vertical-align:top;}
.btn.btn-default:hover, .btn.btn-default:focus{ background:#000; border-color:#000; color:#fff;}
.btn.btn-primary{ background:none; border:1px solid var(--primary-color-website); color:var(--primary-color-website); vertical-align:top;}
.btn.btn-primary:hover, .btn.btn-primary:focus{ background:var(--primary-color-website); border-color:var(--primary-color-website); color:#fff;}
.btn.btn-big{ font-size:22px; padding:20px 40px;}
.btn.btn-big span{ border-bottom:1px solid #fff;}
.btn.btn-wa{ background:#25d366; border-color:#25d366; padding-left:55px;}
.btn.btn-wa i{ font-size:25px; position:absolute; left:25px; margin:0px;}
.btn.btn-wa:hover, .btn.btn-wa:focus{ background:#000; border-color:#000;}
.btn.btn-phone{ background:var(--primary-color-website); border:1px solid var(--primary-color-website); padding-left:50px;}
.btn.btn-phone i{ font-size:18px; position:absolute; left:25px; top:18px; margin:0px;}
.btn.btn-phone:hover, .btn.btn-phone:focus{ background:#000; border-color:#000;}


a.readmore{ font-family: 'Outfit', sans-serif; display:inline-block; font-size:17px; line-height:26px; position:relative; font-weight:700; color:var(--primary-color-website);}
a.readmore:before{ content:""; width:0px; height:2px; position:absolute; right:0px; bottom:-3px; background:var(--primary-color-website); -webkit-transition: all .5s ease-in-out; -moz-transition: all .5s ease-in-out; -o-transition: all .5s ease-in-out; transition: all .5s ease-in-out;}
a.readmore:after{ content:""; width:24px; height:24px; position:absolute; right:-30px; top:2px; background-image:url(../images/icon-arrow.png); background-size:100% auto; background-repeat:no-repeat; background-position:center center;}
a.readmore:hover:before{ width:100%;}
a.readmore.backpage{ margin-left:30px;}
a.readmore.backpage:after{ left:-30px; top:1px; transform: rotate(-180deg);}

.content .form .row{ margin:0 -10px;}
.content .form .row + .row{ margin-top:0px;}
.content .form .row [class*="col-"]{ padding:0 10px;}
.check{ width:100%; float:left;}
.check input[type=checkbox] {display: none;}
.check label{float:left; width:100%; position:relative; font-weight:400; color:#5c5c5c; vertical-align:top;}
.check label:before{ width:24px; height:24px; left:0px; background:#fff; border:1px solid #c7c7c7; content:""; position:absolute; margin-right:10px; cursor:pointer; border-radius:5px;}
.check input[type=checkbox]:checked + label:before { font-family:FontAwesome; content:"\f00c"; text-align: center; line-height:22px; font-size:14px; color:var(--primary-color-website);}
.check label span{ display:inline-block; padding-left:34px; font-size:14px; text-align:left; color:#000; font-weight:300; line-height:24px; float:left;}
.check label span a{ font-weight:700;}
.check + .check{ margin-top:5px;}

.navbar-toggle{ width:50px; height:50px; background:none; line-height:50px; position:absolute; right:30px; top:15px; background-color:var(--primary-color-website); border-radius:50%;}
.navbar-toggle i{ text-indent:-9999px; overflow:hidden; width:32px; height:32px; background-image:url(../images/icon-toggle.png); background-size:100% auto; background-position:center center; background-repeat:no-repeat;}
.navbar-toggle span{ font-size:20px; line-height:50px; color:#fff;}
.navbar-toggle:hover{ background:var(--primary-color-website);}
.navbar-toggle:hover i{ color:#fff;}
.check + input[type="submit"]{ margin-top:20px;}
.row.row-eq-height{display:flex}

.languages-fixed{ position:fixed; right:0px; top:50%; transform: translateY(-50%); z-index:20;}
.languages-fixed ul{ width:100%; float:left; margin:0px; padding:10px; background:#fff; border:1px solid #e1e1e1; border-top-left-radius:10px; border-bottom-left-radius:10px}
.languages-fixed ul li{ clear:both; width:24px; float:left; margin-bottom:10px;}
.languages-fixed ul li:last-child{ margin-bottom:0px;}
.languages-fixed ul li a{ opacity:0.3;}
.languages-fixed ul li a:hover, .languages-fixed ul li.active a{ opacity:1;}

/* header */

.header{ width:100% !important; float:left; font-family: 'Outfit', sans-serif; text-align:center; background:none;}
.header .navbar-brand{ height:auto; display:inline-block; float:none; font-size:0px; padding:0px; line-height:180px;}
.header .navbar-brand img{ max-width:300px; max-height:120px; margin:0px; display:inline-block;}

.wrapper{ overflow:unset;}
.content{ width:100%; float:left; background:none;}
.content .row + .row{ margin-top:60px;}

/* blocchi generale */

.block{ padding:80px 0; position:relative; z-index:2;}
.block.gray{ background:#f7f7f7;}
.block.pt0{ padding-top:0px !important;}
.block.pb0{ padding-bottom:0px !important;}
.block h1, .block h2{ font-size:55px; line-height:60px; color:var(--primary-color-website); margin-bottom:0px; font-weight:300;}
.block h1.alternate, .block h2.alternate{ color:#000;}
.block h1:last-child, .block h2:last-child{ margin-bottom:0px;}
.block h3{ font-size:24px; line-height:32px; color:#000; margin-bottom:15px; text-transform:none; font-weight:300;}
.block h3:last-child{ margin-bottom:0px;}
.block h4{ font-size:20px; line-height:28px; color:#000; margin-bottom:15px; text-transform:none; font-weight:300;}
.block h4:last-child{ margin-bottom:0px;}
.block ul{ margin:0px; padding:0px; margin-bottom:25px;}
.block ul:last-child{ margin-bottom:0px;}
.block li{ position:relative; margin-bottom:0px; padding-left:20px;}
.block li:last-child{ margin-bottom:0px;}
.block li:before{ content:"\f105"; font-family:FontAwesome; position:absolute; left:0px; font-size:15px; color:var(--primary-color-website);}
.block ul.check li:before{ content:"\f00c"; font-size:13px;}
.block h3 + a.readmore{ margin-top:20px;}
.block blockquote{ font-size:17px; line-height:26px; margin:0px; margin-bottom:10px; padding:0px; border:0px; font-weight:300;}

.block.presentation h2{ margin-bottom:10px;}
.block.presentation h2:last-child{ margin-bottom:0px;}
.block.presentation h2{ margin-bottom:0px;}
.block.presentation h2:last-child{ margin-bottom:0px;}
.block.presentation h2 + h3{ margin-top:10px;}
.block.presentation h2 + ul{ margin-top:20px;}
.block.presentation h3{ margin-bottom:0px;}
.block.presentation h2 + p{ margin-top:15px;}
.block.presentation h3 + p{ margin-top:15px;}
.block.presentation h3 + ul{ margin-top:15px;}
.block.presentation h3 + .btn{ margin-top:20px;}
.block.presentation h2 + .btn{ margin-top:30px;}
.block.presentation h3 + h2{ margin-top:30px;}
.block.presentation h1 + blockquote{ margin-top:15px;}
.block.presentation h2 + blockquote{ margin-top:15px;}
.block.presentation p{ }
.block.presentation p + h2{ margin-top:20px;}
.block.presentation p + h3{ margin-top:15px;}
.block.presentation p + .readmore{ margin-top:10px;}
.block.presentation p + .btn{ margin-top:20px;}
.block.presentation .video-wrap{ position:relative;}
.block.presentation .video-wrap .image{ width:100%; position: relative; padding-bottom:56.25%; height:0; margin:0; left:0px; top:0px; background-size:cover; background-position:center center; z-index:2; cursor:pointer;}
.block.presentation .video-wrap .image video{ width:100%; height:100%; position:absolute; top:0; left:0;}

.block.offer{ padding:0px; padding-bottom:40px;}
.block.offer .inner{ max-width:100%; max-width:800px; margin:0 auto; background:#fff; border-radius:20px; padding:40px; box-shadow:0px 0px 20px rgba(0,0,0,0.1);}
.block.offer .item{ margin-bottom:40px;}
.block.offer .item .item-title{ text-align:center; margin-bottom:40px;}
.block.offer .item .item-title h2{ font-size:40px; line-height:1.1; font-weight:700;}

.block.offer .item.thankyou{ margin:0px; min-height:200px;}
.block.offer .item.thankyou .text{ text-align:center;}
.block.offer .item.thankyou .text h2{ font-size:40px; line-height:1.1; font-weight:700;}
.block.offer .item.thankyou .text p{ font-size:22px; line-height:1.5;}

.block.offer .item.name{ text-align:center; margin-bottom:20px;}
.block.offer .item.name .text p{ font-size:22px; line-height:1.2;}

.block.offer .item.cover{ width:100%; height:0px; padding-bottom:60%; position:relative; border-radius:20px; overflow:hidden; box-shadow:10px 10px 20px rgba(0,0,0,0.1);}
.block.offer .item.cover .image{ width:100%; height:100%; position:absolute; left:0px; top:0px; background-size:cover; background-position:center center;}
.block.offer .item.cover .text{ width:100%; height:auto; position:absolute; left:0px; bottom:0px; background:var(--primary-color-website); padding:10px 30px; text-align:center;}
.block.offer .item.cover .text h2{ font-size:24px; line-height:1.2; color:#fff; font-weight:600; text-transform:uppercase;}

.block.offer .item.intro .text{ width:100%; padding:0 60px; text-align:center;}
.block.offer .item.intro .text p{ font-size:22px; line-height:1.5;}

.block.offer .item.menu .section{}
.block.offer .item.menu .section .section-title{ text-align:center; margin-bottom:5px;}
.block.offer .item.menu .section .section-title h2{ font-size:30px; line-height:1.2; font-weight:700;}
.block.offer .item.menu .section .item{ text-align:center; margin-bottom:20px;}
.block.offer .item.menu .section .item .head{ margin:0px;}
.block.offer .item.menu .section .item .head .name h3{ font-size:24px; line-height:1.1; font-weight:600; margin:0px;}
.block.offer .item.menu .section .item .head + .body{ margin-top:3px;}
.block.offer .item.menu .section .item .body .description{ padding:0 10%;}
.block.offer .item.menu .section .item .body .description ul li{ padding-left:0px;}
.block.offer .item.menu .section .item .body .description ul li:before{ display:none;}

.block.offer .item.menu .wrap{ text-align:center; padding:0 10%;}
.block.offer .item.menu .wrap h2{ font-size:30px; line-height:1.2; font-weight:700;}
.block.offer .item.menu .wrap h3{ font-size:24px; line-height:1.1; font-weight:600;}
.block.offer .item.menu .wrap h2 + h3{ margin-top:10px;}
.block.offer .item.menu .wrap h3 + p{ margin-top:3px;}
.block.offer .item.menu .wrap p{ margin-bottom:5px;}
.block.offer .item.menu .wrap p + h2{ margin-top:10px;}
.block.offer .item.menu .wrap p + h3{ margin-top:10px;}
.block.offer .item.menu .wrap h3 + h3{ margin-top:5px;}
.block.offer .item.menu .wrap ul{ margin-bottom:5px;}
.block.offer .item.menu .wrap ul li{ padding-left:0px;}
.block.offer .item.menu .wrap ul li:before{ display:none;}
.block.offer .item.menu .note{ padding:10px 30px; background:#f7f7f7; text-align:center; border-radius:10px; margin-top:20px;}
.block.offer .item.menu .note p{ font-size:15px; line-height:1.4;}

.block.offer .item.services .item-list{ width:100%; max-width:600px; margin:0 auto;}
.block.offer .item.services .columns-wrap{ display:flex; flex-wrap:wrap; margin:0 -20px;}
.block.offer .item.services .columns-wrap .column{ width:100%; padding:0 20px;}
.block.offer .item.services .element{ width:100%; display:flex; flex-wrap:nowrap; align-items:flex-start; margin-bottom:20px;}
.block.offer .item.services .element .image{ width:25%; float:left; border-radius:10px; background-color:var(--primary-color-website); overflow:hidden; position:relative; box-shadow:5px 5px 15px rgba(0,0,0,0.1);}
.block.offer .item.services .element .image span.background{ width:100%; height:0px; float:left; padding-bottom:100%; background-size:cover; background-position:center center;}
.block.offer .item.services .element .image span.number{ position:absolute; font-size:16px; font-weight:600; line-height:1; padding:10px; bottom:0px; right:0px; border-top-left-radius: 5px; background:var(--primary-color-website); color:#fff; z-index:10;}
.block.offer .item.services .element .image.noimage{ display:flex; flex-wrap:nowrap; justify-content:center; align-items:center;}
.block.offer .item.services .element .image.noimage span.number{ font-size:26px; line-height:1; top:50%; right:50%; bottom:auto; transform: translate(50%,-50%); white-space:nowrap; padding:0px;}
.block.offer .item.services .element .image span.pricing{ position:absolute; font-size:16px; padding:0px; font-weight:600; line-height:1; padding:10px; bottom:0px; right:0px; border-top-left-radius: 5px; background:var(--primary-color-website); color:#fff; z-index:10;}
.block.offer .item.services .element .image.noimage span.pricing{ font-size:26px; line-height:1; top:50%; right:50%; bottom:auto; transform: translate(50%,-50%); white-space:nowrap; padding:0px;}
.block.offer .item.services .element .text{ width:75%; float:left; padding-left:30px; margin-top:auto; margin-bottom:auto;}
.block.offer .item.services .element .text h3{ font-size:24px; line-height:1.1; font-weight:600; margin:0px;}
.block.offer .item.services .element .text h3 + p{ margin:0px; margin-top:10px;}
.block.offer .item.services .element .text .total{ font-weight:600; margin-top:5px;}
.block.offer .item.services .note{ padding:10px 30px; background:#f7f7f7; text-align:center; border-radius:10px; margin-top:20px;}
.block.offer .item.services .note p{ font-size:15px; line-height:1.4;}

.block.offer .item.quotation .item-list{ width:auto; margin:0 auto;}
.block.offer .item.quotation .columns-wrap{ display:flex; flex-wrap:wrap; align-items:center; flex-direction:column; margin:0 -20px;}
.block.offer .item.quotation .columns-wrap .column{ padding:0 20px;}
.block.offer .item.quotation .columns-wrap .column:last-child .element{ margin-bottom:0px;}
.block.offer .item.quotation .element{ width:100%; min-width:400px; min-height:92px; display:flex; position:relative; flex-wrap:nowrap; align-items:flex-start; padding-left:110px; border:1px solid #e1e1e1; border-radius:10px; margin-bottom:10px;}
.block.offer .item.quotation .element .icon{ width:80px; height:80px; position:absolute; line-height:80px; color:#fff; text-align:center; font-size:40px; left:5px; top:5px; background:var(--primary-color-website); border-radius:10px; margin:0px;}
.block.offer .item.quotation .element .icon i{ vertical-align:top; line-height:80px;}
.block.offer .item.quotation .element .text{ margin-top:auto; margin-bottom:auto;}
.block.offer .item.quotation .element .text h3{ font-size:22px; line-height:1; font-weight:400; margin:0px;}
.block.offer .item.quotation .element .text h3 + p{ font-size:36px; line-height:1; margin:0px; margin-top:5px; font-weight:700;}
.block.offer .item.quotation .note{ padding:10px 30px; background:#f7f7f7; text-align:center; border-radius:10px; margin-top:40px;}
.block.offer .item.quotation .note p{ font-size:15px; line-height:1.4;}
.block.offer .item.quotation .conditions{ padding:0 60px; text-align:center; border-radius:10px; margin-top:15px;}
.block.offer .item.quotation .conditions h3{ font-size:20px; line-height:1; font-weight:700; margin:0px;}
.block.offer .item.quotation .conditions h3 + p{ margin-top:5px;}
.block.offer .item.quotation .conditions p{ font-size:15px; line-height:1.4;}

.block.offer .item.gallery-images .columns-video{ height:0px; overflow:hidden; padding-bottom:56.25%; position:relative; margin-bottom:20px; box-shadow:5px 5px 15px rgba(0,0,0,0.1); border-radius:10px; }
.block.offer .item.gallery-images .columns-video iframe{ height:100%; left:0px; position:absolute; top:0px; width:100%;}
.block.offer .item.gallery-images .columns-wrap{ display:flex; flex-wrap:wrap; margin:0 -10px; justify-content:center;}
.block.offer .item.gallery-images .columns-wrap .column{ width:33.33%; padding:0 10px;}
.block.offer .item.gallery-images .image{ width:100%; height:0px; padding-bottom:100%; position:relative; border-radius:10px;  margin-bottom:20px; box-shadow:5px 5px 15px rgba(0,0,0,0.1);}
.block.offer .item.gallery-images .image a{ width:100%; height:100%; position:absolute; left:0px; top:0px; background-size:cover; background-position:center center; border-radius:10px; }
.block.offer .item.gallery-images .image a:hover{ opacity:0.75;}
.block.offer .item.gallery-images .image a:focus{ outline:#000 solid 2px; outline-offset:2px;}

.block.offer .item.gallery-images.nfoto-1 .columns-wrap .column{ width:75%;}
.block.offer .item.gallery-images.nfoto-2 .columns-wrap .column{ width:50%;}
.block.offer .item.gallery-images.nfoto-4 .columns-wrap .column{ width:50%;}

.block.offer .item.faq{}
.block.offer .item.faq [class*="col-"]:first-child h4{ border-top:0px solid #f7f7f7; margin-top:0px;}
.block.offer .item.faq [class*="col-"] h4{ background:#e1e1e1; margin-top:10px;}
.block.offer .item.faq [class*="col-"]:nth-child(odd) h4{ }
.block.offer .item.faq h4{ position:relative; text-align:left; font-size:24px; line-height:1.1; padding:15px 30px 15px 30px; padding-left:50px; border:0px; margin:0px; text-transform:none; font-weight:600; color:#000; border-radius:10px; border-bottom-left-radius:0px; border-bottom-right-radius:0px; -webkit-transition: all .2s ease-in-out; -moz-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out;}
.block.offer .item.faq h4:before{ content:"\f054"; font-family:FontAwesome; position:absolute; top:20px; left:20px; font-size:14px; line-height:1.4; font-weight:300; transform: rotate(45deg); -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; color:var(--primary-color-website);}
.block.offer .item.faq h4.collapsed{ background:#f7f7f7; color:#000; border-radius:10px;}
.block.offer .item.faq h4.collapsed:before{ transform: rotate(0deg); color:var(--primary-color-website);}
.block.offer .item.faq .panel-body{ padding:0px 60px 0px 50px; background:#f7f7f7; text-align:left; -webkit-transition: all .2s ease-in-out; -moz-transition: all .2s ease-in-out; -o-transition: all .2s ease-in-out; border-bottom-left-radius:10px; border-bottom-right-radius:10px;}
.block.offer .item.faq .panel-body ul:last-child{ margin-bottom:30px;}
.block.offer .item.faq .panel-body ul li{ color:#000;}
.block.offer .item.faq .panel-body p{ color:#000;}
.block.offer .item.faq .panel-body p:last-child{ margin-bottom:30px;}
.block.offer .item.faq .panel-body{ background:#e1e1e1;}

.block.offer .item.contacts{}
.block.offer .item.contacts .columns-wrap{ display:flex; flex-wrap:wrap; justify-content:center; margin:0;}
.block.offer .item.contacts .columns-wrap .column{ width:50%; padding:0; border-right:1px solid #e1e1e1;}
.block.offer .item.contacts .columns-wrap .column:last-child{ border:0px;}
.block.offer .item.contacts .columns-wrap .column.address{ width:100%; border:0px; margin-bottom:20px;}
.block.offer .item.contacts .columns-wrap .column.email{ max-width:350px;}
.block.offer .item.contacts .columns-wrap .column.telephone{ max-width:350px; border:0px;}
.block.offer .item.contacts .columns-wrap .column.socialnetwork{ width:100%; border:0px; margin-top:20px;}
.block.offer .item.contacts .element{ width:100%; text-align:center; padding:0 10px;}
.block.offer .item.contacts .element .icon{ display:flex; flex-wrap:nowrap; align-items:center; justify-content:center; margin-bottom:10px;}
.block.offer .item.contacts .element .icon i{ font-size:25px; line-height:1; color:var(--primary-color-website); margin:0px;}
.block.offer .item.contacts .element .icon span{ font-size:20px; font-weight:700; color:var(--primary-color-website); margin-left:10px;}
.block.offer .item.contacts .element .text p{ font-size:22px; line-height:1.2;}
.block.offer .item.contacts .element .text .link{ font-size:22px; line-height:1;}
.block.offer .item.contacts .element .text .link a{ color:#000; font-weight:300;}
.block.offer .item.contacts .element .text .social{ width:100%; margin-top:20px;}
.block.offer .item.contacts .element .text .social ul{ margin:0; width:auto; display:flex; justify-content:center; display:flex; flex-wrap:wrap;}
.block.offer .item.contacts .element .text .social li{ width:auto;float:left; padding:0px; margin:0 5px 0 0;}
.block.offer .item.contacts .element .text .social li:last-child{ margin:0px;}
.block.offer .item.contacts .element .text .social li:before{ display:none;}
.block.offer .item.contacts .element .text .social li a{ float:left;position:relative;border-radius:50%;background:#707173;}
.block.offer .item.contacts .element .text .social li a span.circle{width:40px;height:40px;float:left;color:#fff;text-align:center; margin:0px;}
.block.offer .item.contacts .element .text .social li a span.circle i{font-size:18px;line-height:40px;vertical-align:top;}
.block.offer .item.contacts .element .text .social li.facebook a{background:#3b5999}
.block.offer .item.contacts .element .text .social li.instagram a{background:#E4405F}
.block.offer .item.contacts .element .text .social li.linkedin a{background:#0A66C2}
.block.offer .item.contacts .element .text .social li.youtube a{background:#cd201f}
.block.offer .item.contacts .element .text .social li.vimeo a{background:#1AB7EA}
.block.offer .item.contacts .element .text .social li.tripadvisor a{background:#00af87}
.block.offer .item.contacts .element .text .social li.tiktok a{background:#333;}
.block.offer .item.contacts .element .text .social li a:hover{ background:#000;}

/* footer */

.footer{ width:100%; position:relative; z-index:2; display:inline-block; font-family: 'Outfit', sans-serif; width:100%; float:left; background:none; padding-bottom:80px;}
.footer .footer-extra{ padding:0px; padding-bottom:30px; background:none; text-align:center;}
.footer .footer-extra .row{ padding:0px;}
.footer .footer-extra .row p{ font-size:14px; line-height:22px; color:#000; font-weight:300;}
.footer .footer-extra .row p span{ margin:0 5px;}
.footer .footer-extra .row a{ color:#000; font-weight:inherit;}
.footer .footer-extra .row a:hover{ color:var(--primary-color-website);}

.whatsappfixed{ width:60px; height:60px; position:fixed; right:20px; bottom:20px; background:#25D366; border-radius:50%; font-size:30px; line-height:60px; text-align:center; color:#fff; box-shadow:2px 2px 5px rgba(0,0,0,0.2); z-index:200; animation: pulse 1.5s infinite;}
.whatsappfixed:hover, .whatsappfixed:focus{ background:#000; color:#fff;}

.banner-fixed{ width:100%; position:fixed; left:0px; bottom:0px !important; z-index:99999999; opacity:0; visibility:hidden; -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;} 
.banner-fixed .container{ max-width:840px; padding:0px;}
.banner-fixed.show{ opacity:1; visibility:visible;}
.banner-fixed .box{ display:flex; flex-wrap:nowrap; align-items:center; padding:15px 60px; border-top-left-radius:10px; border-top-right-radius:10px; background:#e1e1e1; border-bottom-width:0px; box-shadow:0px 0px 15px rgba(0,0,0,0.1);}
.banner-fixed .box .text{ font-size:26px; line-height:1; color:var(--primary-color-website); font-weight:600;}
.banner-fixed .box .action{ margin-left:auto;}

body.modal-open .banner-fixed{ z-index:99999;}

.modal-open .modal{ overflow:auto;}
.modal-backdrop{ z-index:99999; background:#e1e1e1;}
.modal{ z-index:999999; border-radius:0px; display:none !important; padding:40px 0;}
.modal.in { display:flex !important; align-items:center; flex-direction: column; justify-content:center;}
.modal .modal-dialog{ width:640px; margin:0px; overflow:auto !important; box-shadow:5px 5px 50px rgba(0,0,0,0.2);}
.modal.in .modal-dialog{ top:auto; transform:none;}
.modal .modal-dialog{ overflow:hidden; border-radius:10px;}
.modal .close{ width:48px; height:48px; position:absolute; background-color:#fff; background-image:url(../images/icon-close.png); background-size:100% 100%; top:0px; right:0px; text-shadow:0px 0px 0px #000; opacity:1; z-index:2; background-color:#f7f7f7; border-bottom-left-radius:5px;}
.modal .close:hover{ background-color:#e1e1e1;}
.modal .modal-content{ background:#fff; position:relative; padding:40px 60px; border:0px;}
.modal .modal-content .intro{ margin-bottom:20px;}
.modal .modal-content .intro h2{ font-size:30px; line-height:34px; color:var(--primary-color-website); margin:0px; font-weight:600;}
.modal .modal-content .intro h3{ font-size:22px; line-height:28px; color:#000; margin:0px; font-weight:300;}
.modal .modal-content .form .row{ margin:0 -10px;}
.modal .modal-content .form .row + .row{ margin-top:0px;}
.modal .modal-content .form .row [class*="col-"]{ padding:0 10px;}
.modal .modal-content .form .form-group{ margin-bottom:15px;}
.modal .modal-content .form .form-group .iti{ width:100%;}
.modal .modal-content .form .check-wrap{ width:100%; float:left; margin-bottom:20px;}
.modal .modal-content .form .check-wrap .text{ font-size:16px; line-height:24px; font-weight:300; margin-bottom:10px;}
.modal .modal-content .form .check-wrap .check{ clear:both; width:100%; float:left;}
.modal .modal-content .form .check-wrap .check input[type=checkbox]{display: none;}
.modal .modal-content .form .check-wrap .check label{ width:auto; display:inline-block; position:relative; font-weight:400; color:#5c5c5c; vertical-align:top;}
.modal .modal-content .form .check-wrap .check label:before{ width:22px; height:22px; left:0px; background:#fff; border:1px solid #d3d3d3; content:""; position:absolute; margin-right:10px; cursor:pointer; border-radius:3px; box-shadow:1px 1px 15px rgba(0,0,0,0.05);}
.modal .modal-content .form .check-wrap .check input[type=checkbox]:checked + label:before { font-family:FontAwesome; content:"\f00c"; text-align: center; line-height:20px; font-size:12px; color:#000;}
.modal .modal-content .form .check-wrap .check label span{ display:inline-block; min-height:22px; padding-left:37px; font-size:15px; text-align:left; color:#000; font-weight:300; line-height:22px; float:left;}
.modal .modal-content .form .check-wrap .check label span a{ color:#000; text-decoration:underline; font-weight:600;}
.modal .modal-content .form .check-wrap .check label span a:hover{ text-decoration:none;}
.modal .modal-content .form .check-wrap .check + .check{ margin-top:10px;}
.modal .modal-content .form .check-wrap .check.big{ margin-top:20px;}
.modal .modal-content .form .check-wrap .check.big label:before{ width:32px; height:32px;}
.modal .modal-content .form .check-wrap .check.big label span{ min-height:32px; padding-left:42px; padding-top:7px; font-size:18px; font-weight:600;}
.modal .modal-content .form .check-wrap .check.big input[type=checkbox]:checked + label:before{ line-height:30px; font-size:16px;}
.modal .modal-content .form .action .btn{ width:100%;}



@media (max-width: 1200px) {
	
	.whatsappfixed{ width:48px; height:48px; line-height:48px; right:15px; bottom:15px; font-size:26px;}
	
}

@media (max-width: 1100px) {
	
	
}

@media (max-width: 991px) {
	
	.footer .footer-extra .row p span{ margin:0 3px;}
	
	.modal .modal-dialog{ width:600px;}
	.modal .image{ margin-bottom:20px;}

}

@media (max-width: 840px){
	
	.block.offer .inner{ max-width:100%;}
	
	.banner-fixed .container{ max-width:100%;}
	.banner-fixed .box{ border-radius:0px;}	
	
}


@media (max-width: 768px){
	
	.container{ padding-left:20px; padding-right:20px;}
	
	.header .navbar-brand{ line-height:160px;}
	.header .navbar-brand img{ max-width:280px; max-height:100px;}
	
	.block.offer .inner{ max-width:100%; padding:30px; border-radius:15px;}
	.block.offer .item{ margin-bottom:30px;}
	.block.offer .item .item-title{ margin-bottom:20px;}
	.block.offer .item.cover{ border-radius:15px;}
	.block.offer .item.cover .text h2{ font-size:24px;}
	.block.offer .item.name .text p{ font-size:20px;}
	.block.offer .item.intro .text{ padding:0 30px;}
	.block.offer .item.intro .text p{ font-size:20px;}
	.block.offer .item .item-title h2{ font-size:36px;}
	.block.offer .item.menu .section .section-title h2{ font-size:26px;}
	.block.offer .item.menu .wrap h2{ font-size:26px;}
	.block.offer .item.menu .section .item .head .name h3{ font-size:22px;}
	.block.offer .item.menu .wrap h3{ font-size:22px;}
	.block.offer .item.faq h4{ font-size:22px;}
	.block.offer .item.services .element .text h3{ font-size:22px;}
	.block.offer .item.contacts .element .text p{ font-size:20px;}
	.block.offer .item.contacts .element .text .link{ font-size:20px;}
	.block.offer .item.quotation .conditions{ padding:0 30px;}
	.block.offer .item.quotation .element .text h3{ font-size:20px;}
	.block.offer .item.quotation .element .text h3 + p{ font-size:32px;}
	
	.block.offer .item.thankyou .text h2{ font-size:36px;}
	.block.offer .item.thankyou .text p{ font-size:20px;}
	
	.block.offer .item.gallery-images{ margin-bottom:20px;}
	
	.banner-fixed .box{ padding-left:20px; padding-right:20px;}
	.banner-fixed .box .text{ font-size:24px; padding-right:20px;}
	
	.footer .footer-extra .row p{ font-size:13px; line-height:20px;}
	
	.whatsappfixed{ right:10px; bottom:10px;}
	
	.block.offer .item.gallery-images.nfoto-1 .columns-wrap .column{ width:100%;}
	.block.offer .item.gallery-images.nfoto-2 .columns-wrap .column{ width:50%;}
	.block.offer .item.gallery-images.nfoto-3 .columns-wrap .column{ width:33.33%;}
	.block.offer .item.gallery-images.nfoto-4 .columns-wrap .column{ width:50%;}
	.block.offer .item.gallery-images.nfoto-5 .columns-wrap .column{ width:50%;}
	.block.offer .item.gallery-images.nfoto-6 .columns-wrap .column{ width:33.33%;}
	
}

@media (max-width: 640px){
	
	body:before{ background-size:400px 400px;}
	
	p, li{ font-size:16px;}
	
	.btn{ font-size:16px; padding:10px 20px;}
	
	.header .navbar-brand{ line-height:140px;}
	.header .navbar-brand img{ max-width:260px; max-height:90px;}
	
	.block.offer{ padding-bottom:20px;}
	.block.offer .item.intro .text{ padding:0px;}
	.block.offer .item.quotation .columns-wrap .column{ width:100%;}
	.block.offer .item.quotation .element{ width:100%; min-width:100%;}
	.block.offer .item.quotation .conditions{ padding:0px;}
	
	.block.offer .item.cover{ padding-bottom:75%;}
	
	.block.offer .item.menu .wrap{ padding:0 5%;}
	
	.block.offer .item.faq h4:before{ left:15px; top:17px;}
	.block.offer .item.faq h4{ padding-left:40px;}
	.block.offer .item.faq .panel-body{ padding-left:40px; padding-right:20px;}
	.block.offer .item.faq .panel-body p:last-child{ margin-bottom:20px;}
	.block.offer .item.faq .panel-body ul:last-child{ margin-bottom:20px;}
	
	.block.offer .inner{ padding:20px;}
	.block.offer .item.cover .text{ padding-left:20px; padding-right:20px;}
	.block.offer .item.intro .text p{ font-size:18px;}
	.block.offer .item.cover .text h2{ font-size:20px;}
	.block.offer .item .item-title h2{ font-size:30px;}
	.block.offer .item.menu .section .section-title h2{ font-size:22px;}
	.block.offer .item.menu .wrap h2{ font-size:22px;}
	.block.offer .item.menu .section .item .head .name h3{ font-size:20px;}
	.block.offer .item.menu .wrap h3{ font-size:20px;}
	.block.offer .item.services .element .text h3{ font-size:20px;}
	.block.offer .item.faq h4{ font-size:20px;}
	.block.offer .item.contacts .element .text p{ font-size:18px;}
	.block.offer .item.contacts .element .text .link{ font-size:18px;}
	.block.offer .item.contacts .element .icon i{ font-size:22px;}
	.block.offer .item.quotation .element .text h3{ font-size:18px;}
	.block.offer .item.quotation .element .text h3 + p{ font-size:30px;}
	.block.offer .item.quotation .note{ margin-top:20px; padding-left:20px; padding-right:20px;}
	.block.offer .item.quotation .note p{ font-size:14px;}
	.block.offer .item.quotation .conditions p{ font-size:14px;}
	
	.block.offer .item.gallery-images .columns-wrap{ margin:0 -5px;}
	.block.offer .item.gallery-images .columns-wrap .column{ width:50%; padding:0 5px;}
	.block.offer .item.gallery-images .image{ margin-bottom:10px;}
	
	
	.block.offer .item.contacts .columns-wrap .column.email{ width:100%; max-width:100%; margin-bottom:20px; border:0px;}
	.block.offer .item.contacts .columns-wrap .column.telephone{ width:100%; max-width:100%; margin-bottom:20px;}
	.block.offer .item.contacts .columns-wrap .column.socialnetwork{ margin-top:0px;}
	
	.block.offer .item.services .element .image{ width:30%;}
	.block.offer .item.services .element .text{ width:70%; padding-left:20px;}
	
	.block.offer .item.services .element .image span.number{ font-size:14px; padding:7px;}
	.block.offer .item.services .element .image.noimage span.number{ font-size:20px;}
	.block.offer .item.services .element .image.noimage span.pricing{ font-size:20px;}
	
	.block.offer .item.thankyou .text h2{ font-size:30px;}
	.block.offer .item.thankyou .text p{ font-size:18px;}
	
	.banner-fixed .box .text{ font-size:22px;}
	.banner-fixed .box .action .btn{ white-space:nowrap;}
	
	.footer .footer-extra{ padding-bottom:20px;}
	.footer .footer-extra .row p{ font-size:12px; line-height:18px;}
	
	.languages-fixed{ top:auto; bottom:0px; transform:none;}
	.languages-fixed ul{ border-bottom-left-radius:0px; border-bottom-width:0px;}
	.languages-fixed ul li{ clear:none; width:20px; margin:0px; margin-right:10px;}
	.languages-fixed ul li:last-child{ margin:0px;}
	
	.modal{ padding:15px;}
	.modal .modal-dialog{ width:100%;}
	.modal .modal-content{ padding:30px;}
	.modal .close{ width:40px; height:40px;}
	.modal .modal-content .intro h2{ font-size:26px; line-height:30px;}
	.modal .modal-content .intro h3{ font-size:22px; line-height:26px;}
	.modal .modal-content .form .check-wrap .check label span{ font-size:14px; line-height:20px;}
	.modal .modal-content .form .check-wrap .check.big label span{ font-size:16px;}
	
	.lingueattive_2 .whatsappfixed,
	.lingueattive_3 .whatsappfixed,
	.lingueattive_4 .whatsappfixed,
	.lingueattive_5 .whatsappfixed{ bottom:60px;}
	
	.btn.btn-wa{ padding-left:45px;}
	.btn.btn-wa i{ font-size:20px; position:absolute; left:20px; top:12px; margin:0px;}
	.btn.btn-phone{ padding-left:40px;}
	.btn.btn-phone i{ font-size:16px; position:absolute; left:20px; top:14px; margin:0px;}
	
}

@media (max-width: 479px) {
	
	.footer [class*=col-]{ text-align:center;}
	
	.block.offer .item.cover .text h2{ font-size:16px;}
	.banner-fixed .box .text{ font-size:20px;}

}
