
:root {
  --navy: #060026;
  --maroon: #6b0a32;
  --yellow: #fcffc0;
  --green: #d6ffbb;
  --indigo: #3d30bf;
  --white: #ffffff;
  --ink: #060026;
}

* { box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  font-size: 12px;  
}

body {
  font-family: "joanna-nova", serif;
  font-weight: 200;
  font-style: normal;
  color: var(--ink);
  background: url('images/backgroundtile_72px.svg');
  min-height: 100%;
}

header, .content, .site-footer { margin: auto; max-width: 100rem; position: relative; }
.content { background: #fff; }


a { color: inherit; text-decoration: none; }

/* footer */

.site-footer {
  position: fixed;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  min-height: 1em;
  width: 100%;
  display: flex;
  background: var(--navy);
  justify-content: space-between;
  align-items: center;
  color: var(--white);
  font-style: italic;
  z-index: 50;
}
.site-footer span {
  padding: 1.4rem;
  font-size: 1.66rem;

}

.wave {
  height: 3rem;
  background-image: url("images/1280_homepagebottomwave.svg");
  z-index: 2;
  background-repeat: repeat-x;
  background-size: 100rem;
}

.wave-footer {
  position: absolute;
  bottom: 0;
  width: 100%;
}

.site-footer .wave-footer { top: -1.5rem; }


/* header */

.wave-header {
  height: 1.5rem;
  position: absolute;
  top: -1px;
  width: 100%;
  transform: scaleY(-1);
}

.nav-strip {
  background: var(--navy);
  display: flex;
  padding-left: 1.8rem;
  padding-right: 1.8rem;
  max-height: 4rem;
}

.nav-links {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  justify-content: space-between;
  flex-grow: 1;
}


.nav-links li {
  display: flex;
  flex-basis: 20%;
}

#donate { flex-direction: row-reverse; }
#contact { justify-content: center; }

.nav-links a {
  font-style: italic;
  font-size: 2rem;
  color: var(--white);
  margin-top: .5rem;
  margin-bottom: 1rem;
}

.nav-links a:hover { color: var(--green); }
.nav-links a.current { color: var(--yellow); font-family: "warbler-text"; margin-top: 0rem;}

.logo-badge {
  display: block;
  background: var(--maroon);
  color: var(--yellow);
  border-radius: 0 0 1.5rem 1.5rem;
  z-index: 5;
  padding-bottom: .5rem;
  margin-top: 0;
  justify-content: center;
  height: 9rem;
  text-align: center;

}
.logo-badge a { display: block; margin: 1rem;}
.logo-badge img { transform: skew(14deg); height: 100%; }

.hero-banner { height: 23rem; }


/* home page */


.hero-banner.hero-home {
  background: url('images/1280_homepage_raw.JPG');
  background-size: cover;
  position: relative;
  background-position: top left;
  height: 90vh;
  background-repeat: no-repeat;
}

.pull-quote {
  font-style: italic;
  font-size: 1.7rem;
  line-height: 1.5;
  color: var(--navy);
  text-align: right;
  font-family: "warbler-text";
}

.home-quote-block span { display: block; }
.home-quote-block span:nth-child(2) { margin-right: 2rem; }
.home-quote-block span:nth-child(3) { margin-right: 4rem; }

.home-quote-block {
  position: absolute;
  bottom: 25vh;
  right: 10rem;
  margin-top: 1rem;
}

/* projects page */
.hero-banner.hero-projects {
    height: 23rem;
  background: url('images/1280_topbarphoto_projects.jpeg'); 
  background-size: auto 100%;
  background-repeat: no-repeat;
  position: relative; 
}

.pull-quote .lead-in { color: var(--indigo); font-style: normal; }

.content-section {
  padding-top: 2rem;
}

.content-section h2 {
  font-family: "warbler-text";
  font-weight: 400;
  color: var(--indigo);
  font-size: 2.2rem;
  margin: 0;
  margin-top: -1rem;
}

.content-section h3 {
  font-family: "warbler-text";
  font-style: italic;
  color: var(--maroon);
  font-size: 1.4rem;
  margin-bottom: 1rem;
  margin-top: -.5rem;
  font-weight: 400;
}

.content-section p {
  font-family: "warbler-text";
  font-size: 1.5rem;
  line-height: 2rem;
  color: var(--ink);
}

.content-columns {
  padding-left: 2rem;
  padding-right: 2rem;
  display: flex;
  gap: 5rem;
  align-items: flex-start;
  padding-bottom: 10rem;
}

.content-columns .text-col { flex: 2; }
.content-columns .media-col { flex: 1; text-align: center; }
.content-columns .media-col img {
  max-width: 100%;
}

.projects-layout, .contact-layout {
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 100%;
}


.projects-sidebar-container, #logo-badge, .contact-container { 
  display: block;
  position: absolute;
  width: 18rem;
  right: 42rem;

}


.projects-sidebar-container, .contact-container {
  align-items: center;
  bottom: 0;
}

.projects-sidebar, .title-tab, .logo-badge {
  transform: skew(-14deg);
  width: 100%;

}

.projects-sidebar {
  z-index: 5;
  position: absolute;
  bottom: 0;
  right: 14%;
  background: var(--maroon);
  text-align: center;
  border-radius: 1.5rem 1.5rem 0 0;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: .5rem;
}



.title-tab {
  position: absolute;
  bottom: 13.5rem;

  right: 7%;
  font-family: 'warbler-text';
  z-index: 1;
  padding-bottom: 1rem;
  text-align: center;
  border-radius: 1.5rem;
  background: var(--white);
}

.title-tab h2 {
  transform: skew(14deg);
  font-style: italic;
  color: var(--indigo);
  font-size: 2rem;
  font-weight: 400;
  padding: 0;
  margin: 0;
}

.projects-sidebar ul {
  list-style: none;
  margin: 0;
  margin-bottom: .5rem;
  padding: .5rem;
}

.projects-sidebar li {
  transform: skew(14deg);
}

.projects-sidebar a {
  font-family: 'joanna-nova';
  font-weight: 200;
  font-style: italic;
  text-align: center;
  font-size: 1.8rem;
  line-height: 2.9rem;
  color: var(--white);
}

.projects-sidebar a.current {
  font-family: 'warbler-text';
  font-weight: 400;
  color: var(--yellow);
  font-style: italic;
}

.projects-main {
  padding-right: 3rem;
  display: flex;
  height: 100%;
  padding-left: 1rem;
  background: #fff;
  
}

.projects-main .pull-quote { font-size: 2rem; line-height: 3rem;
			     font-family: "warbler-text";
			     margin: 0;

			   }
.projects-wrapper { 
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: space-between;
  margin-top: -1rem;
}

.subnav {
  display: flex;
  justify-content: space-between;
  margin-top: 1rem;
  font-style: italic;
  font-size: 1.66rem;
  color: var(--ink);
  
}

.subnav a { color: var(--maroon); }
.subnav a.current { color: var(--indigo); font-family: "warbler-text"; margin-top: -.5rem; }
.subnav a:hover { color: var(--indigo); }

.white-spacer { width: 50%; height: 100%; position: absolute; right: 0; bottom: 0; background: #fff; z-index: 0;}

/* contact page */
.hero-banner.hero-contact {
  background: url('images/1280_topbarphoto_contact.JPG');
  background-position: center;
  position: relative;
  background-size: auto 100%;
}

#burger { display: none; }

/* smaller screens */

@media screen and (max-width: 1100px) { 
  .projects-main .pull-quote { font-size: 1.7rem; } 
  .subnav { font-size: 1.5rem; }

} 

@media screen and
(max-width: 960px) {
  .projects-sidebar-container, .contact-container {
    height: 81rem;
  }
  .hero-home span { margin: 0; }
  .hero-banner.hero-home { background-size: 960px auto; }
  .hero-home .pull-quote { bottom: 15rem; left: 5rem; }
  .projects-intro { width: 80%; background: #fff; justify-content: end; display: flex; }
  html { font-size: 8px; }
  .pull-quote { font-size: 2.5rem; }
  #about { order: 1;	 }
  #nav-spacer { order: 2; }
  #projects { order: 3; justify-content: lft; }
  #donate { order: 5; }
  #contact { order: 4; justify-content: center; }
  .subnav { font-size: 1.66rem; }
  .projects-sidebar-container, #logo-badge, .contact-container {
  left: 13rem; }
  .content-columns { flex-direction: column; }
}
@media screen and (max-width: 800px) {
  .subnav { font-size: 1.5rem; }
}


@media screen and (max-width: 640px) {
  #burger { display: block; position: absolute; top: 0; right: 0; }
  .site-footer { flex-direction: column; }
  .flex-spacer { width: 100%; height: 30rem; display: block; }
  .projects-layout { flex-direction: column; }
  .projects-intro { margin: auto;  margin-bottom: -17rem; justify-content: center; padding-top: 1rem; }
  .projects.content-section { margin-top: 17rem; }
  .content-section h2 { font-size: 1.8rem; }
  .nav-links li a { display: none; }
  .nav-links li { height: 2rem; }
  .hero-banner.hero-home { background-size: auto 110%; background-position: center; height: 100vh; position: relative;}
  .white-spacer { display: none; }
  .home-quote-block span { margin: 0 !important; display: inline; }
  .home-quote-block {
    position: absolute;
    width: 24rem;
    left: calc(50% - 12rem);
    margin: auto;
    top: 12rem;
    text-align: center;
  }
  .home-quote-block .pull-quote { font-size: 2rem; }
  .hero-banner.hero-projects, .hero-banner.hero-contact { background-size: auto 100%; height: 25rem; }
  .contact-container, #logo-badge, .projects-sidebar-container { 

					     left: 50%;  

					     margin-left: -9rem;
					   }
  .pull-quote { text-align: center; font-size: 1.7rem; line-height: 2.5rem; }
  .projects-wrapper, .projects-main { padding: 0; margin: 0; }
  .projects-main,  .projects-intro, .projects-wrapper { width: 100%; flex-grow: 1; }
  .title-tab { right: 4%; }
  .subnav { background: var(--green); width: 100%; margin-top: 1rem; padding: .5rem;}

  .site-footer .foot-np { display: none; }
  .site-footer { justify-content: center; }
}



