/*
Theme Name: Envious Lashes 2026
Theme URI: https://enviouslashes.com
Description: Standalone theme for Envious Lashes. Flattened from the EL parent/EL-child
 pair on 2026-07-09: the 2019 parent theme was folded in and deleted. Rebuilt and
 modernized through 2026-07; deployed as a fresh theme so the old EL/EL-child pair
 stays intact for rollback.
Author: Envious Lashes
Version: 2.1.0
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: envious-lashes
*/
/* ==========================================================================
   Palette. Every colour used 3+ times, named once.
   Defined on :root so it is inherited by every element and visible to every
   stylesheet regardless of load order.
   ========================================================================== */
:root {
	--f-serif: "Playfair Display", "Playfair Display fallback", Georgia, serif;
	--f-sans: "Muli", "Muli fallback", -apple-system, sans-serif;

	--c-white: #ffffff;
	--c-gold: #bb8238;
	--c-blue: #22a1c4;
	--c-grey: #505050;
	--c-grey-dark: #3a3f44;
	--c-gold-dark: #a06d2c;
	--c-gold-light: #d8bd93;
	--c-grey-mid: #8a8f94;
	--c-ink: #1a1a1a;
	--c-blue-pale: #eaf1f4;
	--c-blue-pale-2: #eaf4f9;
	--c-ink-4: #222222;
	--c-ink-3: #3d3d3d;
	--c-line: #dddbdb;
	--c-line-2: #b4b2a9;
	--c-blue-soft: #c8e6f0;
}

/* ==========================================================================
   Below: the former el-legacy.css, folded in on 2026-07-10. It was the 2019
   parent theme's stylesheet, loaded ahead of this file's own rules. It is placed
   here -- before style.css's rules, after the :root palette -- so the cascade is
   unchanged: style.css still wins every tie it won before. Nothing was edited,
   only moved. See git for the pre-merge split.
   ========================================================================== */

/*
Theme Name: Envious Lashes
*/

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,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,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}.screen-reader-text{clip:rect(1px, 1px, 1px, 1px);position:absolute !important}
.clear{clear: both;}

/***** general *****/
html{
  min-height: 100%;
}

body{
	font-size: 0;
	cursor: none;	
}
body #wrapper{
	font: 300 18px/1.35 'Muli', sans-serif;
	color: var(--c-grey);
}
.content-wrapper{
	padding: 0 30px 150px;
	overflow-x: hidden;
}
.hide-mob{
	display: block;
}
.show-mob{
	display: none;
}
.page-template-press .content-wrapper{
	padding-left: 0;
	padding-right: 0;
}
h1,h2,h3,h4,h5,h6{
	font-weight: 400;
	font-family: var(--f-serif);
}
.hidden{
	display: none;
}
.page-template-default h1{
	font-size: 64px;
}
.page-template-default #content article .container > * + *{
	margin-top: 15px;
}

.page-template-default .woocommerce-input-wrapper,
.page-template-default .password-input{
	width: 100%;
}
.woocommerce form .form-row .required{
	color: inherit;
	float: left;
	padding-right: 5px
}
.woocommerce form .show-password-input, .woocommerce-page form .show-password-input{
	top: 0;
	right: 0;
}
.page-template-default .woocommerce form button.button{
	margin-top: 15px;
}

.xoo-wsc-modal .xoo-wsc-icon-cross{
    right: 10px;
    top: 35px;
    margin: 0;
    font-size: 50px;
}
.xoo-wsc-header{
	border-color: var(--c-white);
}
.xoo-wsc-header h4{
	margin: 20px 0 -20px 35px
}
.xoo-wsc-modal .xoo-wsc-rp-right-area a.button{
    font-size: 12px;
    float: right;
    color: var(--c-ink-4);
    font-weight: 700;
    text-transform: uppercase;
    font-family: var(--f-sans);
    margin-top: 5px;
    padding: 0;
    background: none;
}
.xoo-wsc-related-products span.price{
	margin-top: 0;
	float: left;
}
.xoo-wsc-rp-cont{
	padding-bottom: 5px;
	border-bottom-color: var(--c-white);
}
.xoo-wsc-container{
	overflow: auto;
}
.xoo-wsc-body{
	height: auto!important;
}
.xoo-wsc-footer{
	position: relative!important;
}
div.xoo-wsc-container .xoo-wsc-footer .xoo-wsc-rp-left-area img{
	width: 100%;
	max-width: 100%;
}
.xoo-wsc-rp-item.lslide{
	width: 33.33%;
	float: left;
	display: block;
}
.xoo-wsc-footer .xoo-wsc-sp-title{
	font-size: 20px;
	margin-bottom: 5px;
}
.xoo-wsc-container .xoo-wsc-footer span.amount{
    display: block;
    font-size: 20px;
    font-weight: 700;
}
.xoo-wsc-modal.xoo-wsc-active .xoo-wsc-opac{
	background: var(--c-white);
	z-index: 999999
}
.xoo-wsc-subtotal.xoo-wsc-tool,
.xoo-wsc-subtotal.xoo-wsc-tool span.amount{
	font-size: 40px;
}
.xoo-wsc-subtotal.xoo-wsc-tool{
	padding: 0 30px;
}
.xoo-wsc-shiptxt{
	display: none;
}
.xoo-wsc-basket{
	z-index: 1000000;
}
.woocommerce form.woocommerce-form-login .form-row{
	display: block;
}
.xoo-wsc-footer-content a.button{
	padding: 0!important;
	background: var(--c-white);
	font-size: 22px;
	border: 3px solid var(--c-gold);
}
 .xoo-wsc-footer-content a.button:hover{
	background: var(--c-gold);
	color: var(--c-white);
}
.woocommerce .xoo-wsc-footer-content a.button:hover{
	background: var(--c-gold);
	color: var(--c-white);
}
.woocommerce #wrapper .xoo-wsc-footer-content a.button span + span{
	top: 4px;
	display: none;
}
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  box-shadow: 0 0 0px 1000px var(--c-white) inset;
  transition: background-color 5000s ease-in-out 0s;
}
.page-template-default input:not([type=submit]):not([type=radio]):not([type=checkbox]){
    width: 100%;
    background: none;
    border: none;
    font-size: 20px;
    line-height: 1.6;
	/*border-bottom: 2px solid #bb8238*/
}

h2{
	font-size: 100px;
}
.page-template-default h2{
	font-size: 52px;
}
h3{
	font-size: 60px;
}

.page-template-default h3{
	font-size: 48px;
}

h4.wow + h2.wow{
	margin-top: -25px;
	margin-left: -5px;
}
h4{
	font-size: 12px;
	line-height: 27px;
	text-transform: uppercase;
}
h4.wow {
	margin-left: 33px;
}
h4 span{
	display: inline-block;
	position: relative;
}
h4 span:before,
h4 span:after{
	width: 27px;
	height: 1px;
	position: absolute;
	top: 50%;
	left: -37px;
	content: "";
	background: var(--c-ink-3);
}
h4 span:after{
	left: auto;
	right: -37px;
}
h5{
	font-size: 48px;
}
h6{
	font-size: 34px;
}
strong, .strong{
	font-weight: 700;
}
img{
	display: block;
	max-width: 100%;
	height: auto;
}
nav#menu {
	position: relative;
	z-index: 3;
}
#menu-sticky .menu-open.menu-open-book,
.menu-open.menu-open-book{
	display: none;
    width: 75px;
    left: auto;
    right: -175px;
}
.menu-open.menu-open-book.animated{
    left: auto;
	right: 62px;
}

.menu-open.menu-open-book strong{
    width: 70px;
    top: 10px;
	left: -20px;
    text-align: right;
    font-size: 16px;
}
#menu-sticky .menu-open.menu-open-book{
	width: 70px;
    position: absolute;
    top: 50%;
    left: auto;
    right: 62px;
    margin-top: -22px;
}
button,
input[type=button],
a{
	cursor: none!important;
}
a,
a:hover{
	color: var(--c-gold);
}
#place_order,
.locations-list li,
.woocommerce-MyAccount-navigation li a,
.woocommerce-form__label-for-checkbox:after, form label, .wow,
iframe, .tr{
	transition: all .25s ease-in-out;
}
.tr05,
.img-wrap img,
.woocommerce div.xoo-wsc-footer .btn:after,
input[type=submit], .btn, .btn span, .btn:after,
body.page-template-default div#container div.woocommerce .button:after, body.page-template-default div#container div.woocommerce .button span,
.woocommerce div.product form.cart .button:after, .woocommerce div.product form.cart .button span,
.form-group:after, #container
.woocommerce .woocommerce-button.button, .woocommerce .woocommerce-button.button:after, .woocommerce .woocommerce-button.button span, 
#menu .menu > li, #menu .sub-menu, #menu li a, #menu li:before, #menu li:after, 
.hero:after{transition: all .5s ease-in-out;
}
.board:after,
.tr075{transition: all .75s ease-in-out;
}

 .tr1{transition: all 1s ease-in-out;
}
.bg{
	background: center center no-repeat;
	background-size: cover;
}
.overlay,
.hero:after{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.hero .bg,
#menu-wrapper .bg{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.overlay + *{
	position: relative;
	z-index: 2;
}

.circle-cursor{
    position: fixed;
    left: 0;
    top: 0;
    pointer-events: none;
    border-radius: 50%;
}

.circle-cursor--inner{
    width: 10px;
    height: 10px;
    left: -5px;
    top: -5px;
    z-index: 91100000;
    background: var(--c-blue);
    border: 0px solid var(--c-blue);
    transition: border .25s ease-in-out, top .25s ease-in-out, left .25s ease-in-out;
}

.circle-cursor--outer{
    width: 30px;
    height: 30px;
    border: 1px solid #000;
    z-index: 91200000;
    opacity: 0.2;
    display: none;
}

.wow{
	/*visibility: hidden;*/
}
.menu-form h3{
	/*overflow: hidden;*/
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.page-template-default #content article .wow{
	position: relative;
	padding-bottom: 100px;
	opacity: 1;
}

.ovh #site-title,
.ovh .social-header,
.ovh .user-header,
.ovh .hero-text,
.ovh #menu-sticky,
.ovh .hero.bordered:after{
	/*display: none;*/
}

.wow-text p + p{
	margin-top: 18px;
}
#container .woocommerce .woocommerce-button.button,
body.page-template-default div#container div.woocommerce .button,
.woocommerce div.product form.cart .button,
input[type=submit],
.btn{
	padding: 4px 30px;
	position: relative;
	background: var(--c-white);
	border: 3px solid var(--c-gold);
	text-align: center;
	font-size: 16px;
	font-weight: 700;
	cursor: none!important;
	border-radius: 0;
	text-transform: uppercase;
	color: var(--c-grey);
}
.button,
.button span{
	text-shadow: none!important;
}
#container .woocommerce .woocommerce-button.button, 
body.page-template-default div#container div.woocommerce .button,
.woocommerce div.product form.cart .button,
.btn{
	position: relative;
	padding: 0;
}
#container .woocommerce .woocommerce-button.button:after, 
body.page-template-default div#container div.woocommerce .button:after,
.woocommerce div.product form.cart .button:after,
.btn:not(.xoo-wsc-cart):after
/*
.woocommerce div.xoo-wsc-footer .btn:after,
.woocommerce .xoo-wsc-footer-content a.button:after
*/{
	width: 0%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	margin: 0;
	background: var(--c-gold);
	color: var(--c-white);
}
body.page-template-default div#container div.woocommerce .button:hover,
.woocommerce div.product form.cart .button:hover{
	background: var(--c-white);
}
.woocommerce div.xoo-wsc-footer .btn:hover:after,
#container .woocommerce .woocommerce-button.button:hover:after, 
body.page-template-default div#container div.woocommerce .button:hover:after,
.woocommerce div.product form.cart .button:hover:after,
.btn:hover:after{
	width: 100%;
}

#preloader{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: var(--c-blue) url("img/loader.gif") center center no-repeat;
	background-size: 385px;
	z-index: 9999999;
}
#preloader.blank{
	background: var(--c-white);
}

button#place_order span{
	padding-top: 7px;
	padding-bottom: 7px;
}

#container .woocommerce .woocommerce-button.button span,
.btn span,
body.page-template-default div#container div.woocommerce .button span,
.woocommerce div.product form.cart .button span{
	display: block;
	padding: 4px 30px;
	line-height: 1.5;
	position: relative;
	white-space: nowrap;
	z-index: 2;
	font-size: 22px;
}

#container .woocommerce .woocommerce-button.button span + span, 
.btn span + span,
body.page-template-default div#container div.woocommerce .button span + span,
.woocommerce div.product form.cart .button span + span{
	width: 0;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	color: var(--c-white);
	text-align: center;
	padding-right: 0;
}

#container .woocommerce .woocommerce-button.button:hover span + span, 
.btn:hover span + span,
body.page-template-default div#container div.woocommerce .button:hover span + span,
.woocommerce div.product form.cart .button:hover span + span{
	width: calc(100% - 30px);
}
button#submit{
	text-transform: uppercase;
	float: right;
}
input[type=text],
input[type=email],
input[type=tel],
textarea{
	width: 100%;
	background: none;
	border: none;
	font-size: 16px;
	line-height: 1.6;
}
form br{
	height: 0;
	margin: 0;
}
textarea{
	height: 110px;
	resize: none;
}
.wpcf7-form .form-group  label.error{
	position: absolute;
	width: 100%;
	top: auto;
	bottom: -20px;
}
div.wpcf7-mail-sent-ok{
	border: none;
	clear: both;
	float: none;
	color: var(--c-gold);
	font-weight: 400;
	margin: 30px 0 0;
	padding: 0;
}
.menu-form h3{
	margin-top: -15px;
}

.inline{
	display: inline-block;
}
/***** header *****/
#header{
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	z-index: 999999;
}
body.ovh{	
	/*overflow: hidden;*/
}
body.ovh #header{
	overflow: unset;
	z-index: 9999999;	
}
#branding{
	width: 100%;
	position: relative;
	top: -100px;
	left: 0;
	text-align: center;
	opacity: 0;
	transition-delay: .5s;
}
#branding a{
	display: inline-block;
	padding-top: 5px;
}
#branding img{
	width: 392px;
}
#branding img + img{
	display: none;
	width: 300px;
}

#site-title a{
	text-decoration: none;
	position: relative;
}
#site-title a:after{
	width: 123px;
	height: 17px;
	position: absolute;
	bottom: 10px;
	left: 50%;
	margin-left: -61px;
	background: url("img/logo-after.png") center center no-repeat;
	background-size: contain;
	content: "";
}

.social-header,
.user-header{
	display: block;
    position: absolute;
    top: -50px;
    left: 35px;
    font-size: 14px;
    line-height: 35px;
    font-weight: 400;
    transition-delay: .5s;
    z-index: 99;
}
#branding.animated,
.social-header.animated,
.user-header.animated{
	top: 0;
	opacity: 1
}
.social-header a{
	display: inline-block;
    margin-left: 7px;
	padding: 0 5px;
	transform: translateY(3px);
}
.social-header a img{
	width: auto;
	height: 15px;
	vertical-align: middle;
}

.user-header{
    left: auto;
    right: 35px;
    z-index: 99;
}
.user-header em{
	font-weight: 700;
	font-style: italic;
}

.user-header ul li,
.book-header ul li{
	display: inline-block;
}
.user-header ul li + li:before,
.book-header ul li + li:before{
	display: inline-block;
	width: 40px;
	content: "|";
	text-align: center;
}
.user-header ul li a{
	color: var(--c-grey);
}
.book-header{
	display: block;
	position: absolute;
	top: 60px;
	right: -165px;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--c-white);
	opacity: 0;
	transition-delay: .5s;
}
.book-header.animated{
	right: 65px;
	opacity: 1
}
.book-header a{
	color: var(--c-white);
}

/***** menu *****/
#menu-wrapper{
	width: 100%;
	height: 100%;
	position: fixed;
	top: -125vh;
	left: 0;	
	border-top: 35px solid var(--c-blue);
	transition: all 1s cubic-bezier(.46,.97,.9,.99);
	background-size: cover;
	z-index: 9999999;
	background-position: top center;
}
#menu-wrapper .book-header{
	display: none;
    width: calc(100% - 20px);
    position: absolute;
    top: 0;
    left: 10px;
	color: var(--c-grey);
    border-bottom: 1px solid #e6e6e6;
    z-index: 1;
}
#menu-wrapper .book-header li a{
	color: var(--c-grey);
}
.home #menu-wrapper{
	background-position: top right;
}
#menu-wrapper .row{
	margin: 0;
	justify-content: space-between;
}
#menu-wrapper .back{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(255,255,255,.9);
}
.menu-opened #menu-wrapper{
	top: 0;
}
.menu-open{
	display: block;
	width: 100px;
	height: 50px;
	position: absolute;
	top: 74px;
	left: -162px;
	opacity: 0;
	transition-delay: .5s;
	z-index: 1
}
.menu-open.animated{
	left: 62px;
	opacity: 1;

}
.menu-open span{
	width: 40px;
	height: 3px;
	position: absolute;
	top: 20px;
	left: 0;
	background: var(--c-white);
	z-index: 2;

}
.menu-open span + span{
    width: 30px;
    top: 29px;
    left: 10px;
}
.menu-open:hover span{
    width: 30px;
    left: 10px;

}
.menu-open:hover span + span{
	width: 40px;
	left: 0;
}
.menu-open strong{
	position: absolute;
    top: 17px;
    left: 47px;
	color: var(--c-white);
	font-size: 14px;
	line-height: 1;
	text-transform: uppercase;
	z-index: 2;
}
.menu-open em{
	display: block;
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0;
	left: 20px;
	border-radius: 50px;
	background: var(--c-blue);
}

.menu-open:hover em{
	/*background: #bb8238;*/
	opacity: .7
}
.menu-close{
    display: block;
    width: 32px;
    height: 52px;
    position: fixed;
    top: 62px;
    right: 40px;
    margin: 0;
    z-index: 1001;
    opacity: 0;
    visibility: hidden;
	transition: all 1s cubic-bezier(.46,.97,.9,.99);
}
.ovh .menu-close{
	visibility: visible;
	opacity: 1;
	transition-delay: .5s;
}
.menu-close span{
	display: block;
	width: 100%;
	height: 3px;
	margin: 10px 0;
	background: #aea891;
	position: absolute;
	top: 25%;
	left: 0;
	transform-origin: 50% 50%;
	opacity: 0;
}
.menu-close span:nth-child(1){
	transition: all 0.5s ease 0s;
}

.menu-close span:nth-child(2){
	transition: all 0.4s ease 0s;
}

.menu-close span:nth-child(3){
	transition: all 0.3s ease 0s;
}
.menu-close:hover span{
	transform: rotate3d(0, 1, 0.1, 180deg);
}
.menu-close span:first-child{
	opacity: 1;
	transform: rotate3d(0, 0, 1, 45deg);
}

.menu-close span:last-of-type{
	opacity: 1;
	transform: rotate3d(0, 0, 1, -45deg);
}

.menu-close:hover span:first-child{
	transform: rotate(-15deg);
}

.menu-close:hover span:last-of-type{
	transform: rotate(15deg);
}
#menu-wrapper img{
	margin: 7px auto 30px;
	position: relative;
}
#menu .menu > li{
	position: relative;
	float: left;
	clear: both;
	transform: translateY(-20px);
	opacity: 0;
}
.ovh #menu .menu > li{
	transform: translateY(0);
	opacity: 1;
}
#menu .menu > li + li{
	margin-top: 85px;
}
#menu .menu > li:before,
#menu .menu > li:after{
	width: 30vw;
	height: 3px;
	position: absolute;
	top: 50%;
	right: calc(100% - 60px);
	margin-top: -2px;
	content: "";
	background: transparent;
	transform: translateX(-100%);
	/*
	height: 44px;
	right: -35px;
	position: absolute;
	top: 0;
	content: "";
	background: transparent;
	transform: translateX(-100%);
	*/
}
#menu .menu >li:after{
	width: 0;
	right: auto;
	left: calc(100% + 5px);
	transform: none;
}
#menu li a{
	display: block;
	font: 700 40px/1.1 " Playfair Display", serif;
	color: var(--c-grey);
	position: relative;
	text-transform: uppercase;
	z-index: 1;
	transition-delay: .125s;
}
#menu li:hover:before{
	background: var(--c-gold);
	transform: translateX(0);
	/*
	background: #22a1c4;
	*/
}
#menu li.menu-item-has-children:hover .sub-menu{
	left: calc(100% + 35px);
	transition-delay: .25s;
	opacity: 1;
}
#menu .menu > li:hover > a{
	color: var(--c-blue);
	padding-left: 70px;
	text-decoration: none;
}

#menu .sub-menu,
.locations-list{
	width: 260px;
	position: absolute;
	top: 50%;
	left: calc(100% + 70px);
	transform: translateY(-50%);
	background: var(--c-white);
	opacity: 0;
	z-index: 2;	
}
.locations-list{
	display: none;
	width: 100%;
	left: 0;
	top: 48px;
	transform: none;
	opacity: 1;
	z-index: 11
}
.sub-menu:after{
	height: 100%;
	width: 40px;
	position: absolute;
	top: 0;
	left: -40px;
	content: "";
	z-index: 1;
}
.sub-menu:before{
	width: 30px;
	height: 3px;
	position: absolute;
	top: 50%;
	left: -30px;
	margin-top: -2px;
	background: var(--c-gold);
	content: "";
}
#menu .sub-menu li,
.locations-list li{
	float: none;
	border-left: 3px solid var(--c-gold);
	border-right: 3px solid var(--c-gold);
}
#menu .sub-menu li:first-of-type,
.locations-list li:first-of-type{
	border-top: 3px solid var(--c-gold);
}
.locations-list li:hover{
	color: var(--c-white);
	background-color: var(--c-blue);
}
#menu .sub-menu li:last-of-type,
.locations-list li:last-of-type{
	border-bottom: 3px solid var(--c-gold);
}
#menu .sub-menu li a,
.locations-list li{
	padding: 10px 12px;
	font: 400 16px/1.4 "Playfair Display", serif;
	text-transform: capitalize;
}
#menu .sub-menu li a:hover{
	background: var(--c-gold);
	color: var(--c-white);
	text-decoration: none;
	transition-delay: 0s;
}
.menu-form{
	opacity: 0;
	transition-delay: .5s;
}
.ovh #menu-wrapper .btn-book-wrap,
.ovh .menu-form{
	opacity: 1
}

#menu-wrapper .btn-book-wrap{
	position: absolute;
	bottom: 0;
	transform: translateX(-50%);
	left: 50%;
	opacity: 0;
	transition-delay: .5s;
}
#menu-wrapper .btn-book{
	font-size: 20px;
	border-color: var(--c-gold);
	border-bottom: none;
	text-transform: unset;
}
#menu-wrapper .btn-book:after{
	background: var(--c-gold)
}

#menu-sticky{
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    padding: 10px;
    background: var(--c-white);
    text-align: center;
    box-shadow: 0 0 20px rgba(0,0,0,0.3);
    z-index: 9999;
}

#menu-sticky.scrollup{
    top: -150px;
}
.thanks{
	display: none;
	position: relative;
	padding-top: 45px;
}
.thanks h3{
	width: 100%;
	margin-bottom: 0;
	font-size: 40px;
	line-height: 1.5
}
.thanks h3 + h3{
	margin-top: 30px
}
em{
	font-style: italic;
}
#menu-sticky .menu-open{
    top: 23px;
    left: 40px;
}
#menu-sticky .menu-open span{
	background: var(--c-grey);
}

#menu-sticky .user-header{
    top: 10px;
    right: 50px;
    letter-spacing: 0.5px;
}
#menu-sticky .book-header{
	right: 50px;
}

#menu-sticky,
#menu-sticky *{
	color: var(--c-grey);
}
#menu-sticky > a{
	display: inline-block;
	position: relative;
}

/***** footer *****/

#footer{
	width: 100%;
	bottom: 0;
	left: 0;
	padding: 55px 30px 5px;
	border-top: 20px solid var(--c-blue);
	background-color: var(--c-ink-3);
}

.top-scroll{
	display: block;
    width: 40px;
    height: 30px;
    position: absolute;
    top: 15px;
    right: 65px;
    padding-top: 15px;
    text-transform: uppercase;
    font-weight: 700;
    z-index: 2;
}
.top-scroll:hover{
	color: var(--c-white);
}
.top-scroll span{
	display: block;
	width: 100%;
	height: 35px;
	position: absolute;
	bottom: 5px;
	left: 0;
	background: url("img/chevron-lg.png") top center no-repeat;
	background-size: 40px;
	animation: MoveUpDown 1.5s linear infinite;
	opacity: .4;
}
#footer h5{
	font-size: 25px;
	color: var(--c-gold);
	text-transform: capitalize;
}
#footer section{
	display: flex;
	margin: 35px 0 120px;
}
#footer section a{
    display: block;
    margin: 0 19px;
    padding: 0 10px;
}
#footer section img{
	width: auto;
	height: 45px;
}
#footer p,
#footer a,
#footer .top-scroll{
	color: rgba(255,255,255,.4);
    font-size: 14px;
    line-height: 2.3;
}
#footer br{
	display: none;
}
#footer p:last-of-type a{
	text-decoration: underline;
}

/***** hero *****/

.ovh{
	height: 100vh;
	overflow: hidden;
}

.ovh .hero{
	height: 100vh!important;
	margin: 0!important;
}

.hero{
	height: calc(100vh + 1px);
	height: 100svh;
	width: 100%;
	position: relative;
}
.hero-desk{
	display: block;
}
.hero-mob{
	display: none;
}
.hero:after{
	content: "";
	border: 0px solid var(--c-white);
}
.hero.bordered:after{
	border-width: 35px 30px 0 30px;
}
.hero-video{
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	background: var(--c-white);
}
.hero-video iframe{
	display: block!important;
	width: 150%;
	height: 150%;
	position: absolute;
	top: -25%;
	left: -25%;
	visibility: visible;
	opacity: 1!important;
	z-index: 0;
}
.hero > .overlay{
	background: linear-gradient(to right,  rgba(99,88,78,0.5) 0%,rgba(99,88,78,0) 100%);
}
.hero-text{
    position: absolute;
    bottom: 12.5vh;
    left: 30px;
	font-size: 20px;
    color: var(--c-white);
    z-index: 2;
}
.hero:not(.home-hero) .hero-text{
	bottom: 55px;
	left: 70px;
}
.hero-text h1,
.hero-text h2{
	font-size: 130px;
	position: relative;
	z-index: 1;
	padding-left: 5px;
}
.hero-text h1{
	font-size: 120px;
	margin-bottom: -0.85rem;
}
.hero-text h2 + h2{
    font-size: 72px;
    margin-left: 8vw;
    margin-left: 155px;
    margin-top: -50px;
    margin-bottom: 0;
}
.hero-text p{
	margin-right: 50px;
	text-align: right;
	line-height: 1;
	padding-left: 5px;
}
.hero-line{
	width: 0;
    height: 28px;
    position: absolute;
    background: var(--c-blue);
    bottom: 30px;
	left: -70px;
    transition: all .5s ease-in-out;
}
.home-hero .hero-line{
    left: -35px;
}
.hero-line.animated{
	width: calc(100% + 70px);
	transition-delay: .5s;
}
.bottom-scroll{
	display: none;
	position: absolute;
	bottom: 15px;
    right: 65px;
    padding-bottom: 35px;
	color: var(--c-white);
	font-size: 12px;
	text-transform: uppercase;
    font-weight: 700;
    z-index: 2;
}
.bottom-scroll:hover{
	color: var(--c-white);
}
.bottom-scroll span{
	display: block;
	width: 100%;
	height: 35px;
	position: absolute;
	bottom: 5px;
	left: 0;
	background: url("img/chevron-w.png") bottom center no-repeat;
	background-size: 40px;
	animation: MoveUpDown 1.5s linear infinite;
}

@keyframes MoveUpDown{
	0%, 100%{
	bottom: 5px;
	}
	50%{
	bottom: -5px;
	}
}
/***** logo slider *****/
.logo-slider-section{
	margin-bottom: 80px;
	background: #f7f6f4;
}
.logo-slider-section h4{
	color: var(--c-white);
	background: var(--c-gold);
	visibility: visible;
}
.logo-slider-section h4 span{
	margin-left: 0;
}
.logo-slider-section h4 span:before,
.logo-slider-section h4 span:after{
	background: var(--c-white);
}

/***** text + image *****/

#prices .container-fluid,
#menu-wrapper .container-fluid,
.content-wrapper .container-fluid{
	max-width: 80vw;
}

.wow.image{
	display: inline-block;
	width: 100%;
	position: relative;
	margin-bottom: 20px;
	visibility: visible;
	transform: translateX(-25px);
	opacity: 1;
}
.img-left .wow.image{
	transform: translateX(25px);
}
.wow.image div{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background: var(--c-blue);
    transition: all .5s ease-out;
    transition-delay: .5s;
	z-index: 1;
}
.img-left .wow.image div{
	left: 0;
	right: auto;
	background: var(--c-gold);
}
.wow.image.animated div{
	width: 0%;
}
.wow.image img{
	width: 100%;
	height: auto;
	box-shadow: 0 0 0 0 var(--c-blue);
    transition: all .5s ease-in;
    transition-delay: 1.5s;
}
.img-left .wow.image img{
	box-shadow: 0 0 0 0 var(--c-gold);
}
.wow.image.animated img{
	box-shadow: 20px 20px 0 0 var(--c-blue);
}
.img-left .wow.image.animated img{
	box-shadow: -20px 20px 0 0 var(--c-gold);
}
.mb0{
	margin-bottom: 0
}

.latest{
	margin: 100px 0;
}

/***** about *****/
.hero:not(.home-hero){
	margin-bottom: 75px;
}
.hero:not(.home-hero) > .overlay{
background: linear-gradient(to bottom,  rgba(0,0,0,0.4) 0%,rgba(0,0,0,0) 50%);

}
.about{
	margin-bottom: 100px;
}
.about-page{
	padding-bottom: 0
}
.about .wow-text{
	padding-left: 100px;
}

@media (max-width: 1024px){
	body{
		cursor: default;
	}
	.circle-cursor,
	.circle-cursor--inner
	.circle-cursor--outer{
		display: none!important;
	}
}
@media (max-width: 991px){
	.hero-desk{
		display: none;
	}
	.hero-mob{
		display: block;
	}
}

.press.row{
	margin: 0 -5px;
}
.press.row + .press.row{
	margin-top: 80px;
}
.press.row .col-12{
	padding: 0 30px;
}
.press.row img{
	width: 100%;
}
.press.row .col-12 + .col-12{
	margin-top: 30px;
}
.press.row a{
	position: relative;
}
.press.row img{

}
body.filtered .woocommerce span.onsale,
body.filtered ul.products li{
	visibility: visible;
	transform: scale(1);
	opacity: 1;
}
.press .board:after{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	background: var(--c-gold);
	opacity: 0
}
.press .board.odd:after{
	background: var(--c-blue);
}
.press .board:hover:after{
	opacity: .5
}

#menu-sticky {
 font-family: var(--f-sans);
}

.service-page .latest{
	margin: 50px 0
}

.img-circle-left .col-xl-8{
	padding-left: 50px
}

#prices{
	display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    background: rgba(255,255,255,.7);
    z-index: 9999999;
    overflow: auto;
}
#prices .close{
	width: 35px;
	height: 35px;
	position: absolute;
	top: 15px;
    right: 5px;
	background: url("img/close.png") center center no-repeat;
	background-size: 25px;
	z-index: 1;
	cursor: pointer;
}
#prices section + section{
	margin-top: 30px;
}
#prices .container-fluid{
	position: relative;
	padding: 35px 50px;
	background: var(--c-white);
	border-top: 10px solid var(--c-blue);
	border-bottom: 10px solid var(--c-gold);
	box-shadow: 0 0 25px rgba(0,0,0,0.5);
}
#prices *{
    visibility: visible;
    opacity: 1;
    transform: none;
    transition-delay: 0s!important;
}
#prices .container-fluid h2,
#prices .container-fluid h5,
#prices .container-fluid h6{
	text-transform: capitalize;
}
#prices .container-fluid h5{
    display: inline-block;
    padding-bottom: 5px;
	font-size: 48px;
    border-bottom: 1px solid #e1e1e1;
}
#prices .container-fluid h6{
	font-size: 32px;
	position: relative;
	padding-left: 30px;
}
#prices .container-fluid h6:before,
#prices .container-fluid h6:after{
	width: 16px;
	height: 4px;
	position: absolute;
	top: 21px;
	left: 0;
	content: "";
	background: var(--c-grey);
}
#prices .container-fluid h6:after{
	transform: rotate(90deg);
}
#prices .container-fluid .accordion-title.opened h6:after{
	display: none;
}
#prices li{
    padding: 12px 10px;
	border-bottom: 1px solid #e1e1e1;
	position: relative;
}
.accordion-title{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
a.book-link{
	color: var(--c-grey);
	text-transform: uppercase;
	font-weight: 600;
}
a.book-link{
    display: inline-block;
    padding: 10px;
    margin: -10px;
    position: relative;
}
.accordion-text{
	display: none;
    font-weight: 400;
    text-align: left;
}

.sticky-buttons{
	width: 100%;
	position: fixed;
	bottom: -40px;
	left: 0;
	z-index: 1000;
}
.sticky-buttons a{
	border-bottom: none;
}
.sticky-buttons.animated{
	bottom: 0;
}

.page-template-default:not(.page-id-7) #header,
.product-template-default.single-product #header{
	position: relative;
    padding-top: 23px;
	border-top: 6px solid var(--c-blue);
}
.woocommerce-page:not(.page-id-7) #branding img,
.page-template-default:not(.page-id-7) #branding img{
	display: none;
}
.woocommerce-page:not(.page-id-7) #branding img + img,
.page-template-default:not(.page-id-7) #branding img + img{
	display: block;
}
.woocommerce-page:not(.page-id-7) #site-title a:after,
.page-template-default:not(.page-id-7) #site-title a:after{
	display: none;
}
.product-template-default #wc-stripe-payment-request-button-separator,
.product-template-default #wc-stripe-payment-request-button,
.product-template-default #wc-stripe-payment-request-wrapper{
	display: none!important;
}
.product-template-default h1{
    font-size: 72px;
    line-height: 1.25;
}
.product-template-default h1 + p{
    margin-top: 5px;
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 700;
    font-family: var(--f-serif);
}
.woocommerce-page:not(.page-id-7) .book-header a,
.page-template-default:not(.page-id-7) .book-header a,
.woocommerce-page:not(.page-id-7) .user-header ul li + li:before,
.page-template-default:not(.page-id-7) .book-header ul li + li:before,
.woocommerce-page:not(.page-id-7) .book-header ul li + li:before,
.page-template-default:not(.page-id-7) .user-header ul li + li:before,
.woocommerce-page:not(.page-id-7) .book-header ul li + li:before,
.page-template-default:not(.page-id-7) .book-header ul li + li:before,
.woocommerce-page:not(.page-id-7) .menu-open strong,
.page-template-default:not(.page-id-7) .menu-open strong{
	color: var(--c-grey);
}
.woocommerce ul.products li.product strong{
	display: inline-block;
}
.woocommerce div.product p.price{
	margin: 10px 0 42px;
	font-size: 60px;
	font-weight: 700;
}
.woocommerce div.product p.price *{
	font-weight: 700!important;	
}
.woocommerce div.product p.price del{
    position: relative;
    font-style: italic;
    text-decoration: none;
}
.woocommerce div.product p.price del:after{
	width: 100%;
	height: 1px;
	position: absolute;
	top: 60%;
	left: 0;
	content: "";
	background: var(--c-blue);

}
.woocommerce div.product p.price ins{
	text-decoration: none;
}
.woocommerce-page:not(.page-id-7) .book-header.animated,
.page-template-default:not(.page-id-7) .book-header.animated{
    right: 35px;
}
.woocommerce-page:not(.page-id-7) .menu-open span,
.page-template-default:not(.page-id-7) .menu-open span{
	background: var(--c-grey);
}
.page-template-default h2.entry-title{
	display: none;
}
.woocommerce #content div.product div.images, .woocommerce div.product div.images, .woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images{
	width: 48.5%;
}
.woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary{
	width: 51.5%;
}

.woocommerce-product-details__short-description{
	font-weight: 400;
}
.woocommerce-product-details__short-description p + p{
	margin-top: 30px;
}
.product_meta,
.product-template-default #container header{
	display: none;
}

.woocommerce-page:not(.page-id-7) #container,
.product-template-default #container{
	padding-top: 80px;
}
div.single-product .summary{
    margin-top: -20px;
    padding-top: 0px;
	padding-left: 50px;
}
.woocommerce ul.products.columns-3 li.product, .woocommerce-page ul.products.columns-3 li.product{
    width: 33.33%;
    margin: 0;
    padding: 0 20px;
}
.woocommerce .products ul, .woocommerce ul.products{
    margin: 0 -20px;
}
.product-template-default .container{
	padding: 0;
	position: relative;
}

.woocommerce-tabs{
	display: none;
}
.summary.entry-summary{
	flex-wrap: wrap;
}
.summary.entry-summary > *{
	flex: 0 0 100%;
}
.product-template-default h1{
	order: 0;
}
.product-template-default h1 + p{
	order: 1;
}

.woocommerce div.product p.stock{
	display: none;
}
.product-template-default .woocommerce .quantity .qty{
	display: none;
}
.body.page-template-default div#container div.woocommerce .button,
.woocommerce div.product form.cart .button{
	display: block;
	margin: 0 auto;
	float: none;
    font-size: 22px;
}
.body.page-template-default div#container div.woocommerce .button span,
.woocommerce div.product form.cart .button span{
	padding: 14px 60px;
}
.body.page-template-default div#container div.woocommerce .button:hover span + span,
.woocommerce div.product form.cart .button:hover span + span{
	padding: 14px 30px 14px 60px
}
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale{
    display: flex;
    width: 90px;
    height: 90px;
    margin: -30px -5px;
    padding-top: 0;
	font-family: var(--f-serif);
	font-size: 20px;
	text-align: center;
    line-height: 1.2;
    align-items: center;
    justify-content: center;
    left: 0;
    right: auto;
    background: #ba8238;
}
.woocommerce span.onsale{
	opacity: 0;
	margin: -35px 0 0 5px;
}
.woocommerce ul.products li.product .onsale{
	background: var(--c-gold);
}
.product-template-default .entry-footer,
.product-template-default #sidebar,
.product-template-default #comments,
.product-template-default #comments + footer{
	display: none;
}
.product-template-default .wow.title{
	white-space: unset;
}
.content-wrapper.p0{
	padding-top: 0;
	padding-bottom: 0;
}
.related.products{
	padding-top: 40px;
}
.related.products h3{
	margin-bottom: 35px;
}
ul.products h3{
	margin: 0 0 35px -25px;
}

.woocommerce ul.products li.product .button{
	display: none;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size: 40px;
    line-height: 1.2;
    color: var(--c-grey);
    padding: 0
}
.woocommerce ul.products li.product .price{
	margin-bottom: 5px;
	font-size: 36px;
	color: var(--c-grey);
	font-family: var(--f-serif);
	font-weight: 700;
}
.woocommerce ul.products li.product section{
	margin-top: 3px;
	font-weight: 400;
	color: var(--c-ink-4)
}
.woocommerce ul.products li.product .price ins{
	text-decoration: none;
}
.woocommerce ul.products li.product a img{
	margin: 0 0 3px;
}
.img-wrap{
	overflow: hidden;
}
.img-wrap:hover img,
.img-wrap a:hover img{ transform: scale(1.1);
}
.woocommerce div.product form.cart{
    display: flex;
    align-items: center;}
.woocommerce div.product form.cart .button{
	font-size: 22px;
}
.woocommerce div.product form.cart .button span{
	padding: 14px 60px;
}
.woocommerce div.product form.cart .button:hover span + span{
	width: calc(100% - 60px);
}
.navigation.post-navigation{
	display: none;
}
.container-fluid.prod-page{
	position: relative;
	padding: 0 45px;
}
.woocommerce .container-fluid.prod-page ul.products{
	margin: 0 -27px;
	padding-top: 25px;
	padding-bottom: 75px;
}
.woocommerce .container-fluid.prod-page ul.products li.product{
	margin-bottom: 45px;
	padding: 0 27px;
}
.woocommerce-result-count{
	display: none;
}
#sidebar{
	float: left;
}

select.orderby{
	border: none;
    font-weight: 700;
    text-transform: capitalize;
}
select.orderby{
	padding: 7px 8px;
	position: relative;
	opacity: 0;
}
.woocommerce-ordering{
	position: absolute;
	top: -55px;
	right: 45px;
}

#sidebar{
	display: none;
}
.page-id-7 #sidebar{
	display: block;
}

.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2{
	max-width: 100%;
}
#customer_login{
	max-width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.woocommerce form.login,
.woocommerce form.register{
	padding: 0 35px 30px;
	font-size: 16px;
    border-radius: 0;
}
.woocommerce .woocommerce-form__input-checkbox{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0
}
.woocommerce-form-login .woocommerce-form__input-checkbox{
	width: auto;
	height: auto;
}
.woocommerce form .form-row label.woocommerce-form__label-for-checkbox{
	display: inline-block;
	position: relative;
	padding-left: 32px;
    text-transform: capitalize;
    line-height: 24px;
}
.woocommerce form .form-row  .woocommerce-privacy-policy-text + .form-row label.woocommerce-form__label-for-checkbox{
	margin: 35px 0 25px;
	text-transform: initial;
}
#place_order,
.woocommerce-page #payment #place_order{
	margin-left: auto;
    padding: 8px 80px;
}
#place_order span,
.woocommerce-page #payment #place_order span{
	padding: 0!important;
	transition: none!important;
}
#place_order span + span,
.woocommerce-page #payment #place_order span + span,
#place_order:after,
.woocommerce-page #payment #place_order:after{
	display: none;
}
.woocommerce-page #payment #place_order span{
	padding: 8px 80px;
}
.woocommerce-page #payment #place_order span + span{
	padding-right: 0;
}
.woocommerce-page #payment #place_order:hover span + span{
	width: calc(100% - 80px);
}
#place_order:hover,
.woocommerce-page #payment #place_order:hover{
	color: var(--c-white)!important;
	background-color: var(--c-gold)!important
}
.woocommerce .woocommerce-form__label-for-checkbox:before,
.woocommerce .woocommerce-form__label-for-checkbox:after{
	width: 24px;
	height: 24px;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	background: var(--c-white);
}
.woocommerce .woocommerce-form__label-for-checkbox:before{
	border: 3px solid var(--c-gold);
}
.woocommerce .woocommerce-form__label-for-checkbox:after{
	width: 12px;
	height: 12px;
	top: 6px;
	left: 6px;
}
.woocommerce  label.clicked:after,
.woocommerce  input:checked + .woocommerce-form__label-for-checkbox:after{
	background: var(--c-blue);
}
.woocommerce form.login h2,
.woocommerce form.register h2{
	margin-bottom: 24px;
}
#container .woocommerce form.login .lost_password{
    margin: -40px 135px 0 0;
    float: right;    
}
form.login .row--last{
	margin-bottom: 30px;
}
.page-template-default.woocommerce-account #content article .wow{
	padding-bottom: 0
}

.woocommerce-MyAccount-navigation li + li{
	margin-top: 20px;
}
.woocommerce-MyAccount-navigation li.is-active a{
	color: var(--c-white);
	background: var(--c-blue);
	position: relative;
}
.checkout_coupon .form-row{
	margin: 0;
}
.checkout_coupon .form-group{
    width: 100%;
    max-width: 480px;
	margin: 0;
    margin-right: 20px;
}
.checkout_coupon .clearfix > div{
	float: left;
}
.checkout_coupon .clearfix > div button{
	margin: 0!important;
}
.checkout_coupon .form-row.clearfix{
	width: 100%;
}
.checkout_coupon .strong{
	margin-bottom: 15px;
    font-size: 16px;
}
.woocommerce-MyAccount-navigation li.is-active a:after{
	width: 0;
	height: 0;
	position: absolute;
	top: 0;
	right: -13px;
	content: "";
	border-style: solid;
	border-width: 19px 0 19px 13px;
	border-color: transparent transparent transparent var(--c-blue);
}
.woocommerce form.checkout_coupon{
    border: 1px solid #e1dfde;
    padding: 15px 20px;
    margin: -25px 0 16px;
    text-align: left;
    border-radius: 0;
}
.woocommerce-MyAccount-navigation li a{
	display: block;
	padding-left: 25px;
	font: 700 18px/38px "Playfair Display";
	text-transform: uppercase;
	color: var(--c-ink-3);
}
.woocommerce-MyAccount-navigation li a:hover{
	text-decoration: none;
	color: var(--c-white);
	background: var(--c-blue);
}
.woocommerce-account .woocommerce-MyAccount-navigation{
	width: 270px;
	margin-top: 35px;
	padding-top: 30px;
	border-right: 1px solid var(--c-line);
	position: relative;
	z-index: 1
}
.woocommerce-account .woocommerce-MyAccount-content{
	width: calc(100% - 270px);
	margin-top: 35px;
	padding: 30px 50px 35px;
	border-left: 1px solid var(--c-line);
	transform: translateX(-1px);
}
.page-template-default.woocommerce-account #content{
	padding-bottom: 50px;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{
	padding-right: 50px;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address + .woocommerce-Address{
	padding-left: 50px;
	padding-right: 0;
	border-left: 1px solid var(--c-line);
}
.page-template-default form.addresses.edit_address{
	max-width: 500px;
}
.page-template-default form.addresses.edit_address input:not([type=submit]):not([type=radio]):not([type=checkbox]){
	border-bottom: 3px solid var(--c-gold);
	font-size: 20px;
}
.page-template-default form.addresses.edit_address textarea{
	border-bottom: 3px solid var(--c-gold);
	font-size: 20px;
}

.woocommerce .woocommerce-checkout #payment{
	background: var(--c-white);
	border-radius: 0
}
.woocommerce .woocommerce-checkout #payment ul.payment_methods{
	padding: 0;
	border: none;
}

.woocommerce .woocommerce-checkout #payment div.form-row{
	padding: 25px 0 0;
}
.woocommerce-checkout h3{
	margin-bottom: 35px;
	text-transform: capitalize;
}
#ship-to-different-address label{
    padding-left: 30px;
    position: relative;
}

form.checkout.woocommerce-checkout #customer_details{
	border-radius: 0;
}
.checkout.woocommerce-checkout #customer_details .col-1,
.checkout.woocommerce-checkout #customer_details .col-2{
	width: 100%;
}
form.checkout.woocommerce-checkout > section{
	width: 44%;
	float: left;
}
form.checkout.woocommerce-checkout > section + section{
	width: 56%;
}

.woocommerce .shop_table.woocommerce-checkout-review-order-table{
	border-radius: 0;
	font-size: 18px;
	font-weight: 400;
}
.woocommerce .shop_table.woocommerce-checkout-review-order-table thead,
.woocommerce .shop_table.woocommerce-checkout-review-order-table tfoot .order-total{
	background: var(--c-blue);
	color: var(--c-white);
	text-transform: uppercase;
	font-size: 20px;
}
.woocommerce .shop_table.woocommerce-checkout-review-order-table tfoot .order-total{
	color: var(--c-grey);
	background: #ebeaea
}

.woocommerce .shop_table.woocommerce-checkout-review-order-table th,
.woocommerce .shop_table.woocommerce-checkout-review-order-table td{
	width: 50%;
	text-align: left;
	padding: 15px 25px;
}
.woocommerce .shop_table.woocommerce-checkout-review-order-table th + th,
.woocommerce .shop_table.woocommerce-checkout-review-order-table th + td,
.woocommerce .shop_table.woocommerce-checkout-review-order-table td + td{
	text-align: right;
}
.page-template-default form.addresses.edit_address .form-row{
	margin-bottom: 25px;
}
.page-template-default form.addresses.edit_address .form-row-first,
.page-template-default form.addresses.edit_address .form-row-last{
	width: 100%;
	float: none;	
}
.page-template-default form.addresses.edit_address label{
	line-height: 1.5;
	font-weight: 700;
	font-size: 11px;
	color: var(--c-gold);
}
.adr-stitle{
	margin-left: 15px;
}
.adr-stitle + p{
	margin-left: 15px;
	margin-bottom: 50px;	
}
.addresses h3{
	margin-bottom: 25px;
	text-transform: capitalize;
}
.addresses .edit{
	display: inline-block;
	height: 32px;
	margin-top: 50px;
	padding-right: 40px;
	font-weight: 400;
	text-decoration: underline;
	font-size: 16px;
	background: url("img/pencil.png") top right no-repeat;
	color: var(--c-grey);
	text-transform: capitalize;
}

@media (min-width: 992px){

	.page-template-default.woocommerce-account #content h1{
	    font-size: 100px;
	    margin-top: -23px;
	}
	.addresses h3,
	.thanks h3{
		font-size: 36px;
	}

}
@media (max-width: 991px){
	.home-hero .hero-line.animated{
	    width: 100vw;
	}
	form.checkout.woocommerce-checkout > section,
	form.checkout.woocommerce-checkout > section + section{
		width: 100%;
		float: none;
	}
	form.checkout.woocommerce-checkout > section + section{
		margin-top: 30px;		
	}
	.woocommerce .woocommerce-checkout #payment div.form-row{
		margin-bottom: 0;
	}
	.woocommerce #payment #place_order, .woocommerce-page #payment #place_order{
		width: auto!important;
		margin-left: auto;
		margin-right: auto;
	}
	#customer_details p.form-row,
	#customer_details .form-group,
	.checkout_coupon .form-group{
		max-width: 100%;
	}
	.checkout_coupon .form-group{
		margin-right: 0;
		margin-bottom: 30px;
	}
	.woocommerce #payment #place_order, .woocommerce-page #payment #place_order{
		margin-bottom: 0;
	}
}
@media (max-width: 768px){
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content{
		width: 100%;
		border: none;
		padding-left: 0;
		padding-right: 0;
		padding-top: 0;
		margin-top: 0;
	}
	.woocommerce-account .woocommerce-MyAccount-navigation{
		width: calc(100% - 13px);
		padding-top: 0;
		padding-bottom: 20px;
	}
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads{
		display: none;
	}
	.woocommerce-MyAccount-navigation li + li{
    	margin-top: 5px;
	}
	.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address + .woocommerce-Address{
		border-left: none;
		padding-left: 15px;
		padding-top: 15px;
	}
	p.adr-txt{
		padding: 0 15px 15px;
	}
	h3.adr-stitle{
		display: none;
	}
	.adr-stitle + p{
		margin-left: 0;
		margin-top: 15px;
		margin-bottom: 25px;
	}
	
}
@media (max-width: 640px){
	div.woocommerce-message{
		display: block;
	}
	div.woocommerce-message a{
		float: none!important;
	}
	
}

#container .woocommerce form.login button{
	margin: 0;
	float: right;
}
.woocommerce form.register .form-group + p{
	margin-top: -14px;
}
#customer_details p.form-row,
#customer_details .form-group{
	width: 100%;
	max-width: 500px;
	float: left;
}
.woocommerce form.register .form-group + p + p{
	margin-bottom: 10px;
}
.woocommerce form.register button{
	margin-left: auto;
	margin-right: 0;
}
.woocommerce .woocommerce-checkout #payment div.form-row{
	display: block;
}

@media (min-width: 1500px){
	.woocommerce-page .container,
.page-template-default .container,
.container.prod-page{
		max-width: 1490px;
	}
}

@media (min-width: 1300px){
	.container{
	    max-width: 1300px;
	}
}
label[for="payment_method_stripe"]{
	width: 100%;
}
.woocommerce-checkout #payment div.payment_box{
	background: none;
    border-radius: 0;
    border: 1px solid rgba(0,0,0,.1);
    margin-bottom: 0;
    padding: 0;
    font-size: 18px;
}
#stripe-payment-data > p:first-of-type{
    background: var(--c-blue);
    color: var(--c-white);
    font-size: 20px;
    text-transform: uppercase;
    padding: 15px 25px;
    font-weight: 700;
}
.woocommerce-checkout #payment #wc-stripe-cc-form{
	padding: 0 25px;
}
.woocommerce-checkout #payment #wc-stripe-cc-form .form-row label{
    line-height: 1.5;
    font-weight: 700;
}
.woocommerce-checkout #payment div.payment_box::before{
	display: none;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-icon{
	display: inline-block;
}
@media (max-width: 1440px){
	#menu .menu > li + li{
		margin-top: 75px;
	}
	textarea{
		height: 90px;
	}

	#menu-wrapper img{
		margin-bottom: 10px
	}
}

@media (max-width: 1300px){
	.hero-text h1,
	.hero-text h2{
		font-size: 100px;
	}
	.hero-text h2 + h2{
	    font-size: 52px;
	}
	.hero-line{
	}
        h2{
                font-size: 75px;
        }
	h3{
		font-size: 45px;
	}
	.page-template-default h2{
		font-size: 56px;
	}
	.page-template-default h3:not(.widget-title){
		font-size: 48px;
	}
	.hero-line{
		bottom: 35px;
	}
}

@media (max-width: 1199px){
.wow.title{
	    white-space: unset;
	}
	.hero-text h2 + h2{
	    font-size: 72px;
	}
	.hero-text p{
		margin-right: 50px;
	}
.home-hero .hero-line{
		left: -20px;
	}
	
	.hero.bordered:after{
		border-width: 35px 20px 0 20px;
	}	
	.hero-text{
	    bottom: 7.5vh;
	    left: 20px;
	}
	.bottom-scroll{
		display: none;
		visibility: hidden;
	}
	.content-wrapper{
		padding-left: 40px;
		padding-right: 40px;		
	}
	#prices .container-fluid, #menu-wrapper .container-fluid, .content-wrapper .container-fluid{
		max-width: 100%;
	}
	
	.img-left .wow.image,
	.wow.image{
    	transform: none;
	}
	.img-left .wow.image.animated img{
	    box-shadow: 20px 20px 0 0 var(--c-gold);
	}
	.img-left .wow.image div{
	    left: auto;
	    right: 0;
	    background: var(--c-gold);
	}
	.logo-slider-section{
		margin-left: -20px;
		margin-right: -20px;
	}
	
	.wow.image{
		width: 93%;
		z-index: 1;
	}
	
	
	
	.latest .row.justify-content-center{
		justify-content: unset;
	}
	
	#serv-slider > div{
		opacity: 1!important
	}
	#serv-slider > div + div{
		margin-top: 50px;
	}
	
	.service-page section.latest + section .col-xl-8{
		order: 0;
	}
	.service-page section.latest + section .col-xl-4{
		order: 1;
	}
	#serv-slider > div:nth-child(odd) .wow.image.animated img{
		box-shadow: 20px 20px 0 0 var(--c-blue);
	}
	#serv-slider > div:nth-child(odd) .wow.image div{
		background: var(--c-blue);
	}

	.about .wow-text{
		padding-left: 0
	}
	section.about img{
		margin-bottom: 20px;
	}
	
	.clients h3{
		text-align: center;
	}
	
	
	.woocommerce ul.products.columns-3 li.product, .woocommerce-page ul.products.columns-3 li.product{
		width: 50%;
	}
	.product-template-default h1{
		font-size: 64px;
	}
	.woocommerce div.product form.cart{
		margin-bottom: 0;
	}
	.related.products{
		padding-top: 0;
	}
	#menu-sticky .user-header{
	    top: 25px;
	}
	.book-header{
		display: none;
	}
	#menu-sticky img{
		width: 200px;
	}
	.woocommerce span.onsale{
	    margin: -25px 5px;
	}
}
@media (max-width: 991px){
	.circle-cursor{
		display: none;
	}

	.hero-text h2 + h2{
		margin-left: 8vw;
	}
	body:not(.home) .hero{
		background-position: top center;
	}
	
	.latest{
		padding-top: 100px;
	}
	.wow.title{
	    white-space: unset;
	}
	.hero:not(.home-hero) .hero-text{
	    bottom: 95px;
	    left: 35px;
	    line-height: 1;
	}
	.hero:not(.home-hero) .hero-line{
		bottom: 25px;
	}
	.hero:not(.home-hero) .hero-line.animated{
	    width: 92vw;
	}
	.woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary,
	.woocommerce #content div.product div.images, .woocommerce div.product div.images, .woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images{
	    width: 100%;
	    padding-left: 0;
	}
	.product-template-default .container{
		padding: 0 30px;
	}
	.logo-slider-section{
		margin-bottom: 30px;
	}
	.logo-slider-section h4{
		padding: 4px;
	}
	#menu-sticky .user-header{
		display: none;
	}
	#menu-sticky .menu-open.menu-open-book,
	.menu-open.menu-open-book{
		display: block;
	}
	.page-template-default h1{
		margin-top: -25px;
		font-size: 56px;
	}
	.page-template-default h2{
		font-size: 48px;
	}
	.page-template-default h3:not(.widget-title){
		font-size: 34px;
	}
	#customer_login{
		max-width: 100%
	}
	.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,
	.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2{
		width: 100%;
		float: none;
	}

#menu li.menu-item-has-children .sub-menu,
	#menu li.menu-item-has-children:hover .sub-menu{
	    position: relative;
	    top: 0;
	    left: 0;
	    transform: translateY(0px);
	    opacity: 1;
	    background: none;
		transition: none;
	}
	#menu li.menu-item-has-children:not(.submenu-open) .sub-menu,
	#menu li.menu-item-has-children:not(.submenu-open):hover .sub-menu{
		display: none;
	}
	#menu li.menu-item-has-children.submenu-open .sub-menu{
		display: block;
	}
	.sub-menu:before{
		display: none;
	}
	#menu .sub-menu li{
		border-top: none!important;
		border-bottom: none!important;
		border-right: none!important;
	    padding-top: 14px;
	}
	#menu .sub-menu li:last-of-type{
		padding-bottom: 0;
	}
	.ovh #menu .menu > li{
	    transform: translateY(-20px);
	}
	.ovh #menu li:hover:before{
		display: none;
	}
	#menu .menu > li:hover > a{
		padding-left: 0
	}
}

@media (max-width: 640px){

	
	
	#menu-wrapper .book-header{
		display: block;		
	}
	#menu-wrapper .book-header li a{
		padding: 20px 5px;
		font-size: 14px;
		display: inline-block;
	}
	.menu-close{
		top: 92px;
	}

#menu-wrapper{
		background: rgba(255,255,255,.97)

	}
	#menu-wrapper .back{
		/*background: none;*/
	}	
	#menu-wrapper .btn-book{
		display: none;
	}
	#menu-sticky .menu-open.menu-open-book,
	.menu-open.menu-open-book.animated{
		right: 5px;
	}

	#menu-wrapper{
		overflow-y: hidden;
		overflow-x: hidden;
	}
	.menu-close{
		right: 10px;
	}

	#menu-sticky .menu-open{
		top: 43px;
		left: 0
	}
#menu-sticky > a{
		width: 150px;
	}
	h2{
		font-size: 48px;
	}
	h3,
	.thanks h3{
		font-size: 34px;
	}
	h4.wow + h2.wow{
        margin-top: -5px;
	    margin-bottom: 5px;
	    line-height: 1;
	}
	.social-header{
		display: none;
	}
	.home-hero .hero-line{
		left: -10px;
	}
	.hero-line{
	    height: 20px;
	    bottom: 20px;
	}
	.hero-text h1,
	.hero-text h2{
	    font-size: 62px;
	    line-height: 1;
	}
	.hero-text h2 + h2{
		margin-top: -5px;
		margin-left: 6vh;
		font-size: 34px;
	}
	.hero-text{
	    bottom: 4.5vh;
	    left: 10px;
	}
	.hero-text p{
		font-size: 18px;
	    margin-right: 10px;
	    margin-top: 10px;
	    position: relative;
	    padding-right: 5px;
	    padding-left: 5px;
	    text-align: left;
    	
	}
	.hero.bordered:after{
	    border-width: 30px 10px 0 10px;
	}
	.menu-open{
	    transform: scale(0.75);
	    top:45px;
	}
	.menu-open.animated{
		left: 5px;
	}
	#branding img{
	    width: 220px;
	    padding-top: 12px;
	}
	#branding img + img{
		width: 170px;
	}
	#menu-wrapper{
		top: -215vh;
	}
	#menu-wrapper img{
		display: none;
	}
	.content-wrapper{
	    padding-left: 0px;
	    padding-right: 0px;	    
	}
	.home .content-wrapper{
		padding-bottom: 60px;
	}
	.logo-slider-section{
	    margin-left: 10px;
	    margin-right: 10px;
	}
	
	#serv-slider > div:nth-child(odd) .wow.image.animated img,
	.wow.image.animated img{
		box-shadow: 10px 10px 0 0 var(--c-blue);
	}
	.img-left .wow.image.animated img{
	    box-shadow: 10px 10px 0 0 var(--c-gold);
	}
	
	
	
	
	
	
	.latest{
		margin: 100px 0 80px;
		padding-top: 0;
	}
	.latest .row.justify-content-center{
		padding-left: 30px;
	}
	
	
	#footer{
		padding: 20px 30px 45px;
	}
	#footer h5{
		font-size: 28px;
	}
	#footer section{
	    margin: 25px 0 110px;
	}
	#footer section img{
		height: 40px;
	}
	#footer section a{
		margin: 0 10px;
	}
	.top-scroll{
		top: 165px;
		right: 50%;	
	    margin-right: -20px;
	}

	.hero:not(.home-hero) .hero-text{
	    bottom: 50px;
	    left: 25px;
	}
	.hero:not(.home-hero) .hero-line{
		bottom: 5px;
	}
	.hero:not(.home-hero) .hero-line.animated{
	    width: calc(100% + 70px);
	    max-width: 92vw;
	}
	.hero:not(.home-hero){
	    margin-bottom: 35px;
	}
	
	.about{
		margin-bottom: 50px;
	}
	.about .wow.image{
		margin-bottom: -10px;
	}
	.clients img{
		padding: 0;
	}
	.clients h3{
	    text-align: center;
	    margin-top: -5px;
	    padding-top: 0;
	    padding-bottom: 35px;
	}
	
	
		
	

	.woocommerce .container-fluid.prod-page ul.products li.product{
		width: 100%
	}

	.container-fluid.prod-page{
	    padding: 0 25px;
	}
	
	
	.woocommerce-ordering{
	    position: absolute;
	    top: -15px;
	    right: 15px;
	}
	.page-id-7 .prod-page{
		padding-top: 20px
	}
	.woocommerce ul.products li.product .woocommerce-loop-product__title{
		font-size: 28px;
	}
	.woocommerce ul.products li.product .price{
		font-size: 24px;
	}
	.woocommerce ul.products li.product section{
		font-size: 16px;
	}
	.woocommerce ul.products.columns-3 li.product, .woocommerce-page ul.products.columns-3 li.product{
		width: 100%;
	}	
	.woocommerce span.onsale, .woocommerce ul.products li.product .onsale{
		width: 70px;
		height: 70px;
		margin: -20px 5px;
		font-size: 16px;
	}
	.woocommerce-page:not(.page-id-7) #container, .product-template-default #container{
	    padding-top: 15px;
	}
	
	
	.product-template-default .container{
	    padding: 0 20px;
	}
	.product-template-default h1{
	    font-size: 34px;
	}
	.product-template-default p{
		font-size: 16px;
	}
	.product-template-default h1 + p{
	    margin-top: 5px;
	    margin-bottom: 5px;
	    font-size: 14px;
	}
	.woocommerce div.product p.price{
		margin-bottom: 30px;
		font-size: 34px;
	}
	.woocommerce div.product form.cart .button{
		font-size: 16px;
	}
	.woocommerce-page ul.products.columns-3 li.product + li{
		margin-top: 40px;
	}
	.product-template-default #container{
		padding-bottom: 30px;
	}
	.sticky-buttons{
		bottom: -50px;
	}
	.sticky-buttons .btn-book{
		display: none;
	}
	.sticky-buttons a{
		padding-bottom: 15px;
	}
	.sticky-buttons .justify-content-between{
	    justify-content: center;
	}
	#prices .container-fluid{
		height: 600px;
		width: calc(100% - 20px);
		margin-bottom: 10px;
		padding: 15px 30px;
		border-width: 5px;
	    transform: translateY(-50%);
		top: 50%;
		overflow: auto;
	}
	#prices h4{
		display: none;
	}
	#prices h2{
	    margin-bottom: 20px;
	    padding: 0 20px;
	    text-align: center;
	    line-height: 1.2;
	    font-size: 36px;
	}
	#prices .container-fluid h5{
		font-size: 30px;
	}
	#prices .container-fluid h6{
		padding-left: 15px;
		font-size: 24px;
		text-align: left;
	}
	#prices .close{
	    top: 5px;
	    right: 10px;
	    background-size: 20px;
	}
	#prices .container-fluid h6:before, #prices .container-fluid h6:after{
	    width: 10px;
    	height: 2px;
		top: 17px;
		text-align: left;
	}
	#prices li{
		padding: 17px 0 32px;
	}
	#prices a.book-link{
		position: absolute;
		bottom: 5px;
		right: 0;
		font-size: 14px;
	}
	.accordion-text{
		font-size: 16px;
		margin-top: 5px;
	}
	.latest{
		padding: 0 15px;
	}
	h4.wow {
		margin-left: 0;
	}
	h4 span:before, h4 span:after{
		width: 15px;
	}
	.img-circle-left .col-xl-8{
		padding-left: 15px;
	}
	
	#menu-wrapper{
		border-top-width: 17px
	}
	.ovh #menu .menu > li{
		float: none;
	}
	#menu{
    	width: 100%;
    	padding-bottom: 33px;
    	margin-bottom: 25px;
    	border-bottom: 1px solid #e6e6e6;
	}
	#menu .menu > li + li{
		margin-top: 45px
	}
	#menu-wrapper .container-fluid{
		height: calc(100% - 60px);
		margin-top: 60px;
		padding-top: 40px;
		padding-bottom: 30px;
		overflow: auto;
	}
	#menu li a{
		font-size: 28px;
	}
	.menu-form h3{
	    font-weight: 700;
	    font-size: 48px;
	}
		
		
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	.hide-mob{
		display: none;
	}
	.show-mob{
		display: block;
		margin-top: 5px;
	}
	
	
	.loader{
		background-size: calc(100% - 60px);
	}
	.menu-form h4, h4.wow span{
		margin-left: 22px;
	}
	h4 span:before{
		left: -22px;	
	}
	h4 span:after{
		right: -22px;	
	}
	a.book-link{
		display: inline-block;
		margin-top: 10px;
	}
	#menu-sticky .user-header{
        display: block;
	    width: calc(100% - 20px);
	    position: absolute;
	    top: 0px;
	    left: 10px;
	}
	#menu-sticky{
		padding-top: 45px;
	}
	#menu-sticky .user-header ul li a{
		width: auto;
	}
	#menu-sticky .menu-open.menu-open-book{
		margin-top: -9px;
	}
	
	
	
	.woocommerce .container-fluid.prod-page ul.products{
		margin-top: 30px;
	}
	.thanks h3{
		font-size: 24px
	}
	.woocommerce .woocommerce-checkout #payment div.form-row {
	    display: block;
	    width: 100%;
	}
}

/*****/
/* Blog Post Spacing */

/* Override blog grid layout */

/* Blog Post Hero Bar */
.blog-post-hero {
    background: linear-gradient(135deg, var(--c-ink) 0%, var(--c-blue) 50%, var(--c-ink) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

/* Blog Post Content Width Fix */

/* ==============================================
   LASH SERVICE PAGE — 4-Card Style Section
   ============================================== */

.lash-styles-section {
    padding: 80px 0 100px;
}

.lash-styles-grid {
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px;
}

.lash-style-card {
    text-align: center;
    padding: 0 15px 30px;
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
}

/* Image with offset colored backdrop */
.lash-style-img {
    position: relative;
    margin: 0 15px 40px 15px;
    display: block;
}

.lash-style-img::before {
    content: "";
    position: absolute;
    top: 20px;
    left: -15px;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.accent-teal .lash-style-img::before {
    background-color: var(--c-blue);
}

.accent-gold .lash-style-img::before {
    background-color: var(--c-gold);
}

.lash-style-img img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 280px !important;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.4s ease;
}

@media (max-width: 991px) {
    .lash-style-img img {
        height: 220px !important;
    }
}

.lash-style-img-link {
    display: block;
    position: relative;
}

.lash-style-img-link:hover .lash-style-img img {
    transform: scale(1.03);
}

/* Title — force smaller size */
body .lash-styles-section .lash-style-card h3.lash-style-title,
body .lash-styles-section .lash-style-card .lash-style-title,
html body .lash-styles-section h3.lash-style-title {
    margin: 0 0 18px !important;
}

body .lash-styles-section .lash-style-card .lash-style-desc,
html body .lash-styles-section .lash-style-desc {
    margin: 0 0 20px !important;
    flex-grow: 1;
}

.lash-style-title a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s ease;
}

.lash-style-title a:hover {
    color: var(--c-blue);
}

/* Description fills space — Learn More pinned to bottom */
.lash-style-desc {
    margin: 0 0 20px;
}

.lash-style-actions {
    margin-top: auto;
    padding-top: 10px;
}

.lash-style-learn {
    color: var(--c-blue);
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 2px;
    text-decoration: none;
    padding-bottom: 3px;
    transition: color 0.2s ease;
    display: inline-block;
}

.lash-style-learn:hover {
    color: var(--c-gold);
    text-decoration: underline;
    text-underline-offset: 4px;
}

/* Mobile */
@media (max-width: 991px) {
    .lash-styles-section {
        padding: 50px 0 60px;
    }
}

/* ============ MATCH SITE TYPOGRAPHY ============ */
html body .lash-styles-section .lash-style-card h3.lash-style-title,
html body .lash-styles-section .lash-style-card h3.lash-style-title a {
    font-size: 38px !important;
    line-height: 1.2 !important;
    font-weight: 300 !important;
}

html body .lash-styles-section .lash-style-card .lash-style-desc {
    font-size: 18px !important;
    line-height: 1.5 !important;
}

@media (max-width: 1199px) {
    html body .lash-styles-section .lash-style-card h3.lash-style-title,
    html body .lash-styles-section .lash-style-card h3.lash-style-title a {
        font-size: 38px !important;
    }
    html body .lash-styles-section .lash-style-card .lash-style-desc {
        font-size: 18px !important;
    }
}

/* Lash Sets cards — mobile: square images instead of crushed fixed height (Jul 2026) */
@media (max-width: 767px) {
    html body .lash-style-img img {
        height: auto !important;
        aspect-ratio: 1 / 1;
    }
}

.page-template-service-page-lashes .content-wrapper .container-fluid,
.page-template-service-page-lashes .latest .row{
    max-width: 1440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Lash page: uniform vertical rhythm between sections (Jul 2026 harmony pass) */
html body .page-template-service-page-lashes .content-wrapper > section,
.page-template-service-page-brows .content-wrapper > section,
.page-template-service-page-lashlift .content-wrapper > section {
    margin-top: 0;
    margin-bottom: 110px;
}
html body .page-template-service-page-lashes .content-wrapper > section,
.page-template-service-page-brows .content-wrapper > section,
.page-template-service-page-lashlift .content-wrapper > section#prices {
    margin-bottom: 0;
}
@media (max-width: 767px) {
    html body .page-template-service-page-lashes .content-wrapper > section,
.page-template-service-page-brows .content-wrapper > section,
.page-template-service-page-lashlift .content-wrapper > section {
        margin-bottom: 70px;
    }
}

/* Fix seam: ensure gap between styling rows section and refill (Jul 2026) */
html body .page-template-service-page-lashes .el-explore-rows,
html body .page-template-service-page-brows .el-explore-rows,
html body .page-template-service-page-lashlift .el-explore-rows {
    margin-bottom: 110px !important;
}
@media (max-width: 767px) {
    html body .page-template-service-page-lashes .el-explore-rows,
html body .page-template-service-page-brows .el-explore-rows,
html body .page-template-service-page-lashlift .el-explore-rows {
        margin-bottom: 70px !important;
    }
}

/* ===== Homepage V2 (staging) — all rules scoped under .el-home2 ===== */
.el-home2 {
  --el-frame: 30px;
  --el-teal: var(--c-blue);
  --el-gold: var(--c-gold);
  --el-head: var(--c-grey-dark);
  --el-ivory: #faf6f0;
  --el-mat-border: #e9e2d6;
  --el-hairline: #eee9e0;
  --el-muted: var(--c-grey-mid);
  --el-teal-ghost: rgba(34, 161, 196, 0.10);
  --el-gold-ghost: rgba(187, 130, 56, 0.11);
}
@keyframes el-hline-grow {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
.el-home2 .hero-line {
  transform-origin: left center;
}
@media (prefers-reduced-motion: no-preference) {
  .el-home2 .hero-line.animated {
    animation: el-hline-grow .9s ease-in-out .6s both;
  }
}
.el-home2 .el-hero-book {
  position: absolute;
  top: calc(100% + 22px);
  left: 0;
  display: inline-block;
  border: 1px solid var(--el-gold);
  color: var(--c-white);
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  padding: 12px 28px;
  text-decoration: none;
}
@media (max-width: 767px) {
  .el-home2 .el-hero-book {
    top: calc(100% + 14px);
    font-size: 11px;
    padding: 10px 22px;
  }
}

/* Homepage V2 — press logo marquee */
@keyframes el-logo-drift {
  to { transform: translateX(calc(-100% / 3)); }
}
.el-home2 .logo-slider-section {
  overflow: hidden;
  margin: 0 var(--el-frame) 110px;
  padding-bottom: 20px;
}
@media (max-width: 1199px) {
  .el-home2 { --el-frame: 20px; }
}
@media (max-width: 991px) {
  .el-home2 .logo-slider-section { margin-bottom: 70px; }
}
@media (max-width: 640px) {
  .el-home2 { --el-frame: 10px; }
}
.el-home2 {
  overflow-x: clip;
}
.el-home2 .el-logo-track {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 80px;
  padding: 10px 40px;
}
.el-home2 .el-logo-item {
  flex: 0 0 auto;
}
.el-home2 .el-logo-item img {
  height: 44px;
  width: auto;
  display: block;
}
@media (prefers-reduced-motion: no-preference) {
  .el-home2 .el-logo-track {
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: max-content;
    animation: el-logo-drift 40s linear infinite;
  }
  .el-home2 .el-logo-track:hover {
    animation-play-state: paused;
  }
}
@media (prefers-reduced-motion: reduce) {
  .el-home2 .el-logo-dup {
    display: none;
  }
}
@media (max-width: 767px) {
  .el-home2 .el-logo-track {
    gap: 48px;
  }
  .el-home2 .el-logo-item img {
    height: 30px;
  }
}

/* ===== Homepage V2 — page structure ===== */
.el-home2 .content-wrapper {
  max-width: 1440px;
  margin: 0 auto;
  padding-bottom: 60px;
}
.el-home2 .content-wrapper > section:last-child {
  margin-bottom: 0;
}
.el-home2 .content-wrapper > section {
  margin-bottom: 110px;
}
.el-home2 .el-center {
  text-align: center;
}
.el-home2 .el-cta-row {
  text-align: center;
  margin-top: 44px;
}
.el-home2 .el-btn {
  display: inline-block;
  border: 1px solid var(--el-gold);
  color: var(--el-head);
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  padding: 12px 28px;
  margin: 0 8px;
  text-decoration: none;
  transition: background .25s, color .25s;
}
.el-home2 .el-btn:hover {
  background: var(--el-gold);
  color: var(--c-white);
}

/* ===== Why Envious ===== */
.el-home2 .el-why-grid {
  display: flex;
  gap: 56px;
  align-items: center;
  margin-top: 36px;
}
.el-home2 .el-why-text {
  flex: 1 1 58%;
}
.el-home2 .el-body {
  font-size: 17px;
  line-height: 1.75;
}
.el-home2 .el-statement {
  font-family: var(--f-serif);
  font-style: italic;
  font-size: 26px;
  color: var(--el-teal);
  margin: 26px 0 0;
}
.el-home2 .el-why-photo {
  flex: 0 0 34%;
  position: relative;
  padding: 16px;
}
.el-home2 .el-why-photo img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  display: block;
}
.el-home2 .el-br {
  position: absolute;
  width: 34px;
  height: 34px;
}
.el-home2 .el-br-tl {
  top: 0;
  left: 0;
  border-top: 2px solid var(--el-gold);
  border-left: 2px solid var(--el-gold);
}
.el-home2 .el-br-br {
  bottom: 0;
  right: 0;
  border-bottom: 2px solid var(--el-gold);
  border-right: 2px solid var(--el-gold);
}
.el-home2 .el-proof {
  display: flex;
  gap: 40px;
  margin-top: 24px;
  padding-top: 16px;
}
.el-home2 .el-proof-item {
  flex: 1;
}
.el-home2 .el-dash {
  display: block;
  height: 2px;
  margin-bottom: 14px;
}
.el-home2 .el-dash-teal { background: var(--el-teal); }
.el-home2 .el-dash-gold { background: var(--el-gold); }
.el-home2 .el-proof-item h3 {
  font-family: var(--f-serif);
  font-size: 22px;
  color: var(--el-head);
  margin: 0 0 8px;
}
.el-home2 .el-proof-item p {
  font-size: 15px;
  line-height: 1.65;
  margin: 0;
}

/* ===== Offset frames (shared) ===== */
.el-home2 .el-offset {
  position: relative;
  margin: 0 10px 10px 0;
}
.el-home2 .el-offset::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 10px;
  width: 100%;
  height: 100%;
}
.el-home2 .el-offset-teal::before { background: var(--el-teal); }
.el-home2 .el-offset-gold::before { background: var(--el-gold); }
.el-home2 .el-offset img {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  display: block;
}

/* ===== Services cards ===== */
.el-home2 .el-svc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 44px;
  margin-top: 44px;
}
.el-home2 .el-svc-card h3 {
  font-family: var(--f-serif);
  font-size: 24px;
  color: var(--el-head);
  margin: 22px 0 0;
}
.el-home2 .el-svc-card p {
  font-size: 15px;
  line-height: 1.65;
  margin: 10px 0 0;
}
.el-home2 .el-svc-book {
  display: inline-block;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--el-gold);
  margin-top: 14px;
  text-decoration: none;
}

/* ===== Before & Afters strip ===== */
.el-home2 .el-ba {
  background: var(--el-ivory);
  padding: 70px 60px;
}
.el-home2 .el-ba-row {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  margin-top: 44px;
}
.el-home2 .el-mat {
  flex: 1;
  background: var(--c-white);
  border: 1px solid var(--el-mat-border);
  box-shadow: 0 6px 24px rgba(26, 26, 26, 0.06);
  padding: 14px 14px 18px;
}
.el-home2 .el-mat-drop {
  margin-top: 34px;
}
.el-home2 .el-mat img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  display: block;
}
.el-home2 .el-placard {
  text-align: center;
  margin-top: 14px;
}
.el-home2 .el-placard-name {
  font-family: var(--f-serif);
  font-size: 19px;
  color: var(--el-head);
}
.el-home2 .el-placard-desc {
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 4px;
}

/* ===== Mobile ===== */
@media (max-width: 991px) {
  .el-home2 .content-wrapper > section {
    margin-bottom: 70px;
  }
  .el-home2 .el-why-grid {
    flex-direction: column-reverse;
    gap: 36px;
  }
  .el-home2 .el-why-photo {
    width: 70%;
    max-width: 340px;
  }
  .el-home2 .el-proof {
    flex-wrap: wrap;
    gap: 28px;
  }
  .el-home2 .el-proof-item {
    flex: 1 1 40%;
  }
  .el-home2 .el-ba {
    padding: 44px 24px;
  }
  .el-home2 .el-ba-row {
    flex-direction: column;
    gap: 28px;
  }
  .el-home2 .el-mat-drop {
    margin-top: 0;
  }
}

/* Homepage V2 — hero band containment + button legibility */
.el-home2 .el-hero-book {
  background: var(--el-gold);
  border-color: var(--el-gold);
}
.el-home2 .el-hero-book:hover {
  background: var(--c-gold-dark);
  border-color: var(--c-gold-dark);
}

/* Homepage V2 — B&A filter gallery + lightbox */
body.el-lb-open {
  overflow: hidden;
}
.el-lb {
  position: fixed;
  inset: 0;
  z-index: 99999;
}
.el-lb-back {
  position: absolute;
  inset: 0;
  background: rgba(20, 20, 22, 0.92);
}
.el-lb-body {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px 64px;
}
.el-lb-pair {
  display: flex;
  gap: 18px;
  max-width: 1100px;
  max-height: 76vh;
}
.el-lb-pair figure {
  margin: 0;
  min-width: 0;
}
.el-lb-pair img {
  max-height: 68vh;
  max-width: 100%;
  display: block;
}
.el-lb-pair figcaption {
  color: var(--c-white);
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  text-align: center;
  margin-top: 10px;
  opacity: .8;
}
.el-lb-placard {
  text-align: center;
  margin-top: 18px;
}
.el-lb-name {
  display: block;
  font-family: var(--f-serif);
  font-size: 21px;
  color: var(--c-white);
}
.el-lb-cat {
  display: block;
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
  margin-top: 5px;
}
.el-lb-x,
.el-lb-prev,
.el-lb-next {
  position: absolute;
  background: none;
  border: none;
  color: var(--c-white);
  line-height: 1;
  z-index: 2;
}
.el-lb-x {
  top: 18px;
  right: 24px;
  font-size: 40px;
}
.el-lb-prev,
.el-lb-next {
  top: 50%;
  transform: translateY(-50%);
  font-size: 56px;
  padding: 20px;
}
.el-lb-prev { left: 8px; }
.el-lb-next { right: 8px; }
@media (max-width: 767px) {
  .el-lb-body {
    padding: 52px 12px 20px;
  }
  .el-lb-body {
    justify-content: flex-start;
    overflow-y: auto;
  }
  .el-lb-pair {
    flex-direction: column;
    gap: 12px;
    max-height: none;
    width: 100%;
  }
  .el-lb-pair img {
    max-height: 38vh;
    width: auto;
    max-width: 100%;
    margin: 0 auto;
  }
  .el-lb-prev,
  .el-lb-next {
    font-size: 40px;
    padding: 12px;
    top: auto;
    bottom: 8px;
    transform: none;
  }
  .el-lb-prev { left: 18px; }
  .el-lb-next { right: 18px; }
}

/* Homepage V2 — B&A mats-as-doors + lightbox fade */
.el-home2 .el-ba-sub {
  font-size: 15px;
  color: var(--el-muted);
  margin: 12px 0 0;
}
.el-home2 button.el-mat {
  font: inherit;
  text-align: center;
  display: block;
  transition: transform .25s, box-shadow .25s;
}
.el-home2 button.el-mat:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(26, 26, 26, 0.10);
}
.el-home2 .el-mat .el-placard,
.el-home2 .el-mat .el-placard-name,
.el-home2 .el-mat .el-placard-desc {
  display: block;
}
.el-home2 .el-mat .el-placard-desc {
  color: var(--el-gold);
}
.el-lb {
  opacity: 0;
  transition: opacity .25s ease;
}
.el-lb.el-lb-in {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .el-lb {
    transition: none;
  }
  .el-home2 button.el-mat {
    transition: none;
  }
}

/* Homepage V2 — service cards link to their pages */
.el-home2 .el-svc-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.el-home2 .el-svc-link:hover h3 {
  color: var(--el-gold);
}

/* Homepage V2 — offset press hover on service cards */
.el-home2 .el-svc-card .el-offset {
  overflow: visible;
}
.el-home2 .el-svc-card .el-offset img {
  transition: transform .3s ease;
}
.el-home2 .el-svc-link:hover .el-offset img {
  transform: translate(5px, 5px);
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .el-home2 .el-svc-card .el-offset img {
    transition: none;
  }
  .el-home2 .el-svc-link:hover .el-offset img {
    transform: none;
  }
}

/* Homepage V2 — featured products boutique menu */
.el-home2 .el-bm-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 20px;
}
.el-home2 .el-bm-all {
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--el-gold);
  text-decoration: none;
  white-space: nowrap;
  padding-bottom: 6px;
}
.el-home2 .el-bm {
  display: flex;
  gap: 110px;
  align-items: stretch;
  margin-top: 70px;
}
.el-home2 .el-bm-hero {
  flex: 0 0 34%;
  display: block;
  text-decoration: none;
}
.el-home2 .el-bm-hero .el-offset {
  display: block;
  height: 100%;
}
.el-home2 .el-bm-frame {
  position: relative;
  display: block;
  overflow: hidden;
}
.el-home2 .el-bm-wipe {
  position: absolute;
  inset: 0;
  transform: scaleX(0);
  transform-origin: left center;
  z-index: 3;
}
.el-home2 .el-wipe-go {
  animation: el-bmwipe .55s ease-in-out forwards;
}
@keyframes el-bmwipe {
  0% { transform: scaleX(0); transform-origin: left center; }
  50% { transform: scaleX(1); transform-origin: left center; }
  51% { transform-origin: right center; }
  100% { transform: scaleX(0); transform-origin: right center; }
}
.el-home2 .el-bm-list {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.el-home2 .el-bm-row {
  display: block;
  width: 100%;
  max-width: 560px;
  padding: 20px 0;
  text-decoration: none;
}
.el-home2 .el-bm-dash {
  display: block;
  width: 30px;
  height: 2px;
  background: var(--el-mat-border);
  margin-bottom: 10px;
  transition: width .3s ease, background .3s ease;
}
.el-home2 .el-bm-on .el-bm-dash.el-dash-t {
  width: 60px;
  background: var(--el-teal);
}
.el-home2 .el-bm-on .el-bm-dash.el-dash-g {
  width: 60px;
  background: var(--el-gold);
}
.el-home2 .el-bm-name {
  font-family: var(--f-serif);
  color: var(--el-head);
  transition: color .25s;
}
@media (prefers-reduced-motion: reduce) {
  .el-home2 .el-bm-row {
    transition: none;
  }
  .el-home2 .el-wipe-go {
    animation: none;
  }
}
@media (max-width: 991px) {
  .el-home2 .el-bm {
    flex-direction: column;
    gap: 28px;
  }
  .el-home2 .el-bm-hero {
    width: 70%;
    max-width: 340px;
    align-self: center;
  }
}

/* Homepage V2 — products hero as visibility stack */
.el-home2 .el-bm-frame .el-bm-ph {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  z-index: 1;
}
.el-home2 .el-bm-frame .el-bm-ph-on {
  opacity: 1;
  z-index: 2;
}
.el-home2 .el-bm-frame {
  aspect-ratio: 1;
}

/* Homepage V2 — products menu: name + tagline only */
.el-home2 .el-bm-name {
  display: block;
  font-size: 34px;
}
.el-home2 .el-bm-tag {
  display: block;
  font-family: var(--f-serif);
  font-style: italic;
  font-size: 19px;
  margin-top: 5px;
}
.el-home2 .el-tag-teal { color: var(--el-teal); }
.el-home2 .el-tag-gold { color: var(--el-gold); }
.el-home2 .el-bm-on .el-bm-name {
  color: var(--el-gold);
}
@media (max-width: 991px) {
  .el-home2 .el-bm-name {
    font-size: 21px;
  }
}

/* Homepage V2 — scroll reveals (visible by default; .el-prep only ever added by JS) */
.el-home2 .el-prep {
  opacity: 0;
  transform: translateY(24px);
}
.el-home2 .el-in {
  opacity: 1;
  transform: translateY(0);
  transition: opacity .6s ease, transform .6s ease;
}
.el-home2 .el-prep .el-dash {
  transform: scaleX(0);
}
.el-home2 .el-in .el-dash {
  transform: scaleX(1);
  transform-origin: left center;
  transition: transform .45s ease-out;
}
.el-home2 .el-in .el-proof-item:nth-child(1) .el-dash { transition-delay: .35s; }
.el-home2 .el-in .el-proof-item:nth-child(2) .el-dash { transition-delay: .55s; }
.el-home2 .el-in .el-proof-item:nth-child(3) .el-dash { transition-delay: .75s; }
.el-home2 .el-dash {
  width: 60px;
}

/* Homepage V2 — mobile lap fixes (all scoped to phone/tablet widths) */
@media (max-width: 991px) {
  .el-home2 .content-wrapper {
    padding-left: 22px;
    padding-right: 22px;
  }
  .el-home2 h2.title {
    font-size: 42px;
    line-height: 1.15;
  }
  .el-home2 .el-why-photo {
    align-self: center;
  }
}
@media (max-width: 767px) {
  .el-home2 .el-svc-card {
    text-align: center;
  }
  .el-home2 .el-svc-card .el-offset {
    margin-left: auto;
    margin-right: auto;
    max-width: 340px;
  }
  .el-home2 .el-bm-head {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
  }
  .el-home2 .el-bm-list {
    align-items: center;
  }
  .el-home2 .el-bm-row {
    text-align: center;
  }
  .el-home2 .el-bm-dash {
    margin-left: auto;
    margin-right: auto;
  }
  .el-home2 .el-center,
  .el-home2 .el-prod > h4,
  .el-home2 .el-prod > h2 {
    text-align: center;
  }
}

/* Homepage V2 — mobile hero slim bar + pill repair + proof stack */
.el-home2 .el-ba-pills {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}
.el-home2 .el-pill {
  border: 1px solid var(--el-mat-border);
  background: var(--c-white);
  color: var(--el-head);
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 9px 20px;
  transition: border-color .2s, color .2s;
}
.el-home2 .el-pill:hover {
  border-color: var(--el-gold);
  color: var(--el-gold);
}
@media (max-width: 767px) {
  .el-home2 .home-hero .hero-text h2.title {
    display: block;
    width: fit-content;
    background: rgba(34, 161, 196, 0.96);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    padding: 5px 12px;
    font-size: 30px;
    line-height: 1.5;
    color: var(--c-white);
  }
  .el-home2 .home-hero .hero-text p.title {
    margin-top: 10px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  .el-home2 .el-hero-book {
    margin-top: 14px;
  }
  .el-home2 .el-proof {
    flex-direction: column;
    gap: 26px;
  }
  .el-home2 .el-proof-item {
    flex: 1 1 auto;
  }
}

/* Homepage V2 — hero single chip + gold notch (supersedes earlier mobile hero rules; consolidate at cutover) */
.el-home2 .el-hero-chip {
  display: contents;
}
@media (min-width: 768px) {
  .el-home2 .logo-slider-section h4 {
    margin-left: 34px;
  }
}
@media (max-width: 767px) {
  .el-home2 .logo-slider-section h4 {
    margin-left: 0;
  }
  .el-home2 .home-hero .hero-line {
    display: none;
  }
  .el-home2 .home-hero .hero-text {
    width: auto;
    text-align: left;
  }
  .el-home2 .el-hero-chip {
    display: block;
    width: fit-content;
    max-width: 88%;
    padding: 14px 20px 14px 18px;
  }
  .el-home2 .el-hero-chip h2.title {
    display: block;
    width: auto;
    background: none;
    padding: 0;
    margin: 0;
    color: var(--c-white);
    font-size: 32px;
    line-height: 1.05;
    text-indent: 0;
  }
  .el-home2 .el-hero-chip h2.title + h2.title {
    font-style: italic;
    font-size: 19px;
    line-height: 1.3;
    margin-top: 5px;
  }
  .el-home2 .home-hero .hero-text p.title {
    display: block;
    width: fit-content;
    max-width: 92%;
    padding: 7px 14px 7px 18px;
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.55;
    text-indent: 0;
  }
  .el-home2 .el-hero-book {
    position: static;
    display: inline-block;
    margin: 12px 0 0;
  }
}

/* Homepage V2 — mobile hero: everything inside the photo, aligned to frame, lighter teal */
@media (max-width: 767px) {
  .el-home2 .home-hero .hero-mob {
    height: 100%;
    background-size: cover;
    background-position: center top;
  }
  .el-home2 .home-hero .hero-text {
    left: var(--el-frame);
    right: var(--el-frame);
    bottom: calc(var(--el-frame) + 10px);
    padding: 0;
  }
  .el-home2 .el-hero-chip {
    background: rgba(34, 161, 196, 0.85);
  }
  .el-home2 .home-hero .hero-text p.title {
    background: rgba(20, 20, 22, 0.38);
  }
  .el-home2 .el-hero-chip,
  .el-home2 .home-hero .hero-text p.title,
  .el-home2 .el-hero-book {
    margin-left: 0;
  }
}

/* Homepage V2 — kill legacy per-line teal inside the chip (mobile) */
@media (max-width: 767px) {
  .el-home2 .home-hero .hero-text .el-hero-chip h2.title {
    background: none;
    padding: 0;
    width: auto;
  }
}

/* ==========================================================================
   Footer flash fix: WOW.js is no longer loaded, but footer elements still
   carry .wow classes that start hidden/offset -> flash on load.
   Force them visible so the footer renders correct from first paint.
   (Temporary child-side fix; strip .wow from EL/footer.php in modernization pass.)
   ========================================================================== */
#footer .wow,
#footer.wow {
    opacity: 1 !important;
    visibility: visible;
    transform: none !important;
    animation: none;
}

/* ==========================================================================
   Footer flash fix: replace legacy absolute-positioned footer (+ .hfeed
   padding-bottom reservation) with a modern flexbox sticky footer.
   Kills the flash where the absolute footer painted over content before
   the padding reservation applied. Site-wide. Fold into parent later.
   ========================================================================== */
.hfeed {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100vh !important;
    padding-bottom: 0 !important;
    position: static !important;
}
.hfeed #footer,
.hfeed > #footer {
    position: static !important;
    top: auto !important;
    margin-top: auto !important;
    z-index: auto !important;
}

/* Footer height trim (was 423px - too much dead space). Fold into parent later. */
#footer.bg,
#footer {
    padding-top: 30px !important;
    padding-bottom: 10px !important;
}
#footer h5 { margin: 0 0 12px !important; }
#footer section { margin-bottom: 6px !important; }
#footer .top-scroll { top: 14px !important; }

/* Homepage — products hero: crossfade between stacked photos (auto-cycle quiet path) */
.el-home2 .el-bm-frame .el-bm-ph {
  transition: opacity 1.2s ease;
}
@media (prefers-reduced-motion: reduce) {
  .el-home2 .el-bm-frame .el-bm-ph {
    transition: none;
  }
}

/* ===== Footer legal block =====================================================
   [EL 2026-07-09] Was a hardcoded inline style attribute on the div in footer.php:
     style="background-color:transparent; padding:10px; text-align:center;
            font-size:14px; color:#555; border-top:1px solid #ddd;"
   The border-top drew a near-white 1px line straight across the dark footer.
   Removed. Every other declaration is carried over unchanged so nothing else moves.

   NOTE: color:#555 is dark grey on a dark footer -- poor contrast, kept as-is
   deliberately rather than silently redesigning it. Worth revisiting. */
.el-footer-legal{
	background-color: transparent;
	padding: 10px;
	text-align: center;
	font-size: 14px;
	color: #555;
}
/* ===== Keyboard focus =======================================================
   [EL 2026-07-09] Replaces `body *{outline:none!important}` from el-legacy.css,
   which removed every focus indicator on the site and, being !important, made it
   impossible to put one back.

   :focus-visible is the browser's own judgement about whether the user is
   navigating by keyboard. Mouse clicks do not match it, so this ring never appears
   for pointer users -- which is the whole reason the old rule existed.

   Specificity note. `*:focus:not(:focus-visible)` is (0,2,0), which beats element-
   level focus rules such as Bootstrap Reboot's `button:focus` (0,1,1). Elements that
   define their own focus treatment -- checkout inputs and the contact form use a
   box-shadow ring -- out-specify this and are unaffected. */
/* Skip-link: off-screen until a keyboard user tabs to it, so it is invisible to
   everyone else. Without it, keyboard and screen-reader users must tab through the
   entire header — social links, account, phone, book, the lot — on every page before
   reaching the content. */
.el-skip-link{
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 100000000;
	padding: 12px 20px;
	background: var(--c-white);
	color: var(--c-grey);
	font-family: var(--f-sans);
	font-size: 14px;
	text-decoration: none;
}
.el-skip-link:focus{
	left: 8px;
	top: 8px;
	outline: 2px solid var(--c-blue);
	outline-offset: 2px;
}

*:focus:not(:focus-visible){
	outline: none;
}
*:focus-visible{
	outline: 2px solid var(--c-blue);
	outline-offset: 2px;
	border-radius: 1px;
}
/* ===== Background images from custom properties =============================
   [EL 2026-07-09] The hero, the menu overlay and the footer used to carry
   style="background-image:url(...)" written by the template. An inline declaration
   outranks every stylesheet rule, so CSS could only touch them with !important.

   el_bg_var() now emits a custom property instead. These rules consume it.
   .hero-desk / .hero-mob fallbacks live in the folded-in el-custom block below. */
#footer{
	background-image: var(--el-footer-bg, none);
}

/* ==========================================================================
   Former el-custom.css (the Customizer's Additional CSS), folded in 2026-07-11.
   It used to print inline at wp_head priority 101 -- last in the cascade. It now
   lives here; the rules below beat nothing they didn't already beat (verified by
   computed-style diff). el-custom.css and its print function are gone.
   ========================================================================== */

/* Establishes a positioning context on footer paragraphs; site-wide. */
#footer .wow p {
	position: relative;
}

/* Hero background fallbacks. --el-hero-bg is set inline per-page by el_bg_var();
   these url()s only show if the ACF hero field is empty. */
.hero-desk {
	background-image: var(--el-hero-bg);
}
.hero-mob {
	background-image: var(--el-hero-bg);
}

/* WP Rocket lazyload fade-in: lazy images start invisible, fade in when JS adds
   .lazyloaded. */
img[data-lazy-src] {
	opacity: 0;
}
img.lazyloaded {
	transition: opacity .5s linear 0.2s;
	opacity: 1;
}

.accordion {
	padding: 0 7vw;
}

.hero-line {
	height: 130px;
	background: #22a1c4cf;
	bottom: 20px;
}

.single-product .woocommerce div.product form.cart .button {
	margin: 0;
}
.single-product .text-center h3 {
	font-size: 40px;
}