/**
 * Theme Name: Wollu
 * Description: Blocksy Child theme
 * Template: blocksy
 * Text Domain: blocksy
 */

@font-face {
  font-family: 'Ubuntu Sans';
  font-style: normal;
  font-display: block;
  font-weight: 100 800;
  font-stretch: 75% 100%;
  src: url('fonts/UbuntuSans.woff2') format('woff2-variations'),
	   url('fonts/UbuntuSans.woff') format('woff'),
	   url('fonts/UbuntuSans.ttf')  format('truetype'),
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Ubuntu Sans';
  font-style: italic;
  font-display: block;
  font-weight: 100 800;
  font-stretch: 75% 100%;
  src: url('fonts/UbuntuSans-Italic.woff2') format('woff2-variations'),
	   url('fonts/UbuntuSans-Italic.woff') format('woff'),
	   url('fonts/UbuntuSans-Italic.ttf')  format('truetype'),
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

body, body p, p{
	font-family: 'Ubuntu Sans';
	font-style: normal;
}
figure, body .entry-content .wp-caption {
    width: 100%;
    max-width: 100%;
}
figure.gallery-item {
    margin-bottom: 20px;
}
.single .gallery-columns-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1em;
}
.single .gallery-columns-3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1em;
}
.single .gallery-columns-4 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 1em;
}/*
 * Make Elementor width follow BLocksy
 */
.e-con.e-flex>.e-con-inner{
	width:var(--theme-block-width, var(--theme-container-width));
}
.pretitle,
.pretitle p,
p.pretitle,
.pretitle .elementor-icon-list-text{
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 500;
	margin:0;
}
/************************************************************************************************
 * make Elementor button follows Customizer
************************************************************************************************/
body .elementor-button-content-wrapper {
    align-items: center;
}
body .elementor .elementor-button{
	background: var(--theme-button-background-initial-color);
    display: inline-flex;
    align-items: center;
	color: var(--theme-button-text-initial-color);
	fill: var(--theme-button-text-initial-color);
    justify-content: center;
    min-height: var(--theme-button-min-height);
    padding: var(--theme-button-padding);
    border: none;
    appearance: none;
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
    text-align: center;
    border-radius: var(--theme-button-border-radius, 3px);
    transition: all .12s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    --has-link-decoration: var(--false);
    font-family: var(--theme-button-font-family, var(--theme-font-family));
    font-size: var(--theme-button-font-size);
    font-weight: var(--theme-button-font-weight);
    font-style: var(--theme-button-font-style);
    line-height: var(--theme-button-line-height);
    letter-spacing: var(--theme-button-letter-spacing);
    text-transform: var(--theme-button-text-transform);
    text-decoration: var(--theme-button-text-decoration);
}
.elementor-button span {
    line-height: normal;
}
body .elementor-button:hover{
	background:var(--theme-button-background-hover-color);
	color: var(--theme-button-text-hover-color);
	fill: var(--theme-button-text-hover-color);
	transform:var(--theme-button-transform, translate3d(0, -3px, 0));
}
/*************************************************
 * CONTACT FORM 7 STYLING
 *************************************************/
.cf-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
    margin-bottom: 25px;
}
.booking-form .wpcf7 label:not(.wpcf7-form-control-wrap) {
    font-size: 14px;
	color: var(--theme-palette-color-8);
	font-weight: inherit;
}
/*
 * ERROR MESSAGE 
 */
.wpcf7 .wpcf7-form-control.wpcf7-text.wpcf7-not-valid,
.wpcf7 .wpcf7-not-valid {
	border: 2px solid #ff0000;
}
.wpcf7 .wpcf7-not-valid-tip {
	display: none;
}
.wpcf7 .wpcf7-validation-errors {
	background: #ff0000;
	border: 2px solid #ff0000;
	color: #ffffff;
	text-align: center;
}
.wpcf7 .wpcf7-response-output {
	margin: 2em 0;
	padding: 15px;
	border-radius: 0px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
    text-align: center;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border: none;
    background: red;
    color: #fff;
    border-radius: 0;
    font-style: normal;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}
}

.wpcf7 .wpcf7-spam-blocked {
	background: #e2e2e2;
	border: 1px solid #ff0000;
	color: #383838;
}
.wpcf7 .wpcf7-mail-sent-ng {
	background: #fcf8e3;
	border: 3px solid #ac9163 ;
	color: #8a6d3b;
}
.wpcf7 .wpcf7-mail-sent-ok {
	background: #dff0d8;
	border: 3px solid #3c763d;
	color: #3c763d;
}
.wpcf7-form.sent .cf-grid,
.wpcf7-form.sent p,
.wpcf7-form.sent .wpcf7-submit {
    display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
    border-color: var(--theme-palette-color-1);
    font-style: normal;
    font-size: 20px;
    padding: 15px;
    margin: 0;
    background: var(--theme-palette-color-6);
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.center {
    margin: 0 auto;
    display: block;
    float: none;
    background: var(--theme-palette-color-1);
	transition:  .3s;
	border-radius: 0px;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.center:hover{
	background: var(--theme-palette-color-2);
}
.wpcf7-turnstile.cf-turnstile {
    text-align: center;
}
.wpcf7 .wpcf7-submit.center {
    display: block;
    vertical-align: middle;
    margin: 0px auto;
    float: none;
    line-height: normal;
    min-height: 50px;
    width: 100%;
}
.wpcf7-spinner{
	display:block;
	margin: 0 auto;
	
}
.wollu-live-search {
  position: relative;
  max-width: 250px;
	width: 250px;
}

.wollu-search-input {
  width: 100%;
  padding: 10px 40px 10px 12px;
  border: 2px solid #2c5d7c;
  border-radius: 4px;
}
.wollu-search-results {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: var(--theme-palette-color-8);
    margin-top: 5px;
    display: none;
    overflow: hidden;
}

.wollu-result-item {
    display: flex;
    gap: 10px;
    padding: 10px;
    text-decoration: none;
    border-bottom: 1px solid #ddd;
    font-size: 18px;
    line-height: normal;
    align-items: center;
    color: var(--theme-palette-color-1);
}

.wollu-result-item .thumb img {
  max-width: 50px;
  height: 50px;
  object-fit: cover;
}

.wollu-show-more {
  display: block;
  padding: 12px;
  text-align: left;
  color: #2c5d7c;
  font-weight: 500;
  text-decoration: none;
}

.wollu-show-more:hover {
  background: #eee;
}

/**********************************************
 *************FOR MOBILE VIEW******************
 *********************************************/
@media only screen and (max-width: 767px) {
	.cf-grid{
    grid-template-columns: 1fr;
  }
	#header [data-column=start]{
		border: none;
	}
	.pretitle,
	.pretitle p,
	p.pretitle{
		letter-spacing: 0.1em;
	}
}