Wildflowers and ancient woodland indicator plantsWildflowers and ancient woodland indicator plantsWildflowers and ancient woodland indicator plants/* CSS Document */

html {
    box-sizing: border-box;
}

*, *::before, *::after {
  box-sizing: inherit;
}

.BGImg {
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    -webkit-background-size: cover;
    moz-background-size: cover;
    o-background-size: cover;
    background-repeat: no-repeat;
}

.ImgBirds {
    background-position: bottom center;
    background-image: url("../images/BackgroundBirds.JPG");
}

.ImgConservation {
    background-position: bottom center;
    background-image: url("../images/BackgroundConservation.jpg");
}

.ImgMammals {
    background-position: top center;
    background-image: url("../images/BackgroundMammals.JPG");
}

.ImgTrees, .ImgVeteran {
    background-position: top center;
    background-image: url("../images/BackgroundVeteran.jpg");
}

.ImgWildflowers, .ImgWildflower {
    background-position: center;
    background-image: url("../images/BackgroundWildflower.jpg");
}

h1 {
	font-weight: 100;
	font-size: 3em;
	margin: 1rem 0;
}

h2 {
	font-weight: 100;
	font-size: 2em;
	margin: 0.5rem 0;
}
h3 {
	font-weight: 100;
	font-size: 1.5em;
	margin: 0.25rem 0;
}
img {
	display: block;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.ImgCaption {
	text-align: center;
	margin: 0;
	padding: 0;
	font-style: italic;
}

p {
  margin: 0.83em 0;
}

a {
  /*color: #B4DE5A;*/
  color: orange;
}

li {
	/* list-style-type: none; */
}

input, textarea {
	padding: 4px;
	font-size: 1em;
	display: inline-block;
	/*border: none;*/
}

input[type='submit'] {
	background-color: slategray;
	color: white;
	border: 2px solid darkslategray;
	border-radius: 3px;
	padding: 4px 8px;
	text-transform: uppercase;
	/*font-weight: bold;*/
	margin-top: 0;
}

input[type='submit']:hover {
	cursor: pointer;
	background-color: darkslategray;
}

input[type='text'], textarea {
	/*display: inline-block;*/
	width: 100%;
}

.spacer {
	height: 8em;
}

.BrownLight {
	background-color: rgba(250, 249, 243, 0.87);
	color: rgb(100, 75, 23);
}

.BrownDark {
	background-color: rgba(100, 75, 23, 0.77);
	color: rgb(250, 249, 243);
}

.GreenLight {
	background-color: rgba(250, 249, 243, 0.87);
	color: rgb(10, 40, 10);
}

.GreenDark {
	background-color: rgba(10, 40, 10, 0.77);
	color: rgb(250, 249, 243);
}

.GreenDark a {
	color: #B4DE5A; /* light green */
}

.GreenLight a {
	color: rgb(40, 160, 40); /* darker green */
}

.DarkAlt {
	background-color: rgba(62, 70, 11, 0.77);
	color: rgb(250, 249, 243);
}

.Explainer {
	padding: 2em;
	font-size: 1.5em;
}

.Quote {
	font-style: italic;
	margin-left: 2em;
}

.hero {
    padding: 3em 0 1em;
	text-align: center;
}

.hero h1 {
	text-shadow: 0px 0px 10px rgba(0, 0, 0,.05);
}

.flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	/* align-items: start; */
	gap: 20px;
    padding: 10px;
}

.flex article {
    /*margin: 10px;*/
}

/* Not sure this is needed - because it's in img (above) */
.flex article img {
	width: 100%;
}

.PicFour, .PicTwo {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	/* align-items: start; */
}

.PicFour h3, .PicTwo h3 {
	text-align: center;
	margin: 0;
}

.CommonName {
	text-transform: uppercase;
}

.LatinName {
	font-style: italic;
}

body {
	font-family: 'Roboto', sans-serif;
	padding: 0;
	position: relative;
}

header {
	position: fixed;
	top: 0;
	z-index: 1;
	margin: 0;
	padding: 0;
}

footer {
	margin: 0.6em 0 0;
	text-align: center;
}

footer p {
	margin-top: 0;
	margin-bottom: 0;
}

footer a {
	text-decoration: none;
}

body.WidthMost {
	max-width: 90%;
	margin: 0em auto 0;
}

header.WidthMost, footer.WidthMost {
  max-width: 90%;
  width: 90%;
}

section {
	padding: 0;
}

article {
}

nav {
	font-size: .85em;
    /*background: linear-gradient(0deg, grey, white);*/
}
nav > ul {
	list-style-type: none;
	padding-inline-start: 0;
	margin-block-start: 0;
	margin-block-end: 0;
	display: flex;
	flex: 0 0 auto;
	justify-content: flex-end;
}
nav > ul > li.Shrink{
	flex: 0 1 auto;
	width: 3.5em;
}
nav > ul > li > a {
	text-decoration: none;
	transition: color 1s;
}
nav > ul > li > a:hover {
	outline: none;
	transition: color 1s;
}
nav.Brown > ul > li > a, nav.Brown > ul > li > a.SiteNavMe:hover {
	background-color: rgba(100, 75, 23, 0.87);
	color: rgb(250, 249, 243);
}

nav.Brown > ul > li > a:hover, nav.Brown > ul > li > a.SiteNavMe {
	background-color: rgba(250, 249, 243, 0.87);
	color: rgb(100, 75, 23);
}

nav.Green > ul > li > a, nav.Green > ul > li > a.SiteNavMe:hover {
	background-color: rgba(10, 40, 10, 0.87);
	color: rgb(250, 249, 243);
}

nav.Green > ul > li > a:hover, nav.Green > ul > li > a.SiteNavMe {
	background-color: rgba(250, 249, 243, 0.87);
	color: rgb(10, 40, 10);
}

/* Style all font awesome icons */
footer .fa-solid, footer .fa-brands {
  padding: 0.5em;
  width: 2.5em;
  text-align: center;
  text-decoration: none;
}

/* Add a hover effect if you want */
footer .fa-solid:hover, footer .fa-brands:hover {
  opacity: 0.7;
}

/* Set a specific color for each brand */

footer .fa-instagram, footer a.fa-instagram {
  /*color: transparent;
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  background: -webkit-radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  background-clip: text;
  -webkit-background-clip: text;*/
  color: white;
}

footer .fa-facebook, footer a.fa-facebook {
  background: #3B5998;
  color: white;
}

footer .fa-twitter, footer a.fa-twitter {
  background: #55ACEE;
  color: white;
}

footer .fa-envelope, footer a.fa-envelope {
  /*background: #55ACEE;*/
  color: white;
	width: 56px;
}

.VideoSec {
	margin: 2em 0 0;
    padding: 0;
	text-align: center;
	background-color: rgba(10, 40, 10, 0.75);
}

.VideoFrameWide {
    margin: 0;
    width: 100%;
    padding-top: 56.25%; /* 16:9 */
    ; position: relative;
    overflow: hidden;
}

.VideoInFrame {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.lightbox {
  position:fixed;
  background:rgba(black,0.5);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter: blur(10px);
  height:100%;
  width:100%;
  left:0;
  top:0;
  transform:translateY(-100%);
  opacity:0;
  transition:opacity 0.5s ease-in-out;
  &:has(div:target) {
    transform:translateY(0%);
    opacity:1;
  }
  a.nav {
    text-decoration:none;
    color:white;
    font-size:40px;
    text-shadow:0 2px 2px rgba(black,0.8);
    opacity:0.5;
    font-weight:200;
    &:hover {
      opacity:1;
    }
  }
  .target {
    position:absolute;
    height:100%;
    width:100%;
    display:flex;
    transform:scale(0);
    align-items:center;
    justify-content:space-between;
    *:first-child,*:last-child {
      flex:0 0 100px;
      text-align:center;
      @media all and (max-width:600px){
        flex:0 0 50px;
      }
    }
    .content {
      transform:scale(0.9);
      opacity:0;
      flex:1 1 auto;
      align-self: center;
      max-height:100%;
      min-height:0;
      // max-width:calc(100% - 200px);
      min-width:0;
      border-radius:5px;
      overflow:hidden;
      box-shadow:0 0 0 3px white, 0 5px 8px 3px rgba(black, 0.6);
      transition:transform 0.25s ease-in-out,opacity 0.25s ease-in-out;
      img {
        min-width:100%;
        min-height:100%;
        max-width:100%;
        max-height:calc(100vh - 40px);
        display:block;
        margin:0;
      }
    }
    &:target {
      transform:scale(1);
      .content {
        transform:scale(1);
        opacity:1;
      }
    }
  }
  .close {
    position:absolute;
    right:10px;
    top:10px;
  }
}

/* Style all font awesome icons */
.fa {
  padding: 0.5em;
  font-size: 30px;
  width: 2.5em;
  text-align: center;
  text-decoration: none;
}

/* Add a hover effect if you want */
.fa:hover {
  opacity: 0.7;
}

/* Set a specific color for each brand */

/*.fa-facebook {
  background: #3B5998;
  color: white;
}

.fa-twitter {
  background: #55ACEE;
  color: white;
}

.fa-envelope {
  background: #55ACEE;
  color: white;
	width: 56px;
}*/

/* LARGE - Computer, iPad, etc */
@media (min-width: 701px) {
	html {
		font-size: 18px;
	}
	.hero h1 {
		font-size: 5em;
	}
	nav > ul > li > a {
		letter-spacing: .15em;
		padding-left: .15em;
	}
	.flex article {
		flex: 45%; /* Two columns per row */
	}
	.PicFour article {
		flex: 25%; /* Four columns per row */
	}
	.PicTwo article {
		flex: 50%; /* Four columns per row */
	}
	#toggle:not(:checked) + label img:hover {
		transform: scale(1.03);
	}
	.BrownLight p {
		font-size: 1.1em;
	}
	.LayoutSmall { display: none; }
}

/* SMALL - Phone */
@media (max-width: 700px) {
	ul {
		/*list-style-type: none;*/
		list-style-position: inside;
		padding-left: 0.5em;
		font-size: 0.8em;
	}
	.flex article {
		flex: 90%; /* One column per row */
	}
	.PicFour, .PicTwo article {
		flex: 100%; /* One column per row */
	}
	.BGImg {
		background-attachment: fixed;
	}
	.LayoutLarge { display: none; }
}

@supports not (-webkit-touch-callout: none) {
.BGImg {
    background-attachment: fixed;
}
}

@supports (-webkit-touch-callout: none) {
.BGImg {
    background-attachment: scroll;
}
}

#toggle:checked + label article {
	flex: 100%; /* One column per row */
}