@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,700,900");
@import url("https://fonts.googleapis.com/css?family=Quicksand&display=swap");
@import url("https://fonts.googleapis.com/css?family=Parisienne&display=swap");
@import url("https://fonts.googleapis.com/css?family=Sacramento&display=swap");
@import url("https://fonts.googleapis.com/css?family=Cormorant+Garamond&display=swap");
@import url("https://fonts.googleapis.com/css?family=Nunito+Sans:300,400&display=swap");

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
section {
  display: block;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input,
select,
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
}

/* Basic */

@-ms-viewport {
  width: device-width;
}

body {
  -ms-overflow-style: scrollbar;
}

html {
  box-sizing: border-box;
  overflow-y: scroll;
  scroll-behavior: smooth;
}

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

body {
  background: #ffffff;
}

/* Custom Edits */

* {
  -webkit-overflow-scrolling: touch;
}

div > div.g-recaptcha > div {
  margin: auto;
}

div.header_div {
  max-width: 100vw;
  height: 70vh;
  /* overflow: hidden; */
  background-image: url("../../images/cover/mags_cover_1.jpg");
  background-size: cover;
  display: -webkit-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  justify-content: center;
  text-align: center;
}

@media screen and (max-width: 2000px) {
  div.header_div {
    background-image: url("../../images/cover/mags_cover_1_2000_w.webp");
  }
}

@media screen and (max-width: 900px) {
  h1 {
    font-size: 3em;
  }
  div.header_div {
    height: 40vh;
    background-image: url("../../images/cover/mags_cover_1_1000_w.webp");
  }
}

@media screen and (max-width: 500px) {
  div.header_div {
    height: 30vh;
    background-image: url("../../images/cover/mags_cover_1_600_w.webp");
  }
}

.scroll_icon {
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  right: 1em;
  top: 0.5em;
}

@media screen and (min-width: 980px) {
  .row > div > img {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
}

.mobile_only {
  visibility: hidden;
  margin: 0;
}

.desktop_only {
  visibility: visible;
  margin: 0;
}

@media screen and (max-width: 980px) {
  .mobile_only {
    visibility: visible;
  }

  .desktop_only {
    visibility: hidden;
    height: 0;
  }

  .fusion_embed {
    max-height: 55vh !important;
  }
}

@media screen and (min-width: 980px) {
  .mobile_only {
    height: 0;
  }
}

/* Type */

body,
input,
select,
textarea {
  color: #383838;
  /* font-family: "Source Sans Pro", Helvetica, sans-serif; */
  /* font-family: "Quicksand", sans-serif; */
  font-family: "Cormorant Garamond", sans-serif;
  /* font-family: "Parisienne", sans-serif; */
  /* font-family: "Sacramento", sans-serif; */
  /* font-family: "Nunito Sans", sans-serif; */
  font-size: 14pt;
  font-weight: 700;
  line-height: 1.75;
}

@media screen and (max-width: 1680px) {
  body,
  input,
  select,
  textarea {
    font-size: 12pt;
  }
}

@media screen and (max-width: 1280px) {
  body,
  input,
  select,
  textarea {
    font-size: 12pt;
  }
}

a {
  -moz-transition: border-bottom-color 0.2s ease, color 0.2s ease;
  -webkit-transition: border-bottom-color 0.2s ease, color 0.2s ease;
  -ms-transition: border-bottom-color 0.2s ease, color 0.2s ease;
  transition: border-bottom-color 0.2s ease, color 0.2s ease;
  text-decoration: none;
  color: #585858;
}

a:hover {
  border-bottom-color: transparent;
  /* color: rgb(176, 176, 176) !important; */
  opacity: 0.7;
  transition: 0.2s;
}

p > a {
  border-bottom: dotted 1px rgb(176, 176, 176);
}

b {
  font-weight: 900;
}

i {
  font-style: italic;
}

p {
  margin: 0 0 0 0;
  font-size: 0.8em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0px;
}

h1 {
  font-size: 4em;
  line-height: 1.3;
  margin: 0 0 1em 0;
}

h2 {
  font-size: 1.7em;
  margin: 3em 0;
}

h3 {
  font-size: 1.3em;
  color: #0e4194;
  margin-bottom: 0.5em;
}

h3 > a {
  color: #0e4194;
}

h4 {
  font-size: 1em;
  color: #23751f;
  margin-bottom: 0.75em;
  font-style: italic;
}

h5 {
  font-size: 1.5em;
}

h6 {
  font-size: 0.8em;
}

@media screen and (max-width: 736px) {
  h1 {
    font-size: 3em;
  }
  h2 {
    padding-top: 2em;
    padding-bottom: 2em;
    margin: 0;
  }

  h3 {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    margin-bottom: 0;
  }
}

sub {
  font-size: 0.8em;
  position: relative;
  top: 0.5em;
}

sup {
  font-size: 0.8em;
  position: relative;
  top: -0.5em;
}

hr {
  border: 0;
  border-bottom: solid 1px #c9c9c9;
  margin: 2em 0;
}

.align-left {
  text-align: left;
}

.align-center {
  text-align: center;
}

.align-right {
  text-align: right;
}

/* Row */

.row {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  align-items: stretch;
  margin: 0.5em;
  margin-top: 0;
}

.image_gallery {
  display: -ms-flexbox; /* IE10 */
  display: flex;
  -ms-flex-wrap: wrap; /* IE10 */
  flex-wrap: wrap;
  padding: 0 4px;
}

.image_gallery > .quarter_column {
  -ms-flex: 25%; /* IE10 */
  flex: 25%;
  max-width: 25%;
  padding: 0 0.1em;
}

.image_gallery > .half_column {
  -ms-flex: 50%; /* IE10 */
  flex: 50%;
  max-width: 50%;
  padding: 0 0.1em;
}

.image_gallery > .third_column {
  -ms-flex: 33.33%; /* IE10 */
  flex: 33.33%;
  max-width: 33.33%;
  padding: 0 0.1em;
}

.image_gallery > .quarter_column img,
.image_gallery > .half_column img,
.image_gallery > .third_column img {
  margin-top: 0.2em;
  vertical-align: middle;
  width: 100%;
}

@media screen and (max-width: 736px) {
  .image_gallery > .quarter_column {
    -ms-flex: 50%;
    flex: 50%;
    max-width: 50%;
  }
}

.enlargeable:hover {
  opacity: 70%;
  cursor: pointer;
}

.fade-in-img {
  -webkit-animation: fadeIn 0.3s; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: fadeIn 0.3s; /* Firefox < 16 */
  -ms-animation: fadeIn 0.3s; /* Internet Explorer */
  -o-animation: fadeIn 0.3s; /* Opera < 12.1 */
  animation: fadeIn 0.3s;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Firefox < 16 */
@-moz-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Icon */

.icon {
  text-decoration: none;
  border-bottom: none;
  position: relative;
}

.icon:before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-transform: none !important;
}

.icon.style {
  -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out,
    border-color 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out,
    border-color 0.2s ease-in-out;
  -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out,
    border-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out,
    border-color 0.2s ease-in-out;
  background-color: transparent;
  border: solid 1px #c9c9c9;
  border-radius: 4px;
  width: 2.65em;
  height: 2.65em;
  display: inline-block;
  text-align: center;
  line-height: 2.65em;
  color: inherit;
}

.icon.style:before {
  font-size: 1.1em;
}

.icon.style:hover {
  color: #68a1ff !important;
}

.icon.style:active {
  background-color: #2d70db;
}

ul.icons {
  cursor: default;
  list-style: none;
  padding-left: 0;
  margin-top: 2em;
}

ul.icons li {
  display: inline-block;
}

ul.icons img {
  -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out,
    border-color 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out,
    border-color 0.2s ease-in-out;
  -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out,
    border-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out,
    border-color 0.2s ease-in-out;
  background-color: transparent;
  border-radius: 4px;
  width: 3em;
  height: 3em;
}

/* List */

ol,
ul,
dl {
  margin: 0 0 2em 0;
}

ol {
  list-style: decimal;
  padding-left: 1.25em;
}

ol li {
  padding-left: 0.25em;
}

ul {
  list-style: disc;
  padding-left: 1em;
}

ul li {
  padding-left: 0.5em;
  font-size: 0.9em;
}

dl dt {
  display: block;
  font-weight: 900;
  margin: 0 0 1em 0;
}

/* Main */

#main {
  padding: 0em 0 1em 0;
}

/* Footer */

#footer {
  background-color: #f6f6f6;
}

#footer h2 {
  margin: 1em 0 0.6em 0;
  padding: 0;
}

#footer > .inner {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -moz-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}

#footer > .inner > * > :last-child {
  margin-bottom: 0;
}

#footer > .inner section:nth-child(1) {
  width: 100%;
}

#footer > .inner .copyright {
  width: 100%;
  list-style: none;
  font-size: 0.8em;
  color: rgba(88, 88, 88, 1);
  text-align: center;
}

#footer > .inner .copyright a {
  color: inherit;
}

#footer > .inner .copyright li {
  display: inline-block;
  border-left: solid 1px rgba(88, 88, 88, 0.15);
  line-height: 1;
  padding: 0 0 0 1em;
  margin: 0 0 0 1em;
}

#footer > .inner .copyright li:first-child {
  border-left: 0;
  padding-left: 0;
  margin-left: 0;
}

/* Wrapper */

#wrapper {
  -moz-transition: opacity 0.45s ease;
  -webkit-transition: opacity 0.45s ease;
  -ms-transition: opacity 0.45s ease;
  transition: opacity 0.45s ease;
  opacity: 1;
}

#wrapper > * > .inner {
  width: 100%;
  max-width: 60em;
  margin: 0 auto;
  padding: 0 2.5em;
  font-size: 14pt;
}

@media screen and (max-width: 736px) {
  #wrapper > * > .inner {
    padding: 0 1.25em;
  }
}
