/*
Theme Name: Nifty 2024
Template: twentytwentyone
Author: Nifty Development
Author URI: https://niftymarketing.com/
Description: A lightweight theme for use of our clients.
Version: 2.0
*/

/*Theme Variables*/
:root{
	/*site colors*/
	--color-1: #182974;
 	--color-2: #496d88;
	--color-3: #0a1a36;
	--color-4: #8fb8d7;
	--color-5: #0071bc;
	--color-6: #216a9b;
	--color-7: #162640;
	--gray: rgba(0,0,0,0.5);
	--white: white;
	--subtle-white: rgba(255, 255, 255, 0.3);
	--subtle-black: rgba(0, 0, 0, 0.85);

/*     --color-quart: #15243f; */

	/*font sizes*/
	--fsize-xl: 55px;
	--fsize-lg: 40px;
	--fsize-md: 30px;
	--fsize-sm: 20px;
	--fsize-default: 18px; /*ADA requires at least 16px*/

	/*font families*/
	--heading-font: "operetta-12", serif;
	--text-font: "Noto Sans", sans-serif;
	--accent-font: "Raleway"
}
@media(max-width: 1000px){
	:root{
		/*font sizes*/
		--fsize-xl: 40px;
		--fsize-lg: 30px;
		--fsize-md: 20px;
		--fsize-sm: 18px;
	}
	.content-header-width {
    flex-direction: column;
  }

  .image-background {
    height: 200px;
  }
}
@media(max-width: 750px){
	:root{
		/*font sizes*/
		--fsize-xl: 35px;
		--fsize-lg: 25px;
		--fsize-md: 20px;
		--fsize-sm: 18px;
	}
}


/*Default Overall Styles*/
html, body{scroll-behavior: smooth; font-size: var(--fsize-default); font-variant-ligatures: none; overflow-anchor: none;}
body{margin:0; -webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-rendering: optimizeLegibility;font-family: var(--text-font);line-height: 1.5em;}
*{box-sizing: border-box; -webkit-appearance: none;font-family:inherit; max-width: 100%;}
/* lazy loading flow fixes */
img{object-fit:contain;min-width:1px;}
/* img[src=""]{visibility: hidden;} */
/* img[data-url]:before{content: '';display: block;padding-top: 56.25%;} */
a{color: var(--color-1);text-decoration:none;transition: ease all .25s;}
nav a {padding: .25em .5em;}
article a {text-decoration: underline;text-underline-position: under;text-decoration-thickness: 2px;}
code, pre, kbd, samp {font-family: monospace;}

/*Font Defaults*/
h1, h2, h3, h4, h5, h6{font-family: var(--heading-font); line-height: 1.25em;margin-bottom:0.5em;}
body, p, ul, ol, li{font-family: var(--text-font); line-height: 1.5em;}
h1{font-size:var(--fsize-xl);}
h2{font-size:var(--fsize-lg);}
h3{font-size:var(--fsize-md);}
h4{font-size:var(--fsize-sm);}


/*Layout*/
.section-padding{padding: 5% 0;}
.content-header-width{width: 1330px; max-width: 100%; padding: 45px 15px; margin: 0 auto;}
.content-width{width: 1130px; max-width: 100%; padding: 0 15px; margin: 0 auto;}
.content-width-wide{padding-inline: 50px;}
.flex{display: flex; flex-wrap: wrap;}
/* Button */
.button{background:var(--white); width:max-content; padding:0; transition:all 0.3s ease-in-out;}
.button.button-teal{background:var(--color-2);}
.button a{text-decoration:none; color:var(--color-2); font-family:var(--accent-font); font-weight:700; letter-spacing:0; display:block; height:100%; width:100%; padding:14px 24px; font-size:16px;}
.button.button-teal a{color:var(--white);}
.button a svg{margin:0 0 0 6px;}

/* hover */
.button:hover{background:var(--color-2);}
.button.button-teal:hover{background:var(--color-1);}
.button:hover a{ color:var(--white);}
.button:hover a svg{fill:var(--white); stroke:var(--white); stroke-width:3; transition:ease 1.2s;}
.button:not(:hover) a svg{transition:ease 1.2s;}

/* ADA header */
.masthead{background:url('/wp-content/uploads/2022/04/inside-header.webp'); padding:0 0 15px; z-index:1000;}
.home .masthead{background:transparent; padding:0 0 15px; z-index:1000;}
.masthead ul{list-style: none;}
.skip-bar{position: absolute; display: block; width: 100%; text-align: center; height: 0; overflow: hidden; background: var(--accent-bg); top: 0; left: 0; z-index: 10;}
.skip-bar:focus{height: auto; padding: 20px;}
/* .inner-masthead{justify-content: space-between; align-items: center;} */
.inner-masthead .fixed-menu.flex{width:100%; justify-content:space-between; align-items:center;}
.logo-container{width: 30%;}
.menus{width: 70%; justify-content: flex-end;padding: .5em}
.mobile-nav-input{display: none;}
#menu-main{padding: 0; font-weight:800; text-transform: uppercase;}
.masthead a{color: var(--white);}
.masthead .logo-container a{width:66%; height:100%; display:block;}
.mobile-nav{color:white;}
.header-call-box a{font-weight: 700; letter-spacing: 0.05rem; font-size: 19px; display:flex; align-items:center; cursor:pointer;}
.header-call-box a:hover svg{scale:1.2;}
span.menu-arrow{content:''; position:absolute; width:0; height:0; border-left:5px solid transparent; border-right:5px solid transparent; border-top:5px solid white; top:10px; right:0; cursor:pointer;}

@media (min-width: 1201px){
	.masthead {position: relative; left: 0; width: 100%; top: 0;}
	.home .masthead {position: absolute; left: 0; width: 100%; top: 0;}
	#menu-main-navigation{display:flex; padding:0 12px; justify-content:space-between; height:55px; margin:0;}
/* 	.inner-masthead.fixed #menu-main-navigation{display:flex; padding:0 12px 27px; justify-content:space-between; margin:0;} */
	.inner-masthead.fixed.active #menu-main-navigation{height:40px; margin-top:10px;}
	.mobile-nav{display: none;}
	.logo-container{width:26%; padding:0 0 0 85px;}
	.menus{width:74%; padding: 9px 5% 0;flex-direction: column;align-items: end;}
	nav.main-nav{width:90%;}

	#menu-main{display: flex; margin: 0; flex-wrap: wrap; justify-content: flex-end;gap:1em;}
	#menu-main > li{position: relative; margin-bottom: 0!important;}
	.menu-item{position:relative;}
	
	.menu-item a{font-size:17px; font-weight:600; letter-spacing:.06rem; color:white;opacity: .7;padding: 0;}
	.menu-item.current-menu-parent a,
	.menu-item.current-menu-item a{opacity: 1;}
	span.menu-arrow{display:none;}
	.main-menu > .menu-item > a{text-transform:uppercase;}
/* 	.main-menu > li.menu-item:hover:after{content:''; left:6px; bottom:-5px; border-bottom:9px solid white; width:95%; position:absolute;} */
		.main-menu > li.menu-item:after{content:''; left:6px; bottom:-6px; background:transparent; height:9px; width:95%; position:absolute; transition: background-color 300ms linear;}
	.main-menu > li.menu-item:hover:after{background:white;}
	.inner-masthead.fixed.active .main-menu > li.menu-item:hover:after{ background:white;}
	ul.sub-menu.active a:hover, li.menu-item:hover ul.sub-menu a:hover{background:var(--color-1); color:white; width:100%; position:relative; display:block; transition:ease .5s;}
	li.menu-item.menu-item-has-children .sub-menu a{padding:.25em 16px .25em .5em;display:block;}
	.sub-menu{position: absolute; top: 100%; left: 0; background: var(--transluscent); backdrop-filter: blur(5px); height: 0; overflow: hidden; z-index: 1000; box-shadow: 0 2px 7px rgba(0,0,0,.4);}
	ul.sub-menu.active, li.menu-item:hover ul.sub-menu{display:block; padding:4px; height:max-content; width:max-content; overflow:visible; min-width:315px; background:white; bottom:0; margin:0;}
	.sub-menu .sub-menu{left: 99%; top: 0;}
	ul.sub-menu.active a, li.menu-item:hover ul.sub-menu a{color:black; font-size:14px; font-family:var(--text-font); font-weight:400;}
	
	#menu-main > li:hover > .sub-menu, .masthead #menu-main > li > a:focus + .sub-menu, .masthead #menu-main > li:focus-within > .sub-menu{height: auto; padding: 15px 0 15px 15px; min-width: 225px; overflow: initial;border: 1px solid var(--subtle-white)}
	.sub-menu > li{position: relative;}
	.sub-menu > li:hover > .sub-menu, .sub-menu > li > a:focus + .sub-menu, .sub-menu > li:focus-within > .sub-menu{padding: 15px; width: initial; height: initial; min-width: 225px; border: 1px solid var(--subtle-white);}
	.header-call-box{height:max-content; width:max-content; overflow:auto; display:flex; align-items:center; margin:0 20px 15px 66px; overflow:visible;background: white; }
	.menus .header-call-box a{font-size: 21px; letter-spacing:0.09rem;color: var(--color-1);padding: 3px 15px;justify-content: space-between;gap:9px;}
	.menus .header-call-box a:hover{background: #496d88; color: white;}
	.menus .header-call-box a:hover svg{fill: white;}
	.header-call-box svg { fill: black; }
	.tablet-header-call-box{height:0; width:0; overflow:hidden;}

	.header-call-box .header-icon-container{position:relative; display:inline-block; margin:0 6px 0 0;}
	.header-call-box .header-icon-container:before{content:''; position:absolute; height:100%; width:100%; background:rgba(255, 255, 255, 0.1); z-index:0; border-radius:50%; transition:all 0.3s ease-in-out;}
	.header-call-box .header-icon-container{width:36px; height:36px;}
	.header-call-box .header-icon-container svg{margin:9px 0 0 9px; height:18px; width:18px; transition:all 0.3s ease-in-out;fill:black;}
 	.header-call-box a:hover .header-icon-container:before{scale:1.2; background:rgba(255, 255, 255, 0.25);}
	.inner-masthead.active .fixed-menu{padding: 15px 0;}
	.masthead .logo-container a{width: 100%;}
@keyframes shake-rotate {
    0%, 100% { transform: rotate(0); }
    10%, 30%, 50%, 70%, 90% { transform: rotate(-5deg); }
    20%, 40%, 60%, 80% { transform: rotate(5deg); }
}

.header-call-box svg {animation: shake-rotate 0.5s ease-in-out 4;}

.header-call-box:hover svg {animation: shake-rotate 0.5s ease-in-out infinite;}

	
/* 	.header-call-box .header-icon-container svg{padding:0px 3px; margin:8px 6px 1px 5px; width:24px; height:18px; transition:all 0.3s ease-in-out;} */
}

/* @media (min-width: 1900px) {
	.header-call-box .header-icon-container svg{margin:12px 10px 5px 9px; width:28px; height:22px;}
	.menus .menu-item a{font-size: 16px;}
	nav.main-nav{padding:15px 0 0;}
	.header-call-box .header-icon-container{width:46px; height:46px;}
	.menus .header-call-box a{font-size:28px; letter-spacing:0;}
	.header-call-box .header-icon-container svg{margin:12px 0 0 12px; height:22px; width:22px;}
} */

/* @media(max-width: 1000px){ */
@media(max-width: 1200px){
	
    .masthead{position:relative; width:100%;}
	.home .masthead{position:absolute; width:100%;}
	
	.logo-container{width:33%; margin:0 0 0 25px;}
	.masthead.active .fixed-menu .logo-container a{margin:auto;}
	.masthead.active .fixed-menu .logo-container{width:26%;}
	.masthead.active .fixed-menu .menus{width:71%;}
	.menus{width:33%; align-items:center; padding:0 25px 16px 0;}
	
	.masthead.active .fixed-menu .menus{align-items:center;}
	.masthead.active .fixed-menu .main-menu{align-content:center;}
	.masthead.active .fixed-menu .main-menu span.menu-arrow{top:40%;}
	.mobile-nav{font-size:22px; outline-color:var(--color-1); font-family:var(--accent-font); font-weight:700; display:flex; align-items:center; width:50%; justify-content:flex-end;}
	.mobile-nav span{position:relative; margin:0 8px 0 0;}
	.mobile-nav span:before{content:''; position:absolute; height:100%; width:100%; background:rgba(255, 255, 255, 0.1); z-index:0; border-radius:50%;}

	.main-nav{position: fixed; top: 100%; width: 100%; left: 0; top:0; background: rgba(0,0,0, .9); box-shadow: 0 5px 10px rgba(0,0,0,.3); padding: 0 25px; height: 0; overflow: hidden; transition: padding .25s; max-height:0; transition:max-height ease .5s;}
	.menu-main-navigation-container{width:675px; margin:auto;}

	.masthead.active .fixed-menu .tablet-header-call-box, .masthead.active .fixed-menu .mobile-nav{width:auto; padding:0 10px;}
	.mobile-nav p{position:relative; padding:4px 8px 10px; line-height:.9; margin:0;}
	#mobile-nav-input:checked + * + .main-nav{height: 100%; max-height:100%; padding: 10px 25px;}
	#menu-main .sub-menu{display: none;}
	#menu-main li a{outline-color: var(--color-1);}
	#menu-main .sub-menu{display: none; transition:ease.3s; padding:0;}
	#menu-main .sub-menu.active{display: block; padding:15px;}
	.menu-item-has-children{position:relative;}
	
	 span.menu-arrow{width:100%; height:57px; border:none;top:0; left:0;}
	span.menu-arrow:before{content:''; position:absolute; top:18px; right:10px; width: 12px; height: 12px; border-left: none; border-right: 3px solid white; border-top: 3px solid white; transform:rotate(135deg); border-radius: 2px 2px 2px 2px; transition:ease .5s;}

	figure img{height:auto;}
	.tablet-header-call-box{height:max-content; width:50%; overflow:auto; display:flex; align-items:center; overflow:visible;}
	.header-call-box{height:0; width:0; overflow:hidden;}
	.tablet-header-call-box a{font-weight:700; font-size:21px; display:flex; overflow:visible; cursor:pointer;}
/* 	.tablet-header-call-box a:hover .tablet-header-icon-container:before{scale: 1.2; background:rgba(255, 255, 255, 0.25);}
	.tablet-header-call-box a:hover .tablet-header-icon-container svg{scale: 1.2;} */
	.tablet-header-call-box .tablet-header-icon-container{position:relative; margin:0 8px 0 0;}
	.tablet-header-call-box .tablet-header-icon-container:before{content:''; position:absolute; height:100%; width:100%; background:rgba(255, 255, 255, 0.1); z-index:0; border-radius:50%; transition:all 0.3s ease-in-out;}
	.tablet-header-call-box .tablet-header-icon-container svg{padding:0px 3px; margin:8px 6px 1px 5px; width:24px; height:18px; transition:all 0.3s ease-in-out;}
	
	.sub-menu{position: absolute; top: 100%; left: 0; background: var(--transluscent); backdrop-filter: blur(5px); height: 0; overflow: hidden; z-index: 1000; box-shadow: 0 2px 7px rgba(0,0,0,.4); max-height:0px; transition: max-height ease .5s; padding:0;}
	.sub-menu.active{ color:white; width:100%; height:auto; max-height:300px; position:relative; display:block; transition: max-height ease .5s;}

	 .main-nav .mobile-nav.internal{position: absolute; top: 15px; right: 15px; background: var(--color-1); width: 54px; height: 54px; display: flex; justify-content: center; align-items: center; border-radius: 50%; cursor:pointer; transition:background-color 500ms linear;}
	.main-nav .mobile-nav.internal:hover{ background:white;}
	.main-nav .mobile-nav.internal:hover svg{fill:var(--color-1);}

	.main-nav .mobile-nav.internal span svg{width:30px; height:30px;}
	.main-menu > li a{padding:15px 0; border-bottom:1px solid rgba(255, 255, 255, 0.15); width:100%; display:block;font-size:21px; letter-spacing:-0.5px; font-weight:600;}
	 .sub-menu li a{padding:15px 0 15px 12px; font-size:18px;}
	#menu-main .menu-item-has-children .sub-menu.active li{padding:15px 18px;}
}
@media(max-width: 1200px){
	.logo-container{width:30%; margin:0 0 0 32px;}
	.masthead.active .fixed-menu .logo-container{width:28%;}
	.masthead.active .fixed-menu .menus{width:72%;}
	.menus{width:65%;}
	.tablet-header-call-box{width:max-content;}
	.tablet-header-call-box .tablet-header-icon-container{margin:0 6px 0 0;}
	.tablet-header-call-box .tablet-header-icon-container svg{width:20px; height:14px;}
	.tablet-header-call-box a{font-size:19px; letter-spacing:.7px;}
	.mobile-nav{width:max-content; font-size:19px; margin:0 0 0 18px;}
	.mobile-nav span{margin:0 6px 0 0;}
}
@media(max-width: 767px){
	.inner-masthead.active .fixed-menu .flex.menus{width:56%; justify-content:flex-end;}
	.inner-masthead.active .fixed-menu .logo-container{width:33%; padding:0 0 10px 16px; justify-content:start;}
	.logo-container{width:100%; justify-content:center; margin:0; display:flex;}
	.menus{width:100%; justify-content:center; margin:16px 0 0;}
	.tablet-header-call-box a{display:flex; font-size:16px; cursor:pointer;}
	.tablet-header-call-box a:hover svg{scale:1.2;}
	.mobile-nav{font-size:16px;}
}
@media(min-width: 768px) {
	@keyframes menu-down{
		from{transform:translate(0, -100%)}
		
		to{transform:translate(0%, 0)}
	}
	
	.menus{z-index:100;}
	.mobile-nav{text-transform:uppercase; cursor:pointer;}
	.mobile-nav span:before, .mobile-nav span p{transition:all 0.3s ease-in-out;}
	.mobile-nav:hover span:before{scale:1.2; background:rgba(255,255,255,0.3);}
	.mobile-nav:hover span p{scale:1.2;}
	.mobile-contact-box{height:0; width:0; overflow:hidden;}
	.mobile-header-call-box{height:0; width:0; overflow:hidden;}
	
	.inner-masthead.active .fixed-menu{position:fixed; z-index:1002; background:var(--color-3); top:0; left:0; flex-wrap:nowrap; align-items:center;}

	.inner-masthead.active .fixed-menu .logo-container img.header-logo-fixed{height:100%; width:100%; max-width:300px; overflow:auto;}
/* 	.masthead.active .fixed-menu .logo-container img.header-logo-relative{height:0; width:0; overflow:hidden;}
	.masthead .fixed-menu .logo-container img.header-logo-relative{height:100%; width:100%; overflow:auto;} */
/* 	.masthead .fixed-menu .logo-container img.header-logo-fixed{height:0; width:0; overflow:hidden;} */
	/* TRANSITION MENU STYLES */
.inner-masthead.fixed.active{position: fixed; width: 100%; background: var(--color-3); animation:menu-down .3s;}
	.inner-masthead.fixed.active img.header-logo-relative{height:0; width:0; overflow:hidden;}
	.inner-masthead.fixed img.header-logo-relative{height:100%; width:100%; overflow:auto;}
	
	.inner-masthead.fixed img.header-logo-fixed{height:0; width:0; overflow:hidden;}
	.inner-masthead.fixed.active img.header-logo-fixed{height:100%; width:100%; overflow:auto; margin-bottom:9px;}
	.tablet-header-call-box a .tablet-header-icon-container:before,
	.tablet-header-call-box a .tablet-header-icon-container svg{transition:all 0.3s ease-in-out;}
	.tablet-header-call-box a:hover .tablet-header-icon-container:before{scale: 1.2; background:rgba(255, 255, 255, 0.25);}
	.tablet-header-call-box a:hover .tablet-header-icon-container svg{scale: 1.2;}
	/* .masthead.active .fixed-menu .logo-container{width:30%; padding:0 0 10px 85px;}
	.masthead.active .fixed-menu .flex.menus{width:70%;} */
}

@media(max-width: 767px){
	.main-nav{position:fixed; top:0; max-height:0; transition:max-height ease .5s;}
	#mobile-nav-input:checked + * + .main-nav{padding:10px 25px; max-height:100%; height:100%;}
	.masthead .mobile-contact-box p, .masthead .mobile-header-call-box p{font-size:16px; margin:0;}
	.tablet-header-call-box{height:0; width:0; overflow:hidden;}
	.menus{position:fixed; bottom:0; background: var(--color-7); padding:0px; border-bottom:none; border-top:1px solid rgba(255, 255, 255, 0.5); width:100%;}
	.inner-masthead .fixed-menu .logo-container img.header-logo-fixed{height:0; width:0; overflow:hidden;}
	.inner-masthead.active .fixed-menu .flex.menus{width:100%; justify-content:center;}
	.mobile-header-call-box{height:100%; width:33%; overflow:auto; text-align:center; border-right: 1px solid rgba(255, 255, 255, 0.5); padding:8px 0; display:flex; align-items:center; justify-content:center; cursor:pointer;}
	.mobile-header-icon-container{width:16px; height:24px; display:inline-block;}
	.mobile-header-icon-container svg, .mobile-contact-box svg{height:16px; width:16px; margin:0 4px 0 0;}
	.mobile-nav, .masthead.active .fixed-menu .mobile-nav{width:33%; margin:0; justify-content:center; font-weight:normal; font-family:var(--text-font); cursor:pointer; padding:0;}
	.masthead.active .fixed-menu .mobile-nav.internal{width:54px; height:54px;}
	.masthead.active .fixed-menu .tablet-header-call-box{width:0; padding:0;}
	.mobile-nav span{margin:0;}
	.mobile-nav span p{font-size:24px; padding:2px 0px 8px;}
	.mobile-nav span:before{content:none;}
	.mobile-contact-box{height:100%; width:33%; overflow:auto; text-align:center; border-left:1px solid rgba(255, 255, 255, 0.5); padding:8px 0; display:flex; align-items:center; justify-content:center; cursor:pointer;}
}

/* Forms */
textarea {width:100%;height:150px;}
input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], select, textarea {margin:0; padding:1em;width:100%;border:1px solid;}
input[type=submit], button {border:none;background:var(--color-1);padding:.5em 1em;cursor:pointer;font-size:inherit;}
.gform_required_legend{display:none;}
.gfield_label {margin-top:1em;margin-bottom: .25em;font-weight: 600;display: flex;gap:0.25em;}
.gfield_required {font-size: .85em;color: #c02b0a;display: inline-block;text-transform: uppercase;font-weight: 400;}
.gfield_label_before_complex {display:none;}
fieldset { border: none; margin: 0; padding: 0; }
.gchoice {display: flex;gap: 1em;align-items: center;margin:1em 0;cursor:pointer;width:fit-content;}
.gchoice input[type=checkbox] {appearance: none;color: var(--color-1);width: 1.5em;
height: 1.5em;border: 2px solid;border-radius: 3px;display: flex;align-items: center;justify-content: center;transition: ease all .25s;cursor:inherit;}
.gchoice input[type=checkbox]::before {content: url("data:image/svg+xml,%3Csvg fill='%23FFF' xmlns='http://www.w3.org/2000/svg' viewBox='25 25 50 50'%3E%3Cpath d='m64 985.393-3.531 3.532-16.719 16.718-4.469-3.937-3.75-3.281-6.593 7.53 3.78 3.282 8 7 3.5 3.094 3.313-3.313 20-20 3.531-3.53L64 985.392z' overflow='visible' transform='translate(0 -952.362)'/%3E%3C/svg%3E");width: 100%;height: 100%;opacity: 0;transition: ease opacity .25s;}
.gchoice input[type=checkbox]:checked {background: var(--color-1);}
.gchoice input[type=checkbox]:checked::before {opacity: 1;}
label {user-select: none;cursor:inherit;}

/* Built In WP Classes */
figure {display:inline-block;margin:0;}
.aligncenter {display:block;margin: 0 auto;}
.has-text-align-center {text-align:center;}
.has-text-align-right {text-align: right;}

.hide-bc-text{width:0; height:0; overflow:hidden; margin:0; padding:0; opacity:0; display:block;}

/* GLP */

.wp-block-group{display: grid;}
.wp-block-group-is-layout-flex{padding:15px;}

.contact-grid {
		padding: 10px 0;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-auto-rows: auto;
		gap: 2rem;
		width: 100%;
		box-sizing: border-box;
	}

	.contact-card {
		border: 1px solid #ddd;
		background: #fff;
		padding: 1.5rem;
		display: flex;
		flex-direction: column;
		text-align: center;
		text-decoration: none;
		color: inherit;
		transition: transform 0.2s ease, box-shadow 0.2s ease;
	}

	.contact-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
	}

	.contact-icon {
		font-size: 2rem;
		margin-bottom: 1rem;
	}

	.contact-title {
		margin: 0 0 0.5rem;
	}

	.contact-content {
		font-size: 1rem;
	}

	.visit-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.5rem 1rem;
		text-align: left;
	}
	.visit-grid p {
		font-size: 0.9rem;
		margin: 0.2em 0;
	}

	/* Full-width cards */
	.contact-span-2 {
		grid-column: span 2;
	}

	/* Responsive layout */
	@media (max-width: 750px) {
		.contact-grid {
			grid-template-columns: 1fr;
			gap: 1rem;
		}
		.contact-span-2 {
			grid-column: span 1;
		}
	}