/*
	Theme Name: WHG
	Theme URI: ...
	Description: WHG Custom theme
	Author: Ultimately Better
	Author URI: https://ultimatelybetter.com
	Version: 1
*/

/* FONT FACE DECLARATIONS */
@font-face {
	font-family: 'Bariol';
	src: url('assets/fonts/Bariol_Bold.woff2') format('woff2'),
	     url('assets/fonts/Bariol_Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'FS Me';
	src: url('assets/fonts/FS_Me-Light.woff2') format('woff2'),
	     url('assets/fonts/FS_Me-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'FS Me';
	src: url('assets/fonts/FS_Me-Regular.woff2') format('woff2'),
	     url('assets/fonts/FS_Me-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'FS Me';
	src: url('assets/fonts/FS_Me-Bold.woff2') format('woff2'),
	     url('assets/fonts/FS_Me-Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* RESETS */
* { margin: 0; padding: 0; }
*, *:before, *:after { -webkit-box-sizing: border-box; box-sizing: border-box; }

/* BASE ELEMENTS */
html {
	scroll-behavior: smooth;

}

body {
	font-family: 'FS Me', Arial, sans-serif !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	color: #3b3c43 !important;
	background-color: #ffffff;
}

/* Ensure WordPress blocks inherit proper sizing */
.wp-site-blocks,
.wp-block-post-content {
	font-family: 'FS Me', Arial, sans-serif;
	font-size: 1rem;
}

img {
	border: 0;
	height: auto;
	max-width: 100%;
}

b, strong { font-weight: 700; }

/* Ensure all text elements use FS Me by default */
p, span, div, li, td, th, label, input, textarea, select {
	font-family: 'FS Me', Arial, sans-serif;
}

/* Paragraphs */
p {
	font-size: 1rem;
	line-height: 1.5;
	margin-bottom: 1.5625rem;
}

/* Headings use Bariol */
h1, h2, h3, h4, h5, h6 {
	font-family: 'Bariol', Arial, sans-serif !important;
	font-weight: 700;
	color: #002e5a;
}

h1 { font-size: 4.0625rem !important; }
h2 { font-size: 2.875rem !important; }
h3 { font-size: 2.25rem !important; }
h4 { font-size: 1.625rem !important; }
h5 { font-size: 1.5625rem !important; }
h6 { font-size: 1.4375rem !important; }

/* LINKS */
a {
	color: #002e5a;
	text-decoration: underline;
	text-decoration-color: #61c9d4;
	text-underline-offset: 0.125rem;
	-webkit-transition: text-decoration-thickness 0.2s ease;
	transition: text-decoration-thickness 0.2s ease;
}

a:hover {
		text-decoration: underline;
	text-decoration-color: #61c9d4;
	text-underline-offset: 0.125rem;
	-webkit-transition: text-decoration-thickness 0.2s ease;
	transition: text-decoration-thickness 0.2s ease;
	text-decoration-thickness: 2px;
}



/* BUTTONS - Base styles */
.button {
	display: inline-block;
	padding: 0.625rem 1.875rem;
	font-family: 'Bariol', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	border-radius: 1.5625rem;
	border: 0.125rem solid #002e5a;
	background-color: #002e5a;
	color: #ffffff;
	cursor: pointer;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	line-height: 1.5;
}

.button:hover {
	background-color: #003d75;
	border-color: #003d75;
}

.button:disabled,
.button[disabled] {
	background-color: #767676 !important;
	border-color: #767676 !important;
	color: #ffffff !important;
	cursor: not-allowed;
	opacity: 1;
}

/* Button Variants - Each includes full button styling */
.button-dark-stroke,
.wp-block-button.is-style-dark-stroke .wp-block-button__link,
.wp-block-button.is-style-dark-stroke .wp-element-button {
	display: inline-block;
	padding: 0.625rem 1.875rem;
	font-family: 'Bariol', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	border-radius: 1.5625rem;
	cursor: pointer;
	-webkit-transition: -webkit-box-shadow 0.2s ease;
	transition: -webkit-box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
	line-height: 1.5;
	background-color: transparent !important;
	color: #002e5a !important;
	border: 2px solid #002e5a !important;
}

.button-dark-stroke:hover,
.wp-block-button.is-style-dark-stroke .wp-block-button__link:hover,
.wp-block-button.is-style-dark-stroke .wp-element-button:hover {
	background-color: transparent !important;
	color: #002e5a !important;
	border: 2px solid #002e5a !important;
	-webkit-box-shadow: 0 0 0 1px #002e5a;
	        box-shadow: 0 0 0 1px #002e5a;
}

.button-dark-stroke:disabled,
.button-dark-stroke[disabled],
.wp-block-button.is-style-dark-stroke .wp-block-button__link:disabled,
.wp-block-button.is-style-dark-stroke .wp-element-button:disabled,
.wp-block-button.is-style-dark-stroke .wp-block-button__link[disabled],
.wp-block-button.is-style-dark-stroke .wp-element-button[disabled] {
	background-color: transparent !important;
	color: #767676 !important;
	border-color: #767676 !important;
	cursor: not-allowed;
	opacity: 1;
}

.button-bright,
.wp-block-button.is-style-bright .wp-block-button__link,
.wp-block-button.is-style-bright .wp-element-button {
	display: inline-block;
	padding: 0.625rem 1.875rem;
	font-family: 'Bariol', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	border-radius: 1.5625rem;
	cursor: pointer;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	line-height: 1.5;
	background-color: #61c9d4 !important;
	color: #002e5a !important;
	border: 0.125rem solid #61c9d4 !important;
}

.button-bright:hover,
.wp-block-button.is-style-bright .wp-block-button__link:hover,
.wp-block-button.is-style-bright .wp-element-button:hover {
	background-color: #7dd4dd !important;
	border-color: #7dd4dd !important;
	color: #002e5a !important;
}

.button-bright:disabled,
.button-bright[disabled],
.wp-block-button.is-style-bright .wp-block-button__link:disabled,
.wp-block-button.is-style-bright .wp-element-button:disabled,
.wp-block-button.is-style-bright .wp-block-button__link[disabled],
.wp-block-button.is-style-bright .wp-element-button[disabled] {
	background-color: #767676 !important;
	border-color: #767676 !important;
	color: #ffffff !important;
	cursor: not-allowed;
	opacity: 1;
}

.button-bright-stroke,
.wp-block-button.is-style-bright-stroke .wp-block-button__link,
.wp-block-button.is-style-bright-stroke .wp-element-button {
	display: inline-block;
	padding: 0.625rem 1.875rem;
	font-family: 'Bariol', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	border-radius: 1.5625rem;
	cursor: pointer;
	-webkit-transition: -webkit-box-shadow 0.2s ease;
	transition: -webkit-box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
	line-height: 1.5;
	background-color: transparent !important;
	color: #002e5a !important;
	border: 2px solid #61c9d4 !important;
}

.button-bright-stroke:hover,
.wp-block-button.is-style-bright-stroke .wp-block-button__link:hover,
.wp-block-button.is-style-bright-stroke .wp-element-button:hover {
	background-color: transparent !important;
	color: #002e5a !important;
	border: 2px solid #61c9d4 !important;
	-webkit-box-shadow: 0 0 0 1px #61c9d4;
	        box-shadow: 0 0 0 1px #61c9d4;
}

.button-bright-stroke:disabled,
.button-bright-stroke[disabled],
.wp-block-button.is-style-bright-stroke .wp-block-button__link:disabled,
.wp-block-button.is-style-bright-stroke .wp-element-button:disabled,
.wp-block-button.is-style-bright-stroke .wp-block-button__link[disabled],
.wp-block-button.is-style-bright-stroke .wp-element-button[disabled] {
	background-color: transparent !important;
	color: #767676 !important;
	border-color: #767676 !important;
	cursor: not-allowed;
	opacity: 1;
}

.button-light,
.wp-block-button.is-style-light .wp-block-button__link,
.wp-block-button.is-style-light .wp-element-button {
	display: inline-block;
	padding: 0.625rem 1.875rem;
	font-family: 'Bariol', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	border-radius: 1.5625rem;
	cursor: pointer;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	line-height: 1.5;
	background-color: #ffffff !important;
	color: #002e5a !important;
	border: 0.125rem solid #ffffff !important;
}

.button-light:hover,
.wp-block-button.is-style-light .wp-block-button__link:hover,
.wp-block-button.is-style-light .wp-element-button:hover {
	background-color: #f7f7f8 !important;
	color: #002e5a !important;
	border-color: #f7f7f8 !important;
}

.button-light:disabled,
.button-light[disabled],
.wp-block-button.is-style-light .wp-block-button__link:disabled,
.wp-block-button.is-style-light .wp-element-button:disabled,
.wp-block-button.is-style-light .wp-block-button__link[disabled],
.wp-block-button.is-style-light .wp-element-button[disabled] {
	background-color: #767676 !important;
	border-color: #767676 !important;
	color: #ffffff !important;
	cursor: not-allowed;
	opacity: 1;
}

.button-light-stroke,
.wp-block-button.is-style-light-stroke .wp-block-button__link,
.wp-block-button.is-style-light-stroke .wp-element-button {
	display: inline-block;
	padding: 0.625rem 1.875rem;
	font-family: 'Bariol', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	border-radius: 1.5625rem;
	cursor: pointer;
	-webkit-transition: -webkit-box-shadow 0.2s ease;
	transition: -webkit-box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
	line-height: 1.5;
	background-color: transparent !important;
	color: #ffffff !important;
	border: 2px solid #ffffff !important;
}

.button-light-stroke:hover,
.wp-block-button.is-style-light-stroke .wp-block-button__link:hover,
.wp-block-button.is-style-light-stroke .wp-element-button:hover {
	background-color: transparent !important;
	color: #ffffff !important;
	border: 2px solid #ffffff !important;
	-webkit-box-shadow: 0 0 0 1px #ffffff;
	        box-shadow: 0 0 0 1px #ffffff;
}

.button-light-stroke:disabled,
.button-light-stroke[disabled],
.wp-block-button.is-style-light-stroke .wp-block-button__link:disabled,
.wp-block-button.is-style-light-stroke .wp-element-button:disabled,
.wp-block-button.is-style-light-stroke .wp-block-button__link[disabled],
.wp-block-button.is-style-light-stroke .wp-element-button[disabled] {
	background-color: transparent !important;
	color: #767676 !important;
	border-color: #767676 !important;
	cursor: not-allowed;
	opacity: 1;
}

/* SPECIAL UI ELEMENTS - Can't see a way of doing in theme.json */
.nav-arrow {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	border: 0.125rem solid #002e5a;
	background: transparent;
	color: #002e5a;
	cursor: pointer;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.nav-arrow:hover {
	background-color: #f7f7f8;
}

.nav-arrow:disabled {
	border-color: #dddddd;
	color: #dddddd;
	cursor: not-allowed;
}

/* Pagination */
.pagination {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.5rem;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.pagination-number {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	border: 0.125rem solid #3b3c43;
	background: transparent;
	font-family: 'Bariol', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	color: #002e5a;
	cursor: pointer;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.pagination-number:hover {
	background-color: #f7f7f8;
}

.pagination-number.current {
	background-color: #002e5a;
	border-color: #002e5a;
	color: #ffffff;
}

/* Carousel Dots */
.carousel-dots {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0.75rem;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.carousel-dot {
	width: 0.625rem;
	height: 0.625rem;
	border-radius: 50%;
	background-color: #002e5a;
	border: none;
	cursor: pointer;
	-webkit-transition: background-color 0.3s ease;
	transition: background-color 0.3s ease;
}

.carousel-dot.active {
	background-color: #F980B1;
}

/* FORM ELEMENTS - Styling not seemingly fully supported in theme.json */
/* Text Inputs, Textareas, Selects */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="search"],
textarea,
select {
	width: 100%;
	font-family: 'FS Me', Arial, sans-serif;
	font-size: 1rem;
	padding: 0.625rem 0.9375rem;
	border: 0.0625rem solid #3b3c43;
	border-radius: 0.25rem;
	background-color: #ffffff;
	color: #3b3c43;
	-webkit-transition: border-color 0.3s ease;
	transition: border-color 0.3s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
	outline: 0.125rem solid #002e5a;
	outline-offset: 0.125rem;
	border-color: #002e5a;
}

/* Labels */
label {
	display: block;
	font-family: 'Bariol', Arial, sans-serif;
	font-size: 1rem;
	font-weight: 700;
	color: #002e5a;
	margin-bottom: 0.3125rem;
}

.label-optional {
	font-weight: 400;
	color: #3b3c43;
}

/* Helper Text */
.form-helper-text {
	font-size: 0.875rem;
	color: #3b3c43;
	margin-top: 0.3125rem;
	margin-bottom: 0.5rem;
}

/* Error State */
input.error,
textarea.error,
select.error {
	border-color: #e60a30;
}

label.error {
	color: #e60a30;
}

.form-error-text {
	font-size: 0.875rem;
	color: #e60a30;
	margin-top: 0.3125rem;
	margin-bottom: 0.5rem;
}

/* Character Counter */
.char-counter {
	font-size: 0.875rem;
	color: #3b3c43;
	text-align: right;
	margin-top: 0.3125rem;
}

/* Checkboxes and Radio Buttons */
input[type="checkbox"],
input[type="radio"] {
	width: 1.25rem;
	height: 1.25rem;
	margin-right: 0.625rem;
	cursor: pointer;
	accent-color: #002e5a;
}

input[type="checkbox"]:disabled,
input[type="radio"]:disabled {
	cursor: not-allowed;
	accent-color: #767676;
}

input[type="checkbox"]:indeterminate {
	accent-color: #002e5a;
}

/* Select Dropdown with Custom Arrow */
select {
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23002e5a' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.9375rem center;
	padding-right: 2.5rem;
}

/* LIST MARKERS - Not supported in theme.json? */
ul li::marker {
	color: #29d4b1;
}

ol {
	counter-reset: list-counter;
}

ol li {
	counter-increment: list-counter;
}

ol li::marker {
	content: counter(list-counter) ". ";
	font-weight: 700;
	color: #002e5a;
}

/* MAIN STRUCTURE */
#container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	min-height: 100vh;
	overflow-x: hidden;
    overflow-y: visible;
	width: 100%;
}

/* WordPress block layout containers */
.wp-site-blocks {
	padding-left: 2rem;
	padding-right: 2rem;
}

.wp-block-post-content > * {
	max-width: 52.5rem;
	margin-left: auto;
	margin-right: auto;
}

.wp-block-post-content > .alignwide {
	max-width: 75rem;
}

.wp-block-post-content > .alignfull {
	max-width: none;
	margin-left: calc(-2rem);
	margin-right: calc(-2rem);
}

/* Legacy wrapper classes */
.wrap {
	margin: 0 auto;
	max-width: 86rem;
	/*padding-left: 2rem;
	padding-right: 2rem;*/
}

.alignwide {
	max-width: 75rem;
}

.alignfull {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}


.site-content,
.site-footer {
	display: block;
}

.site-header{
	padding: 0 2rem;
}
.header-inner {
    display: block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background-color: #002e5a;
    border-radius: 0 0 2rem 2rem;
	max-width: 86rem;
	padding: 0.6rem 2rem;
}


.header-left-col{
	min-width: 5rem;
}


.site-logo{
	max-width: 6rem;
}

.site-header .wp-block-navigation__container.wp-block-navigation {
    gap: 0rem;
}

.site-header .wp-block-navigation-item__content {
    padding: 0.5rem 0.75rem;
}

.wp-block-navigation{
	margin-top: 0.1rem !important
}

.wp-block-navigation-item__label{
	color: #ffffff;
}

.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {
    fill: rgb(255 255 255);
}
/* Hamburger menu icon styling */
.wp-block-navigation__responsive-container-open svg {
    display: none !important;
}

.wp-block-navigation__responsive-container-open {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.5rem;
    background: transparent;
    border: none;
    padding: 0;
    cursor: pointer;
    font-size: 1rem;
    color: #ffffff;
    font-weight: 600;
}

.wp-block-navigation__responsive-container-open::before {
    content: "Menu";
    display: inline-block;
    line-height: 1;
}

.wp-block-navigation__responsive-container-open::after {
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    background-image: url("https://whg.betasite.io/wp-content/themes/whg/assets/images/menu.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
}

.header-search {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
}

.header-search input{
	border: none;
	background: none;
}
.header-search input:focus{
	border: none;
	background: none;
	border-radius: 0;
	outline: none !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
}

.header-search .wp-block-search__inside-wrapper{
	width: 100%;
	border-radius: 2rem;
}

.header-search button{
	border: none;
	padding-left: 0.7rem;
	padding-right: 0.7rem;
	margin-left: 0;
}

.header-search .wp-block-search__inside-wrapper{
	border: none;
}


.header-search .wp-block-search__input::-webkit-input-placeholder {
    font-size: 0.9rem;
    font-weight: 100;
}

.header-search .wp-block-search__input::-webkit-input-placeholder, .header-search .wp-block-search__input::-moz-placeholder, .header-search .wp-block-search__input:-ms-input-placeholder, .header-search .wp-block-search__input::-ms-input-placeholder, .header-search .wp-block-search__input::placeholder {
    font-size: 0.9rem;
    font-weight: 100;
}

.header-avatar {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	margin-left: 0.75rem;
}

.header-avatar img{
	max-height: 2.9rem;
}


.site-content {
	-webkit-box-flex: 1;
	-ms-flex: 1 0 auto;
	flex: 1 0 auto;
	padding: 2rem;
}

.site-footer {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	padding: 2rem;
}

.footer-inner{
	border-radius: 2rem 2rem 0 0;
	padding-top: 0.1rem;
}

.footer-logo{
	max-width: 6rem;
}

.site-footer a{
	-webkit-margin-before: 0.2rem;
	        margin-block-start: 0.2rem;
}

/* Let footer groups fill the full width of the .wrap container */
.site-footer .wp-block-group.is-layout-constrained
    > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.footer-logo-col {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;   /* vertical alignment */
}

.footer-logo-col .footer-logo {
	margin: 0;             /* optional: remove WP block image default margin */
}

/* Desktop: links stay horizontal */
.footer-link-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.75rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

/* Button arrow image */
.back-to-top .wp-block-button__link::after {
	content: "";
	display: inline-block;
	width: 0.8rem;
	height: 0.8rem;
	margin-left: 0.35rem;
	background-image: url("https://whg.betasite.io/wp-content/themes/whg/assets/images/arrow.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	-webkit-transition: -webkit-transform 0.2s ease;
	transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}

.back-to-top .wp-block-button__link:hover::after {
	-webkit-transform: translateY(-2px);
	        transform: translateY(-2px);
}


/* GRID SYSTEM - Not in theme.json */
.grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 1rem;
	margin: 0 auto;
	max-width: 75rem;
	padding-left: 2rem;
	padding-right: 2rem;
}

.col-1 { grid-column: span 1; }
.col-2 { grid-column: span 2; }
.col-3 { grid-column: span 3; }
.col-4 { grid-column: span 4; }
.col-5 { grid-column: span 5; }
.col-6 { grid-column: span 6; }
.col-7 { grid-column: span 7; }
.col-8 { grid-column: span 8; }
.col-9 { grid-column: span 9; }
.col-10 { grid-column: span 10; }
.col-11 { grid-column: span 11; }
.col-12 { grid-column: span 12; }


/* Responsive Visibility */

.hide-mobile {
	display: block;
}

.footer-top-button-mobile{
	display: none !important;
}

/* RESPONSIVE */

@media (min-width: 781px) {
	.header-inner {
		position: relative;
		z-index: 100;   /* header sits above the desktop dropdown */
	}
	.wp-block-adamas-mega-menu__menu-container {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		z-index: 98;
		overflow: visible;
		visibility: hidden;
		pointer-events: none;
	}
}

@media only screen and (max-width: 1024px) {
	.site-header .wp-block-navigation-item__label{
		font-size: 0.8rem;
	}

	
}

@media only screen and (max-width: 781px){
	.header-avatar{
		display: none;
	}
	 .site-header .wp-block-navigation {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        width: 100%;
    }

    .site-header .wp-block-navigation__responsive-container-open {
        margin-left: auto;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    }

	.wp-block-navigation__responsive-container.is-menu-open{
		background-color: #002e5a !important;
	}

	.site-header{
		margin: 0 0.5rem;
		padding: 0 0;
		position: relative;
		overflow: visible;
		z-index: 20;
	}
	
	.header-inner {
		-webkit-clip-path: inset(0 0 -1000px 0);
		        clip-path: inset(0 0 -1000px 0);
	}
	.site-header .wp-block-adamas-mega-menu__menu-container {
		top: calc(100%);
	}
	
	.header-inner {
		padding: 0.7rem 1rem;
		gap: 0.6rem;
	}
	.header-inner:has(.wp-block-navigation__responsive-container.is-menu-open) {
		border-radius: 0;
	}
	.header-inner .wp-block-navigation__responsive-container.is-menu-open {
		border-radius: 0 0 2rem 2rem; /* match your dropdown styling */
	}
    .site-content {
        margin: 0 0.5rem;
        padding: 0.5rem;
    }
	.site-footer{
		margin: 0 0.5rem;
		padding: 0;
	}
	.footer-inner{
		padding: 0.1rem 1rem;
	}
}

@media only screen and (max-width: 768px) {
	.hide-mobile {
		display: none;
	}
	.grid {
		grid-template-columns: repeat(8, 1fr);
	}
	
	
}

@media only screen and (max-width: 640px) {
	.grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.col-1, .col-2, .col-3, .col-4, .col-5, .col-6,
	.col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
		grid-column: span 2;
	}
	.footer-link-row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        text-align: center;
    }
	.footer-top-button-desktop{
		display: none !important;
	}
	.footer-top-button-mobile{
		display: block !important;
	}
}

@media only screen and (max-width: 600px) {
	
}


@media only screen and (max-width: 480px) {
	.grid {
		grid-template-columns: 1fr;
	}

	.col-1, .col-2, .col-3, .col-4, .col-5, .col-6,
	.col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
		grid-column: span 1;
	}
	.footer-inner{
		padding: 0 1rem;
	}

}
