/* Hide drawer before page is ready */
html.drawer-preload #filtersDrawer {
 	visibility: hidden !important;
 	opacity: 0 !important;
 	pointer-events: none !important;
}
/* Optional: ensure panel starts off-screen even if something flashes */
html.drawer-preload #filtersDrawer .filters-drawer__panel {
 	transform: translateX(-100%) !important; /* left drawer */
 	transition: none !important;
}
html.drawer-preload #filtersDrawer .filters-drawer__backdrop {
 	opacity: 0 !important;
 	transition: none !important;
}
/* Elementor menu links */
#home-nav .elementor-nav-menu a.elementor-item{
    position:relative;
    display:inline-block; 
    text-decoration:none;
    text-transform:uppercase;	
    background-image:linear-gradient(currentColor, currentColor);
    background-repeat:no-repeat;
    background-size:0% 2px;    
    background-position:0% 100%; 
    transition:background-size .28s ease, background-position .28s ease;
}
#home-nav .elementor-nav-menu a.elementor-item:hover{
    background-size:100% 2px;    
    background-position:0% 100%;    
}
#home-nav .elementor-nav-menu a.elementor-item:not(:hover){
    background-size:0% 2px;         
    background-position:100% 100%;  
}
#home-nav .elementor-nav-menu a.elementor-item{
    background-image: linear-gradient(#fff, #fff);
}
#home-nav .elementor-nav-menu a.elementor-item.elementor-item-active{
    background-image:none !important;
    transition:none !important;
    background-color:#fff;
    transition:background-color .3s linear;
    border-radius:4px;
    color:#293f98 !important;
    font-weight:bold !important;
}
#home-nav{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:9999;
    background:transparent; 
    transform:translateZ(0);
    will-change:transform;
}
#home-nav::before{
    content:"";
    position:absolute;
    inset:0;
    background:#293f98; 
    opacity:0;
    transition:opacity .25s ease;
    z-index:-1;
}
#home-nav{
    box-shadow:0 0 0 rgba(0,0,0,0);
    transition:box-shadow .25s ease;
}
#home-nav.is-scrolled::before{
    opacity:1;
}
#home-nav.is-scrolled{
    box-shadow:0 6px 24px rgba(0,0,0,0.15);
}
#internal-nav{
    position:relative;
    width:100%;
    z-index:9999;
    background:white; 
    transform:translateZ(0);
    will-change:transform;
    box-shadow:rgb(0 0 0 / 5%) 0px 2px 4px, rgb(0 0 0 / 10%) 0px 4px 24px;  
    transition:box-shadow .25s ease;		
}
#internal-nav::before{
    content:"";
    position:absolute;
    inset:0;
    background:#293f98; 
    opacity:0;
    transition: opacity .25s ease;
    z-index:-1;
}
#internal-nav{
    transition:box-shadow .25s ease;
}
#internal-nav.is-scrolled::before{
    opacity:1;
}
/* FIXED STATE */
#internal-nav.is-fixed{
    position:fixed;
    top:0;
    left:0;
}
#internal-nav.is-scrolled{
   box-shadow:rgb(0 0 0 / 5%) 0px 2px 4px, rgb(0 0 0 / 10%) 0px 4px 24px;  
}
body.has-fixed-header{
    padding-top:var(--header-height);
}
/* Elementor menu links */
#internal-nav .elementor-nav-menu a.elementor-item{
    position:relative;
    display:inline-block; 
    text-decoration:none;
    text-transform:uppercase;	
    background-image:-webkit-linear-gradient(currentColor, currentColor);
    background-image:-o-linear-gradient(currentColor, currentColor);
    background-image:linear-gradient(currentColor, currentColor);
    background-repeat:no-repeat;
    background-size:0% 2px;    
    background-position:0% 100%; 
    transition:background-size .28s ease, background-position .28s ease;
}
#internal-nav .elementor-nav-menu a.elementor-item:hover{
    background-size:100% 2px;    
    background-position:0% 100%;    
}
#internal-nav .elementor-nav-menu a.elementor-item:not(:hover){
    background-size:0% 2px;         
    background-position:100% 100%;  
}
#internal-nav .elementor-nav-menu a.elementor-item {
    background-image: -webkit-linear-gradient(#293f98, #293f98);
    background-image: -o-linear-gradient(#293f98, #293f98);
    background-image: linear-gradient(#293f98, #293f98);
}
#internal-nav .elementor-nav-menu a.elementor-item.elementor-item-active {
    background-image: none !important;
    transition: none !important;
    background-color:#293f98;
    transition:background-color .3s linear;
    border-radius:4px;
    color:#fff !important;
    font-weight:bold !important;
}
#internal-nav.is-scrolled .elementor-nav-menu a.elementor-item {
    background-image: -webkit-linear-gradient(#fff, #fff);
    background-image: -o-linear-gradient(#fff, #fff);
    background-image: linear-gradient(#fff, #fff);
    color:#fff !important;	
}
#internal-nav.is-scrolled .elementor-nav-menu a.elementor-item.elementor-item-active {
    background-image: none !important;
    transition: none !important;
    background-color:#fff;
    transition:background-color .3s linear;
    border-radius:4px;
    color:#293f98 !important;
    font-weight:bold !important;
}
#footer-nav ul{
	border-bottom:1px dotted #e9e9e9;
}
#footer-nav ul li{
	border-top:1px dotted #e9e9e9;
}
#footer-nav ul li a{
	transition:background .2s linear;
	background:transparent;
}
#footer-nav ul li a:hover,
#footer-nav ul li a.elementor-item-active{
	background:#293f98;
}
/* LIST STYLE FOR PRODUCTS */
.acf-multiselect-list{
    list-style:none;
    margin:0;
    padding:0;
}
.acf-multiselect-list li{
    position:relative;
    margin:.35em 0;
    text-transform:uppercase;
    font-family:'Gotham Book';	
    border-bottom:1px dotted rgba(84, 86, 90, 0.5);
    padding-top:12px;
    padding-bottom:12px;	
    padding-left:1.75em; /* give arrow breathing room */
}
.acf-multiselect-list li::before{
    content:"→";
    position:absolute;
    left:0;
    top:0.65em;
    color:rgba(41,63,152,1);
}
/* FILTER DRAWER */
#filtersDrawer.filters-drawer{
    position:fixed;
    inset:0;
    z-index:99999;
    pointer-events:none;  /* only clickable when open */
}
#filtersDrawer .filters-drawer__backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.45);
    opacity:0;
    transition:opacity .25s ease;
    z-index:1;
}
#filtersDrawer .filters-drawer__panel{
    position:absolute;
    top:0;
    left:0;  
    height:100%;
    width:min(380px, 92vw);
    background:#fff;
    transform:translateX(-100%);  
    transition:transform .25s ease;
    box-shadow:12px 0 30px rgba(0,0,0,.18); 
    z-index:2;
    display:flex;
    flex-direction:column;
}
#filtersDrawer .filters-drawer__header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:16px 18px;
    border-bottom: 1px solid rgba(0,0,0,.08);
}
#filtersDrawer .filters-drawer__body{
    padding: 16px 18px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
#filtersDrawer.is-open{
    pointer-events:auto;
}
#filtersDrawer.is-open .filters-drawer__backdrop{
    opacity:1;
}
#filtersDrawer.is-open .filters-drawer__panel{
    transform:translateX(0);
}
/* Prevent page scroll when open */
body.filters-drawer-open{
    overflow:hidden;
}
/* Reset Facet Default */
.facetwp-facet,
.facetwp-checkbox{
	margin-bottom:0 !important;
}
/* Bottle Swatch Colors */
.bottle-swatches{
    display:flex;
    gap:10px;
    align-items:center;
    flex-wrap:wrap;
}
.bottle-swatches .swatch{
    width:26px;
    height:26px;
    border-radius:9999px;
    background: var(--swatch);
    border: 1px solid rgba(0,0,0,0.15);
    box-shadow: 0 0 0 2px rgba(255,255,255,0.6) inset;
    cursor: pointer;
    padding: 0;
}
.bottle-swatches .swatch.is-active{
    outline: 2px solid rgba(41,63,152,1);
    outline-offset: 2px;
}
/* Loop Grid Img Size Quirk */
a.loop-thumb {
  background-size: cover !important;
  background-position: 50% 50% !important;
}
/* Color facet container */
.facetwp-facet-color_filter {
    display: flex;
    flex-wrap: wrap;
    gap:10px;
}
/* Each swatch */
.facetwp-facet-color_filter .facetwp-checkbox {
    width: 22px;
    height: 22px;
    border-radius: 9999px;
    border: 1px solid rgba(0,0,0,0.25);
    cursor: pointer;
    position: relative;
    font-size: 0; /* hide label text */
    padding: 0;
}
/* Hide the count text */
.facetwp-facet-color_filter .facetwp-counter {
    display:none;
}
.facetwp-checkbox[data-value="clear"]  { background: #f3f4f6; }
.facetwp-checkbox[data-value="green"]  { background: #2e7d32; }
.facetwp-checkbox[data-value="purple"] { background: #6a1b9a; }
.facetwp-checkbox[data-value="amber"]  { background: #b76e00; }
.facetwp-checkbox[data-value="blue"]   { background: #1e40af; }
.facetwp-checkbox[data-value="black"]  { background: #111827; }
.facetwp-checkbox[data-value="white"]  { background: #ffffff; border-color:#ccc; }
/* Keep the swatch color when selected */
.facetwp-facet-color_filter .facetwp-checkbox.checked{
    background-image:none !important;   /* remove default checkmark */
}
/* Re-apply the color mappings even when checked (extra-safe) */
.facetwp-checkbox.checked[data-value="clear"]  { background: #f3f4f6 !important; }
.facetwp-checkbox.checked[data-value="green"]  { background: #2e7d32 !important; }
.facetwp-checkbox.checked[data-value="purple"] { background: #6a1b9a !important; }
.facetwp-checkbox.checked[data-value="amber"]  { background: #b76e00 !important; }
.facetwp-checkbox.checked[data-value="blue"]   { background: #1e40af !important; }
.facetwp-checkbox.checked[data-value="black"]  { background: #111827 !important; }
.facetwp-checkbox.checked[data-value="white"]  { background: #ffffff !important; border-color:#ccc !important; }
/* Hover */
.facetwp-facet-color_filter .facetwp-checkbox:hover {
    transform: scale(1.1);
}
/* Selected state */
.facetwp-facet-color_filter .facetwp-checkbox.checked {
    outline: 2px solid #293f98;
    outline-offset: 2px;
}
/* Optional: smoother feel */
.facetwp-facet-color_filter .facetwp-checkbox {
    transition: transform .15s ease, outline .15s ease;
}
.facetwp-facet-color_filter .facetwp-checkbox::after {
    content: attr(data-value);
    position: absolute;
    bottom: -22px;
    left: 50%;
    transform: translateX(-50%);
    background: #000;
    color: #fff;
    font-size: 11px;
    padding: 2px 6px;
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
}
.facetwp-facet-color_filter .facetwp-checkbox:hover::after {
    opacity: 1;
}
/* Filter Sizes */
.facetwp-facet-size_filter{
	display:flex;
	flex-direction:column;
	gap:8px;
	width:100%;
}
.facetwp-facet-size_filter .facetwp-counter{
	display:none;
}
/* Inquire Button Custom Accordion */
#specPanel {
    height:0;
    overflow:hidden;
    transition:height 600ms ease;
	clear:both;
}

/* Article POST styles */
#article-content h2{
	font-size:24px;
	font-family:"Gotham Black", sans-serif;
	letter-spacing: -0.003em;
	margin-top: 1.95em;
}
#article-content h3{
	font-size:22px;
	font-family:"Gotham Black", sans-serif;
	letter-spacing: -0.003em;
	margin-top: 1.72em;
	line-height: 24px;
}
#article-content h4{
	font-size:20px;
	font-family:"Gotham Bold", sans-serif;
	letter-spacing: -0.003em;
	margin-top: 1.72em;
}
#article-content p{
	line-height: 32px;
	letter-spacing: -0.003em;
	margin-top: 0.94em;
}
#article-content p bold,
#article-content p strong,
#article-content ol li bold,
#article-content ol li strong,
#article-content ul li bold,
#article-content ul li strong{
	font-family:"Gotham Bold", sans-serif;
}
#article-content ol,
#article-content ul{
	margin:0;
	padding:0;
	word-break:break-word;
}
#article-content ol li,
#article-content ul li{
	padding-left: 0px;
    margin-left: 30px;
    list-style-type: decimal;
    margin-bottom: -0.46em;	
	margin-top: 0.94em;
	line-height:32px;
	margin-top: 1.14em;
}
#article-content ol li:last-child,
#article-content ul li:last-child{
	margin-bottom: 2.14em;
}
#article-content figure.wp-block-image{
	margin-top:56px;
	clear:both;
	margin-right:auto;
	margin-left:auto;
} 
#article-content figure.wp-block-image img{
	border-radius:2px;
}
#article-content figcaption{
  color:#888;
  font-size:15px;
  font-style:normal;
  font-weight:400;
  line-height:1.4;
  font-family:"Gotham Book", sans-serif;	
}
#article-content .key-info{
	background:#fbf9fa;
	border:1px solid #e4e5e6;
	border-radius:12px;
	padding:2rem;
}
#article-content .notable-info{
	background:#ecfef6;
	border:1px solid #6b9d8f;
	border-radius:12px;
	color:#00432e;
	padding:2rem;
}
.post-grid-item{
    height:460px;
    max-height:460px;
}
/* Form Style */
.elementor-form input#form-field-name,
.elementor-form input#form-field-form_telephone,
.elementor-form input#form-field-product_name,
.elementor-form textarea#form-field-product_message,
.elementor-form textarea#form-field-message{
	border-left:1px solid #293f98;
}
.elementor-form textarea#form-field-message,
.elementor-form textarea#form-field-product_message{
	border-bottom:1px solid #293f98;
	margin-bottom:20px;
}

/* Mobile */
@media (max-width: 1024px){
    #home-nav {
        position:absolute !important;
        background:#293f98; 	  
    }
    #home-nav::before {
        display:none !important;
    }  	  
    #home-nav .elementor-nav-menu--burger{
        top:-10px !important;	
	    margin-top:-10px !important;	
    }	
    /* Mobile Drop Down Menu */	
    #home-nav ul.elementor-nav-menu{
        padding-top:12px;
	    background:#293f98; 	  		
    }	
    #home-nav .elementor-nav-menu a.elementor-item {
  	    position: relative;
  	    display:block; 
  	    text-decoration: none;
  	    text-transform:uppercase;	
  	    background-image:none;
  	    background-repeat:no-repeat;
  	    background-size:none;    
  	    background-position: 0% 100%; 
  	    transition:background .3s linear;
	    color:#fff;   
    }	
    #home-nav .elementor-nav-menu a.elementor-item.elementor-item-active {
        background-image: none !important;
        transition:none !important;
	    background-color:transparent;
        border-radius:0;
        color:#fff !important;
        font-weight:bold !important;
        border-bottom:2px solid #fff;
	}
	body.has-fixed-header {
    	padding-top: 0 !important;
  	}
    #internal-nav {
        position:relative !important;
        background:white; 	  
    }
    #internal-nav::before {
        display:none !important;
    }  	  
    #internal-nav .elementor-nav-menu--burger{
        top:-10px !important;	
	    margin-top:-10px !important;	
    }
    /* Mobile Drop Down Menu */	
    #internal-nav ul.elementor-nav-menu{
        padding-top:12px;
	    background:white; 	  		
    }		
    #internal-nav	.elementor-nav-menu a.elementor-item {
  	    position: relative;
  	    display:block; 
  	    text-decoration: none;
  	    text-transform:uppercase;	
  	    background-image:none;
  	    background-repeat:no-repeat;
  	    background-size:none;    
  	    background-position: 0% 100%; 
  	    transition:background .3s linear;
	    color:#03060E;   
    }	
    #internal-nav .elementor-nav-menu a.elementor-item.elementor-item-active {
        background-image: none !important;
        transition:none !important;
	    background-color:transparent;
	    border-radius:0;
        color:#03060E !important;
        font-weight:bold !important;
        border-bottom:2px solid #293f98;
	}	
	#filtersDrawer .filters-drawer__panel{
		width:min(260px, 92vw); 
	}
}
@media (max-width: 768px){
	.post-grid-item{
    	height:420px;
    	max-height:420px;
	}
	.elementor-form input#form-field-email,
	.elementor-form input#form-field-company_name,
	.elementor-form input#form-field-product_email{
		border-left:1px solid #293f98;
	}
}
