/* CSS Variables */
:root {
  /* Base font size */
  font-size: 16px;
  
  /* Colors */
  --main-color: #2b3a2c;
  --secondary-color: #e2e3e9;
  --third-color: #CFCEB2;
  --fourth-color: #EBE9E3;
  --white-color: #fff;
  
  /* Typography */
  --font-main: 'Polymath', 'Arial', sans-serif;
  --font-secondary: 'ITC Garamond Std Book Narrow', sans-serif; 

  /* Layout */
  --container-max-width: 82.5em; /* 1320px */
  --container-padding: 1.5em; /* 80px */
  
  /* Border Radius */
  --radius-sm: 0.875em; /* 14px */
  --radius-md: 1.25em; /* 20px */
  --radius-lg: 3.125em; /* 50px */
  --radius-full: 50%;

  --logo-max-width: 14em;
}

@media all and (max-width: 33em) {
  :root {
    --logo-max-width: 9em;
  }
}

/* Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: var(--font-main);
  font-weight: 400;
  color: var(--main-color);
  line-height: 1.6;
  overflow-x: hidden;
}


.absolute { position: absolute;}
.relative { position: relative; }

.large--show {display:block !important}
.large--hide {display:none !important}
.flex {display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;}
.flex-wrap {-webkit-box-wrap: wrap; -moz-box-wrap: wrap; -ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap;}
.flex-1 {-webkit-box-flex: 1; -moz-box-flex: 1; -ms-flex: 1; -webkit-flex: 1; flex: 1;}
.flex-1-0 {-webkit-box-flex: 1 0; -moz-box-flex: 1 0; -ms-flex: 1 0; -webkit-flex: 1 0; flex: 1 0;}
.direction-row {-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;}
.direction-column {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}
.row-reverse {-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}
.column-reverse {-webkit-box-orient: vertical;-webkit-box-direction: reverse;-ms-flex-direction: column-reverse;flex-direction: column-reverse;}
.justify-content-start {-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;}
.justify-content-center {-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;}
.justify-content-end {-webkit-box-pack: end;-ms-flex-pack: end;justify-content: flex-end;}
.justify-content-around {-ms-flex-pack: distribute;justify-content: space-around;}
.justify-content-evenly {-ms-flex-pack: space-evenly;justify-content: space-evenly;}
.justify-content-between {-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
.align-items-start {-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
.align-items-center {-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
.align-items-end {-webkit-box-align: end;-ms-flex-align: end;align-items: flex-end;}
.align-content-start {-webkit-align-content: flex-start; align-content: flex-start;}
.align-content-center {-webkit-align-content: center; align-content: center;}
.align-content-end {-webkit-align-content: flex-end; align-content: flex-end;}

@media all and (min-width: 33.001em) and (max-width: 66em) {
  .medium--show{display:block !important}
  .medium--hide{display:none !important}
  .medium--flex {display: -webkit-box !important; display: -moz-box !important; display: -ms-flexbox !important; display: -webkit-flex !important; display: flex !important;}
  .medium--flex-wrap {-ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap;}
  .medium--flex-1 {-webkit-box-flex: 1; -moz-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1;}
  .medium--flex-1-0 {-webkit-box-flex: 1 0; -moz-box-flex: 1 0; -ms-flex: 1 0; -webkit-flex: 1 0; flex: 1 0;}
  .medium--direction-row {-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;}
  .medium--direction-column {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}
  .medium--row-reverse {-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}
  .medium--column-reverse {-webkit-box-orient: vertical;-webkit-box-direction: reverse;-ms-flex-direction: column-reverse;flex-direction: column-reverse;}
  .medium--justify-content-start {-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;}
  .medium--justify-content-center {-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;}
  .medium--justify-content-end {-webkit-box-pack: end;-ms-flex-pack: end;justify-content: flex-end;}
  .medium--justify-content-around {-ms-flex-pack: distribute;justify-content: space-around;}
  .medium--justify-content-evenly {-ms-flex-pack: space-evenly;justify-content: space-evenly;}
  .medium--justify-content-between {-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
  .medium--align-items-start {-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
  .medium--align-items-center {-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
  .medium--align-items-end {-webkit-box-align: end;-ms-flex-align: end;align-items: flex-end;}
  .medium--align-content-start {-webkit-align-content: flex-start; align-content: flex-start;}
  .medium--align-content-center {-webkit-align-content: center; align-content: center;}
  .medium--align-content-end {-webkit-align-content: flex-end; align-content: flex-end;}
}

@media all and (max-width: 33em) {
  .small--show{display:block !important}
  .small--hide{display:none !important}
  .small--flex {display: -webkit-box !important; display: -moz-box !important; display: -ms-flexbox !important; display: -webkit-flex !important; display: flex !important;}
  .small--flex-wrap {-ms-flex-wrap: wrap; -webkit-flex-wrap: wrap; flex-wrap: wrap;}
  .small--flex-1 {-webkit-box-flex: 1; -moz-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1;}
  .small--flex-1-0 {-webkit-box-flex: 1 0; -moz-box-flex: 1 0; -ms-flex: 1 0; -webkit-flex: 1 0; flex: 1 0;}
  .small--direction-row {-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;}
  .small--direction-column {-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}
  .small--row-reverse {-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}
  .small--column-reverse {-webkit-box-orient: vertical;-webkit-box-direction: reverse;-ms-flex-direction: column-reverse;flex-direction: column-reverse;}
  .small--justify-content-start {-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;}
  .small--justify-content-center {-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;}
  .small--justify-content-end {-webkit-box-pack: end;-ms-flex-pack: end;justify-content: flex-end;}
  .small--justify-content-around {-ms-flex-pack: distribute;justify-content: space-around;}
  .small--justify-content-evenly {-ms-flex-pack: space-evenly;justify-content: space-evenly;}
  .small--justify-content-between {-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
  .small--align-items-start {-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
  .small--align-items-center {-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
  .small--align-items-end {-webkit-box-align: end;-ms-flex-align: end;align-items: flex-end;}
  .small--align-content-start {-webkit-align-content: flex-start; align-content: flex-start;}
  .small--align-content-center {-webkit-align-content: center; align-content: center;}
  .small--align-content-end {-webkit-align-content: flex-end; align-content: flex-end;}
}

.bg-main { background-color: var(--main-color); }
.bg-secondary { background-color: var(--secondary-color); }
.bg-third { background-color: var(--third-color); }
.bg-white { background-color: var(--white-color); }
.text-main { color: var(--main-color); }
.text-secondary { color: var(--secondary-color); }
.text-third { color: var(--third-color); }
.text-white { color: var(--white-color); }

.container { max-width: var(--container-max-width); padding-left: var(--container-padding); padding-right: var(--container-padding); margin: auto; -moz-box-sizing: initial; -webkit-box-sizing: initial; box-sizing: initial; }

.btn {
  text-align: center;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.25rem;
  letter-spacing: 0.0625rem;
  text-transform: uppercase;
  border-radius: var(--radius-lg);
  padding: .75em 1.5em;
  text-decoration: none;
  display: inline-block;
  transition: all .5s;
}
.btn:hover { opacity: .8; }
.btn.v1 { color: var(--main-color); background: var(--third-color); }


h1 { font-family: var(--font-secondary); font-size: 6rem; line-height: 80%; font-weight: 700;}
h2 { font-family: var(--font-secondary); font-size: 4rem; font-weight: 700; line-height: 90%; }
h3 { font-family: var(--font-secondary); font-size: 3rem; font-weight: 700; line-height: 90%; }
h4 { font-family: var(--font-secondary); font-size: 1.1875rem; font-weight: 700; line-height: 110%;}
.h1 { font-family: var(--font-secondary); font-size: 6rem; line-height: 80%; font-weight: 700;}
.h2 { font-family: var(--font-secondary); font-size: 4rem; font-weight: 700; line-height: 90%; }
.h3 { font-family: var(--font-secondary); font-size: 3rem; font-weight: 700; line-height: 90%; }
.h4 { font-family: var(--font-secondary); font-size: 1.1875rem; font-weight: 700; line-height: 110%;}
@media all and (max-width: 33em) {
  h1 { font-family: var(--font-secondary); font-size: 5rem; line-height: 80%; font-weight: 700;}
  h2 { font-family: var(--font-secondary); font-size: 2rem; font-weight: 700; line-height: 90%; }
  h3 { font-family: var(--font-secondary); font-size: 2rem; font-weight: 700; line-height: 90%; }
  h4 { font-family: var(--font-secondary); font-size: 1rem; font-weight: 700; line-height: 110%;}
  .h1 { font-family: var(--font-secondary); font-size: 5rem; line-height: 80%; font-weight: 700;}
  .h2 { font-family: var(--font-secondary); font-size: 3rem; font-weight: 700; line-height: 90%; }
  .h3 { font-family: var(--font-secondary); font-size: 2rem; font-weight: 700; line-height: 90%; }
  .h4 { font-family: var(--font-secondary); font-size: 1rem; font-weight: 700; line-height: 110%;}
}
img { width: 100%; }


.image-text {
  background-color: var(--bg-color);
}
.image-text .image-content { 
  width: var(--width-image);
}
.image-text .image-content img {
  width: 100%;
  height: 100%;
}
.image-text .text-content { 
  width: var(--width-text); 
  color: var(--text-color);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  padding-top: var(--text-padding);
  padding-bottom: var(--text-padding);
}

.image-text.container-right .text-content {
  padding-left: var(--text-padding);
  padding-right: var(--container-padding);
}
.image-text.container-full .text-content {
  padding-left: var(--text-padding);
  padding-right: var(--container-padding);
}
.image-text.container-full .image-content {
  padding-right: var(--container-padding);
}

.image-text.capped > div:not(.heading) { max-width: calc(var(--container-max-width) + 30em); margin: 0 auto; }

@media all and (max-width: 33em) {
  .image-text.container-full .image-content {
    padding-left: var(--container-padding);
  }
}




