@charset "utf-8";
/*
Theme Name: La Vila Joiosa - Oficina Europea v1
Theme URI:
Description:
Version: 1
Author: Panda Creatiu
Author URI: http://www.pandacreatiu.com/
Tags:
*/
/* ------------------------------------------------------------------ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;padding: 0;border: 0;outline: 0;font-size: 100%;background: transparent;list-style:none;
	webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
body {line-height: 1;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after,
q:before, q:after {content: '';content: none;}
:focus {outline: 0;}
ins {text-decoration: none;}
del {text-decoration: line-through;}
table {border-collapse: collapse;border-spacing: 0;}
a {text-decoration:none;}
/* -------------------------------------------------------------------- */
html, body{ overflow-x: hidden; }
body { font-family: "Montserrat", sans-serif; font-size:14px; font-optical-sizing: auto; font-weight: 400; font-style: normal; }

body .hidden { display: none !important; }

.wrapper{ width: 100%; margin: 0; }

.title_gen{ font-size:35px; font-weight:700; }

.txtgen{ font-size: 15px; line-height: 1.4; font-weight: 400; }
.txtgen p, .txtgen h1, .txtgen h2, .txtgen h3{ margin-bottom: 20px; }
.txtgen h1{ font-size: 140%; }
.txtgen h2{ font-size: 120%;  }
.txtgen h3{ font-size: 100%; }
.txtgen img { max-width: 100%; height: auto; }
.txtgen a{ color: #666; }
.txtgen a:hover{ text-decoration: underline; }
.txtgen ul, .txtgen ol{ padding-left:40px; margin-bottom:25px; margin-top:15px; }
.txtgen ul li, .txtgen ol li{  list-style:outside; margin-bottom:12px; }
.txtgen ol li { list-style:decimal; }
.txtgen iframe { max-width: 100%; height: 300px; }

/* center div variable width */
.outer{ position: relative; left: 50%; float: left; }
.inner { position: relative; left: -50%; float: left; }

.transition{
	-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;
}

.shadow{ -webkit-box-shadow: 0px 5px 15px 0px rgba(96,67,17,0.4); -moz-box-shadow: 0px 5px 15px 0px rgba(96,67,17,0.4); box-shadow: 0px 5px 15px 0px rgba(96,67,17,0.4); }
.radius{ -webkit-border-radius: 12px; -moz-border-radius: 12px; border-radius: 12px; }

::selection { background: #F1F1F1; }
::-moz-selection { background: #F1F1F1; }

select{
    padding: .3125rem 3rem .3125rem 1rem;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat, repeat;
    background-position: right 1rem center;
    border-radius: .25rem;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: 1px solid #d8e2ef;
    color: #344040;
    background-size: 10px 12px;
    background-color: #fff;
    box-shadow: 0 1px 2px rgba(0,0,0,0.075);
    outline:none;
}

.clear{ clear: both; }

.container{ width: 100%; max-width: 1150px; min-width: 320px; margin: auto; padding: 0 10px; position: relative; }

/* MENU -------------------- */
.header{ width:100%; background-color:#81BADF; padding:15px; position:relative; }
	
	.menu_idioma{ position: absolute; z-index: 99; right: 30px; top: 40px; width: 60px; font-size: 11px; }

	#main-nav{ position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%, -50%); font-size:14px; font-weight:700; }
		#main-nav ul { margin: 0; padding: 0; display: inline-flex; }
		#main-nav li { display: block; float: left; margin: 0 10px; padding: 0; position: relative; cursor: pointer; word-wrap: break-word; }
		#main-nav li a { display: block; padding: 15px; color: #fff; border: 1px solid #81BADF;
			-webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px;
			-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; }
		#main-nav .current-menu-item a, #main-nav .current_page_item a, #main-nav a:hover, li.current-menu-parent >a{ border: 1px solid #fff; }


/* menu mobile*/
.menu_movil_trigger{ display: none; }
	
	.menu_mobile{ margin-top: 20px; }

		.sidr { display: block; position: fixed; top: 0; height: 100%; z-index: 999999; width: 260px; overflow-x: hidden; overflow-y: auto;
		  font-size: 14px; background: #fff; color: #333; box-shadow: 0 0 5px 5px #F0F3F7 inset; padding: 15px; }

		.sidr .sidr-inner { padding: 0 0 15px; }

		.sidr.right { left: auto; right: -260px; }
		.sidr.left { left: -260px; right: auto; }

			.lang_mobile{ font-size: 13px; font-weight: 700; width: 60px; }

			.menu_mobile a{ color: #000; }

			.menu_mobile{ font-size: 13px; text-transform: uppercase; }
			.menu_mobile ul li{ padding: 10px 0; }
			.menu_mobile ul li a{ display: block; width: 230px !important; border-bottom: 1px solid #ccc; padding-bottom: 15px; font-weight: bold; }

			.menu_mobile ul li ul{ padding-left: 15px; font-size: 12px; margin-top: 7px; display: none; }
			.menu_mobile ul li ul li a{ border-bottom: none; font-weight: normal; }

			.menu_mobile ul li ul li a:after{ content: ''; }


			.lang_mobile{ margin:0; padding:0px; }
    		.lang_mobile a{ margin:0 2px; color:#000 }
        	.lang_mobile div ul{ display:flex; }
        	.lang_mobile .wpml-ls-current-language, .lang_mobile .wpml-ls-current-language a{ text-decoration:underline; color:#81BADF; }



@media only screen and (max-width: 1225px) {
	.logo img{ width: 180px; height:auto; }

	#main-nav li { margin: 0 6px; }
	#main-nav li a { padding: 8px; }
}

@media only screen and (max-width: 1000px) {
	.only_screen { display: none; }

	/* MENU ------------------------------ */
	#main-nav, .menu_idioma{ display:none; }
	.menu_movil_trigger{ display: inherit; position: absolute; right: 10px; top: 20px; }

	.menu_idioma{}

	.col33, .col50, .col66, .col100{ width: 100%; padding: 0 10px; }
}



/* HOME ==================================================================================================================== */
.home_banner{ width:100%; height:70vh; background-position:center; background-size:cover; background-repeat:no-repeat; position:relative; }
	.home_banner_img{ width: 100%; position: absolute; text-align: center; padding: 0 20px; top:50%; left:50%; transform: translate(-50%, -50%); }
	.home_banner_img img{ max-width:100%; height:auto; }


.home_item{ width: 100%; max-width: 885px; margin:70px auto; background-color:rgba(129,186,223,.15); padding:100px 175px; text-align:center; position: relative;
	-webkit-border-radius: 80px; -moz-border-radius: 80px; border-radius: 80px; }

	.home_item_title, .home_item_title h2{ font-size:48px; font-weight:800; }
	.home_item_content{ margin-top:35px; }

	.home_item_deco_esq{ position:absolute; width:300px; height:41px; left:0; top:50px; }
		.home_item_deco_esq div{ width:100vw; height: 41px; position:absolute; right:0; }

	.home_item_deco_dre{ position:absolute; width:330px; height:41px; right:0; bottom:120px; }
		.home_item_deco_dre div{ width:100vw; height: 41px; position:absolute; left:0; }

		.home_item_deco_esq div, .home_item_deco_dre div{ background-image: url('images/ones.png'); background-size:contain; background-repeat:repeat; }
		.home_item_deco_esq div{ background-position:right; }
		.home_item_deco_dre div{ background-position:left; }


	.home_item_img_esq{ position:absolute; background-position:center; background-size:cover; background-repeat:no-repeat; 
		-webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; border:20px solid #fff; }

	.home_item_img_dre{ position:absolute; background-position:center; background-size:cover; background-repeat:no-repeat; 
		-webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; border:20px solid #fff; }

	.home_item_1 .home_item_img_esq{ bottom:50px; left: -125px; width: 254px; height:254px; }
	.home_item_1 .home_item_img_dre{ top:50px; right: -160px; width: 317px; height:317px; }

	.home_item_2 .home_item_img_esq{ bottom:30px; left: -145px; width: 290px; height:290px; }
	.home_item_2 .home_item_img_dre{ top:50px; right: -125px; width: 245px; height:245px; }

	.home_item_3 .home_item_img_esq{ bottom:50px; left: -94px; width: 184px; height:184px; }
	.home_item_3 .home_item_img_dre{ top:50px; right: -130px; width: 260px; height:260px; }


@media only screen and (max-width: 800px) {

	.home_banner{ height:50vh; }

	.home_item{ margin:40px auto; padding:20px; -webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px; }

		.home_item_title, .home_item_title h2{ font-size:30px; }
		.home_item_content{ margin-top:17px; }

		.home_item_img_esq{ display:none; }
		.home_item_img_dre{ display:none; }



}


/* BANNER ========================================================================================================== */
.banner{ width:100%; height:240px; background-position:center; background-size:cover; background-repeat:no-repeat; position:relative; }

	.banner_content{ display:flex; align-items: center; justify-content: center; height:100%; }
		.banner_content_title{ font-size:46px; color:#fff; font-weight:700; text-transform:uppercase; padding:0 15px; letter-spacing:2px; }


@media only screen and (max-width: 800px) {

	.banner{ height:180px; }
		.banner_content_title{ font-size:32px; }

}

/* ITEMS =========================================================================================================== */
.items{ margin-top:70px; }

	.item{ margin: 25px 0; background-color:rgba(128,183,220,0.15); padding: 15px; border-radius: 20px; }

		.item_title{ width: 100%; background-color:rgba(128,183,220,0.15); padding: 20px; position: relative; display: flex; align-items: center; justify-content: space-between; 
			cursor:pointer; border-radius: 15px; }

			.item_title_textos{}
				.item_title_title{ font-size:21px; padding-right:50px; line-height:1.3; }
				.item_title_limite{ font-style:italic; margin-top:10px; font-size:12px; }

			.item_title_marca{ min-width:28px; max-width:28px; height:28px; right:0; background-size:cover; background-position:center; }
				.item_title_marca_plus{ background-image:url('images/mes.png'); }
				.item_title_marca_minus{ background-image:url('images/menys.png'); }

		.item_content{ padding-left:10px; }
			.item_item{ display:flex; margin:20px 0; }
				.item_item_img{}
				.item_item_content{ padding-left:15px; }
					.item_item_title{ font-size:15px; font-weight:700; margin:5px 0; }
					.item_item_text{ }

			.item_gal{ margin:0 0 10px 60px; display: flex; flex-wrap: wrap; }
				.item_img{ width:170px; aspect-ratio:1; margin:10px; position:relative; background-size:cover; background-position:center; background-repeat:no-repeat; }
				.item_img img{ position:absolute; bottom:5px; right:5px; }

			.item_link{ margin:10px 0 10px 70px; }
				.item_link_inner{ width: fit-content; border:1px solid #000; font-weight:700; padding:10px 15px; color: #000;
					-webkit-border-radius: 80px; -moz-border-radius: 80px; border-radius: 80px; }
				.item_link_inner:hover{ color:#81BADF; border:1px solid #81BADF; }


@media only screen and (max-width: 768px) {
	.items{ margin-top:40px; }

	.item{ padding: 10px; -webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px; }

		.item_title{ padding: 15px; -webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px; }
			.item_title_title{ font-size:17px; }

		.item_item{ display:block; }
			.item_item_content{ padding-left:0; }

			.item_gal{ margin:0 0 10px 0px; }
				.item_img{ width:150px; margin:7px; }

			.item_link{ margin:10px 0 10px 0; }


}


.wp-pagenavi { padding: 10px 20px 10px; display:block; clear:both;}
.wp-pagenavi a, .wp-pagenavi a:link, .wp-pagenavi a:visited, .wp-pagenavi a:active  { padding: 4px 8px !important; margin: 2px !important; text-decoration: none !important; border: 1px solid #ddd !important; background: #FFFFFF !important; color: #999 !important; }
.wp-pagenavi a:hover { border: 1px solid #3399cc !important; color: #3399cc !important; }
.wp-pagenavi span.pages { padding: 4px 8px !important; margin: 2px !important; font-style: italic !important; color: #999 !important; font-size: 11px !important; }
.wp-pagenavi span.current { padding: 4px 8px !important; margin: 2px !important; font-weight: bold !important; border: 1px solid #3399cc !important; background: #3399cc !important; color: #fff !important; }
.wp-pagenavi span.extend { padding: 4px 8px !important; margin: 2px !important; border: 1px solid #ddd !important; background-color: #FFFFFF !important; }




/* BLOG ============================================================================================================= */
.blog{  }

.item_blog{ float:left; width:50%; padding:15px; text-align:center; }

	.item_blog_img{ width:100%; max-width: 205px; aspect-ratio:1; background-size:cover; background-position:center; background-repeat:no-repeat; 
			border-radius: 50%; margin:auto; position:relative; z-index:10; }

	.item_blog_inner{ background-color:rgba(128,183,220,0.15); border-radius: 20px; padding:140px 30px 30px 30px; margin-top:-120px; }
		
		.item_blog_data{ text-align:center; font-size:12px; margin-bottom:7px; }

		.item_blog_title{ font-size:21px; font-weight:700; line-height:1.2; }
		.item_blog_title a{ color:#000; }
		.item_blog_title a:hover{ text-decoration:underline; }

		.item_blog_content{ margin-top:20px; background-color:rgba(128,183,220,0.15); border-radius: 20px; padding:30px 20px; }


@media only screen and (max-width: 1000px) {
	.item_blog{ width:50%; }
}

@media only screen and (max-width: 675px) {
	.item_blog{ width:100%; }
}


/* SINGLE */
.single_blog_title{ text-align:center; color: #000; font-size: 30px; font-weight: 800; margin-top:50px; }

.home_noticies_item_data{ margin:3px 0 10px 0; color:#000;text-align:center; }

.single_blog_img{ text-align:center; margin:30px 0; }
.single_blog_img img{ max-width:100%; height:auto; }

.single_content{ margin-top: 30px; display:flex; padding-bottom: 60px; border-bottom:1px solid #ccc; }
    .single_content_col{ width: 230px; padding-right:20px; }
    .single_content_txt{ padding-left: 40px; width: calc(100% - 230px); }



.single_content_col .widget{ }
.single_content_col .wp-block-heading{ font-size:18px; margin-bottom:20px; }
.single_content_col .widget ul li { padding: 12px 0; border-bottom: 1px solid #ccc; color: #000; font-size:14px; }
.single_content_col .widget ul li a { color: #000; }


.navigation{ padding: 20px 0; }
    
    .next_post, .prev_post{ position: relative; font-size: 13px; color: #333; width: 50%; }
    .next_post{ float: right; }
    .prev_post{ float: left; border-right: 1px solid #ccc; }
    
    .nav_post a{ color: #000; }

    .next_post_inner{ text-align: right; padding: 25px 30px 25px 10px; display:flex; justify-content:flex-end;  }
        .next_post_content{ padding-right:15px; }

    .prev_post_inner{ padding: 25px 10px 25px 30px; display:flex;  }
        .prev_post_content{ padding-left:15px; }

        .prev_post_prev, .next_post_next{ font-size: 10px; font-weight: 900; color: #898F93; margin-bottom: 7px; }
        .prev_post_txt, .next_post_txt{ font-size:19px; font-family: 'Playfair Display', serif; width:100%; max-width:250px; line-height:1.2; }


@media only screen and (max-width: 763px) { 

	.single_blog_title{ margin-top:30px; }

    .next_post{ float: none; width:100%; }
    .prev_post{ float: none; width:100%; border-right: 1px solid #fff; }
    .next_post_inner{ padding: 25px 10px 25px 10px; }
    .prev_post_inner{ padding: 25px 10px 25px 10px; }

    .single_content{ flex-direction: column; margin-top: 15px; }
        .single_content_col{ width: 100%; order: 2; margin:40px 0 10px 0; }
        .single_content_txt{ width: 100%; padding: 0 5px; order: 1; }

}



/* CONTACTO ========================================================================================================= */
.contacto{ margin:40px 0 70px 0; display:flex; }

	.contacto_address{ width: 250px; }
		.contacto_address h1{ font-size:36px; font-weight:400; color:#81BADF; line-height:1.2; }
		.contacto_address h1 strong{ font-weight:700; }

	.contacto_form{ width:calc(100% - 250px); padding-left:40px; }
		.contacto_form_inner{ background-color:rgba(128,183,220,0.15); border-radius: 20px; padding:40px 60px; }


.form_theme_3 input[type="text"], .form_theme_3 input[type="email"], .form_theme_3 textarea{ 
	width: 100%; border: none; border: 1px solid #000; margin-bottom: 10px; margin-top: 7px; color: #000; background-color: #DBE6ED;
	webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 15px; 
	-webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px; }

.form_theme_3 input[type='checkbox']{ margin-top: 5px; margin-left: -5px; cursor:pointer; }

.form_theme_3 textarea{ resize:none; height: 180px; font-family: 'Dosis', sans-serif; font-size: 1em; }

.form_theme_3 .label_checkbox{ font-size: 14px; color: #1A1A1A; cursor:pointer; }

.form_theme_3 a{ font-size: 14px; color: #0091B2; }
.form_theme_3 a:hover{ text-decoration: underline; }

.form_theme_3 input[type="submit"]{ 
	width: 262px; text-align: center; color: #000; font-weight: 700;
	 border: none; border: 1px solid #000; padding: 15px; margin-top: 25px; cursor: pointer; background-color: transparent;
	 -webkit-border-radius: 15px; -moz-border-radius: 15px; border-radius: 15px; }

.form_theme_3 div.wpcf7-validation-errors{ 
	margin-top: 20px !important; 
	margin-left: -10px !important; 
	font-size: 14px !important; 
	border: none !important; 
	padding-top: 0 !important; 
	color: red !important;
	webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 15px;
}


@media only screen and (max-width: 850px) { 

	.contacto{ margin:20px 0 70px 0; display:block; }

		.contacto_address{ width: 100%; }

		.contacto_form{ width:100%; padding-left:0px; }
			.contacto_form_inner{ -webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px; padding:20px; }


}



/* FOOTER =========================================================================================================== */
footer{ display:flex; margin-top:50px; }
	
	.footer_logo{ padding:20px; }

	.footer_content{ background-color:#81BADF; width:100%; padding:20px; line-height:1.5; }

		.footer_address{ float:left; }

		.footer_menu{ float:right; margin-top:25px; }
		.footer_menu ul{ display:flex; }
		.footer_menu ul li{ margin-right:10px; }
		.footer_menu ul li:after{ content:'·'; margin-left:10px; }
		.footer_menu ul li:last-child:after{ content:''; margin-left:0; }
		.footer_menu ul li a{ color:#000; }
		.footer_menu ul li a:hover{ text-decoration:underline; }

@media only screen and (max-width: 960px) {
	footer{ display:block; }
		.footer_logo{ padding:20px; border-top:1px solid #81BADF; }
}

@media only screen and (max-width: 715px) {
	.footer_address{ float:none; }
	.footer_menu{ float:none; }
}



/* PER FER FUNCIONAR LA MAQUETACIO FLOAT DE CONTENT ------------------------------- */
.alignnone { margin: 5px 20px 20px 0; }
.aligncenter, div.aligncenter { display: block; margin: 5px auto 5px auto; }
.alignright { float:right; margin: 0px 0 7px 7px; }
.alignleft { float: left; margin: 0px 7px 7px 0; }
a img.alignright { float: right; margin: 5px 0 7px 7px; }
a img.alignnone { margin: 5px 7px 7px 0; }
a img.alignleft { float: left; margin: 5px 7px 7px 0; }
a img.aligncenter { display: block; margin-left: auto; margin-right: auto }
.wp-caption { background: #fff; border: 1px solid #f0f0f0; max-width: 96%; padding: 5px 3px 10px; text-align: center; }
.wp-caption.alignnone { margin: 5px 20px 20px 0; }
.wp-caption.alignleft { margin: 5px 20px 20px 0; }
.wp-caption.alignright { margin: 5px 0 20px 20px; }
.wp-caption img { border: 0 none; height: auto; margin: 0; max-width: 98.5%; padding: 0; width: auto; }
.wp-caption p.wp-caption-text { font-size: 11px; line-height: 17px; margin: 0; padding: 0 4px 5px; }
/* Text meant only for screen readers. */
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); position: absolute !important; height: 1px; width: 1px; overflow: hidden; }
.screen-reader-text:focus { background-color: #f1f1f1; border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: bold; height: auto;
	left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */ }


/*
.grecaptcha-badge {
visibility: hidden;
opacity: 0;
transition: linear opacity 1s;
}

.grecaptcha-badge.showgr {
visibility: visible;
opacity: 1;
transition: linear opacity 1s;
}
*/
