/* Add custom css here 

all backgrounds and graphics are navy #1c2848   
all text is dark blue 061e57 (brighter) - use for text on gray background prefooter and h1   
lt blue #8c9eb9    
red cd3301   10% darker #b82e01   
gold ffd70d  10% darker #f1c900     */


@font-face { font-family: "Vtks Madalena"; src: url(/fonts/Vtks%20Madalena.ttf); font-weight: normal; }
body { font-family: 'Barlow', serif;font-weight: 500; font-size: 18px; }	
	
.btn.brand, .search-form .brand.search-submit { background: #cd3301; color: #fff !important; }
.btn.brand:hover { background: #b82e01; color: #fff !important; }		
li.nolink > a {cursor: initial; } 
.main a { color: #1c2848; font-weight: 700; text-decoration: underline; }
.subnav a.btn { margin-bottom:15px; }	/* about us page */

h1, .grunge {  font-family: "Vtks Madalena";font-weight: 300;	}
h2.grunge {  font-family: "Vtks Madalena"; font-weight: 300; font-size:2rem !important;; color: #061e57 !important; 	}
	
.table thead th { border-bottom: 1px solid #dee2e6; }
.gray-block { background:#f1f1f1; padding: 30px; margin: 30px 0; }
.gray-block a { color: #cd3301; }


div.logo { padding-top:20px; padding-bottom:7px; }

header.banner { padding: 0 0 1rem; background-color: #1c2848; color:#fff; }	
header.banner .header-nav-container {padding-bottom:15px; text-align:right;  }
#menu-header-menu { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; vertical-align: bottom; margin: 10px 0; }  
.home header.banner #menu-header-menu { background:#1c2848; padding-left:15px; }	/* color here on home page only */

header.banner #menu-header-menu li { padding: 4px .75rem 4px 0; }
header.banner #menu-header-menu li a { color: #fff; font-size: 14px; font-weight: 400; }
header.banner #menu-header-menu li:after { content: "|"; color: #cd3301; margin-left: .75rem; }	
header.banner #menu-header-menu li.phone a { font-weight: 700; }

@media (min-width: 992px) { header.banner .nav-primary { float: right; } }	
li.mega-btn-rfq a { background: #cd3301 !important; border-radius: .3rem !important; padding: 0 1.25rem !important; margin-left: 5px !important; }
	
@media screen and (min-width: 992px) { 
	#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation ul.mega-sub-menu { padding-bottom:15px; }
	#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu { padding-top:15px; padding-bottom:15px; } 
}	
@media screen and (max-width: 991.9px) { 	
	#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item.mega-toggle-on > ul.mega-sub-menu { padding-left:15px; } 
	li.mega-btn-rfq a { text-align: center !important; margin-top: 15px !important; }
	#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item > a.mega-menu-link { text-transform: uppercase !important;}  /* top level items */
}	 
#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator:after { color: #8c9eb9; }
#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item > a.mega-menu-link { font-weight: 600 !important;} 	
#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation li.nolink > a { cursor: text; }

#js-bootstrap-offcanvas {  background: #1c2848;  }

@media screen and (min-width:992.1px) and (max-width:1199.9px) { 
	#mega-menu-wrap-primary_navigation #mega-menu-primary_navigation > li.mega-menu-item > a.mega-menu-link { font-size:14px !important; } 
	li.mega-btn-rfq a { padding: 0 .5rem !important;  }
}

@media screen and (max-width: 992px) {
	header.banner .navbar-toggle.offcanvas-toggle.js-offcanvas-has-events {  position:relative; top:0; margin-top: 10px;  }
	header.banner .navbar-toggle { padding: .5rem 0 .75rem .75rem;}		
	header.banner #menu-header-menu  { display: none; }	
	header.banner div.d-lg-none { display: inline-block; float:right; width:42px; text-align:right; margin-left: 0 }
	header.banner .header-nav-container { padding-top: 0; }
	header.banner .menu-main-container { padding-top: 15px; }	
	header.banner .navbar-toggle .icon-bar { background: #fff; }
}
li.mobile { display:none !important; }	
@media screen and (max-width:992px) { li.mobile { display: block !important; } }	



/* PAGE HEADER  */
header.page-header { margin: 30px 0; }
header.page-header .page-category { text-transform:uppercase; color:#8c9eb9; font-weight:800; }
header.page-header h1 { color:#061e57 !important; font-size:3.5rem !important; line-height:1;   }
header.page-header h1:after {
    content: ""; width: 300px; height: 4px; background: #cd3301;
    position: absolute; left: 15px; bottom: -10px;
}	
@media screen and (max-width:767.9px) { header.page-header h1 { font-size:2.5rem !important; }	}


/* HOME PAGE  */
.home header.banner { background:transparent;  }	
.home #hero  { padding-bottom: 80px; background:transparent; color:#fff;   }	
.home #hero > .container { min-height: auto; }	
.home #hero .subhead { text-transform:uppercase; color: #fff; font-weight: 400; margin-top: 3rem; }	
.home #hero h1 {  font-family: "Vtks Madalena"; font-size:4.5rem !important; color: #fff;  margin-top: 0; }	
.home h1.main { color:#1c2848; font-size:3rem !important; line-height: 1;}	

.home div.jagged-block { background: url('/wp-content/uploads/2025/07/red-grunge-block-8x5-1.png') no-repeat; background-size:cover; color:#fff; font-weight:300; padding:50px; aspect-ratio: 8 / 5;  }   /* aspect ratio is 8:5    background image is 720 by 449  */		
.home div.jagged-block > div.outline {	border: 3px solid #fff; padding: 20px; }

.logo-carousel-section { background: #f7f7f7; background: url(/wp-content/uploads/2025/07/logo-carousel-background.png); background-position: top; background-size: cover; padding: 10rem 0 5rem; margin: 0; position: relative; z-index: 0; }
.logo-carousel-section .logo-container { background: #fff; border-radius: 8px; border: 1px solid #8c9eb9; padding: 2rem 5rem; position: relative; }
.logo-carousel-section h2 { position: absolute; top: -28px; left: 50%; transform: translateX(-50%); color: #1c2848; background: #fff; width: 256px; text-align: center; }
.logo-carousel-section .logo-header { position: absolute; top: -40px; left: 50%; transform: translateX(-50%); background: #fff; padding: 2rem 8rem; border-radius: 8px 8px 0 0; z-index: -1; border: 1px solid #8c9eb9; }
.logo-carousel__item { display: flex !important; align-items: center; justify-content: center; min-height: 100px; transition: box-shadow 0.2s; }
.logo-carousel__img { filter: brightness(1); transition: filter 0.2s, transform 0.2s; max-height: 50px; width: auto; }
.logo-carousel__item:hover .logo-carousel__img { filter: brightness(1.02); transform: scale(1.05); }
#logo-carousel .slick-next, #logo-carousel .slick-prev { height: 50px; width: 29px; }
.slick-next, .slick-prev, .home .slick-next, .home .slick-prev { top: 50%; }	
.slick-next { right: -50px; }
.slick-prev { left: -50px; }
#logo-carousel .slick-prev:before, #logo-carousel .slick-next:before { background-size: contain; height: 50px; width: 29px; position: relative; }
#logo-carousel .slick-dots { bottom: -15px; }
#logo-carousel .slick-dots li.slick-active button:before { background: #1c2848; border: none; }
#logo-carousel .slick-dots li button:before { background: #8c9eb9; }
@media (max-width: 768px) { .logo-carousel-section .logo-container { padding: 2rem; } .logo-carousel .slick-prev:before, .logo-carousel .slick-next:before { display: none; } }
@media (max-width: 576px) { .logo-carousel-section .logo-container { padding: 1rem 1rem 2rem; } .logo-carousel__item { padding: 5px; } }


/* MASONRY GALLERY */
.masonry-2, .masonry-3, .masonry-4 { column-count: 2; column-gap: 30px; }	
@media screen and (min-width:768px) { 	
	.masonry-4 { column-count: 4; column-gap: 30px; }	
	.masonry-3 { column-count: 3; column-gap: 30px; }
	.masonry-1 { text-align:center;  }
	.masonry-1 img { max-width: 30%; height:auto; margin-left:1rem !important; margin-right:1rem !important; }	/* 1 horizontal row, not masonry */
}	
@media screen and (min-width:480px) and (max-width:767px) { 	
	.masonry-1 { column-count: 2; column-gap: 30px; }
}		
.masonry-2 { max-width:730px; margin: 0 auto;  }	
.masonry-3 img, .masonry-4 img { margin: 0 0 30px; border: 1px solid #f1f1f1; box-shadow: 3px 3px 3px #ccc; }	
	
.gallery-filters { display: flex; flex-wrap: wrap; row-gap: 5px; column-gap: 5px; }
.gallery-filter-btn.btn.brand { background: linear-gradient(#ffda1c,#ffd70d,#fdd300) !important; color: #000 !important; }
.gallery-filter-btn.btn.brand:hover { background: linear-gradient(#ffe14a,#ffde36,#ffda1c) !important; }
.gallery-filter-btn.btn.brand:focus { box-shadow: none; }
.gallery-filter-btn.btn.brand.active { background: #cd3301 !important; color: #fff !important; }
.gallery-filter-btn.btn.brand.active:hover { background: #b82e01 !important; }

/* ON PAGE GALLERY */
#onpage-gallery { margin:0; padding:3rem 0 4rem; background:#1c2848; }
.onpage-gallery-top { background:#1c2848 url('/wp-content/uploads/2025/01/grunge-separator-b.png') no-repeat; height:100px;  }
.onpage-gallery-bottom { background:#f1f1f1 url('/wp-content/uploads/2025/05/grunge-separator-transparent.png') no-repeat; height:42px;  }	 /* bg color to match prefooter */
#onpage-gallery  img { margin: 0 0 30px; border: 1px solid #f1f1f1; box-shadow: 3px 3px 3px #000; }		
	
#onpage-gallery .slick-dots { bottom: -45px; }	
#onpage-gallery h2 { text-align:center; color:#fff; font-family: "Vtks Madalena"; font-size: 60px !important; font-weight: 500; display: flex; align-items: center; justify-content: center; margin: 0 -30px 3rem; }
#onpage-gallery h2::before, #onpage-gallery h2::after { content: ""; display: flex; flex-direction: column; width: 400px; height: 40px; align-items: center; justify-content: center; background: repeating-linear-gradient( to bottom, transparent 0 9px, #fff8 9px 10px, transparent 10px 30px, #fff8 30px 31px, transparent 31px 100% ); margin: 0 30px; }
@media screen and (max-width:1400px) { #onpage-gallery h2::before, #onpage-gallery h2::after { width: 300px; } }
@media screen and (max-width:1200px) { #onpage-gallery h2::before, #onpage-gallery h2::after { width: 210px; } }
@media screen and (max-width:992px) { #onpage-gallery h2::before, #onpage-gallery h2::after { width: 90px; } }
@media screen and (max-width:768px) { #onpage-gallery h2::before, #onpage-gallery h2::after { width: 0px; } }

#onpage-gallery .slick-prev:before, #onpage-gallery .slick-next:before, #onpage-gallery .slick-next, #onpage-gallery .slick-prev { height: 40px; width: 40px; }
#onpage-gallery .slick-next:before, #onpage-gallery [dir=rtl] .slick-next:before { background: url(/wp-content/uploads/2025/07/Arrow-Circle-Right-Streamline-Ultimate.png) no-repeat; }
#onpage-gallery .slick-prev:before, #onpage-gallery [dir=rtl] .slick-prev:before { background: url(/wp-content/uploads/2025/07/Arrow-Circle-Left-Streamline-Ultimate.png) no-repeat; }
#onpage-gallery .slick-dots li.slick-active button:before { background: #cd3301; border: none; }
	
.modal-footer { display: block; padding: 0 1rem }
.modal-footer span { display: block; font-weight:700; }	
.modal-footer>:not(:last-child) { margin-right: .25rem; } .modal-footer>:not(:first-child) { margin-left: .25rem; }


/* If Table used within tabs, then need to remove indent   */
table.specs { font-size: 16px; width: 100%;  }
table.specs tr:nth-child(even) { background: #ebebeb; }
table.specs th { background-color: #ebebeb; border: 2px solid #c0c0c0;  }	
table.specs th, table.specs td { padding: 0.25rem 0.75rem; }
table.specs td { border: 1px solid #c0c0c0; }
table.specs ul { margin:0; padding:0; }   /* remove indent */
table.specs li { list-style-position: inside;  }	/* remove indent */


/* FOOTER */
#prefooter { background: #f1f1f1; color: #061e57; padding: 3rem 0; margin: 0; /* border:1px solid #c0c;*/  }
#prefooter h2 {  font-family: "Vtks Madalena"; color:#061e57; font-size:3rem !important; line-height:1; font-weight:300; text-align:center; margin-bottom:30px; }	
@media screen and (min-width:768px) { #prefooter div.block { border-right:1px solid #1c2848; padding:20px 34px;  } }
#prefooter div.block.last { border-right: 0; } 
#prefooter h3 { color:#061e57; }	
#prefooter img { margin: 0 auto 30px; }	
@media screen and (max-width:767.9px) { #prefooter h2 {   font-size:2rem !important; } 	}
	
#footer-review { position:relative; margin-top:50px; margin-bottom:-130px;  }  /* ALLOWS OVERLAP TO FOOTER */
#footer-review div.block { background: url('/wp-content/uploads/2025/05/grunge-orange-1310.png') no-repeat; background-size:100% 100%; color:#fff; font-weight:300; padding:50px 80px;border:0;   } 
#footer-review div.block div.outline { border: 3px solid #fff; padding:20px; background:#cd3301;  }	
#footer-review .text { font-style:italic; font-size:22px; }
#footer-review .name { margin-top:10px; font-weight:500; }

.footer-top { background:#f1f1f1 url('/wp-content/uploads/2025/05/grunge-separator-transparent-reverse.png') no-repeat; height:42px;  } /* bg color to match prefooter */
footer.site-footer { background: #1c2848; font-size: 14px; padding:0 0 50px;  }
footer.site-footer > .container { margin-top:110px; }  /* OVERLAP FROM REVIEW */
footer.site-footer img { margin-bottom: 15px; }	 /* logo */ 
footer.site-footer img.alignleft { float:left; margin-right:15px;  }	/* affiliations */	
	
.home footer.site-footer { padding: 50px 0 50px;  }		
.home footer.site-footer > .container { margin-top:0; }  
	
footer.site-footer ul.menu li a { text-decoration:underline; }	
footer.site-footer ul.menu li.bold > a { font-weight: 700; text-transform:uppercase; text-decoration:none; font-size:18px; }	
footer.site-footer ul.menu li a:hover { color: #ffd70d; }	
footer.site-footer ul.menu li.nolink > a:hover { color: #fff; }		


/*  div.pad { padding: 0 15px 30px; } 	 maybe only on desktop? */
