/*!
Theme Name: leopardo
Theme URI: https://novacreative.com/
Author: Nova Creative
Author URI: Nova Creative
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: leopardi
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

.formal-font{
	font-family: "Jost", sans-serif;
	font-optical-sizing: auto;
	font-weight:400;
	/*letter-spacing: .0835em;*/
}

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	margin:0;
	padding:0;
	line-height: 1;
	-webkit-text-size-adjust: 100%;
}



/*
COMPONENT MODIFICATIONS
*/

/* PHOTOSWIPE */
.pswp__scroll-wrap, .pswp__bg, .pswp__container, 
.pswp__item, .pswp__content, .pswp__img, .pswp__zoom-wrap{
	display:block !important;
}

.pswp__item[aria-hidden="false"]{
	opacity:1;
}

.pswp__item[aria-hidden="true"]{
	opacity:0;
}

.pswp__item{
	transition:800ms opacity;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
html{
	overflow-x:hidden;
}
body {
  	font-family: "Libre Franklin", sans-serif;
	font-weight: 400;
	font-size:16px;
	letter-spacing: 0.03em;
	line-height:1.5;
	margin:0;
	overflow-x: hidden;
	padding:98px 0 0 0;
	width:100vw;
}

body.admin-bar header.site-header {
	top:46px;
}

body.admin-bar.scrolled header.site-header {
	top:0px;
}

body.scrolled header.site-header.toggled {
	background:white;
}

body.scrolled header.site-header {
	background: rgba(255, 255, 255, 0.6);
	top:0px;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	transition: 250ms background;
}
body header.site-header .logo .logo-img.mobile {
	left:0;
}

body.scrolled header.site-header .logo .logo-img.mobile {
	left:0;
	opacity:1;
}

body.scrolled header.site-header .logo .logo-img.desktop {
	opacity:0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

.site-main section{
	opacity:0;
	transition:1200ms opacity;
}

.site-main section.animated{
	opacity:1;
}

/**
 * Set margins to 0 and line-heights to 1 by default
 */
h1, h2, h3, h4, h5,p {
	margin:0;
	line-height:1;
}

h1{
	line-height:1.125;
}


/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
	text-decoration:none;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*

/* Misc
	 ========================================================================== */

/**

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/


/* Elements
--------------------------------------------- */
ul, li{
	list-style-type:none;
	margin:0;
	padding:0
}

/* Make sure embeds and iframes fit their containers. */

img {
	height: auto;
	width:100%;
}


/* Forms
--------------------------------------------- */

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}




/* =============================================
CUSTOM CSS
============================================= */

/* GLOBAL */
.content-width{
	display:flex;
	max-width:1200px;
	position:relative;
	width:calc(100% - 70px);
}

.desktop{
	display:none;
}

.mobile{
	display:block;
}

/* CTA */
.cta,
.cta:active,
.cta:visited{
    background:#1A3868;
	border:1px solid #1A3868;
    color:white;
	font-weight:500;
    padding:10px 26px;
    text-decoration:none;
    transition:1200ms background, 1200ms color, 1200ms border;
	white-space:nowrap;
}

.cta.white,
.cta.white:active,
.cta.white:visited{
    background:#fff;
	border:1px solid #1A3868;
	color:#1A3868;
}

@media screen and (min-width:768px){
    .cta:hover{
        background:#D51920;
		border:1px solid #D51920;
        transition:250ms background, 250ms color, 250ms border;
    }

	.cta.hover-red:hover{
		background:#d1141e;
		color:white;
	}

	.cta.white:hover{
    	background:#fff;
		border:1px solid #D51920;
		color:#D51920;
	}

}

/* SUBTITLE w/ICON */
.subtitle{
    color:#D51920;
    display:flex;
    font-size:18px;
    gap: 16px;
    justify-content:start;
    letter-spacing: 1.25px;
    margin-bottom: 22px;
    position:relative;
}

.subtitle svg{
    aspect-ratio:1 / 1;
    width:14px;
}


/* GRADIENT START */
.gradientstart-container{
    height:100%;
    overflow:hidden;
    position:absolute;
    right:0;
    top:0;
    width:100%;
}

@media screen and (min-width:768px){

    .gradientstart-container {
        right:35%;
    }
}

/* GRADIENT END*/
.gradientend-container{
    display:none;
    height:100%;
    position:absolute;
    right:0;
    top:0;
    width:100%;
}

@media screen and (min-width:768px){

    .gradientend-container {
        display:flex;
        justify-content:end;
    }
}

/* HEADER */
header.site-header{
	background:white;
	display:flex;
	height:98px;
	justify-content:center;
	position:relative;
	transition:1200ms background;
	width:100%;
	z-index:1000;
}
	
header.site-header{
	position: fixed;
	top: 0;
}

header.site-header .content-width{
	align-items:center;
	justify-content:flex-start;
	width:100%;
}

header.site-header .logo{
	height:54px;
	margin-left: 36px;
	position:relative;
}

header.site-header .logo .logo-img.mobile{
	display:block;
	left:50%;
	opacity:0;
	pointer-events:none;
	position:absolute;
	top:50%;
	transform:translate3d(0,-50%, 0);
	transition:500ms opacity;
}

header.site-header .logo .logo-img.desktop{
	display:block;
	transition:500ms opacity;
}

header.site-header .logo .logo-img,
header.site-header .logo .logo-img img{
	height:100%;
	position:relative;
	width:auto;
}

header.site-header .logo .logo-img a{
	display:block;
	height:100%;
	position:relative;
	width:auto;
}

header.site-header .main-navigation{
	background:white;
	bottom:0px;
	font-size:24px;
	height:calc(100vh - 60px);
	left:0;
	pointer-events:none;
	position: absolute;
	transform:translate3d(100%, 100%, 0);
	transition:250ms transform;
    width: 100vw;
}

header.site-header.toggled .main-navigation{
	pointer-events:auto;
	transform:translate3d(0, 100%, 0);
	transition:800ms transform;
}

header.site-header .main-navigation .primary-nav,
header.site-header .main-navigation .secondary-nav{
	/*margin-top:50px;*/
	margin-top:0px;
}

header.site-header .main-navigation .secondary-nav{
	margin-top:25px;
	position:relative;
}

header.site-header .main-navigation .secondary-nav:before {
	background:#E8EBF0;
	content:'';
	height:1px;
	left:0;
	position:absolute;
	transform:translate3d(0, -13px, 0);
	top:0;
	width:100%;
}

header.site-header .main-navigation .menu,
header.site-header .main-navigation .menu .sub-menu{
	display:flex;
	flex-direction:column;
	gap:10px;
}

header.site-header .main-navigation .menu .sub-menu{
	align-self:center;
	margin-top:10px;
	width:calc(100% - 70px);
}

header.site-header .main-navigation .menu li,
header.site-header .main-navigation .menu .sub-menu li{
	display:flex;
	flex-direction:column;
}

header.site-header .main-navigation .menu .sub-menu li:hover {
	background:#F8F9FB;
}

header.site-header .main-navigation a,
header.site-header .main-navigation a:active,
header.site-header .main-navigation a:visited{
	display:flex;
	font-family: "Jost", sans-serif;
	font-size:20px;
	color:black;
	justify-content:space-between;
	padding:0px 35px 0px;
	position:relative;
	text-decoration:none;
}

header.site-header .main-navigation a .arrow svg{
	transform:rotate(-90deg);
	transition:250ms transform;
}

header.site-header .main-navigation .expanded a{
	color:#d51920;
}

header.site-header .main-navigation .expanded .sub-menu a{
	color:black;
}

header.site-header .main-navigation .expanded a .arrow svg{
	transform:rotate(90deg);
	transition:250ms transform;
}

header.site-header .main-navigation .expanded a .arrow svg path{
	fill:#d51920;
}

header.site-header .main-navigation .search-container{
	margin-top:10px;
	padding:0 30px;
}

.menu-toggle{
	display:flex;
	flex-direction:column;
	height:20px;
	justify-content:space-between;
	position:absolute;
	right:15px;
	top:31px;
	width:28px;
}

.menu-toggle.mobile .close-x{
	display:none;
}

header.site-header.toggled .menu-toggle.mobile .close-x{
	display:block;
}

header.site-header.toggled .menu-toggle.mobile .open-hamburger{
	display:none;
}

.menu-toggle .bar{
	background:black;
	height:4px;
	width:100%;
}


/* HEADER SEARCH*/
.search-container {
  position: relative;
  display: flex;
  align-items: center;
}

#search-form {
  display: none;
  margin-left: 10px;
}

#search-input {
  padding: 6px 10px;
  font-size: 14px;
  width: 200px;
  border: 1px solid #ccc;
  border-radius: 0px;
  outline:none;
}

.search-container.open #search-form {
  display: block;
}

#search-toggle {
  background: none;
  border: none;
  font-size: 20px;
  cursor: pointer;
}

#search-input:focus {
  border: 1px solid #000000;
  border-radius: 0px;
}



/* FOOTER */
footer#global-footer{
	background:#1A3868;
	color:white;
	display:flex;
	justify-content:center;
	position:relative;
	width:100%;
}

footer#global-footer .content-width{
	align-items:center;
	display:flex;
	flex-direction:column;
	max-width:1200px;
	padding:40px 0;
	width:calc(100% - 30px);
}

footer#global-footer a,
footer#global-footer a:active,
footer#global-footer a:visited{
	color:white;
	text-decoration:none;
}

footer#global-footer .top-links{
	width:calc(100% - 70px);
}

footer#global-footer .menu-footer-menu-container a{
	font-size:20px;
	line-height:1.2;
}

footer#global-footer .menu-footer-menu-container li{
	margin-bottom:15px;
}

footer#global-footer .menu-social-icons-container{
	margin-top:50px;
}

footer#global-footer .menu-social-icons-container ul#footer-icons{
	display:flex;
	gap:16px;
}

footer#global-footer .menu-social-icons-container a{
	aspect-ratio:1 / 1;
	display:block;
	width:24px;
}

footer#global-footer .menu-social-icons-container a span{
	display:none;
}

footer#global-footer .bottom-links{
	display:flex;
	flex-direction:column;
	margin-top:50px;
	width:calc(100% - 70px);
}

footer#global-footer .bottom-links .menu-footer-links-container #footer-links{
	display:flex;
	flex-direction:column;
}

footer#global-footer .bottom-links .menu-footer-links-container #footer-links li{
	margin-bottom:30px;
	width:100%;
}

footer#global-footer .bottom-links .menu-footer-links-container #footer-links li a,
footer#global-footer .bottom-links .menu-footer-links-container #footer-links li a:active,
footer#global-footer .bottom-links .menu-footer-links-container #footer-links li a:visited{
	color:#E8EBF0;
	font-size:16px;
}

footer#global-footer .bottom-links .menu-legal-links-container{
	margin-top:30px;
}

footer#global-footer .bottom-links .menu-legal-links-container #footer-legal{
	color:#E8EBF0;
	display:flex;
	flex-direction:column;
	font-size:16px;
	justify-content:center;
	column-gap:30px;
}

footer#global-footer .bottom-links .menu-legal-links-container #footer-legal{
	max-width:240px;
}

footer#global-footer .bottom-links .menu-legal-links-container #footer-legal li{
	margin-bottom:30px;
	position:relative;
}

footer#global-footer .bottom-links .menu-legal-links-container #footer-legal li:last-child{
	margin-bottom:50px;
}

footer#global-footer .bottom-links .menu-legal-links-container #footer-legal li .menu-item,
footer#global-footer .bottom-links .menu-legal-links-container #footer-legal li a{
	line-height:1.5;
}


/**
404, Search
**/
.site-main > .error-404,
.site-main > .search,
.site-main > .privacy{
	display:flex;
	justify-content:center;
}

.error-404 .content-width,
.search-content .content-width,
.privacy .content-width{
	flex-direction:column;
	margin-bottom:50px;
	padding:30px;
}

.privacy{
	display:flex;
	justify-content:center;
}

.error-404 .content-width p,
.search-content .content-width p,
.privacy .content-width p{
	font-size:16px;
	font-weight:400;
	line-height:1.5;
}

.error-404 .content-width h1,
.search-content .content-width h1,
.privacy .content-width h1{
	font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
	font-weight:400;
	margin-bottom:30px;
	margin-top:30px;
}

.error-404 .content-width h2,
.search-content .content-width h2,
.privacy .content-width h2{
	font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
	font-weight:400;
	margin-bottom:30px;
	margin-top:30px;
}

.error-404 .content-width h3,
.search-content .content-width h3,
.privacy .content-width h3{
	font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
	font-weight:400;
	margin-bottom:30px;
	margin-top:30px;
}

.error-404 a,
.error-404 a:active,
.error-404 a:visited{
	color:black;
	text-decoration:none;
}

.search-content a,
.search-content a:active,
.search-content a:visited{
	color:black;
	text-decoration:none;
}

.privacy a,
.privacy a:active,
.privacy a:visited{
	color:black;
	text-decoration:none;
}

.search-content{
	align-items:center;
	display:flex;
	flex-direction:column;
	justify-content:center;
	position:relative;
}

.search-content .content-width.search-heading{
	background:#1A3868;
	color:white;
	height:450px;
	margin-bottom:72px;
	padding: 0px 20px;
}

.search-content .content-width.search-heading .content{
	align-items:flex-end;
	display:flex;
	height:100%;
	justify-content:flex-start;
	padding:72px 0;
}

.search-content .content-width.search-heading .content h1{
	font-size:40px;
	margin:0;
}

.search-content .content-width.search-items{
	gap:30px;
}

.search-content .search-item{
	border:1px solid #E8EBF0;
	display:flex;
	flex-direction:column;
	flex-wrap:wrap;
	gap:20px;
	padding:20px;
}

.search-content .search-item .entry-header{
	align-items:flex-start;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:20px;
}

.search-content .search-item .entry-header .title{
	flex:1;
	margin:0;
}

.search-content .search-item .entry-header .title h1{
	font-size:28px;
	margin:0;
}

.search-content .search-item .search-item-body{
	letter-spacing:1.5px;
	text-transform:uppercase;
}

















@media screen and (min-width:700px){
	footer#global-footer .content-width {
		align-items:flex-start;
		flex-direction:row;
	}

	footer#global-footer .bottom-links {
		margin-top:0;
	}
}

@media screen and (min-width:768px){
	.search-content .content-width.search-heading .content h1{
		font-size:42px;
		margin:0;
	}
}

@media screen and (min-width:850px){

	html,body {
		font-size:18px;
		overflow-x:unset;
	}

	body {
		padding:0;
		width:100%;
	}

	body.admin-bar{
		margin-top:0px;
	}

	body.admin-bar header.site-header {
		top:0px;
	}
	
	body.admin-bar.scrolled header.site-header {
		top: 30px;
	}

	.desktop{
		display:block;
	}

	.mobile{
		display:none;
	}

	.admin-bar header.site-header{
        position: sticky;
        top: 32px;
	}


	header.site-header{
		height:50px;
        position: sticky;
        top: 0;
	}

	body.scrolled header.site-header,
	body.scrolled header.site-header.toggled{
		background:rgba(255, 255, 255, 0.6);
		backdrop-filter: blur(4px);
		-webkit-backdrop-filter: blur(4px);
		transition:250ms background;
	}

	body.scrolled header.site-header:before{
		opacity:0;
	}

	header.site-header .content-width{
		align-items:center;
		justify-content:space-between;
		gap:10px;
		width: calc(100% - 70px);
	}

	header.site-header .logo{
		height:36px;
		margin-left:0;
		position:relative;
	}
	
	header.site-header .logo .logo-img.desktop,
	header.site-header.toggled .logo .logo-img.desktop {
		display:block !important;
		transition:1200ms opacity;
	}

	body.scrolled header.site-header .logo .logo-img.desktop,
	body.scrolled header.site-header.toggled .logo .logo-img.desktop {
		opacity:0;
		pointer-events:none;
		transition:250ms opacity;
	}
	
	header.site-header .logo .logo-img.mobile,
	header.site-header.toggled .logo .logo-img.mobile {
		display:none !important;
	}

	body.scrolled header.site-header .logo .logo-img.mobile,
	body.scrolled header.site-header.toggled .logo .logo-img.mobile{
		display:block !important;
		left:0;
		opacity:1;
		pointer-events:all;
		top:0;
		transition:250ms opacity;
		transform:none;
	}
	
	header.site-header .main-navigation,
	header.site-header.toggled .main-navigation {
		background:transparent;
		bottom:auto;
		left:auto;
		pointer-events:all;
		position:relative;
		transition:none;
		transform:none;
		width:auto;
	}

	header.site-header .main-navigation{
		display:flex;
		flex:1;
		height:100%;
		justify-content: flex-end;
		width:70%;
	}

	header.site-header .main-navigation a .arrow{
		display:none;
	}

	header.site-header .main-navigation .primary-nav, 
	header.site-header .main-navigation .secondary-nav{
		display:flex;
		margin-top:0;
	}

	header.site-header .main-navigation .menu, 
	header.site-header .main-navigation .menu .sub-menu{
		gap:0;
		padding-bottom:1px;
	}

	header.site-header .main-navigation .menu{
		flex-direction:row;
		height:100%;
	}

	header.site-header .main-navigation .expanded a {
		color:black;
	}

	header.site-header .main-navigation .menu .sub-menu{
		align-self:unset;
		border-top:1px solid rgba(0,0,0,0.05);
		bottom:0;
		display:flex;
		margin-top:auto;
		opacity:0;
		pointer-events:none;
		position:absolute;
		transform:translate3d(0,100%, 0);
		width:auto;
		z-index:-1;
	}

	header.site-header .main-navigation .menu .menu-item .sub-menu{
		transition:500ms opacity;
	}

	header.site-header .main-navigation .menu .menu-item:hover .sub-menu{
		opacity:1;
		pointer-events:all;
		z-index:1;
	}

	header.site-header .main-navigation .menu li, 
	header.site-header .main-navigation .menu .sub-menu li{
		height:100%;
		position:relative;
	}


	header.site-header .main-navigation a, 
	header.site-header .main-navigation a:active, 
	header.site-header .main-navigation a:visited{
		align-items:center;
		border:none;
		border-top:2px solid rgba(255,255,255,0);
		display:flex;
		font-size:12px;
		height:100%;
		padding:15px 10px 20px;
		position:relative;
		white-space: nowrap;
		transition:800ms border-top;
		z-index:1;
	}

	header.site-header .main-navigation a:hover, 
	header.site-header .main-navigation a:hover:active, 
	header.site-header .main-navigation a:hover:visited{
		border-top:2px solid #D51920;
		transition:250ms border-top;
	}

	header.site-header .main-navigation .sub-menu a {
		background:rgba(255, 255,255,1);
		color:black;
		padding: 6px 10px 10px;
		transition:1200ms color;
	}

	header.site-header .main-navigation .sub-menu a:hover{
		color:#D51920;
		padding: 15px 23px;
		border-top:2px solid rgba(255,255,255,0);
		transition:250ms color;
	}

	header.site-header .main-navigation .sub-menu a, 
	header.site-header .main-navigation .sub-menu a:active, 
	header.site-header .main-navigation .sub-menu a:visited{
		padding: 15px 23px;
	}

	header.site-header .main-navigation li:last-child .sub-menu a, 
	header.site-header .main-navigation li:last-child .sub-menu a:active, 
	header.site-header .main-navigation li:last-child .sub-menu a:visited{
		padding: 15px 23px;
	}

	header.site-header .main-navigation .search-container {
		margin-top: 0px;
		padding: 0;
	}

	header.site-header .main-navigation .search-container #search-input {
		width:100px;
	}

	header.site-header .main-navigation .secondary-nav:before {
		content:none;
	}

	/* FOOTER */
	footer#global-footer .content-width{
		align-items:center;
	}

	footer#global-footer a{
		position:relative;
	}

	footer#global-footer a:before{
		background:#ffffff;
		bottom:0;
		content:'';
		height:1px;
		left:0;
		position:absolute;
		transform-origin:50% 50%;
		transform:scaleX(0);
		transition:1200ms transform;
		width:100%;
	}

	footer#global-footer a:hover:before{
		transform:scaleX(1);
		transition:250ms transform;
	}

	footer#global-footer .menu-social-icons-container a:before{
		content:none;
	}

	footer#global-footer .top-links{
		display:flex;
		flex-wrap:wrap;
		justify-content:center;
		width:100%;
	}
	
	footer#global-footer .content-width {
		align-items:center;
		flex-direction:column;
		padding:56px 0;
	}

	footer#global-footer .menu-footer-menu-container {
        display: flex;
        font-size: 20px;
		justify-content:center;
		width:100%;
    }

	footer#global-footer .menu-footer-menu-container ul{
		display:flex;
		gap:32px;
	}

	footer#global-footer .menu-footer-menu-container li{
		margin-bottom:0px;
	}

	footer#global-footer  .menu-social-icons-container{
		display:flex;
		justify-content:center;
		margin-top:15px;
	}

	footer#global-footer .menu-social-icons-container a{
		transition:1200ms transform;
	}

	footer#global-footer .menu-social-icons-container a:hover{
		transform:scale(1.1);
		transition:250ms transform;
	}

	/* BOTTOM LINKS */
	footer#global-footer .bottom-links{
		margin-top:72px;
	}

	footer#global-footer .bottom-links .menu-footer-links-container #footer-links{
		flex-direction:row;
		column-gap:30px;
		justify-content:center;
	}

	footer#global-footer .bottom-links .menu-footer-links-container #footer-links li {
		margin-bottom:0;
		width: auto;
	}

	footer#global-footer .bottom-links .menu-legal-links-container #footer-legal{
		flex-direction:row;
		font-size:16px;
		justify-content:center;
		column-gap:30px;
		max-width:unset;
	}

	footer#global-footer .bottom-links .menu-legal-links-container #footer-legal li,
	footer#global-footer .bottom-links .menu-legal-links-container #footer-legal li:last-child{
		margin-bottom:0;
	}

	footer#global-footer .bottom-links .menu-legal-links-container #footer-legal li:after{
		content:'|';
		position:absolute;
		right:-15px;
		top:4px;
	}

	footer#global-footer .bottom-links .menu-legal-links-container #footer-legal li:last-child:after{
		content:none;
	}

	/* SEARCH */
	.search-content .content-width.search-heading{
		padding: 0px 35px;
	}

	.search-content .content-width.search-heading .content{
		padding:112px 0;
	}

	.search-content .search-item .entry-header .title h1{
		transition: 1200ms color;
	}

	.search-content .search-item .entry-header .icon path{
		transition: 1200ms fill;
	}

	.search-content .search-item:hover .entry-header .title h1{
		color:#D51920;
		transition: 250ms color;
	}

	.search-content .search-item:hover .entry-header .icon path{
		fill:#D51920;
		transition: 250ms fill;
	}
}

@media screen and (min-width:1000px){
	header.site-header .content-width {
		gap:13%;
	}

	header.site-header .main-navigation {
		justify-content:space-between;
	}
	
	header.site-header .main-navigation a, 
	header.site-header .main-navigation a:active, 
	header.site-header .main-navigation a:visited {
		padding: 15px 20px 20px;
	}
}

@media screen and (min-width:1440px){

	header.site-header {
        height: 98px;
    }



	header.site-header .logo {
        height: 54px;
    }

	header.site-header .main-navigation{
		justify-content: space-between;
	}

	header.site-header .main-navigation a, 
	header.site-header .main-navigation a:active, 
	header.site-header .main-navigation a:visited {
		font-size:18px;
		padding:6px 15px 10px;
	}

	header.site-header .main-navigation .search-container #search-input {
		width:120px;
	}


	/* FOOTER */
	footer#global-footer .top-links {
        display:flex;
		justify-content:space-between;
    }

	footer#global-footer .menu-footer-menu-container{
		justify-content:start;
		width:auto;
	}

	footer#global-footer .menu-social-icons-container {
		margin-top:0;
	}

	footer#global-footer .bottom-links {
		flex-direction:row;
		justify-content:space-between;
		width: 100%;
	}

	footer#global-footer .bottom-links .menu-footer-links-container #footer-links li{
		margin-top:2px;
	}

	footer#global-footer .bottom-links .menu-legal-links-container {
		margin-top: 0px;
	}


	/* SEARCH */
	.search-content .content-width.search-heading{
		padding: 0px 85px;
	}

	.search-content .content-width.search-heading .content{
		padding:85px 0;
	}
}