/* General
==================================================*/
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html, body { height: 100%; }
body { background-color: #FDF7F2 !important; color: #000 !important; overflow-x: hidden; }
.no-padding { padding-left: 0; padding-right: 0; }
.no-padding [class^="col-"] { padding-left: 0; padding-right: 0; }
p { margin-bottom: .8em !important; }
blockquote { margin-bottom: 1.5em !important; }
ul, ol { margin: 0.8em 0 1.5em 1em !important; }
ul { list-style: none !important; }
.entry-content ul { list-style: disc !important; }
.container { width: 100%; max-width: 1410px; margin: 0 auto !important; position: relative; }
header.site-header.sticky { transition: 0.4s; position: sticky; top: 0; z-index: 90; }

@media( max-width: 1480px ) {
    .container { margin: 0 20px !important; width: calc(100% - 40px); }
    .entry-header.container { width: 100%; }
}



/* typography
==================================================*/
html, body { font-family: 'Open Sans', sans-serif !important; font-weight: 400; font-size: 16px; line-height: 1.5em !important; }
h1, h2, h3, h4, h5, h6 { font-family: 'Playfair Display', serif; font-weight: 400; font-style: normal; line-height: 1.25em; margin: .5em 0; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, a.more { text-decoration: none; }
h1 { font-size: 48px !important; }
h2 { font-size: 27px; }
h3 { font-size: 24px; }
h4 { font-size: 21px; }
h5, h6 { font-size: 18px; }
p, .entry-content ul, .entry-content ol, ol {  }
strong, b { font-weight: bold !important; }

/* buttons & links
==================================================*/
a { -webkit-transition: all .3s; transition: all .3s; color: #000 !important; text-decoration: underline; font-weight: 700; }
a:hover { text-decoration: none; }

a.btn,
div.btn a,
button, 
.button,
input[type="button"], 
input[type="reset"], 
input[type="submit"], 
input.submit,
button.pea_cook_btn { -webkit-transition: all .3s; transition: all .3s; word-break: break-all; cursor: pointer; text-decoration: none; color: #FDF7F2 !important; display: inline-block; box-shadow: none !important; border: 2px solid #1B9D8C !important; font-weight: 500; background-color: #1B9D8C; text-align: center !important; padding: 10px 20px; font-size: 18px; border-radius: 0 !important; line-height: 1.5; }

button.pea_cook_btn { background-color: #1B9D8C !important; }

button:disabled, .button:disabled { border: 2px solid #ccc !important; }

a.outline, a.btn.outline { background-color: transparent !important; border: 2px solid #1B9D8C !important; color: #1B9D8C !important; }
div.btn .outline { color: #1B9D8C !important; }

a.btn:hover,
div.btn a:hover,
button:hover,
.button:hover,
input[type="button"]:hover, 
input[type="reset"]:hover, 
input[type="submit"]:hover, 
input.submit:hover { cursor: pointer; background-color: transparent; color: #1B9D8C !important; border: 2px solid #1B9D8C !important;  }

button:hover.pea_cook_btn { color: #fff !important; background-color: transparent !important; }

.outline:hover, a.btn.outline:hover { background-color: #1B9D8C !important; color: #FDF7F2 !important; }
div.btn .outline:hover { color: #FDF7F2 !important; }

div.btn { margin: 2em 0; }

.sharedaddy { margin: 100px auto !important; text-align: center; }
.swiper-slide .sharedaddy { display: none !important; }

/* breadcrumbs
==================================================*/
.aioseo-breadcrumbs { text-align: center; font-size: 14px; color: #DBD2CA; }
.aioseo-breadcrumbs a { text-decoration: none; font-weight: 700; color: #DBD2CA !important; }
.aioseo-breadcrumbs a:hover { text-decoration: underline; }

/* forms
==================================================*/
.search-form { display: flex; }
.search-form label { width: 70%; }
.search-form .search-field { width: 96%; padding: 10px 20px !important; }
.search-form .search-submit { width: 30%; background-color: #1B9D8C !important; padding: 10px 20px !important; }
.search-form .search-submit:hover { background-color: #FDF7F2 !important; }

/* header
==================================================*/
header.site-header { position: fixed; top: 0; left: 0; right: 0; z-index: 100; background: #FDF7F2; border-bottom: 1px solid #DBD2CA; }
.site-header .container { display: flex; justify-content: space-between; align-items: center; height: auto; padding: 20px 0; }
.custom-logo { max-width: 360px; width: 360px; }

/* NAVIGATION */
.main-navigation { width: auto !important; }
.main-navigation ul { margin: 0 !important; }
.main-navigation li { margin-left: 50px; }
.main-navigation a { font-weight: 400; }
.main-navigation a:hover { color: #1B9D8C !important; }
.lang-item { text-transform: uppercase; font-size: 14px; }
.main-navigation li.fb, .menu li.fb { width: 24px; height: 24px; background: url('../img/fb.png') no-repeat center; background-size: contain; text-indent: -9999px; }

/* POST NAVIGATION */
.post-navigation { padding: 15px; background-color: #DBD2CA; }
.single-jetpack-testimonial .post-navigation { max-width: 768px; width: 90%; margin: 0 auto !important; }
.site-main .comment-navigation, .site-main .posts-navigation, .site-main .post-navigation { margin-top: 5em !important; }


/* page content
==================================================*/
#page { overflow-x: hidden; }
main { padding-top: 150px; }
.hero { padding-top: 75px; }
.post, .page {  margin-bottom: 5em !important; }
.app { display: flex; justify-content: space-between; align-items: center; gap: 1%; flex-wrap: wrap; }
.app .item { width: 24%; }
.app .btn { width: 100%; text-align: center; }

.prenota { margin-bottom: 100px; }
.kross-container .kb-btn { padding: 0 20px !important; }

.error404 .page-header { margin-bottom: 100px; text-align: center; }
.error404 .page-content { max-width: 768px; width: 90%; margin: 0 auto !important; }

.entry-header { text-align: center; margin-bottom: 100px; }
p.intro { font-size: 24px; line-height: 1.5; max-width: 768px; width: 90%; margin: 0 auto; }

.row { width: 100%; display: flex; justify-content: space-between; align-items: center; margin-bottom: 140px; }
.text { width: 50%; padding: 0 5em; }
.text span { display: block; height: 18px; width: 18px; background-image: url('../img/ospite.png'); background-size: 18px 18px; }
.text span.ospiti-trep, .text span.ospiti-trepe { width: 54px; }
.text span.ospiti-quattrop, .text span.ospiti-quattrope { width: 72px; }
.text span.ospiti-cinquep, .text span.ospiti-cinquepe { width: 90px; }
.text h2 { margin-bottom: 1.5em; }
.caratteristiche { border: 1px solid #DBD2CA; padding: 1em; margin-top: 2.5em; }
.caratteristiche strong::after { content: ' • '; }
.caratteristiche strong:last-of-type::after { content: ' '; }
.swiper { width: 50%; height: auto; }
.swiper-slide { background-position: center; height: 600px; width: 50%; background-repeat: no-repeat; background-size: cover; display: flex; justify-content: center; align-items: center; }
.swiper-button-next, .swiper-button-prev, .swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled { top: 50%; color: white !important; }
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet { background-color: #1B9D8C; }

.hero .swiper { width: 100%; height: 670px; }
.hero .swiper-slide { height: 670px; width: 100%; }
.caption { width: 80%; }
.caption.bianco { color: #fff !important; }
.caption h2, .caption h4, .caption p { text-shadow: 1px 2px 8px rgba(0, 0, 0, .35); }
.caption h2 { font-size: 48px; margin: 0; }

.testimonial { text-align: center; margin-bottom: 140px !important; }
.testimonial .swiper, .testimonial .swiper-slide { height: auto; width: 100%; }
.testimonial .swiper-slide { display: block; }
.testimonial .swiper-c { padding: 50px 100px; }
.testimonial .swiper-c .post-thumbnail img { border-radius: 50%; max-width: 120px; max-height: 120px; }
.single-jetpack-testimonial .entry-content { max-width: 768px; width: 90%; margin: 0 auto 70px; }

.row:nth-child(even), .home-content .row { flex-direction: row-reverse; }
.row:nth-child(even) .text { text-align: right; }
.row:nth-child(even) .text span { float: right; margin-bottom: .5em; }

p.email { background: transparent url('../img/email.png') no-repeat left center; background-size: 18px; padding-left: 24px; }
p.tel { background: transparent url('../img/telefono.png') no-repeat left center; background-size: 18px; padding-left: 24px; }
p.tel a::after { content: ' / '; }
p.tel a:last-of-type::after { content: ''; }

.mappa { min-height: 500px; background-size: cover; background-repeat: no-repeat; background-position: center; }
.mappa a { display: block; width: 100%; min-height: 500px; }

.archive .page-header { text-align: center; margin-bottom: 100px; }
.archive article { max-width: 768px; width: 90%; margin: 0 auto 100px; }
.archive article .entry-header { margin-bottom: 30px; text-align: left; }

.single-appartamento .post-thumbnail img { width: 100%; }
.info { background-color: #1B9D8C; color: #fff; padding: 50px 0; }
.hide { clip: rect(0 0 0 0); height: 1px; margin: -1px; padding: 0; position: absolute; width: 1px; }
.accordion { padding: 0 !important; margin: 0 !important; }
.accordion-item { position: relative; width: 100%; border-bottom: 1px solid #fff; }
.accordion-item:last-child { border-bottom: none; }
.accordion-label { width: 100%; display: block; font-size: 24px; padding: 20px 0 20px 20px; }
.accordion-label:hover { cursor: pointer; }
.accordion-label:before { content: ""; position: absolute; height: 5px; width: 5px; top: 25px; left: 0; display: inline-block; border-left: 5px solid #fff; border-top: 5px solid transparent; border-bottom: 5px solid transparent; }
input[type=checkbox]:checked ~ .accordion-label:before { transform: rotate(90deg); }
.accordion-child { margin: 0; overflow: hidden; transition: all 0.3s ease; opacity: 0; height: 0; transform: scale(1, 0); transform-origin: center top; }
input[type=checkbox]:checked ~ .accordion-child { margin: 0 -20px 20px -20px; padding: 0; height: auto; opacity: 1; transform: scale(1, 1); }
.accordion-child ul { list-style-type: disc !important; }

/* footer
==================================================*/
.site-footer { clear: both; position: relative; z-index: 98; margin-top: 80px; }
.bottom.container { border-top: 1px solid #DBD2CA; display: flex; justify-content: space-between; align-items: flex-start; }
.bottom .widget_text { max-width: 360px; }
.site-footer li { display: inline-block; margin-left: 50px; }
.site-footer li a { font-weight: 400; text-decoration: none; display: block; }
.site-footer li a:hover { color: #1B9D8C !important; }
.site-info { font-size: 14px; margin-top: 150px !important; }
.site-info a { color: #000 !important; font-weight: 500; display: inline-block; }
.site-info .col p { color: #000 !important; }
.site-info a:hover { text-decoration: none; }

.pea_cook_wrapper a { color: #fff !important; }
.pea_cook_wrapper.pea_cook_bottomcenter { bottom: 0 !important; left: 0 !important; right: 0; width: 100%; margin: 0 !important; z-index: 9998; }
.pea_cook_wrapper p {  font-family: 'Open Sans', sans-serif !important; font-weight: 400 !important; font-size: 14px !important; }

@media screen and (max-width: 1600px) { 
    .text, .row:nth-child(even) .text { width: 55%; }
    .swiper { width: 45%; }
}
@media screen and (min-width: 1401px) { 
    .hero .swiper, .hero .swiper-slide { height: 800px; }
}
@media screen and (max-width: 1400px) { 
    .home-content .text, .home-content .swiper { width: 50%; }
}
@media screen and (max-width: 1200px) { 
    .row { width: 100%; display: block; }
    .text, .row:nth-child(even) .text { width: 100%; text-align: center; padding: 5em; }
    .text span, .row:nth-child(even) .text span { margin-left: auto; margin-right: auto; float: none; }
    .entry-content { text-align: left; }
    .swiper { width: 100%; }
    .swiper-slide { height: 650px; }
    .home-content .row { width: 100%; display: block; }
    .home-content .text, .home-content .swiper { width: 100%; }
    .home-content .text { padding: 70px; }
}
@media screen and (max-width: 980px) { 
    header.site-header { height: auto; }
    .site-header .container, .bottom.container { display: block; }
    .site-branding { text-align: center; }
    .custom-logo-link { display: inline-block; margin: 1em auto 0; }
    .main-navigation { text-align: center; }
    .main-navigation ul { display: block !important; margin-left: 0 !important; }
    .main-navigation li { display: inline-block; margin: .5em !important; }
    .bottom .widget_text { max-width: 100%; text-align: center; }
    .site-footer ul { margin: 5em auto 0 !important; padding: 0; text-align: center; }
    .site-footer li { margin: .5em; }
    .site-info { text-align: center; }
    .hero .row { margin-bottom: 0; }
    p.email, p.tel { display: inline-block; margin-left: 1em; margin-right: 1em; }
    .mappa, .mappa a { min-height: 400px; }
    .app .item { width: 49%; margin-bottom: 2em; }
    .hero .swiper,  .hero .swiper-slide, .hero .swiper-wrapper { height: 600px; } 
}
@media screen and (max-width: 768px) { 
    .swiper-slide, .hero .swiper,  .hero .swiper-slide, .hero .swiper-wrapper { height: 500px; }
    .single-jetpack-testimonial .entry-content, .single-jetpack-testimonial .post-navigation, .archive article, .error404 .page-content { width: 100%; }
}
@media screen and (max-width: 600px) { 
    h1 { font-size: 36px !important; }
    p.intro { font-size: 21px; }
    .main-navigation ul { display: block !important; }
    .main-navigation li, .site-footer ul li { margin: .25em !important;  }
    p.intro { width: 100%; }
    .swiper-slide { height: 400px; }
    .caption { text-align: center; }
    .row { margin-bottom: 70px; }
    .text, .row:nth-child(even) .text, .home-content .text { padding: 50px 20px; }
}
@media screen and (max-width: 480px) { 
    
    .swiper-slide { height: 300px; }
    .testimonial .swiper-c { padding: 50px; }
    .btn a { margin-bottom: 10px; }
    .app { display: block; }
    .app .item { width: 100%; }
}
@media screen and (max-width: 400px) { 
    .custom-logo { max-width: 90%; }
}