body{
   height: 100%;
   
   font-family: "Roboto", sans-serif;
     font-optical-sizing: auto;
     font-weight: 200;
     font-style: normal;
     font-variation-settings: "wdth" 100;
     
   margin: 0px;
   padding: 0px;
   position: relative;
   width: 100%;
   
   background: url("../../images/noise-background.png");
   
}

main{
	min-height: 60vh;
}

.form-item{
	margin-bottom: 30px;
}

.form-item > label{
	display: block;
}


.form-item input{
	line-height: 40px;
	height: 40px;
	box-sizing: border-box;
	font-size: 16px;
	width: 100%;
	max-width: 300px;
}

.form-item textarea{
	line-height: 40px;
	height: 300px;
	box-sizing: border-box;
	font-size: 16px;
	width: 100%;
	max-width: 450px;
}




.button, a.button, a:link.button, a:visited.button, a:active.button {
	border: none;
	background: #112f26;
	color: rgba(255,255,255,.85);
	line-height: 40px;
	height: 40px;
	display: inline-block;
	padding: 0px 15px;
	border-radius: 6px;
	text-decoration: none;
	box-shadow: 0px 3px 10px rgba(0,0,0,.7);
	font-size: 18px;
}

.special-elite-regular {
  font-family: "Special Elite", system-ui;
  font-weight: 400;
  font-style: normal;
}

header{
    /* background-image: url("../../images/pngtree-elevated-world-topo-map-with-contour-background-flow-topography-map-topographic-png-image_12886155-Firefly-Upscaler-4x-scale-top.jpg"); */
	__background-image: url("../../images/topo-map.png");
    __background-position: center left;
    __background-size: cover;
   
   
   height: 100px;
}

nav{
   align-items: center;
   display: flex;
   gap: 50px;
   justify-content: center;
   height: 100%;
   position: relative;
}

header nav ul{
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	display: flex;
	gap: 20px;
	box-sizing: border-box;
}

nav ul a{
   border-bottom: 5px solid transparent;
   display: inline-block;
   font-size: 24px;
   font-weight: bold;
   padding-bottom: 5px;
   text-decoration: none;
   
}
nav ul a:hover, nav ul li.current-menu-item a{
   border-bottom: 5px solid #387b59;
}

a, a:link, a:active, a:visited{
   color: #1d445d;
   color: #387b59;
   font-weight: 400;
}

footer{
   background-color: #112f26;
   background-image: url("../../images/pngtree-elevated-world-topo-map-with-contour-background-flow-topography-map-topographic-png-image_12886155-Firefly-Upscaler-4x-scale_transparent.png");
   background-position: center center;
   background-size: cover;
   box-sizing: border-box;
   color: rgba(171,192,73, .75);
   padding-bottom: 5vw;
   font-size: 24px;
}

footer .logo{
	width: 200px;
	height: auto;
}


footer ul{
   list-style: none;
   margin: 0px;
   padding: 0px;
}

footer ul > li{
   margin-bottom: 15px;
}

footer ul a{
   text-decoration: none;
}

footer ul a:hover{
   text-decoration: underline;
}

footer h5{
	margin: 0px 0px 30px;
	font-weight: normal;
	font-size: 28px;
	border-bottom: 1px solid rgba(171,192,73,.25);
	padding: 0px 0px 5px;
}



#logo{
   display: inline-block;
   position: absolute;
   margin: 10px 10px 10px 30px;
   top: 0px;
   left: 0px;
   z-index: 100;
}
#logo img{
    height: 80px;
    width: auto;
}

section.hero > img{
   display: block;
   width: 100%;
   object-fit: cover;
   height: 80vh;
}

.flex{
   display: flex;
}

footer .flex{
	justify-content: center;
}

#featured-articles{
   background: #fff;
   box-sizing: border-box;
   font-size: 13px;
   color: #666;
   position: relative;
   margin-top: -200px;
   min-height: 400px;
}

#featured-articles > div{
   background: #fff;
}

#featured-a{
	background: transparent !important;
   padding: 00px 30px 0px 0px;
   position: absolute;
   bottom: 100%;
   right: 0px;
   width: 50vw;
   text-align: right;
}

#featured-a h2{
   font-size: 5vw;
   font-weight: bold;
   margin: 0px;
   padding: 0px;
   line-height: 4.8vw;
   
   font-family: "Special Elite", system-ui;
   font-weight: 400;
   font-style: normal;
   color: #fff;
   text-shadow: 0px 0px 10px rgba(0,0,0,1);
   
}

#featured-b{
   bottom: 0px;
   box-sizing: border-box;
   /* height: 120%; */
   padding: 15px;
   position: absolute;
   right: 100%;
   width: 25vw;
}

.image-placeholder{
   display: inline-block;
   background: #ccc;
   width: 100%;
   aspect-ratio: 3 / 4;
}

img.three-quarter{
	display: inline-block;
    width: 100%;
    aspect-ratio: 3 / 4;
	object-fit: fill;
}
img.three-two{
	display: inline-block;
    width: 100%;
    aspect-ratio: 3 / 2;
	object-fit: fill;
}


img.img-border{
	border-radius: 3px;
	box-shadow: 0px 5px 30px rgba(0,0,0,.5);
}

img.img-border-sm{
	border-radius: 3px;
	box-shadow: 0px 5px 10px rgba(0,0,0,.5);
}


.image-placeholder-32{
   aspect-ratio: 3 / 2;
   background: #ccc;
   display: block;
   width: 100%;
}

img.promo-32{
	aspect-ratio: 3 / 2;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 3px;
	
}

#experience a img.promo-32{
	/* transform: scale(.95); */
	box-shadow: 0px 5px 15px rgba(0,0,0,.35);
	
}

/*
	transform-origin: center center;
	transition: box-shadow .08s linear 0s, transform .08s linear 0s;

#experience a:hover img.promo-32{
	transform: scale(1);
	box-shadow: 0px 10px 30px rgba(0,0,0,.65);
	transition: box-shadow .08s linear 0s, transform .08s linear 0s;
}
*/


#experience a{
	position: relative;
}

#experience .flex{
	margin-top: 15px;
	padding-bottom: 60px;
}

#experience a h5{
	margin: 10px 0px 0px 0px;
	font-size: 18px;
}


h4{
	font-size: 16px;
	color: #333;
	margin: 5px 0px;
}

h4.bar{
   font-style: italic;
   font-weight: normal;
   display: block;
   position: relative;
}
h4.bar > span{
   font-size: 20px;
   background: #fff;
   display: inline-block;
   padding-right: 15px;
   position: relative;
   z-index: 100;
}
h4.bar:after{
   content: "";
   display: block;
   width: 100%;
   height: 2px;
   background: #666;
   position: absolute;
   top: calc(50% - 1px);

}


.centered > div{
   box-sizing: border-box;
   padding: 20px 5vw 0px 5vw;
   width: 100%;
}

.centered .flex, #featured-more .flex{
   gap: 60px;
   position: relative;
   z-index: 100;
}

#experience .flex > div, #featured-more .flex > div{
   /* flex-grow: 1; */
   flex: 1 1 0;
}

#featured-more div strong{
   display: block;
   font-size: 24px;
   margin-bottom: 10px;
}

#featured-more{
   padding: 3.5vw 5vw 0 7.5vw;
   position: relative;
}

#cream{
   background: #f8f7f3;
   position: absolute;
   right: 0px;
   top: 4vw;
   width: 95%;
   height: 10vw;
}

#featured-trip h3{
   font-family: "Special Elite", system-ui;
   font-weight: 400;
   font-style: normal;
   color: #222;
   font-size: 4vw;
   line-height: 4.7vw;
   padding: 5vw 2vw 2vw 5vw;
   margin: 0px;
}




.five{ width: 5%; }
.thirty{ width: 30%; }
.fourtyfive{ width: 45%; }
.fifty{ width: 50%; }
.fiftyfive{ width: 55%; }
.seventy{ width: 70%; }
.ninetyfive{ width: 95%; }


#copyright{
   font-size: 14px;
   text-align: center;
   letter-spacing: 0.08em;
   color: rgba(171,192,73, .5);
}



section.template-page{
	box-sizing: border-box;
	margin: 0px auto;
	max-width: 1200px;
	padding: 0px 30px 90px;
	width: 100%;
}
section.template-page h1, section.template-category h1{
    font-size: 60px;
    font-weight: bold;
    margin: 0px 0px 30px;
    padding: 0px;
    line-height: 5vw;
   
	border-bottom: 1px dotted #ddd;
   
    font-family: "Special Elite", system-ui;
    font-weight: 400;
    font-style: normal;
    color: #222;
}

section.template-page h2{
	font-size: 38px;
	font-weight: normal;
	margin: 60px 0px 15px;
}

section.template-page h3{
	font-size: 28px;
	font-weight: normal;
	margin: 30px 0px 15px;
}


section.template-page div{
	font-size: 20px;
	line-height: 30px;
}


.is-layout-flex{
	display: flex;
	gap: 60px;
}

.is-layout-flex .wp-block-column-is-layout-flow{
	flex: 1;
}

.alignright{
	float: right;
}

.alignleft{
	float: left;
}

.bsa-logo img{
	width: 20vw;
	max-width: 250px;
	height: auto;
}


img.bsa-eagle{
	display: block;
	margin: 30px auto 0px;
	width: 40%;
	height: auto;
}


hr.wp-block-separator{
	border: 0px;
	border-collapse: collapse;
	border-bottom: 1px solid #eee;
	margin: 60px 0px;
	clear: both;
}


.block-troopone-post-categories ul{
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	border-top: 1px solid #ccc;
}

.block-troopone-post-categories ul li:hover{
	background-color: rgba(200,200,200,.25);
}

.block-troopone-post-categories ul li{
	border-bottom: 1px solid #ccc;
	line-height: 36px;
	font-size: 20px;
	display: flex;
	box-sizing: border-box;
	padding: 0px 15px;
}

.block-troopone-post-categories ul li > a{
	width: calc(100% - 80px);
	text-decoration: none;
}

.block-troopone-post-categories ul li > span{
	width: 80px;
	text-align: right;
	color: #aaa;
}


section.template-category{
	min-height: 40vh;
}


p{
	margin: 0px 0px 15px;
}

#troopone-community-service-graph h2{
	margin: 0px auto 15px;
	text-align: center;
	line-height: 42px;
}

#troopone-community-service-graph .description{
	text-align: center;
	padding: 30px;
	font-size: 14px;
	line-height: 22px;
	color: #666;
}

#thermometer{
	width: 16vw;
	height: 30vw;
	max-height: 350px;
	border: 10px solid #fff;
	border-radius: 3vw;
	box-shadow: 0px 10px 15px rgba(0,0,0,.25);
	position: relative;
	overflow: hidden;
	margin: auto;
}

#the-red{
	background-color: #f9283d;
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	z-index: 20;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

#the-red > span{
	font-size: 2vw;
	color: rgba(0,0,0,.25);
	font-weight: bold;
}


#spacers{
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 10;
	background: #efefef;
}

#spacers > span{
	display: block;
	border-bottom: 1px solid #ddd;
	width: 100%;
	text-align: center;
	position: absolute;
	font-weight: bold;
	letter-spacing: 0.08em;
}


#l25{ bottom: 25%; }

#l50{ bottom: 50%; }

#l75{ bottom: 75%; }



section.post-meta{
	border-top: 1px solid #eee;
}

section.post-meta .flex > div{
	flex: 1;
}

section.centered.post-meta > div{
	padding-top: 10px;
	padding-bottom: 20px;
}


.block-troopone-post-categories{
	margin-bottom: 60px;
}

.block-troopone-post-categories h5{
	margin: 0px;
	font-weight: normal;
	margin-bottom: 10px;
	font-size: 20px;
}

div.alignleft{
	text-align: left;
}

div.alignright{
	text-align: right;
}



ul.block-community-service-logos{
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

ul.block-community-service-logos > li{
	background: #fff;
	border-radius: 8px;
	box-sizing: border-box;
	padding: 30px;
	width: calc(30% - 14px);
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0px 0px 10px rgba(0,0,0,.1);
}

ul.block-community-service-logos > li img{
	width: 100%;
	height: auto;
}


.snippit-archive-post{
	/* flex: 1 0 calc(15% - 10px); */
	width: 250px;
}

.snippit-archive-post a{
	display: block;
	width: 100%;
	position: relative;
	margin-bottom: 15px;
}

.snippit-archive-post a > img{
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 3px;
	box-shadow: 0px 5px 15px rgba(0,0,0,.35);
	margin-bottom: 5px;
}

.flex.category-list{
	flex-wrap: wrap;
	gap: 30px;
}

#category-columns{
	align-items: flex-start;
	margin-bottom: 60px;
}


#categories-template .block-troopone-post-categories{
	min-width: 350px;
}

#categories-template .is-layout-flex .wp-block-column-is-layout-flow{
	flex: unset;
}

#categories-template .is-layout-flex{
	flex-wrap: nowrap;
}

#categories-template-posts{
	width: calc(100% - 410px);
}


body .happyfiles-gallery>ul.crop li{
	height: unset !important;
}

body .happyfiles-gallery>ul.crop li figure img{
	height: unset !important;
	aspect-ratio: 1 / 1;
}


@media screen and ( max-width: 1000px ){
	
	header{
		height: 80px;
	}
	
	header nav a{
		font-size: 18px;
	}
	
	footer{
		font-size: 16px;
	}
	
	footer time{
		display: block;
	}
	
	footer.centered .flex{
		gap: 30px;
	}
	
	footer.centered .flex > div{
		flex: 1;
	}
	
	
	footer .logo{
		width: 80px;
		display: block;
		margin: auto;
	}
	
	
	footer h5{
		font-size: 20px;
		white-space: nowrap;
	}
	
	#logo{
		margin: 16px 10px 10px 20px;
	}
	
	#logo img{
		height: 40px;
	}
	
	#experience .flex{
		gap: 30px;
	}
	
	
	.snippit-archive-post{
		flex: 1 0 calc(33% - 15px);
	}
	
	
	
}


@media screen and ( max-width: 767px ){
	
	footer.centered .flex{
		gap: 0px;
		flex-wrap: wrap;
	}
	
	footer.centered .flex > div{
		width: 100%;
		flex: none;
		text-align: center;
		margin-top: 30px;
	}
	
	footer .logo{
		width: 80px;
		display: block;
		margin: auto;
	}
	
	header nav{
		display: none;
	}
	
	#featured-more, #featured-b{
		display: none;
	}
	
	#experience .flex > div{
		width: calc(50% - 15px);
	}
	
	#experience{
		padding-bottom: 60px;
	}
	
	#experience .flex{
		flex-wrap: wrap;
	}
	
	#experience h5{
		margin: 5px 0px 0px;
		font-size: 16px;
	}
	
	
	#logo img{
		height: 60px;
	}
	
	header{
		height: 80px;
	}
	
	#featured-trip h3{
		padding: 0px;
		margin: 0px 0px 10px;
		font-size: 24px;
		line-height: 28px;
	}
	
	.centered .flex, #featured-more .flex{
		gap: 30px;
	}
	
	p{
		font-size: 18px;
		line-height: 24px;
	}
	
	#featured-trip{
		padding-bottom: 30px;
	}
	
	
	
}



@media screen and ( max-width: 600px ){
	#copyright span{
		display: block;
		clear: both;
		overflow: hidden;
		width: 0px;
		height: 0px;
	}
	
	footer h5{
		margin: 0px 25% 15px;
		padding-bottom: 5px;
	}
	
	ul.block-community-service-logos > li{
		padding: 10px;
		width: calc(50% - 10px);
	}
	
	section.template-page h2{
		font-size: 30px;
		line-height: 38px;
	}
	
	
	#thermometer{
		width: 40vw;
		height: 35vh;
	}
	
	#the-red > span{
		font-size: 5vw;
	}
	
	#experience .flex{
		flex-wrap: wrap;
		padding-bottom: 0px;
	}
	
	#experience .flex > div{
		flex: unset;
	}
	
}

