body {
font-family: 'Poppins',sans-serif;	
}
.main-img img {
	border-top-left-radius: 80% 100%;
  border-bottom-left-radius: 80% 100%;
}
figure {
	margin:0;
}
.topbar {
	background-color:#bcddd5;
	position:relative;
	z-index:0;
}
a {color:#0b3138;}
.btn-custom {
	background-color:#0b3138;
	border-color: #0b3138;
  color: white; 
}
.btn-custom:hover, 
.btn-custom:focus, 
.btn-custom:active, 
.btn-custom.active, 
.open .dropdown-toggle.btn-custom {
  background-color: #08262c; /* Darker color for hover state */
  border-color: #08262c;
color:white;
}
.bi-bullet-list li::before {
  content: "\F272"; 
  font-family: "bootstrap-icons";
  position: absolute;
  left: -20px;
  top: 0;
  color: #000;
}
/*#topnav {
	background-color:#2c090b;
}*/
/* Ensure the cover block spans the full viewport width */
.wp-block-cover.alignfull {
    width: 100vw;
    position: relative; /* May be needed depending on theme layout */
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    max-width: none; /* Override any max-width set by the theme */
}

/* Ensure images and other content inside the full-width block display correctly */
.wp-block-cover.alignfull > * {
    max-width: 100%;
}
@media (min-width: 782px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: auto!important;
    flex-grow: 1;
  }
}
.wp-block-column {
  flex-grow: 1;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: break-word;
}
.wp-block-columns {
  align-items: normal !important;
}
@media (min-width: 782px) {
  .wp-block-columns {
    flex-wrap: nowrap !important;
  }
}
.wp-block-columns {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap !important;
}
@media (max-width: 781px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 100% !important;
  }
}
/*.wp-block-cover__inner-container {
position: absolute; 
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); 
    width: 100%;
}*/

body {
    overflow-x: hidden;
}
.border-gap-container {
    position: relative; /* Needed for positioning the pseudo-element */
    border-bottom: 1px solid #0b3138; /* Full border */
}

.border-gap-container::after {
    position: absolute;
  bottom: -1px; left: 50%;
  transform: translateX(-50%);
  content: '';
  background: #fff;
  width: 250px;
  height: 1px;
}
.txt-shadow {
	text-shadow: 2px 2px 4px rgba(0,0,0,.75);
}
h1 {
	font-family:'Caveat';
}
.home h1, .home h2 {
	font-family:'Caveat';
}
.caveat {
	font-family:'Caveat';
}
.navbar {
	border-bottom:2px solid #7ac142;
}
.topnav_ul {
		font-family:'Caveat';
	}
.navbar-brand {
	padding-bottom:0;
}
.phone {
	color:#133941;
	font-family:'Poppins';
	font-weight:bold;
}
.phone a {
	color:#133941;
}
.btn-portal {
	background-color:#133941;
	padding:.6rem;
}
a.btn-portal {
	text-decoration:none;
	color:#fff;
	font-weight:bold;
}
.hm-header {
	background-size:cover;
	height:80vh;
	max-height:435px;
	background-color:#000;
}
.entry-title {
	font-family:'Allison';
	/*font-size:65px;*/
	line-height:1.15;
}
.bg-blue {
	background-color:#0b3138;
}
.bg-cream {
	background-color: #fff8f1;
}
.btn {
	border-radius:5px;
} 

#homepage-header {
	background: url("../images/header-img.jpg")
}
.topnav_ul>li.menu-item-has-children>a:after {
		display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent;
	right: 10px;
    position: absolute;
    top: 45%;
	}
/* X-Small devices (portrait phones, less than 576px)
// No media query for `xs` since this is the default in Bootstrap*/

/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {

}
@media (max-width:1199px) {
	.phone.fs-5 {
		font-size:1rem!important;
	}
}
@media (max-width:767px) {
	
	.logo {
		margin-left:auto;
		margin-right:auto;
		margin-bottom:15px;
	}
	
	#logo-scrolled {
		display:none;
	}
	#nav-container {
		position:fixed;
		top:0;
		right:-100%;
		left:100%;
		bottom:0;
		transition:.3s;
		background:rgba(4,0,12,.85);
		z-index:2000;
		padding:15px;
		padding-top:45px;
	}
	#page-wrap{
		transition:filter .3s;
	}
	#page-wrap.navactive {
		filter: blur(5px);
	}
	
	#topnav {
		transition: .3s;
		z-index: 1000;
	}
	
	
	.topnav_ul {
		margin: 0;
		padding: 0;
	}
	
	.topnav_ul li {
		list-style: none;
	}
	
	.topnav_ul li a {
		text-decoration:none;
		display: block;
		font-size: 19px;
		color: #fff;
		padding: 8px 15px;
		border-bottom: 1px solid rgba(255, 255, 255, .1);
		transition: .3s;
		position:relative;
	}
	
	.topnav_ul li a:hover {
		text-decoration: none;
		background: rgba(0, 0, 0, .7);
	}
	
	#navbtn {
		display: block;
		width: 25px;
		height: 25px;
		position: absolute;
		z-index: 9000000;
		right: 15px;
		top: 10px;
		cursor: pointer;
		transition: .3s;
		border:1px solid transparent;
		background-color:transparent;
	}
	
	#navbtn .bar1, #navbtn .bar2, #navbtn .bar3 {
		content: "";
		display: block;
		height: 2px;
		width: 100%;
		position: absolute;
		background: #133941;
		transition: .3s;
		outline: 1px solid #133941;
	}
	
	#navbtn .bar1 {
		top: 3px;
	}
	
	#navbtn .bar2 {
		top: 12px;
		opacity: 1;
	}
	
	#navbtn .bar3 {
		bottom: 0px;
	}
	
	
	.navactive #nav-container {
		right:0;
		left:0;
	}
	.navactive #navbtn .bar2 {
		opacity: 0;
	}
	
	.navactive #navbtn .bar1 {
		transform: rotate(45deg) translateY(8px) translateX(5px);
		outline: none;
		background: #fff;
	}
	
	.navactive #navbtn .bar3 {
		transform: rotate(-45deg) translateY(-8px) translateX(5px);
		outline: none;
		background: #fff;
	}
	
	.navactive #navbtn {
		display: block;
	}
	
	.navactive #nav-wrap {
		right: 0;
		left: 0;
	}
	
	.sub-wrap {
		display: grid;
  		grid-template-rows: 0fr;
		transition:.3s;
	}
	
	.sub-menu {
		overflow:hidden;
		padding-left:0;
	}
	
	.topnav_ul .sub-menu  li a {
		padding-left:1.5rem;
	}
	
	.menu-item-has-children.hsactive .sub-wrap {
		grid-template-rows: 1fr;
	}	

}
/*  Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) {
	.logo {
		margin-top:-30px;
		position:relative;
		z-index:10;
		margin-bottom:-48px;
	}
	#navbtn {
	display:none;
	}
	#topnav {
		position:relative;
		z-index:1000;
		background:#fff;
		transition:.3s;
		display:block;
		min-height:96px;
	}

	#topnav.scrolled {
		position:fixed;
		background:#fff;
		width:100%;
		top:0;
		left:0;
		right:0;
		z-index:1000;
	}
	
	#topnav.scrolled {
		box-shadow:0px 0px 5px rgba(0,0,0,.5);
	}

	.topnav_ul {
		margin:0;
		padding:0;
		overflow:hidden;
		text-align:right;
	}
	
	.topnav_ul:hover {
		overflow:visible;
	}
	
	.topnav_ul>li {
		margin:0;
		padding:0;
		display:inline-block!important;
		list-style:none;
		position:relative;
	}

	.topnav_ul>li>a {
		display:block;
		position:relative;
		font-size:24px;
		color:#133941;
		text-align:center;
		font-weight:600;
		transition:.3s;
		padding:8px 2rem;
		text-decoration:none;
	}
	
	.topnav_ul>li:hover>a {
		text-decoration:none;
		color:#479e8d;
	}
	
	
	
	.scrolled .topnav_ul>li>a:after {
		background:#294185;
	}
	
	/*.topnav_ul>li:hover>a:after {
		left:0;
		right:0;
		
	}*/
	
	#nav-container {
		transition:.3s;
	}
	
	.sub-wrap {
		display:block;
		position:absolute;
		top:100%;
		left:0;	
		z-index:-100;
		opacity:0;
		transition:opacity .3s;
		min-width:105%;
	}
	.sub-menu {
		margin:0;
		padding:0;
		font-size:20px;
	}
	
	.sub-menu>li {
		display:block;
		list-style:none;
		margin:0;
		padding:0;
	}
	
	.sub-menu>li>a {
		display:block;
		padding:5px 17px;
		color:#FFF;
		background:#133941;
		white-space: nowrap;
		text-align:left;
		text-decoration:none;
		text-align:center;
	}
	
	.sub-menu>li>a:hover {
		text-decoration:none;
		color:#fff;
	background:#479e8d;
	}
	
	.topnav_ul>li:hover>.sub-wrap {
		z-index:10000000;
		opacity:1;
	}
	

	
	.nav-fill {
		display:flex;
	}
	
	.nav-fill>li {
		flex: 1 1 auto;
		text-align: center;
	}

	.nav-fill>li>a{
		width: 100%;
	}

}

/*  Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {
	.navbar {
		padding-bottom:0;
	}

}

/*  X-Large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {
.navbar-brand img {
	max-height:150px;
}
	#topbar.scrolled {
		margin-bottom:88px;
	}
}

/*  XX-Large devices (larger desktops, 1400px and up)*/
@media (min-width: 1400px) {
	.navbar-brand img {
	max-height:160px;
}

}
@media (min-width: 1200px) and (max-width: 1399px) {

}