@import url('https://fonts.googleapis.com/css2?family=Oxygen:wght@300&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;700&display=swap');
@import "balloon.min.css";
@import "jquery-ui.css";

* { border:0px; list-style:none; margin:0px; padding:0px; outline:none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; *behavior: url(boxsizing.htc); -webkit-appearance: none; -moz-appearance: none; appearance: none;  }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
html { font-size: 100%; min-height:100%; position:relative; }
body { height:100%; background: #000; margin: 0px; font-family: 'Oxygen', sans-serif; font-size:14px; line-height:22px; color:#000; -webkit-text-size-adjust:100%; color:#FFF; }
a { text-decoration:none; outline:none; color:#FFF; font-weight:bold; }
a:hover, a.selected, #header a.selected, #header a:hover { color:#000;  }
:hover, .gallery * { transition: all 0.9s ease-in-out;  -webkit-transition: all 0.9s ease-in-out; -moz-transition: all 0.9s ease; -o-transition: all 0.9s ease; -ms-transition: all 0.9s ease-in-out; }
.figure * { transition: all 0.9s ease-in-out;  -webkit-transition: all 0.9s ease-in-out; -moz-transition: all 0.9s ease; -o-transition: all 0.9s ease; -ms-transition: all 0.9s ease-in-out; }
b, strong { font-weight:700; }
h1, h2, h3, h4, h5 { line-height:normal; font-weight:normal; margin:0px; font-family: 'Playfair Display', serif; }
h1 { font-size:70px; color:#FFF; font-weight:bold; text-align:center; margin: 20px 0; }
h2 { font-size:24px; font-weight:700; margin-bottom:20px; }
h3 { font-size:18px; margin-bottom:20px; }
h5 { font-size:26px; margin-bottom:20px; }
::-webkit-input-placeholder { color: white; }
::-moz-placeholder { color: white; }
:-ms-input-placeholder { color: white; }
:-moz-placeholder { color: white; }
img { display:block; }
img.scale { width:100%; height:auto; }
img.loading { background: url('../images/loading.gif') no-repeat center; }
.row { margin-bottom:5px; }
.label { padding: 10px 0 0 0; }
.number { border:1px solid #004c71; }
input, select, .btn { height:35px; }
input, select, textarea { color:#FFF; font-family: 'Oxygen', sans-serif; font-size:13px; padding: 2px 10px; border:1px solid #444; border-radius:0; background-color:#444; }
input:focus, textarea:focus, select:focus { border-color: #9B8F84; }
input.error, textarea.error, select.error, input[type='radio'].error, input[type='checkbox'].error { border-color:#FF0000; color:#FF0000; background:#FFDAD7; font-weight:normal; } 
label.error { color:#FF0000; font-size:0px; visibility:hidden; float:left; overflow:hidden; height:0px; }
input[type='number'] { width:50px; }
input[type='checkbox'], input[type='radio'] { padding:0; height:20px; width:20px; float:left; margin-right:10px; border: 1px solid #CCC; background:#FFF; }
input[type='checkbox']:checked + label, input[type='radio']:checked + label { color:#004c71; }
input[type='radio'] { border-radius:0px; }
input[type='radio']:checked { background:#888; }
input[type='checkbox']:checked { background:#888; }
select { background: url('select_arrow.png') right center no-repeat #444;  color:#FFF; padding: 7px 35px 7px 7px; -webkit-appearance: none; -moz-appearance: none;  appearance: none;}
.buttons { margin:0 auto; text-align:center; }
.placeholder { color:#BBB; }
option { padding:0 5px; }
label { font-weight:bold; font-size:13px; margin:0 0 5px 0; text-align:left; display:block; cursor:pointer; }
.btn, input[type='submit'], input[type='button'], button { background:none; margin-top:10px; line-height: 23px; border:1px solid #FFF; color:#FFF; font-family: 'Oxygen', sans-serif; font-weight:bold; font-size: 13px; padding: 5px 20px; cursor:pointer; display:inline-block; text-align:center; text-transform:uppercase; text-decoration:none; }
.btn:hover, input[type='button']:hover, input[type='submit']:hover, button:hover { opacity:0.5; }
.privacy { line-height:normal; }
.privacy .item { margin-top:10px; }
.warning { color:#000; font-weight:700; background: url('../images/icon_warning.png') no-repeat left top; padding:5px 0 5px 22px; text-transform:uppercase; }
.icon_info { margin-left:10px; cursor:pointer;  font-size:11px; }
.strike { text-decoration: line-through; font-weight:normal; }
.msg_error { color:#FFF; margin-bottom:20px; display:block; background:#000; padding: 5px 10px; border-radius: 5px; }
.msg_success { color:#FFF; margin-bottom:20px; display:block; background:#59B200; padding: 5px 10px; border-radius: 5px; }
p.limit { margin: 10px 0; font-size:11px; }
.error { color:#000; font-weight:700; }
.ok { color: #669900; font-weight:700; }
.relative { position:relative; }
.nowrap { white-space: nowrap; }
table { width:100%; border-collapse: collapse; border:0px; padding:5px;  }
thead td { background: #AAA; color:#FFF; padding: 7px 10px; font-style:normal; text-transform:uppercase; font-size:11px; font-weight:700; }
tbody td { padding: 5px 0px; font-style:normal;}


.tabs { margin:0 auto; margin-bottom:20px; text-align: center; }
.tabs li { display:inline-block; }
.tabs a { display:block; color:#000; border-bottom:0; text-align:center; text-decoration:none; margin: 0 20px; }
.tabs a.selected { color:#004c71; text-decoration:underline; }

figure { position:relative; margin: 0; }
figure { overflow:hidden; position:relative; }
figure * { transition: all .2s ease-in-out; line-height:normal; }
figure img { display:inline-block; }
figure.zoom a:hover img { filter: none; transform: scale(1.1);  }
figure.fade a:hover img { opacity:0.5;  overflow:hidden; }
.figure img:hover { opacity:0.5; }

ul.list_border li:first-child { border-top:0px; }
ul.list_border li { float:none; border-top:1px dotted #CCC; margin:0px; padding: 5px 0; color:#999; }
ul.list_border li a { display:block; }
ul.list_border li p a { display:inline; }
ul.icon_right li a i { float:right; }
ul.list_number li { list-style:decimal; margin:5px 0 5px 20px; }
ul.list_disc li { list-style:disc; margin:5px 0 5px 20px; }
ul.list_disc li li { list-style:circle; }
ul.check-radio li { line-height:normal; padding-left:30px; position:relative; font-size:13px; margin-bottom:20px; }
ul.check-radio li input { position:absolute; left:0px; }

.layout { position:relative; }
.wrapper { width:100%; margin: 0 auto; min-width:720px; clear: both; }
.content { max-width:1200px; margin: 0 auto; clear: both; padding: 10px 20px; position: relative; }
.content-small { max-width:1000px; margin: 0 auto; clear: both; padding: 20px 20px 20px 20px; position: relative; }
.align_left { text-align: left; }
.align_right { text-align: right; }
.hidden { display:none; }
.bold { font-weight:700; }
.separator { margin-top:40px; }
.fa { margin-right:5px; }
.fr { float:right; }
.#000 { color:#000; }
.green { color:#59B200; }
.gray, .gray a { color:#999; }
.black, .black a { color:#000; }
.fixed { position:fixed; }
.hidden { display:none; }
.align_center { text-align:center; }
.mt40 { margin-top:40px; }
.mb40 { margin-bottom:40px; }
.mt20 { margin-top:20px; }
.mb20 { margin-bottom:20px; }
.pr40 { padding-right:40px; }
.pt100 { padding-top:100px; }


.more { margin-top:40px; }
.news { font-weight:bold; color:#004c71; margin-bottom:20px; text-transform: uppercase; text-decoration:underline; }

.group:before, .group:after { content:""; display:table; }
.group:after { clear:both; }
.col { display: block; float:left; margin: 0 0 0 1.6%; }
.col:first-child { margin-left: 0; }

.span_50 { width: 50%; float:left; }

.span_1_of_2 { width: 49.2%; }
.span_2_of_2 { width: 100%; }

.span_1_of_3 { width: 32.2%; }
.span_2_of_3 { width: 66.1%; }
.span_3_of_3 { width: 100%; }

.span_1_of_4 { width: 23.8%; }
.span_2_of_4 { width: 49.2%; }
.span_3_of_4 { width: 74.6%; }
.span_4_of_4 { width: 100%; }

.span_1_of_5 { width: 18.72%; }
.span_2_of_5 { width: 39.04%; }
.span_3_of_5 { width: 59.36%; }
.span_4_of_5 { width: 79.68%; }
.span_5_of_5 { width: 100%; }

.span_1_of_6 { width: 15.33%; }
.span_2_of_6 { width: 32.26%; }
.span_3_of_6 { width: 49.2%; }
.span_4_of_6 { width: 66.13%; }
.span_5_of_6 { width: 83.06%; }
.span_6_of_6 { width: 100%; }

.span_1_of_8 { width: 11.1%; }
.span_2_of_8 { width: 23.8%; }
.span_3_of_8 { width: 36.5%;}
.span_4_of_8 { width: 49.2%; }
.span_5_of_8 { width: 61.9%; }
.span_6_of_8 { width: 74.6%; }
.span_7_of_8 { width: 87.3%; }
.span_8_of_8 { width: 100%; }

.span_1_of_10 { width: 8.56%; }
.span_2_of_10 { width: 18.72%;  }
.span_3_of_10 { width: 28.88%; }
.span_4_of_10 { width: 39.04%;  }
.span_5_of_10 { width: 49.2%; }
.span_6_of_10 { width: 59.36%; }
.span_7_of_10 { width: 69.52%;  }
.span_8_of_10 { width: 79.68%; }
.span_9_of_10 { width: 89.84%; }
.span_10_of_10 { width: 100%; }
.span_50 { width: 50%; }
.iphone_show { display:none; }
.mt40 { margin-top:40px; }
.mb40 { margin-bottom:40px; }
.pb100 { padding-bottom:100px; }
.videoWrapper { position: relative; padding-bottom: 56.25%; /* 16:9 */	padding-top: 25px; height: 0; }
.videoWrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
iframe {  width: 100%; }

.bgcolor1 { background:#00609c; color:#FFF; }
.bgcolor2 { background:#bd3c4b; color:#FFF; }
.item .content { padding: 60px 20px; }
.item img { height:300px; }
.item .box { width:100%; }
.page { margin:100px 0 0 0; padding-bottom:100px; }
.page .btn, .page.btn-confirm { color:#000; border-color:#000; }

#header { position:fixed; top:0; left:0; right:0; background-color:#000; padding:20px; z-index:999; height:80px; }
#header .logo { position:absolute; top:15px; left:40px; }
#header .logo img { height:55px; width:auto; }

#header .cart { position:fixed; top:30px; right:80px; z-index:999; color:#FFF; }
#header .cart .totalcart { cursor:pointer; position:relative; padding-right:40px; }
#header .cart .totalcart p { position:absolute; right:100px; right: 90px; top: 5px; white-space: nowrap; font-size: 18px; }
#header .cart .totalcart span { background:#888; padding:10px 0 0 0; width:20px; height:20px; text-align:center; color:#000; position:absolute; right:15px; top:-7px; border-radius:200px; display:block; font-weight:bold; font-size:12px; line-height:0px; }
#header .cart i { font-size:24px; border-radius:200px; text-align:center;  }
#header .cart a { color:#FFF; }
#header .cart_mini { display:none; max-height: 400px; overflow-y: auto;  width:290px; padding:20px; background:#FFF; position:absolute; top:40px; right:0px; z-index:2000; -moz-box-shadow:3px 3px 6px #777; -webkit-box-shadow:3px 3px 6px #777; box-shadow:3px 3px 6px #777; }
#header .cart_mini .item { border-bottom:1px solid #CCC; min-height:80px; padding: 5px 0 5px 60px; line-height:normal; color:#000; position:relative; text-align:left; }
#header .cart_mini .item a { padding:0px; margin:0px; color:green; }
#header .cart_mini .item img { position:absolute; top:5px; left:0px; width:50px; height:auto;}
#header .cart_mini .total { margin: 10px 0 20px 0; text-align: center; color:#000; line-height:normal; }
#header .cart_mini .btn {  text-align:center; display:inline-block; width:100%; color:#000; border-color:#000; }
#header .cart_mini .start .btn { margin:0; }
#header .cart_mini .start h3 { margin:0; border:0; }
#header .cart_mini .price { text-align:right; color:#000; font-size:13px; }

button.open { width:42px; text-align:center; border:0px; padding:5px; position:fixed; top:10px; right:20px; z-index:33; font-size:20px; cursor:pointer; color:#FFF; background:none; }
button.open i { margin:0px; }
#header .menu { font-style:italic; display:none; letter-spacing:1px; position:fixed; top:0px; right:0px; bottom:0px; width:300px; padding:20px; z-index:22; background:#111; }
#header .menu ul { padding-top:60px; }
#header .menu li { font-family: 'Playfair Display', serif; font-size:22px; padding: 10px 0; font-style: normal; }
#header .menu li a { display:block; color:#FFF; }
#header .menu li a:hover, #header .menu li a.selected { color:#FFF; opacity:0.3;  }

#footer { background:#000; color:#FFF; padding: 20px 20px; font-size:12px; line-height:20px; }
#footer .logo img { height:40px; width:auto; margin-bottom:10px; }
#footer  a { color:#FFF; }
#footer .credits { font-size:11px; line-height:normal; }
#footer .social { float:right; line-height:normal; }
#footer .social h2 { font-size:30px; }
#footer .social li { float:left; font-size:18px; margin-right:10px; }
#footer .social li a { background:#FFF; color:#000; width:30px; height:30px; border-radius:200px; display:block; text-align:center; padding:3px 0 0 0; }
#footer a:hover { opacity:0.3; }

#main {  position:relative; }
.main { padding-right:400px; width:100%; background-position: right 375px top; background-image: url('../images/dot.gif'); background-repeat:repeat-y; }
.content-request.main { padding:0 20px; background:none; width:100%; max-width:600px; margin:0 auto; }

.more { margin:0 auto; position:absolute; z-index:22; bottom:50px; left:0; right:0; text-align:center; font-family: 'Playfair Display', serif; color:#FFF; font-size:20px; }
.more a:hover { color:#FFF; opacity:0.3;  }
.more a { position:relative; padding-top:38px; margin: 0 20px; display:inline-block; }
.more img { height:30px; width:auto; display:inline-block; position:absolute; top:0; left:0; right:0; text-align:center; margin: 0 auto; }
.cover { position:relative; }
.cover .text { position:absolute; z-index:2; top:50%; left:0; right:0; text-align:center; }
.cover .text h1 { font-size:80px; color:#FFF; font-weight:bold; }
.slide li { height: calc(100vh - 0px); background-position:center center; background-repeat: no-repeat; background-size:cover; }

.item-row { max-width:1200px; height: 1000px; padding: 80px 40px; margin:0 auto; position: relative; }
.item-row-small { max-width:1200px; padding: 80px 40px; margin:0 auto; position: relative; }
.about { position:relative; background:url('../images/italia.svg') center center no-repeat; background-size:600px 600px; background-attachment:fixed; }
.about.puglia { background:url('../images/puglia.svg') center center no-repeat; background-size:600px 600px;  }
.about .text { float:right; max-width:500px; padding-right:150px; }
.contactForm { padding-right:40px; }

.slide-animation{
    animation: fadezoom 20s 0s forwards;
}
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.2);
  }
}

.list-products .item { text-align:center; position: relative; padding-bottom:100px; }
.list-products .item h1 { font-size:44px; }
.list-products .item figure img { display:inline-block; width:100%; height:auto; }
.list-products .item select { margin-top:5px; line-height:normal; padding:2px; }
.list-products .item .price { font-weight:bold; text-align:right; color:#004c71; font-size:16px; }
.list-products .item .box-button { position:absolute; bottom:10px; left:0; right:0; }
.products-scheda h1 { text-align:left; }
.products-scheda h3 { font-size: 24px; }
.gallery { display: grid; grid-template-columns: 1fr 1fr 1fr;}
.gallery.group::before { display:none; }
.gallery img { width:100%; height:auto; display:inline-block; }

#table_cart select#id_shipping { text-align:right; padding-right:0; }
.cart .icon_cart { text-align:right; font-size:28px; }
.cart li { position:relative; border-top:1px solid #CCC; padding: 10px 0px 10px 70px; min-height:80px; font-size:12px; line-height: 18px; }
.cart li:last-child { border-bottom:1px solid #CCC; }
.cart li img { width:60px; height:60px; position:absolute; left:0px; }
.cart li .trash { position:absolute; right:0px; top:10px; }
.cart li .qty { position:absolute; right:0px; bottom:10px;  }
.cart li .qty input { background:#FFF; color:#000; border:0px; width:25px; height:25px; font-size:12px; line-height:normal; padding:2px; display:inline-block; text-align: center; }
.cart li h4 { text-transform:uppercase; font-size:13px; font-weight:bold; }
.cart .qty i { margin: 0 10px; cursor:pointer; }
.cart .qty i:hover { color: #004c71; }
.cart .resume, .checkout .cart .resume { padding:10px 0 20px 0; }
.cart .empty a { text-transform:uppercase; color:#888; font-size:12px; }
.cart .btn-checkout { float:right; margin:0px; }
.cart .price { color:#888; font-size:12px; line-height:normal; }
.lato .cart { position:sticky; position: -webkit-sticky; top:200px; right:20px; width:360px; }
.cart .select { margin-top:5px; }
.cart select { display: inline-block; border:1px solid #CCC; width:70px; padding:2px; height: 25px; }
.cart .label { padding:0px; color:#000; display: inline-block; width:120px; }
.lato.smaller .cart { top:10px; }

.checkout { max-width:800px; margin:0 auto; }
.checkout .cart h2 { padding:0px; margin-top:0px; border:0px; }
.checkout h4 { font-weight:bold; margin: 0 0 10px 0; }
.checkout .resume { padding:20px 0; }
.checkout .privacy { color:#888; font-size:12px; margin:5px 0 20px 0; }
.checkout .total { text-align:right; line-height:normal; margin:10px 0;  }
.checkout .list-products .item { max-width:200px; margin:0 auto; margin-bottom:40px; min-height:360px; }
.checkout .list-products .item img { border:1px solid #000; }
.checkout .list-products .item .text { height:40px; }
.checkout .btn-checkout { display:none; }
svg:hover path, svg:hover circle { background-color:#004c71; fill:#004c71; }
.btn-confirm { float:right; }
.total { text-align:right; font-size:18px; } 
.total b { font-weight:900; }

.nav-header { text-align:center; }
.nav-header h2 { margin: 40px 0 20px 0; font-size:50px; text-transform:uppercase; }
.nav-header li { display:inline-block;  font-size:14px; }
.nav-header li::after { content:" | "; margin: 0 5px; }
.nav-header li:last-child::after { content:" "; margin: 0; }
.nav-header a.selected { text-decoration:underline; color:#005091; }

.grid .span_1_of_2:nth-child(2n+1) { margin-left:0px; }
.grid .span_1_of_3:nth-child(3n+1) { margin-left:0px; }
.grid .span_1_of_4:nth-child(4n+1) { margin-left:0px; }
.grid .span_1_of_5:nth-child(5n+1) { margin-left:0px; }
.grid .span_1_of_6:nth-child(6n+1) { margin-left:0px; }
.grid .span_1_of_7:nth-child(7n+1) { margin-left:0px; }
.grid .span_1_of_8:nth-child(8n+1) { margin-left:0px; }
.grid img { display:block; }


.share { padding-top:10px; border-top:1px solid #000; }
.share ul { margin:0 auto; text-align:right;}
.share li { display:inline-block; width:30px; height:30px; overflow:hidden; }
.share h4 { margin:0px; font-weight:bold; }

.acc_title { color:#000; padding:20px; border-bottom:1px solid #888; cursor:pointer; font-weight:bold; }
.acc_title.open { border:0px; }
.acc_title img { float:right; width:25px; height:auto; }
.acc_title svg { fill: #888; }
.acc_text { padding:20px; }


.flex { display: -webkit-box;  display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; align-items: center; justify-content: center; }
.form { max-width:500px; text-align:center; margin:0 auto; }
.form h3 { text-transform:uppercase; margin-bottom:40px; }


div.top {  display: none; overflow: hidden; position: fixed; right:40px; bottom:40px; z-index:999; }
div.top .fa { margin:0px; padding:7px 5px 5px 5px; background:#000; color:#FFF; border-radius:200px; width:30px; height:30px; text-align:center; }
div.top a { cursor:pointer; }


.pagination { margin-top:60px; font-size:11px; }
.pagination .right { text-align:right; }
.pagination a { font-weight:normal;  }
.pagination a:hover { text-decoration:none;  }
.pagination b { font-weight:normal; text-transform:uppercase; }
.pagination i { font-size:22px; }



.nav { position:relative; }
.nav-item { float:left; *display:inline; zoom:1; position:relative; }
.nav-item:hover .nav-submenu { display:block; }

/* Navigation submenu */
.nav-submenu { display:none; position:absolute;  z-index:20;  top:30px; left:0px; width:500px; padding:40px 10px 10px 10px; z-index:200; text-align:left; background:#FFF;  }
#header .menu li .nav-submenu li { display:block; position:absolute; z-index:20; }
.nav-submenu-item a { display:block; font-weight:normal; font-size:16px; border-top:1px solid #000;  }


/* Mobile navigation */
.nav-mobile { display:none; cursor:pointer; position:absolute; top:0; left:0; font-size:22px; padding:0px; height:40px; width:40px; text-align:center; }
.nav-mobile i { margin:0;  }

/* Mobile navigation, clickable area for revealing <ul> */
.nav-click { text-align:center; position:absolute; top:0; right:20px; display:none; height:39px; width:40px; cursor:pointer; }
.nav-click i { display:inline-block; font-size:18px; color:#777; text-align:center; position:absolute; top:0; left:0; padding:10px; margin:0px; }

