.elementor-663 .elementor-element.elementor-element-7b8a386{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-663 .elementor-element.elementor-element-7f00bd0{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:0px;}.elementor-663 .elementor-element.elementor-element-c662975 .e-off-canvas__content{background-color:#0000009E;}.elementor-663 .elementor-element.elementor-element-c662975 .e-off-canvas__overlay{background-color:rgba(0,0,0,.8);}.elementor-663 .elementor-element.elementor-element-c662975{--e-off-canvas-width:100%;--e-off-canvas-height:100vh;--e-off-canvas-content-overflow:auto;--e-off-canvas-animation-duration:1.5s;--e-off-canvas-overlay-opacity:1;}.elementor-663 .elementor-element.elementor-element-cdbf652{--display:flex;--min-height:100vh;--overflow:hidden;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-663 .elementor-element.elementor-element-613d3a5 img{width:166px;}.elementor-663 .elementor-element.elementor-element-42aa2f1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-663 .elementor-element.elementor-element-3016656{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:flex-start;--gap:15px 15px;--row-gap:15px;--column-gap:15px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-663 .elementor-element.elementor-element-00c689f{width:var( --container-widget-width, 48% );max-width:48%;--container-widget-width:48%;--container-widget-flex-grow:0;--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-663 .elementor-element.elementor-element-00c689f.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-663 .elementor-element.elementor-element-00c689f .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-663 .elementor-element.elementor-element-00c689f .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-663 .elementor-element.elementor-element-00c689f .elementor-icon-list-item > .elementor-icon-list-text, .elementor-663 .elementor-element.elementor-element-00c689f .elementor-icon-list-item > a{font-family:"Noto Sans", Sans-serif;font-size:18px;font-weight:300;line-height:26px;}.elementor-663 .elementor-element.elementor-element-00c689f .elementor-icon-list-text{color:var( --e-global-color-9c44f94 );transition:color 0.3s;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );}.elementor-663 .elementor-element.elementor-element-1bb829e .elementor-button{background-color:#61CE7000;font-family:"Noto Sans", Sans-serif;font-size:24px;font-weight:300;text-transform:uppercase;line-height:35px;fill:#B48340;color:#B48340;border-style:solid;border-width:0px 0px 0px 0px;border-color:var( --e-global-color-9c44f94 );border-radius:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-663 .elementor-element.elementor-element-1709429 .elementor-button{background-color:#61CE7000;font-family:"Noto Sans", Sans-serif;font-size:24px;font-weight:300;text-transform:uppercase;line-height:35px;fill:#B48340;color:#B48340;border-style:solid;border-width:0px 0px 0px 0px;border-color:var( --e-global-color-9c44f94 );border-radius:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-663 .elementor-element.elementor-element-eb191a1{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );}.elementor-663 .elementor-element.elementor-element-71219cc{width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu .elementor-item{font-family:"azo-sans-web - 300", Sans-serif;font-size:24px;font-weight:300;text-transform:uppercase;line-height:34px;}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item{color:#B48340;fill:#B48340;padding-left:0px;padding-right:0px;padding-top:27px;padding-bottom:27px;}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item:hover,
					.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-9c44f94 );fill:var( --e-global-color-9c44f94 );}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-9c44f94 );}.elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-framed .elementor-item:before,
					.elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-9c44f94 );}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-9c44f94 );}.elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-framed .elementor-item:before{border-width:0px;}.elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-framed.e--animation-draw .elementor-item:before{border-width:0 0 0px 0px;}.elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-framed.e--animation-draw .elementor-item:after{border-width:0px 0px 0 0;}.elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-framed.e--animation-corners .elementor-item:before{border-width:0px 0 0 0px;}.elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-framed.e--animation-corners .elementor-item:after{border-width:0 0px 0px 0;}.elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-underline .elementor-item:after,
					 .elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-overline .elementor-item:before,
					 .elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-double-line .elementor-item:before,
					 .elementor-663 .elementor-element.elementor-element-71219cc .e--pointer-double-line .elementor-item:after{height:0px;}.elementor-663 .elementor-element.elementor-element-53fb2e4 .elementor-button{background-color:#61CE7000;font-family:"azo-sans-web-light", Sans-serif;font-size:24px;font-weight:400;text-transform:uppercase;line-height:35px;fill:#B48340;color:#B48340;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-9c44f94 );border-radius:0px 0px 0px 0px;padding:8px 50px 8px 50px;}.elementor-663 .elementor-element.elementor-element-53fb2e4{width:100%;max-width:100%;padding:0px 0px 0px 0px;}.elementor-663 .elementor-element.elementor-element-bd704ec{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}body:not(.rtl) .elementor-663 .elementor-element.elementor-element-4f66dd6{right:50px;}body.rtl .elementor-663 .elementor-element.elementor-element-4f66dd6{left:50px;}.elementor-663 .elementor-element.elementor-element-4f66dd6{top:30px;}.elementor-663 .elementor-element.elementor-element-4f66dd6 .elementor-icon-wrapper{text-align:center;}.elementor-663 .elementor-element.elementor-element-4f66dd6 .elementor-icon{font-size:20px;}.elementor-663 .elementor-element.elementor-element-4f66dd6 .elementor-icon svg{height:20px;}.elementor-663 .elementor-element.elementor-element-b25c189{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-663 .elementor-element.elementor-element-b25c189 .elementor-icon-wrapper{text-align:start;}.elementor-663 .elementor-element.elementor-element-b25c189.elementor-view-stacked .elementor-icon{background-color:#C79B60;}.elementor-663 .elementor-element.elementor-element-b25c189.elementor-view-framed .elementor-icon, .elementor-663 .elementor-element.elementor-element-b25c189.elementor-view-default .elementor-icon{color:#C79B60;border-color:#C79B60;}.elementor-663 .elementor-element.elementor-element-b25c189.elementor-view-framed .elementor-icon, .elementor-663 .elementor-element.elementor-element-b25c189.elementor-view-default .elementor-icon svg{fill:#C79B60;}.elementor-663 .elementor-element.elementor-element-b25c189 .elementor-icon{font-size:35px;}.elementor-663 .elementor-element.elementor-element-b25c189 .elementor-icon svg{height:35px;}.elementor-663 .elementor-element.elementor-element-169732e{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-663 .elementor-element.elementor-element-8590c32{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-663 .elementor-element.elementor-element-0db2553 .elementor-button{background-color:#61CE7000;font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;text-transform:uppercase;fill:var( --e-global-color-9c44f94 );color:var( --e-global-color-9c44f94 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-9c44f94 );border-radius:0px 0px 0px 0px;padding:8px 15px 8px 15px;}.elementor-663 .elementor-element.elementor-element-2206117{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-663 .elementor-element.elementor-element-82836d4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1366px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-663 .elementor-element.elementor-element-00c689f{width:var( --container-widget-width, 67% );max-width:67%;--container-widget-width:67%;--container-widget-flex-grow:0;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item{padding-top:24px;padding-bottom:24px;}}@media(max-width:1200px){.elementor-663 .elementor-element.elementor-element-cdbf652{--padding-top:20px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-663 .elementor-element.elementor-element-00c689f{--container-widget-width:82%;--container-widget-flex-grow:0;width:var( --container-widget-width, 82% );max-width:82%;}}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-663 .elementor-element.elementor-element-1bb829e .elementor-button{font-size:24px;line-height:35px;}.elementor-663 .elementor-element.elementor-element-1709429 .elementor-button{font-size:24px;line-height:34px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-663 .elementor-element.elementor-element-53fb2e4 .elementor-button{font-size:24px;padding:8px 30px 8px 30px;}}@media(max-width:880px){.elementor-663 .elementor-element.elementor-element-71219cc{width:100%;max-width:100%;}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item{padding-top:19px;padding-bottom:19px;}.elementor-663 .elementor-element.elementor-element-53fb2e4 .elementor-button{font-size:24px;padding:8px 20px 8px 20px;}}@media(max-width:767px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-663 .elementor-element.elementor-element-3016656{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-663 .elementor-element.elementor-element-3016656.e-con{--order:2;}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-663 .elementor-element.elementor-element-71219cc{width:100%;max-width:100%;}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu .elementor-item{font-size:24px;line-height:30px;}.elementor-663 .elementor-element.elementor-element-71219cc .elementor-nav-menu--main .elementor-item{padding-top:12px;padding-bottom:12px;}.elementor-663 .elementor-element.elementor-element-53fb2e4 .elementor-button{font-size:24px;line-height:34px;}body:not(.rtl) .elementor-663 .elementor-element.elementor-element-4f66dd6{right:20px;}body.rtl .elementor-663 .elementor-element.elementor-element-4f66dd6{left:20px;}.elementor-663 .elementor-element.elementor-element-4f66dd6{top:20px;}.elementor-663 .elementor-element.elementor-element-4f66dd6 .elementor-icon{font-size:20px;}.elementor-663 .elementor-element.elementor-element-4f66dd6 .elementor-icon svg{height:20px;}.elementor-663 .elementor-element.elementor-element-b25c189{padding:12px 0px 0px 0px;}}@media(min-width:768px){.elementor-663 .elementor-element.elementor-element-7b8a386{--width:100%;}.elementor-663 .elementor-element.elementor-element-3016656{--width:33%;}.elementor-663 .elementor-element.elementor-element-eb191a1{--width:33%;}.elementor-663 .elementor-element.elementor-element-bd704ec{--width:33%;}}@media(max-width:880px) and (min-width:768px){.elementor-663 .elementor-element.elementor-element-eb191a1{--width:40%;}}@media(min-width:2400px){.elementor-663 .elementor-element.elementor-element-7f00bd0{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-663 .elementor-element.elementor-element-00c689f{width:var( --container-widget-width, 236.609px );max-width:236.609px;--container-widget-width:236.609px;--container-widget-flex-grow:0;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS for container, class: .elementor-element-7b8a386 *//* ==========================================================================
   Le Tesserae style header for Elementor
   Reproduces: 60px fixed black bar + 70px black drop panel + 20px fade
   gradient at page top, collapsing to a plain 60px bar on scroll.

   Required classes (set in Elementor > Advanced > CSS Classes):
     .lt-header    -> the header Container
     .lt-brand     -> inner Container holding the two logo images
     .lt-star      -> the small star/icon Image widget (first child)
     .lt-wordmark  -> the text logo Image widget (second child)
     .lt-toggle    -> hamburger Icon widget (left)
     .lt-cta       -> "Plan An Event" Button widget (right)

   State: body gets .lt-top while window scrollY < 60 (see companion JS).
   If you use Elementor's native sticky instead, swap every
   `body.lt-top .lt-header` for `.lt-header:not(.elementor-sticky--effects)`.
   ========================================================================== */

:root {
  --lt-gold: #C79B60;
  --lt-gold-hover: #C08F4D;
  --lt-cream: #F5EFE5;
  --lt-bar-h: 60px;    /* height of the always-visible black bar   */
  --lt-panel-h: 70px;  /* black panel that drops down at page top  */
  --lt-fade-h: 20px;   /* gradient that fades the panel into hero  */
  --lt-ease: all 0.3s ease-in-out;
}

/* Let the header sit on top of the hero instead of pushing it down.
   Apply to the Theme Builder header wrapper. */
header.elementor-location-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
}

/* --------------------------------------------------------------------------
   1. The bar itself
   -------------------------------------------------------------------------- */
.lt-header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  height: var(--lt-bar-h);
  min-height: 0;
  padding: 0;
  margin: 0;
  background-color: #000;
  border: none;
  border-radius: 0;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1); /* scrolled state */
  transition: var(--lt-ease);
  z-index: 999;
  overflow: visible;

  /* The live site sets element opacity, NOT an rgba background. This is why
     the video shows through the bar AND why the logo, hamburger and CTA are
     slightly dimmed too. Element opacity also creates a stacking context,
     which is what keeps the z-index:-1 pseudo-elements tucked behind the bar.
     For a translucent bar with fully opaque content instead, delete this line
     and use: background-color: rgba(0, 0, 0, 0.8); */
  opacity: 0.8;
}

body.lt-top .lt-header {
  box-shadow: none;
}

/* --------------------------------------------------------------------------
   2. The drop-down panel + fade gradient (desktop only)
      Both sit BELOW the bar and are hidden by sliding up behind it.
      z-index:-1 keeps them under the bar's own background.
   -------------------------------------------------------------------------- */
@media (min-width: 768px) {

  
  .lt-header::before {
    content: " ";
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    top: 100%;
    height: var(--lt-panel-h);
    background-color: #000;
    transform: translate(0, -100%);   /* hidden: tucked up behind the bar */
    transition: var(--lt-ease);
  }

  .lt-header::after {
    content: " ";
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    top: calc(100% + var(--lt-panel-h));
    height: var(--lt-fade-h);
    background-image: linear-gradient(to bottom, #000 0%, rgba(0, 0, 0, 0) 100%);
    background-repeat: repeat-x;
    transform: translate(0, calc(-100% - var(--lt-panel-h)));
    transition: var(--lt-ease);
  }

  /* At the top of the page: slide both down into view */
  body.lt-top .lt-header::before,
  body.lt-top .lt-header::after,
  body.lt-brand-hover .lt-header::before,
  body.lt-brand-hover .lt-header::after,
  .lt-header:has(.lt-brand:hover)::before,
  .lt-header:has(.lt-brand:hover)::after {
    opacity: 1;
    transform: translate(0, 0);
  }
}

/* --------------------------------------------------------------------------
   3. Centred logo lockup
      Default (scrolled) = pulled up 80px so only the wordmark shows in the bar.
      At page top / on hover = drops down into the black panel, star fades in.
   -------------------------------------------------------------------------- */
/* Elementor flexbox Containers do NOT read `flex-direction` directly — the
   rule is `.e-con { flex-direction: var(--flex-direction) }`, and Elementor
   writes `--flex-direction` into a per-element stylesheet that outranks ours.
   Setting the variable is what actually works. `--container-widget-width`
   matters just as much: Elementor defaults child widgets to 100% width in
   column mode, so even with row direction they'd still stack. */
.lt-brand {
  position: absolute;
  left: 50%;
  top: 50%;
  height: auto;
  width: auto;
  padding: 10px;
  display: flex;
  --flex-direction: column;
  --container-widget-width: auto;
  --align-items: center;
  --justify-content: center;
  --gap: 0px;
  --padding-top: 10px;
  --padding-bottom: 10px;
  --padding-left: 10px;
  --padding-right: 10px;
  flex-direction: column;
  align-items: center;
  transition: var(--lt-ease);
}

/* Elementor wraps each widget in .elementor-element — stop those wrappers
   from stretching to full width and re-stacking the lockup. */
.lt-brand > .elementor-element,
.lt-brand > .elementor-widget {
  width: auto;
  max-width: none;
  flex: 0 0 auto;
}

.lt-brand img {
  display: block;
  transition: var(--lt-ease);
}

@media (min-width: 768px) {
  /* The lockup is taller than the bar. Anchoring it at top:0 and pulling it
     up 80px slides the star out above the bar and leaves the wordmark sitting
     inside the 60px strip — the wordmark never leaves, it just moves up.
     The star is faded to opacity:0 rather than clipped, because the header
     is overflow:visible and would otherwise show it floating over the hero. */
  .lt-brand {
    top: 0;
    width: 180px;
    transform: translate(-50%, -80px);
  }

  .lt-brand .lt-star img { width: 80px; opacity: 0; }
  .lt-brand .lt-wordmark img { width: 100%; margin-top: 5px !important; margin-left: 0; }

  body.lt-top .lt-brand,
  body.lt-brand-hover .lt-brand,
  .lt-brand:hover,
  .lt-brand:focus-within {
    transform: translate(-50%, 0) !important;
  }

  body.lt-top .lt-brand .lt-star img,
  body.lt-brand-hover .lt-brand .lt-star img,
  .lt-brand:hover .lt-star img,
  .lt-brand:focus-within .lt-star img {
    opacity: 1 !important;
  }
}

@media (max-width: 767px) {
  /* Don't fight Elementor's flex variables — switch the container to block
     and lay the two images out as inline-block with fixed widths.
     font-size:0 removes the whitespace gap between inline-block siblings. */
  .lt-brand {
    display: block !important;
    --display: block;
    width: auto !important;
    max-width: none !important;
    white-space: nowrap;
    font-size: 0;
    line-height: 0;
    text-align: center;
    transform: translate(-50%, -50%) !important;
  }

  .lt-brand > .elementor-element,
  .lt-brand > .elementor-widget,
  .lt-brand .elementor-widget-image,
  .lt-brand .elementor-widget-container {
    display: inline-block !important;
    width: auto !important;
    max-width: none !important;
    vertical-align: middle;
    margin: 0 !important;
    padding: 0 !important;
  }

  .lt-brand .lt-star img {
    display: block;
    width: 43px !important;
    height: auto;
    opacity: 1 !important;
  }

  .lt-brand .lt-wordmark img {
    display: block;
    width: 140px !important;
    height: auto;
    margin-top: 0;
    margin-left: 10px;
  }
}

/* --------------------------------------------------------------------------
   4. Hamburger + CTA
   -------------------------------------------------------------------------- */
.lt-toggle {
  padding: 15px 10px;
  border: none;
  margin: 0 0 0 5px;
}

.lt-toggle .icon-bar,
.lt-toggle span {
  display: block;
  width: 32px;
  height: 7px;
  border: 2px solid var(--lt-gold);
  background-color: transparent;
}

.lt-cta .elementor-button,
a.lt-cta {
  text-transform: uppercase;
  font-family: 'azo-sans-web', sans-serif;  /* live site overrides Granville here */
  font-weight: 300;
  color: var(--lt-gold);
  background-color: transparent;
  border: 1px solid var(--lt-gold);
  border-radius: 0 !important;
  padding: 12px 15px;
  margin-right: 20px;
  font-size: 14px;
  line-height: 14px;
}

.lt-cta .elementor-button:hover,
.lt-cta .elementor-button:focus,
a.lt-cta:hover,
a.lt-cta:focus {
  color: var(--lt-gold-hover);
  background-color: transparent;
  border-color: var(--lt-gold-hover);
}

/* Mobile: the CTA is NOT in the bar. It is absolutely positioned just below
   it, right-aligned, and only appears once you scroll past 60px.
   Measured off the live site: 20px right margin, 10px below the bar,
   164 x 30px box, solid #000 fill (still dimmed by the header's opacity). */
@media (max-width: 767px) {
  .lt-cta {
    position: absolute;
    /* Anchored to an explicit offset rather than top:100%. Elementor
       Containers are position:relative by default, so if the Button widget
       sits inside a nested container, top:100% resolves against THAT box and
       the button lands too far down. A hard value is immune to it. */
    top: calc(var(--lt-bar-h) + 10px);
    right: 20px;
    margin: 0;
    width: auto;
  }

  .lt-cta .elementor-button,
  a.lt-cta {
    display: block;
    padding: 10px;
    /* !important is required here. Elementor writes button colours into a
       per-element stylesheet with higher specificity than ours, which is why
       the fill stayed white. */
    background-color: #000 !important;
    color: var(--lt-gold) !important;
    border: 1px solid var(--lt-gold) !important;
    border-radius: 0 !important;
    font-size: 16px;
    /* Quirk worth keeping: the site sets line-height:10px in an earlier
       mobile rule and never resets it when bumping the font to 16px. That
       squeeze is what makes the button 30px tall instead of ~45px. Drop this
       line if you'd rather it breathe. */
    line-height: 10px;
    margin-right: 0;
  }

  .lt-cta .elementor-button:hover,
  .lt-cta .elementor-button:focus,
  a.lt-cta:hover,
  a.lt-cta:focus {
    color: var(--lt-gold-hover) !important;
    background-color: #000 !important;
    border-color: var(--lt-gold-hover) !important;
  }

  /* Hidden at the top of the page, appears on scroll */
  body.lt-top .lt-cta { display: none; }
}

/* --------------------------------------------------------------------------
   5. Full-screen menu overlay (slides in from the left)
   -------------------------------------------------------------------------- */
.lt-menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  overflow-y: auto;
  padding: 0;
  margin: 0;
  background-color: rgba(0, 0, 0, 0.86);
  color: var(--lt-gold);
  box-shadow: none !important;
  transform: translateX(-100%);
  transition: transform 0.35s;
  z-index: 1000;
}

.lt-menu-overlay.is-open { transform: translateX(0); }

.lt-menu-overlay a {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 300;
  color: var(--lt-gold);
}

@media (min-width: 1024px) {
  .lt-menu-overlay a { font-size: 24px; }
}

.lt-menu-overlay a:hover,
.lt-menu-overlay a:focus { color: #B48340; }

@media (prefers-reduced-motion: reduce) {
  .lt-header, .lt-header::before, .lt-header::after,
  .lt-brand, .lt-brand img, .lt-menu-overlay { transition: none; }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'azo-sans-web &#8211; 300';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://letesseraeevents.com/wp-content/uploads/2026/09/AzoSans-Regular.ttf') format('truetype');
}
/* End Custom Fonts CSS */