header[data-elementor-type="header"] {
    z-index: 10000;
    position: fixed;
    width: 100%;
    top: 0;
    box-shadow: none;
    transition: .2s all ease-in;
}

.lomacasa-header .logo path {
    fill: black;
}

.lomacasa-header .button-contact  {
    color: black;
}

.hamburger.hamburger--beauty svg {
    width: 40px;
    height: 40px;
}

.hamburger.hamburger--beauty .line1,
.hamburger.hamburger--beauty .line3 {
    stroke-width: 3;
    stroke: black;
}

.lomacasa-header .button-contact line,
.lomacasa-header .button-contact path {
    stroke: black;
}

/* .hamburger.hamburger--beauty .line1 {
    transform: translateY(6px);
}

.hamburger.hamburger--beauty .line3 {
    transform: translateY(-6px);
} */

.hamburger.hamburger--beauty .line2 {
    stroke-dashoffset: -30;
    stroke-width: 3;
    stroke: black;
}

input#menu-toggle:checked ~ .hamburger.hamburger--beauty .line {
    stroke: black;
    transform: translateY(0);
}

body.header-light.header-shadow:not(.menu-open) .lomacasa-header {
    box-shadow: inset 0px 40px 35px -12px rgba(0, 0, 0, 0.6);
}

@media screen and (max-width: 767px) {
	body:not(.menu-open) header:not(.scrolled) .lomacasa-header {
		background: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
	}
}

body:not(.header-light).header-shadow:not(.menu-open) .lomacasa-header {
	box-shadow: inset 0px 40px 35px -12px rgb(255 255 255 / 60%);
}

body.header-light:not(.menu-open) .lomacasa-header .logo path {
    fill: white;
}

body.header-light:not(.menu-open) .lomacasa-header .button-contact  {
    color: white;
}

body.header-light:not(.menu-open) .lomacasa-header .button-contact line,
body.header-light:not(.menu-open) .lomacasa-header .button-contact path {
    stroke: white;
}

body.header-light:not(.menu-open) .lomacasa-header .hamburger.hamburger--beauty .line1,
body.header-light:not(.menu-open) .lomacasa-header .hamburger.hamburger--beauty .line2,
body.header-light:not(.menu-open) .lomacasa-header .hamburger.hamburger--beauty .line3 {
    stroke: white;
}

body.menu-open header[data-elementor-type="header"] {
    background-color: white;
    box-shadow: none;
}

#menu-improved__overlay[data-position="full"] #menu-improved__content{
		padding: 0 15px 50px 15px;
	    height: auto!important;
}

@media screen and (max-width: 1240px) {
	#menu-improved__overlay[data-position="full"] #menu-improved__content {
		height: calc(100dvh - 65px) !important;
	}
}

#menu-improved__overlay {
    top: var(--header-bar);
}


@media screen and (min-width: 1024px) {
	.mega-menu .button {
		padding: 0px;
	}
}

.mega-menu .button span{
    font-size:1.5rem;
	color:#AB9C8F;
	font-weight: normal;
}

.mega-menu a{
	transition: all .45s;
	color: #1F1F1F;
}

.mega-menu a:hover{
	color:#AB9C8F!important;
}

.mega-menu .button-contact line, 
.mega-menu .button-contact path {
    stroke: #AB9C8F!important;
	stroke-width:2;
}
input#menu-toggle:checked ~ .hamburger.hamburger--beauty .line1, 
input#menu-toggle:checked ~ .hamburger.hamburger--beauty .line2, 
input#menu-toggle:checked ~ .hamburger.hamburger--beauty .line3{
	stroke-width: 3px!important;
}


/*mega-menu item*/

.hover-item-list {
    position: relative;
    width: 100%;
}

.hover-item-list>ul {
    padding: 0;
    margin: 0;
    top: 0;
    width: 35%;
}


.hover-item-list .select .item-title .title-list{
    cursor: pointer;
    color: #1F1F1F;
    opacity: 0.9;
/*     display: block; */
	padding: 20px 15px;
    font-size: 1.2rem;
}


.hover-item-list .select .item-title .title-list svg {
    height: 40px;
}

@media screen and (max-width: 768px) {
	.hover-item-list .select .item-title .title-list{
		padding: 20px 0px;
	}
}
.hover-item-list .select.hover>a {
    opacity: 1;
}

.hover-item-container {
    position: absolute;
    width: 65%;
    left: 35%;
    opacity: 0;
    visibility: hidden;
/*     display: none; */
    top: 0;
    padding: 0 50px;
}


.hover-item-container {
    padding: 0px;
}

.item-title {
    display: flex;
    align-items: center;
    gap: 20px;
}

.select .hover-item-container:not(.select.first .hover-item-container){
    transform: translateY(-10px);
}

.select .hover-item-container.hover-visible {
    opacity: 1;
    visibility: visible;
/*     display: block; */
	transition: all 0.8s ease-in-out;
	transform: translateY(0px)!important;
}

.hover-item-container p {
    color: #1F1F1F;
    font-weight: 300;
    font-size: 0.9rem;
    margin-bottom: 20px;
}

.hover-item-container ul {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.hover-item-container ul li {
	width: 100%;
    display: block;
}

.hover-item-container ul li img {
    width: 100%;
    min-width: 150px;
}

.menu-page{
	    display: flex;
    position: relative;
}

.menu-page .contact-btn{
	flex:1;
}

.menu-page .contact-btn .elementor-widget-container {
    display: flex;
    align-items: flex-end;
}

.menu-page {
    padding-top: 30px;
}

.mega-menu li.select {
    list-style: none;
}


#menu-improved__content {
	border: solid;
    border-width: 1px 0 0 0;
    border-color: #d5d8dc;
}



.select svg path ,
.select svg rect, 
.text-col span, 
.select{
    transition: .4s all ease-in;
}



.select.first svg path, 
.select.first svg rect{
    stroke: var( --e-global-color-accent );
}

.select:hover svg path, 
.select:hover svg rect,
.select.hover svg path, 
.select.hover svg rect{
    stroke: var( --e-global-color-accent )!important;
}


.text-col {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.select svg {
    width: 50px;
    height: auto;
}

.title-list {
    display: flex;
	width:100%;
	align-items: center;
    gap: 20px;
}

.select.first{
  	  box-shadow: inset 0 -1px 0 0 #333, inset 0 1px 0 0 #333;
}


@media screen and (min-width: 768px) {
	.hover-item-list .select:hover, 
	 .hover-item-list .select.hover{
		  box-shadow: inset 0 -1px 0 0 #ab9c8f,  inset 0 1px 0 0 #ab9c8f!important;
	}
	.select:hover .text-col, 
	.select.hover .text-col{
		color:var( --e-global-color-accent )!important;
	}
}
.select.first .text-col, 
.hover-item-list .select.hover .text-col{
	color: #1F1F1F;
}






.mega-menu-items-hover .elementor-heading-title {
   transition: .4s all ease-in;
}

.mega-menu-items-hover:hover .elementor-heading-title {
    color: #AB9C8F!important;
}

.mega-menu-items-hover .elementor-widget-container {
    overflow: hidden;
}

.mega-menu-items-hover .flex-hight {
	transition: .2s all ease-in;
}

.mega-menu-items-hover:hover .flex-hight {
    transform: scale(1.1);
}

.mega-menu-title-1, 
.mega-menu-title-1 a{
	font-family: var(--font-stack-text);
	line-height: 1.2rem !important;
	font-size: 1.1rem!important;
	font-weight: 500;
	transition: .4s all ease-in;
}


.mega-menu-title-2, 
.mega-menu-title-2 a {
	font-family: var(--font-stack-text);
	line-height: 1rem !important;
	font-size: 0.9rem!important;
	font-weight: bolder;
	transition: .4s all ease-in;
	color:#8E8E8E;
}

.mega-menu-title-3 span{
	font-family: var(--font-stack-text);
	line-height: 1.2rem !important;
	font-size: 1rem!important;
	font-weight: 500;
	transition: .4s all ease-in;
	margin-top: 3px;
}

.menu-page {
	background-color: #FAF8F2;
}


.mega-menu .menu-page svg {
    border-radius: 0px;
    border-width: 0px;
    border-color: #ffffff00;
    border-style: none;
    transition: .4s all ease-in;
}

.menu-page a .elementor-widget-container {
    display: flex;
}

.mega-menu .menu-page a svg path, 
.mega-menu .menu-page a svg circle {
    transition: .4s all ease-in;
	    stroke-width: 1.2;
}

.mega-menu .menu-page a:hover svg path:not(.menu-page .social a path), 
.mega-menu .menu-page a:hover svg circle:not(.menu-page .social a circle){
    stroke: #ab9c8f;
}

.mega-menu .menu-page a:hover .mega-menu-title-3 span{
    color:#ab9c8f;
}

.menu-page a {
    display: flex;
    align-items: center;
    color: #1f2124;
	padding: 10px 0px;
}

.mega-menu .mega-btn {
    background: #0a3a6e;
    padding: 10px 20px;
    border-radius: 50px;
}

.mega-menu .mega-btn span {
    font-size: 1rem;
    color: #ffffff;
    font-weight: 300;
    transition: .4s all ease-in;
}

.mega-menu .mega-btn .button__icon-wrapper {
    height: 15px;
    width: 15px;
}

.mega-menu .mega-btn line, 
.mega-menu .mega-btn path {
    stroke: #ffffff !important;
    transition: .4s all ease-in;
}

.mega-menu .mega-btn:hover span{
    color: #C5A76D;
}

.mega-menu .mega-btn:hover line, 
.mega-menu .mega-btn:hover path {
    stroke: #C5A76D !important;
}

.menu-page .social a {
    width: 30px;
}

.menu-page .social a path{
    fill: #505050;
    transition: .4s all ease-in;
}

.menu-page .social a:hover path{
    fill: #ab9c8f;
}


.mega-menu .menu-page .social .elementor-widget-container{
	    gap: 20px;
}

.hover-item-container.hover-visible, 
.hover-item-container ul, 
.hover-item-container ul li, 
.full-hight, 
.elementor-2261, 
.elementor-2237, 
.elementor-2264
{
  height: 100%;
}

@media screen and (max-width: 1024px) {
/* 	.featured-images, 
	.mega-menu-title-2{
		display:none;
	} */

	
	.full-hight.featured-images {
		height: 150px;
	}

	.hover-item-container{
		position:inherit;
	}
	.hover-item-list>ul{
		width: 100%;
	}
	.hover-item-container ul{
		padding:15px 0px 30px 0px;
	}
	.hover-item-container {
		opacity: 1;
		visibility: visible;
		display: block;
		width: 100%;
	}
	.hover-item-list .select>a{
		padding: 15px 0px 30px 0px;
	}

	.select{
		box-shadow: 0 0px 0 0 #ab9c8f, 0 1px 0 0 #ab9c8f;
	}
	.text-col {
		color: var(--e-global-color-accent);
	}
	.select svg path, 
	.select svg rect{
		stroke: var(--e-global-color-accent);
	}
}

.toggle-icon{
	display:none;
}


@media screen and (max-width: 1240px) {
	.mega-menu .e-con-inner {
		display: flex;
		flex-direction: column !important;
	}
	
	.menu-page {
		width: 100%;
		gap:30px;
	}
	.hover-item-list .select>a{
		padding: 20px 15px 20px 15px;
	}
	.mega-menu-container .mega-menu-title-2{
		display:none;
	}
}

@media screen and (max-width: 1024px) {
	
	/* 預設隱藏 */
	.mega-menu .hover-item-container {
	  overflow: hidden;
	}

	/* 展開 */
	.hover-item-container.open {
	  display: block;
	}

	/* toggle icon 動畫 */
	.toggle-icon {
        transition: transform 0.3s ease;
        cursor: pointer;
        display: flex;
        height: 80px;
        width: 80px;
        justify-content: flex-end;
        align-items: center;
	}
	
	.toggle-icon svg .hide {
	  transform-origin: 10px 10px; /* 以 SVG 中心 (10,10) 為旋轉基準 */
	  transition: transform 0.3s ease;
	}
	
	.toggle-icon.active svg .hide{
		transform: rotate(90deg); /* 變成 - */
	}
	.hover-item-list .select>a{
		padding: 20px 0px 20px 0px;
	}
	.select svg{
		width: 40px;
		height: 20px;
	}
	#menu-improved__content {
		border-width: 0px 0 0 0;
	}	
	
}



.header-logo a {
    display: flex;
}

@media screen and (max-width: 768px) {
	.logo-mobile-hide {
		opacity: 0;
		transition: .4s all ease-in;
	}

	.scrolled-100vh .logo-mobile-hide {
		opacity: 1;
		transition: .4s all ease-in;
	}
}



@media screen and (max-width: 768px) {
	 .hover-item-list .select.hover{
		  box-shadow: inset 0 -1px 0 0 #1F1F1F,  inset 0 1px 0 0 #1F1F1F!important;
	}

	.select.hover .text-col{
		color:#1F1F1F!important;
	}
	.select {
        box-shadow: 0 0px 0 0 #1F1F1F, 0 1px 0 0 #1F1F1F;
    }
	
	.text-col {
        color:#1F1F1F;
    }
	.select svg path, .select svg rect {
        stroke:#1F1F1F;
    }
	.select:hover svg path, .select:hover svg rect, .select.hover svg path, .select.hover svg rect {
    stroke:#1F1F1F !important;
	}
    .hover-item-list .active.select.hover {
        box-shadow: inset 0 -1px 0 0 #ab9c8f, inset 0 1px 0 0 #ab9c8f !important;
    }
    .select.active.first .text-col, .hover-item-list .select.hover.active .text-col {
        color: #ab9c8f !important;
    }
    .select:hover.active svg path, .select:hover.active svg rect, .select.hover.active svg path, .select.hover.active svg rect {
        stroke: #ab9c8f !important;
    }
    .select.active {
        box-shadow: 0 -1px 0 0 #ab9c8f, 0 1px 0 0 #ab9c8f;
    }
    .active .text-col {
        color: #ab9c8f;
    }
    .select.active svg path, .select.active svg rect {
        stroke: #ab9c8f;
    }
}