/*
BASE (MOBILE) SIZE
	These are the mobile styles. It's what people see on their phones.
	Remember, keep it light: Speed is Important.
*/

/* typography */
body{
	background:#fff;
	color:#08235b;
	font-family: "Poppins", serif;
	font-size:1em;
	line-height:1.4em; 
	font-weight:normal;
}
h1, h2, h3, h4, h5, h6{
	font-weight:400;
	font-family: "Poppins", serif;
	line-height:1.5em;
	margin:.45em 0;
	padding:0;
} 

/* links */
a,
a:visited,
a:active,
a:hover{color:#0099ff;}
a:hover{ text-decoration:none;}


/* Box sizing. Awesome thing. Read about it here: http://www.w3schools.com/cssref/css3_pr_box-sizing.asp */
*{	box-sizing:border-box;
	-moz-box-sizing:border-box;}
  
/* structure */   
.wrapper{
	width: 92%; 
	margin: 0 auto;
}
header{ 
	padding:15px 0;
}
#banner{ 
	text-align:center;
}	
#hero,
#page-header{
	background:#f3f3f3;
	border-top:1px solid #e2e2e2;
	border-bottom:1px solid #e2e2e2;
	padding:20px 0;
}
#hero{
	background: linear-gradient(to bottom, #e9f0fb, #f4f9fc);
    background-position: left top;
    background-repeat: repeat;
}
#imagever
{
    margin-left: 10px;
}
#page-header h1{
	margin:0;
}
.flexslider{
	display:none;
}
#content,
aside,
.vertical-padding{  
	padding:40px 0;
}
p{ margin:0 0 1.5em;}


/* RESPONSIVE IMAGES  */
img{ max-width:100%; height:auto;}


/*MAIN MENU*/
.menu-toggle{
	display:block;
	padding:10px;
	margin:20px 0 0;
	background:#08235b;
	color:#fff;
	cursor:pointer;
	text-transform:uppercase;
	font-size:20px;
}
.menu-toggle.toggled-on{
	background:#4471ce;
}
.srt-menu{
	display:none;
}	
.srt-menu.toggled-on{
	display:block;
	position:relative;
	z-index:10;
}

.srt-menu{
	clear:both;
	margin-bottom:60px;
	
}
.srt-menu li a {
	color:#08235b;
	background:#c5dffd;
	display:block;
	margin:1px 0; 
	padding:10px;
	text-decoration:none;
	font-size:.9em;
}
.srt-menu li a:hover{
	background:#4471ce;
	color:#fff;
}
.srt-menu li li a {
	background:#7c8fa4;
	padding-left:40px;
}
.srt-menu li li li a {
	background:#efefef;
	padding-left:80px;
}

/*SECONDARY MENU*/
#secondary-navigation{
	margin-bottom:60px;
}
#secondary-navigation ul{
	margin:0;
	padding:0;
}
#secondary-navigation ul li a{ 
	background:#E6E6E6;
	color:#08235b;
	display:block;
	margin:5px 0; 
	padding:10px;
	text-decoration:none;
}
#secondary-navigation ul li a:hover,
#secondary-navigation ul li.current a{
	background:#4471ce;
	color:#fff;
}

/*SPACE GRID ELEMENTS VERTICALLY, SINCE THEY ARE ONE UNDER ANOTHER SO FAR*/
.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12 {
	margin-bottom:40px;
}
.form-control
{
    background-color: #FFFFFF;
    background-image: none;
    border: 1px solid #CCCCCC;
    border-radius: 4px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    color: #555555;
    padding: 6px 12px;
    margin: 0;
    min-width:150px;
    width:40%;
}
/*FOOTER*/
footer{  
	background:#00152d;
	color:#ccc;
	font-size:80%;
	padding:20px 0;
}
footer ul{
	margin:0 0 0 8%;
	padding:0;
}


/*Some more colored elements*/
a.buttonlink{ 
	background:#4471ce; 
	border-radius:7px; 
	color:#fff;
	display:block;
	float:left; 
	margin:-10px 15px 10px 0; 
	padding:10px;
	text-decoration:none;
}
a.buttonlink.large{
	padding:25px 30px;
	margin:10px auto;
	float:none;
	min-width:250px;
	max-width:400px;
	font-size:18px;
}
a.buttonlink:hover{
	background:#9787e8;
}
a.buttonlink.violet{background:#887dc2;}
a.buttonlink.violet:hover{background:#F15E43;}
.greenelement{
	background:#003c81;
	color:#fff;
}
.violetelement{
	background:#887dc2;
	color:#fff;
}


/* Contain floats: h5bp.com/q */ 
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }



/****************************************
*****************************************
MEDIAQUERIES
*****************************************
****************************************/



/*
LARGER MOBILE DEVICES
This is for mobile devices with a bit larger screens.
*/
@media only screen and (min-width: 481px) {
#banner{
	float:left;
	text-align:left;
	margin-bottom:-20px;/*this depends on the height of the logo*/
}
.menu-toggle{/*make menu float right, instead of sitting under the logo*/
	margin-top:10px; /*this depends on the height of the logo*/
	float:right;
}

} 

/*
TABLET & SMALLER LAPTOPS
The average viewing window and preferred media query for those is 768px.
But I think that some more breathing space is good:)
*/
@media only screen and (min-width: 980px) {

.wrapper{
	max-width: 1200px; 
	margin: .75em auto;
}
header{
	padding:0;
}
#banner{ 
	float:left; 
	text-align:left;
	margin-bottom:0px;
	margin-top:5px;
}
#hero{
	padding:0;
}
#hero .grid_4 { width: 100%; }
#hero .grid_8 { width: 80%; margin:40px 10% 0;}

#content {  
	float:left;
	width:65%;
}
#content.wide-content{
	float:none;
	width:100%;
}

.flexslider{
	display:block;
/*demo 1 slider theme*/	
margin: 0; 
}
.flex-control-nav {bottom: 5px;}


aside { 
	float:right;
	width:30%;
}

/*** MAIN MENU - ESSENTIAL STYLES ***/
.menu-toggle{display:none;}
#menu-main-navigation{display:block;}

.srt-menu, .srt-menu * {
	margin:			0;
	padding:		0;
	list-style:		none;
}
.srt-menu ul {
	position:		absolute;
	display:none;
	width:			12em; /* left offset of submenus need to match (see below) */
}
.srt-menu ul li {
	width:			100%;
}
.srt-menu li:hover {
	visibility:		inherit; /* fixes IE7 'sticky bug' */
}
.srt-menu li {
	float:			left;
	position:		relative;
	margin-left:1px;
	height:25px;
}
.srt-menu li li {
	margin-left:0px;
	height:auto;
}
.srt-menu a {
	display:		block;
	position:		relative;
}
.srt-menu li:hover ul,
.srt-menu li.sfHover ul {
	display:block;
	left:			0;
	top:			42px; /* match top ul list item height */
	z-index:		99;
	-webkit-box-shadow:  2px 3px 2px 0px rgba(00, 00, 00, .3);
    box-shadow:  2px 3px 2px 0px rgba(00, 00, 00, .3);
}
ul.srt-menu li:hover li ul,
ul.srt-menu li.sfHover li ul {
	top:			-999em;
}
ul.srt-menu li li:hover ul,
ul.srt-menu li li.sfHover ul {
	left:			12em; /* match ul width */
	top:			0;
}
ul.srt-menu li li:hover li ul,
ul.srt-menu li li.sfHover li ul {
	top:			-999em;
}
ul.srt-menu li li li:hover ul,
ul.srt-menu li li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
}

/*** DEMO2 SKIN ***/
#topnav, .srt-menu {
	float:right;
	margin: .35em 0 0 0;
}
.srt-menu a {
	text-decoration:none;
}
.srt-menu li a{
	background:#fff;
	margin:0; 
	padding:10px 20px;
}
.srt-menu a, .srt-menu a:visited  { /* visited pseudo selector so IE6 applies text colour*/
	color:			#08235b;	
}
.srt-menu li li a {
		border-top:		1px solid rgba(255,255,255,.2);
		background:		#333; /*fallback for old IE*/
		background:rgba(0,0,0,.6);
		color:	#fff;
		padding-left:20px;
}
.srt-menu li li a:visited{color:#fff;}
.srt-menu li li li a,
.srt-menu li.current * li a{
	padding-left:20px;
	background:rgba(4, 31, 111, 0.6);
	color:#fff!important;
}

.srt-menu li:hover > a,
.srt-menu li.current:hover > a{ 
	color:#fff;
	background:#4471ce;
}
.srt-menu li.current a{ 
	color:#4471ce;
	background:none;
}
.srt-menu li li:hover > a{
	color:#fff;
	background:#4471ce;
}

/* Wrapper */
.icon-button {
	background-color: white;
	border-radius: 3.6rem;
	cursor: pointer;
	display: inline-block;
	font-size: 2.0rem;
	height: 3.6rem;
	line-height: 3.6rem;
	margin: 0 5px;
	position: relative;
	text-align: center;
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
	width: 3.6rem;
}

/* Circle */
.icon-button span {
	border-radius: 0;
	display: block;
	height: 0;
	left: 50%;
	margin: 0;
	position: absolute;
	top: 50%;
	-webkit-transition: all 0.3s;
	   -moz-transition: all 0.3s;
	     -o-transition: all 0.3s;
	        transition: all 0.3s;
	width: 0;
}
.icon-button:hover span {
	width: 3.6rem;
	height: 3.6rem;
	border-radius: 3.6rem;
	margin: -1.8rem;
}
.twitter span {
	background-color: #4099ff;
}
.facebook span {
	background-color: #3B5998;
}
.google-plus span {
	background-color: #db5a3c;
}

/* Icons */
.icon-button i {
	/* background: #fff; */
	/* color: white; */
	height: 3.6rem;
	left: 0;
	line-height: 3.6rem;
	position: absolute;
	top: 0;
	-webkit-transition: all 0.3s;
	   -moz-transition: all 0.3s;
	     -o-transition: all 0.3s;
	        transition: all 0.3s;
	width: 3.6rem;
	z-index: 10;
}
.icon-button .icon-twitter {
	color: #4099ff;
}
.icon-button .icon-facebook {
	color: #3B5998;
}
.icon-button .icon-google-plus {
	color: #db5a3c;
}
.icon-button:hover .icon-twitter,
.icon-button:hover .icon-facebook,
.icon-button:hover .icon-google-plus {
	color: rgb(0, 79, 250);
}

/*GRID*/
/*
 & Columns : 12 

 */
.grid_1 { width: 5%; }
.grid_2 { width: 13.333333333333%; }
.grid_3 { width: 21.666666666667%; }
.grid_4 { width: 30%; }
.grid_5 { width: 38.333333333333%; }
.grid_6 { width: 46.666666666667%; }
.grid_7 { width: 55%; }
.grid_8 { width: 63.333333333333%; }
.grid_9 { width: 71.666666666667%; }
.grid_10 { width: 80%; }
.grid_11 { width: 88.333333333333%; }
.grid_12 { width: 96.666666666667%; }

.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12 {
	margin-left: 1.6666666666667%;
	margin-right: 1.6666666666667%;
	float: left;
	margin-bottom:0px;
}

.alpha{margin-left:0px;}
.omega{margin-right:0px;}
.rightfloat{float:right;}
/* @
 * tinyfluidgrid.com
 & girlfriendnyc.com
 */

}

/*
DESKTOP
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*/
@media only screen and (min-width: 1024px) {
#hero .grid_4 { width: 30%; }
#hero h1{ font-size:1.4em;}
#hero .grid_8 { width: 63.333333333333%; margin:0 1.6666666666667%; }
} 

/*
LARGE VIEWING SIZE
This is for the larger monitors and possibly full screen viewers.
*/
@media only screen and (min-width: 1240px) {
#hero h1{ font-size:2em;}
} 

/*
RETINA (2x RESOLUTION DEVICES)
This applies to the retina iPhone (4s) and iPad (2,3) along with
other displays with a 2x resolution.
*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
       only screen and (min--moz-device-pixel-ratio: 1.5),
       only screen and (min-device-pixel-ratio: 1.5) {


} 

/*
iPHONE 5 MEDIA QUERY
iPhone 5 or iPod Touch 5th generation styles (you can include your own file if you want)
*/
@media (device-height: 568px) and (-webkit-min-device-pixel-ratio: 2) { 

  
}

/*
PRINT STYLESHEET
*/
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}

.feature-card-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
	margin-top: 30px;
  }
  
  .feature-card {
	width: 30%;
	padding: 20px;
	border-radius: 10px;
	box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
	text-align: center;
	transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
	color: white;
  }
  
  .feature-card h3 {
	margin-bottom: 10px;
	font-size: 20px;
  }
  
  .feature-card p {
	font-size: 14px;
  }
  
  /* Hover Effect */
  .feature-card:hover {
	transform: translateY(-5px);
	box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.15);
  }
  
  /* Six Different Background Colors */
  .card-1 { background-color: #ff4d26 ; } /* Red-Orange */
  .card-2 { background-color: #21b35d; } /* Green */
  .card-3 { background-color: #2679af ; } /* Blue */
  .card-4 { background-color: #8e44ad; } /* Purple */
  .card-5 { background-color: #936c2f ; } /* Yellow-Orange */
  .card-6 { background-color: #d04436; } /* Red */
  
  /* Responsive Design */
  @media (max-width: 1024px) {
	.feature-card {
	  width: 45%;
	}
  }
  
  @media (max-width: 768px) {
	.feature-card {
	  width: 100%;
	}
  }
  .feature-section {
	text-align: left;
	padding: 10px;
	/* background-color: #eaf4ff; */
	/* box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px; */
}

.wrapper {
	max-width: 100%;
	margin: 0 auto;
	
}

.feature-section h1 {
	color: #2a7ae2;
	margin-bottom: 20px;
	
}

.feature-section p {
	font-size: 18px;
	color: #333;
	line-height: 1.6;
	margin-bottom: 15px;
}  

.visually-hidden {

	display: none !important;
}

.cookie-banner {
	position: fixed;
	bottom: 10px;
	left: 50%;
	transform: translateX(-50%);
	background-color: #021339;
	color: white;
	padding: 15px;
	border-radius: 5px;
	display: none;
	justify-content: space-between;
	align-items: center;
  }
  
  .cookie-banner button {
	background-color: #f1c40f;
	border: none;
	padding: 8px 15px;
	margin-left: 10px;
	cursor: pointer;
	font-size: 18px;
	border-radius: 5px;
  }
  
  .cookie-banner button:hover {
	background-color: #e67e22;
  }
  