@charset "UTF-8";
/*
Theme Name: Give a Book
Theme URI: http://giveabook.org.uk
Author: Lift
Author URI: http://studiolift.com
Description: This theme was created for Give a Book
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: give-a-book
Tags: custom-theme
*/
@import url("https://fonts.googleapis.com/css?family=Merriweather:400,400i,700,700i");
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
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, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body {
  font-family: "Merriweather", "georgia", serif;
  font-size: 16px;
  line-height: 1.5;
  background-color: #F8F4E9;
  color: #4A4A4A; }

p {
  margin-bottom: 1.5em; }

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child {
  margin-top: 0; }

h1 {
  font-size: 2.625em;
  line-height: 1.25;
  margin-top: 0.8571428572em;
  margin-bottom: 0.2857142857em;
  color: #A4292C; }

h2 {
  font-size: 2em;
  line-height: 1.25;
  margin-top: 1.125em;
  margin-bottom: 0.375em;
  color: #A4292C; }

h3 {
  font-size: 1.25em;
  line-height: 1.25;
  margin-top: 1.8em;
  margin-bottom: 0.6em;
  font-weight: bold; }

h4 {
  font-size: 1em;
  margin-top: 2.25em;
  margin-bottom: 0.75em;
  color: #A4292C; }

h5 {
  border-top: 2px solid #EEEADF;
  font-size: 1em;
  margin-top: 1.5em;
  padding-top: 1.5em;
  margin-bottom: 0.75em;
  color: #A4292C; }

h1 + h2, h1 + h3, h1 + h4, h1 + h5, h2 + h3, h2 + h4, h2 + h5, h3 + h4, h3 + h5, h4 + h5,
hr + h1, hr + h2, hr + h3, hr + h4, hr + h5 {
  margin-top: 0; }

a {
  color: #00758E;
  text-decoration: none;
  font-weight: bold; }
  a:hover {
    color: #114B5F; }

blockquote {
  font-size: 1.25em;
  line-height: 1.5;
  color: #A4292C;
  margin-bottom: 1.5rem; }
  blockquote > p:last-child {
    margin-bottom: 0; }
  blockquote > footer {
    font-size: 1rem;
    color: #4A4A4A;
    margin-bottom: 0;
    margin-top: -1.25rem; }

strong {
  font-weight: bold; }

em {
  font-style: italic; }

small {
  font-size: 0.75em; }

hr {
  border: 0;
  border-top: 2px solid #EEEADF;
  margin: 1.5rem 0; }

ul {
  margin-bottom: 1.5em; }
  ul > li {
    margin-left: 1em;
    position: relative; }
  ul > li:before {
    content: '•';
    position: absolute;
    left: -0.75em;
    color: #A4292C; }

ol {
  margin-bottom: 1.5em;
  counter-reset: section; }
  ol > li {
    margin-left: 1em;
    position: relative; }
  ol > li:before {
    counter-increment: section;
    content: counter(section);
    position: absolute;
    left: -1em;
    color: #A4292C; }

label {
  display: block;
  margin-bottom: 0.5rem; }

input[type='color'],
input[type='date'],
input[type='datetime'],
input[type='datetime-local'],
input[type='email'],
input[type='month'],
input[type='number'],
input[type='password'],
input[type='search'],
input[type='tel'],
input[type='text'],
input[type='time'],
input[type='url'],
input[type='week'],
textarea {
  box-sizing: border-box;
  max-width: 100%;
  padding: 0.5rem 0.75rem;
  -webkit-appearance: none;
  appearance: none;
  border: 2px solid #EEEADF;
  background-color: #F8F4E9;
  font-size: 14px;
  margin-bottom: 1.5rem; }

input[type="submit"] {
  display: inline-block;
  padding: 0.5rem 0.75rem;
  -webkit-appearance: none;
  appearance: none;
  background-color: #00758E;
  border: 2px solid #00758E;
  color: #FFFFFF;
  cursor: pointer;
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 0; }
  input[type="submit"]:hover {
    background-color: #114B5F;
    border-color: #114B5F; }

input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus {
  outline: none; }

.contact-form {
  box-sizing: border-box;
  padding: 1.5rem;
  width: 100%;
  background-color: #EEEADF;
  margin-bottom: 1.5rem; }
  .contact-form > :last-child {
    margin-bottom: 0; }
  .contact-form input[type="text"],
  .contact-form input[type="email"],
  .contact-form textarea {
    border: 2px solid #F8F4E9;
    background-color: #F8F4E9;
    width: 100%; }

.wpcf7 .wpcf7-response-output {
  margin-top: 0;
  margin-left: 0;
  margin-bottom: 0;
  margin-right: 0;
  padding: 1.5rem;
  border: 0; }

.wpcf7 .wpcf7-display-none {
  margin-top: -1.5rem;
  display: block; }

.wpcf7 .wpcf7-validation-errors {
  margin-top: 0;
  border: 2px solid #A4292C;
  color: #A4292C; }

.wpcf7 .wpcf7-mail-sent-ok {
  margin-top: 0;
  border: 2px solid #24982d; }

.wpcf7 .wpcf7-not-valid-tip {
  color: #A4292C;
  margin-top: -1rem;
  font-style: italic; }

.btn,
.wp-block-button__link {
  display: inline-block;
  background-color: #00758E;
  color: #FFFFFF;
  border-radius: 3px;
  padding: 0.75rem 1.5rem; }
  .btn:hover,
  .wp-block-button__link:hover {
    background-color: #006075;
    color: #FFFFFF; }

img {
  max-width: 100%;
  height: auto; }

.video {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  margin-bottom: 1.5rem; }
  .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.video-caption {
  margin-top: -1.5rem;
  margin-bottom: 1.5rem;
  padding: 8px 12px 8px 32px;
  background-color: #EEEADF;
  position: relative; }
  .video-caption:before {
    content: '';
    position: absolute;
    top: 16px;
    left: 12px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 5px 8px 5px;
    border-color: transparent transparent #A4292C transparent; }

.header {
  width: 100%;
  box-sizing: border-box;
  background-color: #A4292C;
  position: relative;
  padding: 1.5rem 1.5rem 2.5rem 1.5rem; }
  @media (min-width: 769px) {
    .header {
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/$red-3+0,$red-1+50,7d080b+100 */
      background: #6F1C1F;
      /* Old browsers */
      background: -moz-linear-gradient(left, #6F1C1F 0%, #A4292C 50%, #6F1C1F 100%);
      /* FF3.6-15 */
      background: -webkit-linear-gradient(left, #6F1C1F 0%, #A4292C 50%, #6F1C1F 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #6F1C1F 0%, #A4292C 50%, #6F1C1F 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$red-3', endColorstr='$red-3',GradientType=1 );
      /* IE6-9 */ } }

.header__border {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1rem;
  background-color: #FFD367;
  background-image: url("assets/gold-bg.png"); }

.header__logo {
  display: block;
  width: 90px;
  height: 94px;
  overflow: hidden; }
  @media (min-width: 769px) {
    .header__logo {
      margin: auto; } }
  .header__logo .gab-logo {
    fill: #FFFFFF;
    transition: ease 0.5s all; }
  .header__logo:hover .gab-logo {
    fill: #FFD367; }

.header__menu {
  display: block;
  width: calc(100% + 3rem);
  box-sizing: border-box;
  margin-top: 1.5rem;
  margin-left: -1.5rem;
  margin-right: -1.5rem;
  margin-bottom: -1.5rem;
  padding: 1rem;
  background-color: #6F1C1F; }
  @media (min-width: 769px) {
    .header__menu {
      background-color: transparent;
      margin-top: 0;
      padding: 1.5rem 0 0 0;
      border-radius: 0; } }
  @media (max-width: 769px) {
    .header__menu--js {
      display: none;
      -webkit-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.5);
      -moz-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.5);
      box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.5);
      width: 100%; } }
  @media (max-width: 769px) {
    .header__menu--show {
      display: block;
      position: absolute;
      z-index: 1;
      right: 1.5rem;
      top: 64px; }
      .header__menu--show:before {
        content: '';
        position: absolute;
        top: -8px;
        right: 40px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 8px 8px 8px;
        border-color: transparent transparent #6F1C1F transparent; } }

.menu-toggle {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  border: 2px solid #FFD367;
  height: 3rem;
  width: 3rem;
  box-sizing: border-box;
  text-indent: -9999px;
  overflow: hidden;
  border-radius: 8px;
  cursor: pointer;
  transition: ease 0.25s all; }
  .menu-toggle > div {
    width: 2rem;
    position: absolute;
    height: 4px;
    background-color: #FFD367;
    left: calc(50% - 1rem);
    transition: ease 0.25s all; }
  .menu-toggle > div:nth-child(1) {
    top: calc(25% - 2px); }
  .menu-toggle > div:nth-child(2) {
    top: calc(50% - 2px); }
  .menu-toggle > div:nth-child(3) {
    top: calc(75% - 2px); }

.menu-toggle:hover {
  border-color: #FFFFFF; }
  .menu-toggle:hover > div {
    background-color: #FFFFFF; }

.menu-toggle--on {
  border-color: #FFFFFF; }
  .menu-toggle--on > div {
    background-color: #FFFFFF; }
  .menu-toggle--on > div:nth-child(1) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: calc(50% - 3px); }
  .menu-toggle--on > div:nth-child(2) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: calc(50% - 3px); }
  .menu-toggle--on > div:nth-child(3) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: calc(50% - 3px); }

.menu {
  margin-bottom: 0;
  position: relative; }
  .menu > li {
    margin-left: 0; }
  .menu > li:before {
    content: none;
    position: static;
    left: auto; }

.menu > .menu-item {
  margin-bottom: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #FFFFFF; }

.menu > :first-child {
  border-top: 0;
  padding-top: 0; }

.menu > :last-child {
  margin-bottom: 0; }

.menu > .menu-item > a {
  color: #FFFFFF;
  text-decoration: none;
  font-size: 18px;
  font-weight: normal; }

.menu > .menu-item > a:hover {
  color: #FFD367; }

.sub-menu {
  margin-bottom: 0.5rem; }
  .sub-menu > li {
    margin-left: 0; }
  .sub-menu > li:before {
    content: none;
    position: static;
    left: auto; }

.sub-menu > .menu-item {
  margin: 0.75rem 0; }

.sub-menu > .menu-item a {
  color: #FFFFFF;
  font-weight: normal;
  text-decoration: none;
  display: block; }

.sub-menu > .menu-item a:hover {
  color: #FFD367; }

@media (min-width: 769px) {
  .menu-toggle {
    display: none; }
  .menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: -1rem; }
  .menu > .menu-item {
    position: relative;
    display: block;
    padding: 0 0 1rem 0;
    margin-bottom: 0;
    border-top: 0; }
  .menu > .menu-item > a {
    display: block;
    padding: 0.5rem 1rem;
    margin: 0 0.5rem;
    border: 2px solid transparent;
    border-radius: 8px;
    transition: ease 0.5s all; }
  .menu > .menu-item:hover a {
    border-color: rgba(255, 255, 255, 0.25); }
  .menu > .menu-item-has-children > a {
    padding-right: 2rem;
    background-image: url("assets/arrow-down.png");
    background-repeat: no-repeat;
    background-position: right 12px center; }
  .menu > .current-menu-item > a {
    color: #FFD367; }
  .menu > .current-menu-item > a:hover {
    color: #FFD367; }
  .menu > .menu-item-donate a {
    border-color: #FFD367;
    color: #FFD367; }
  .sub-menu {
    display: none;
    width: 250px;
    position: absolute;
    z-index: 2;
    background-color: #F8F4E9;
    padding: 0.5rem 1rem;
    margin: 1rem 0.5rem 0;
    border: 2px solid transparent;
    border-radius: 8px;
    -webkit-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.5);
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.5); }
    .sub-menu:before {
      content: '';
      position: absolute;
      top: -8px;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 6px 6px 6px;
      border-color: transparent transparent #F8F4E9 transparent; }
  .menu > .menu-item-has-children:hover .sub-menu {
    display: block; }
  .sub-menu > .menu-item {
    margin: 0; }
  .sub-menu > .menu-item a {
    margin-bottom: 0.5rem;
    color: #00758E; }
  .sub-menu > .menu-item a:hover {
    color: #114B5F; }
  .sub-menu > .menu-item:last-child a {
    margin: 0; } }

.menu-item--search {
  font-size: 18px;
  color: #FFFFFF; }
  .menu-item--search span {
    font-size: 18px;
    color: #FFFFFF; }

@media (min-width: 769px) {
  .menu-item--search {
    display: block;
    padding: 0.5rem 1.5rem;
    margin: 0 0.5rem;
    border: 2px solid transparent;
    border-radius: 8px;
    transition: ease 0.5s all;
    cursor: pointer;
    background-image: url("assets/search-icon.svg");
    background-repeat: no-repeat;
    background-position: center;
    position: relative; }
    .menu-item--search span {
      overflow: hidden;
      text-indent: -99999px;
      display: block; }
  .menu-item--search:hover,
  .menu-item--search--active {
    background-color: #5b1718;
    border-color: #5b1718; }
  .menu-item--search--active:after {
    content: '';
    position: absolute;
    bottom: -24px;
    left: calc(50% - 12px);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 12px 12px 12px;
    border-color: transparent transparent #5b1718 transparent; } }

.searchform {
  position: relative; }
  .searchform label {
    width: 0;
    height: 0;
    position: absolute;
    overflow: hidden; }
  .searchform input[type="text"] {
    background-color: transparent;
    color: #FFFFFF;
    margin: 0; }
  .searchform input[type="text"]:focus {
    background-color: #A4292C;
    outline: none; }
  .searchform input[type="submit"] {
    color: #A4292C;
    background-color: #FFFFFF;
    border-color: #FFFFFF; }
  .searchform input[type="submit"]:hover {
    color: #FFFFFF;
    background-color: #5b1718; }

@media (min-width: 769px) {
  .site-search-box--js {
    display: none;
    position: absolute;
    left: 0;
    bottom: -52px;
    width: 100%;
    background-color: #5b1718;
    z-index: 1;
    padding: 0.5rem 1rem;
    box-sizing: border-box; }
    .site-search-box--js > form {
      max-width: 1024px;
      margin: auto; }
      .site-search-box--js > form:after {
        content: "";
        display: table;
        clear: both; }
    .site-search-box--js > form > div {
      float: right; }
  .site-search-box--show {
    display: block; } }

.footer {
  color: #FFFFFF;
  width: 100%;
  box-sizing: border-box;
  background-color: #A4292C;
  position: relative;
  padding: 2.5rem 1.5rem 1.5rem 1.5rem;
  margin-top: 10rem; }
  .footer:before {
    content: '';
    position: absolute;
    left: calc(50% - 46px);
    top: -120px;
    width: 92px;
    height: 85px;
    background-image: url("assets/stag.png"); }

.footer__border {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1rem;
  background-color: #FFD367;
  background-image: url("assets/gold-bg.png"); }

.footer > .wrapper {
  display: grid;
  grid-template-columns: 1fr; }
  @media (min-width: 769px) {
    .footer > .wrapper {
      grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  .footer > .wrapper:after {
    content: none; }

.footer__widget_area_1 > h3,
.footer__widget_area_2 > h3 {
  font-weight: normal; }

.footer__widget_area_1 .wp-block-button,
.footer__widget_area_2 .wp-block-button {
  width: 100%;
  display: flex;
  justify-content: flex-start; }
  @media (min-width: 769px) {
    .footer__widget_area_1 .wp-block-button,
    .footer__widget_area_2 .wp-block-button {
      justify-content: center; } }

.footer__widget_area_1 .wp-block-button__link,
.footer__widget_area_2 .wp-block-button__link {
  color: #FFD367;
  border: 2px solid #FFD367;
  background-color: transparent;
  border-radius: 8px; }
  .footer__widget_area_1 .wp-block-button__link:hover, .footer__widget_area_1 .wp-block-button__link:focus,
  .footer__widget_area_2 .wp-block-button__link:hover,
  .footer__widget_area_2 .wp-block-button__link:focus {
    color: #FFFFFF;
    border-color: #FFFFFF; }

@media (min-width: 769px) {
  .footer__social-media {
    text-align: right; } }

.footer__social-media > h3 {
  font-weight: normal; }

.footer__social-media > ul {
  display: flex;
  flex-wrap: wrap;
  margin: -0.25rem; }
  .footer__social-media > ul > li {
    margin-left: 0; }
  .footer__social-media > ul > li:before {
    content: none;
    position: static;
    left: auto; }
  @media (min-width: 769px) {
    .footer__social-media > ul {
      justify-content: flex-end; } }

.footer__social-media > ul > li {
  padding: 0.25rem; }

.smallprint {
  padding: 0.75rem 1.5rem;
  background-color: #6F1C1F; }
  .smallprint p {
    text-align: center;
    font-size: 0.75em;
    color: #FFFFFF;
    margin: 0; }
  .smallprint a {
    color: #FFFFFF;
    text-decoration: none; }
  .smallprint a:hover {
    border-bottom: 1px dashed rgba(255, 255, 255, 0.25); }

.page-body {
  padding: 0 1.5rem;
  background-color: #F8F4E9; }

.full-width-panel {
  width: calc(100% + 3rem);
  box-sizing: border-box;
  background-color: #EEEADF;
  margin-left: -1.5rem;
  margin-right: -1.5rem;
  padding: 1.5rem; }

.wrapper {
  max-width: 1024px;
  margin: auto; }
  .wrapper:after {
    content: "";
    display: table;
    clear: both; }

.main-content {
  width: 100%; }
  @media (min-width: 769px) {
    .main-content {
      float: left;
      width: calc(66.6666666% - 1.5rem);
      box-sizing: border-box;
      margin-right: 1.5rem; } }

.side-bar {
  width: 100%; }
  @media (min-width: 769px) {
    .side-bar {
      float: right;
      width: calc(33.3333333% - 1.5rem);
      box-sizing: border-box;
      margin-left: 1.5rem; } }

.front-page-img {
  display: block; }

.latest {
  margin-bottom: 1.5rem; }
  @media (min-width: 769px) {
    .latest {
      margin-bottom: 3rem;
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-flow: row wrap;
      flex-direction: row;
      -ms-flex-pack: justify;
      justify-content: space-between;
      align-items: stretch; } }

.latest__content {
  background-color: #EEEADF;
  -ms-flex: 0 1 32%;
  flex: 0 1 32%;
  border-radius: 0 0 3px 3px;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 769px) {
    .latest__content {
      margin: 0; } }

.latest__content h2 {
  background-color: #F8F4E9;
  margin-bottom: 0;
  font-size: 1.5rem;
  padding-bottom: 1rem; }

.pleasure-of-reading:after {
  content: "";
  display: table;
  clear: both; }

@media (min-width: 769px) {
  .pleasure-of-reading {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    align-items: stretch; } }

.pleasure-of-reading__image {
  -ms-flex: 0 1 32%;
  flex: 0 1 32%;
  display: none; }
  .pleasure-of-reading__image img {
    display: block; }
  @media (min-width: 769px) {
    .pleasure-of-reading__image {
      display: block; } }

.pleasure-of-reading__text {
  -ms-flex: 0 1 64%;
  flex: 0 1 64%; }
  .pleasure-of-reading__text :last-child {
    margin-bottom: 0; }

@media (min-width: 769px) {
  .latest {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 1.5rem; } }

@media (min-width: 769px) {
  .pleasure-of-reading {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: "image text text";
    grid-column-gap: 1.5rem; } }

.pleasure-of-reading__image {
  grid-area: image; }

.pleasure-of-reading__text {
  grid-area: text; }

/*-----------------------------------*\
  $TOAST-GRID
  An insane grid.
  You'd be mad to use it.
  Usage
  =====
  Assuming default values:
  <div class="grid">
    <div class="grid__col grid__col--1-of-2">
      A half-width column.
    </div>
    <div class="grid__col grid__col--1-of-4 grid__col--pull-1-of-4">
      A quarter, pulled left by its own width. You get this, right?
    </div>
  </div>
  Customisation
  =============
  $toast-grid-namespace and $toast-grid-column-namespace
  adjusts the class names for the grid. With
  default values, grid wrappers have a class
  of '.grid' and columns '.grid__col'.
  $toast-col-groups(n) adjusts column divisions.
  For example, $toast-col-groups(12) will produce
  a 12-column grid. $col-groups(3,6,8)
  will produce a 3-, 6-, and 8-column grid.
  $toast-gutter-width is—you guessed it—the gutter
  width. Accepts any unit.
  That's it. Have fun.
\*-----------------------------------*/
.grid {
  list-style: none;
  margin-left: -1.5rem; }

.grid__col--2-of-2, .grid__col--3-of-3, .grid__col--4-of-4, .grid__col--5-of-5, .grid__col--6-of-6, .grid__col--8-of-8, .grid__col--12-of-12 {
  width: 100%; }

.grid__col--1-of-2, .grid__col--2-of-4, .grid__col--3-of-6, .grid__col--4-of-8, .grid__col--6-of-12 {
  width: 50%; }

.grid__col--1-of-3, .grid__col--2-of-6, .grid__col--4-of-12 {
  width: 33.33333%; }

.grid__col--2-of-3, .grid__col--4-of-6, .grid__col--8-of-12 {
  width: 66.66667%; }

.grid__col--1-of-4, .grid__col--2-of-8, .grid__col--3-of-12 {
  width: 25%; }

.grid__col--3-of-4, .grid__col--6-of-8, .grid__col--9-of-12 {
  width: 75%; }

.grid__col--push-2-of-2, .grid__col--push-3-of-3, .grid__col--push-4-of-4, .grid__col--push-5-of-5, .grid__col--push-6-of-6, .grid__col--push-8-of-8, .grid__col--push-12-of-12 {
  margin-left: 100%; }

.grid__col--push-1-of-2, .grid__col--push-2-of-4, .grid__col--push-3-of-6, .grid__col--push-4-of-8, .grid__col--push-6-of-12 {
  margin-left: 50%; }

.grid__col--push-1-of-3, .grid__col--push-2-of-6, .grid__col--push-4-of-12 {
  margin-left: 33.33333%; }

.grid__col--push-2-of-3, .grid__col--push-4-of-6, .grid__col--push-8-of-12 {
  margin-left: 66.66667%; }

.grid__col--push-1-of-4, .grid__col--push-2-of-8, .grid__col--push-3-of-12 {
  margin-left: 25%; }

.grid__col--push-3-of-4, .grid__col--push-6-of-8, .grid__col--push-9-of-12 {
  margin-left: 75%; }

.grid__col--pull-2-of-2, .grid__col--pull-3-of-3, .grid__col--pull-4-of-4, .grid__col--pull-5-of-5, .grid__col--pull-6-of-6, .grid__col--pull-8-of-8, .grid__col--pull-12-of-12 {
  margin-left: -100%; }

.grid__col--pull-1-of-2, .grid__col--pull-2-of-4, .grid__col--pull-3-of-6, .grid__col--pull-4-of-8, .grid__col--pull-6-of-12 {
  margin-left: -50%; }

.grid__col--pull-1-of-3, .grid__col--pull-2-of-6, .grid__col--pull-4-of-12 {
  margin-left: -33.33333%; }

.grid__col--pull-2-of-3, .grid__col--pull-4-of-6, .grid__col--pull-8-of-12 {
  margin-left: -66.66667%; }

.grid__col--pull-1-of-4, .grid__col--pull-2-of-8, .grid__col--pull-3-of-12 {
  margin-left: -25%; }

.grid__col--pull-3-of-4, .grid__col--pull-6-of-8, .grid__col--pull-9-of-12 {
  margin-left: -75%; }

.grid__col--1-of-5 {
  width: 20%; }

.grid__col--push-1-of-5 {
  margin-left: 20%; }

.grid__col--pull-1-of-5 {
  margin-left: -20%; }

.grid__col--2-of-5 {
  width: 40%; }

.grid__col--push-2-of-5 {
  margin-left: 40%; }

.grid__col--pull-2-of-5 {
  margin-left: -40%; }

.grid__col--3-of-5 {
  width: 60%; }

.grid__col--push-3-of-5 {
  margin-left: 60%; }

.grid__col--pull-3-of-5 {
  margin-left: -60%; }

.grid__col--4-of-5 {
  width: 80%; }

.grid__col--push-4-of-5 {
  margin-left: 80%; }

.grid__col--pull-4-of-5 {
  margin-left: -80%; }

.grid__col--1-of-6 {
  width: 16.66667%; }

.grid__col--push-1-of-6 {
  margin-left: 16.66667%; }

.grid__col--pull-1-of-6 {
  margin-left: -16.66667%; }

.grid__col--5-of-6 {
  width: 83.33333%; }

.grid__col--push-5-of-6 {
  margin-left: 83.33333%; }

.grid__col--pull-5-of-6 {
  margin-left: -83.33333%; }

.grid__col--1-of-8 {
  width: 12.5%; }

.grid__col--push-1-of-8 {
  margin-left: 12.5%; }

.grid__col--pull-1-of-8 {
  margin-left: -12.5%; }

.grid__col--3-of-8 {
  width: 37.5%; }

.grid__col--push-3-of-8 {
  margin-left: 37.5%; }

.grid__col--pull-3-of-8 {
  margin-left: -37.5%; }

.grid__col--5-of-8 {
  width: 62.5%; }

.grid__col--push-5-of-8 {
  margin-left: 62.5%; }

.grid__col--pull-5-of-8 {
  margin-left: -62.5%; }

.grid__col--7-of-8 {
  width: 87.5%; }

.grid__col--push-7-of-8 {
  margin-left: 87.5%; }

.grid__col--pull-7-of-8 {
  margin-left: -87.5%; }

.grid__col--1-of-12 {
  width: 8.33333%; }

.grid__col--push-1-of-12 {
  margin-left: 8.33333%; }

.grid__col--pull-1-of-12 {
  margin-left: -8.33333%; }

.grid__col--2-of-12 {
  width: 16.66667%; }

.grid__col--push-2-of-12 {
  margin-left: 16.66667%; }

.grid__col--pull-2-of-12 {
  margin-left: -16.66667%; }

.grid__col--5-of-12 {
  width: 41.66667%; }

.grid__col--push-5-of-12 {
  margin-left: 41.66667%; }

.grid__col--pull-5-of-12 {
  margin-left: -41.66667%; }

.grid__col--7-of-12 {
  width: 58.33333%; }

.grid__col--push-7-of-12 {
  margin-left: 58.33333%; }

.grid__col--pull-7-of-12 {
  margin-left: -58.33333%; }

.grid__col--10-of-12 {
  width: 83.33333%; }

.grid__col--push-10-of-12 {
  margin-left: 83.33333%; }

.grid__col--pull-10-of-12 {
  margin-left: -83.33333%; }

.grid__col--11-of-12 {
  width: 91.66667%; }

.grid__col--push-11-of-12 {
  margin-left: 91.66667%; }

.grid__col--pull-11-of-12 {
  margin-left: -91.66667%; }

.grid__col {
  box-sizing: border-box;
  display: inline-block;
  margin-right: -.25em;
  min-height: 1px;
  padding-left: 1.5rem;
  vertical-align: top; }
  @media (max-width: 769px) {
    .grid__col {
      display: block;
      margin-left: 0;
      margin-right: 0;
      width: auto; } }
  @media (max-width: 769px) and (min-width: 450px) {
    .grid__col[class*="grid__col--m-"] {
      display: inline-block;
      margin-right: -.24em; }
    .grid__col.grid__col--m-1-of-2, .grid__col.grid__col--m-2-of-4 {
      width: 50%; }
    .grid__col.grid__col--m-1-of-3 {
      width: 33.33333%; }
    .grid__col.grid__col--m-2-of-3 {
      width: 66.66667%; }
    .grid__col.grid__col--m-1-of-4 {
      width: 25%; }
    .grid__col.grid__col--m-3-of-4 {
      width: 75%; } }
  @media (max-width: 450px) {
    .grid__col[class*="grid__col--s-"] {
      display: inline-block;
      margin-right: -.24em; }
    .grid__col.grid__col--s-1-of-2, .grid__col.grid__col--s-2-of-4 {
      width: 50%; }
    .grid__col.grid__col--s-1-of-3 {
      width: 33.33333%; }
    .grid__col.grid__col--s-2-of-3 {
      width: 66.66667%; }
    .grid__col.grid__col--s-1-of-4 {
      width: 25%; }
    .grid__col.grid__col--s-3-of-4 {
      width: 75%; } }

.grid__col--centered {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.grid__col--d-first {
  float: left; }

.grid__col--d-last {
  float: right; }

.grid--no-gutter {
  margin-left: 0;
  width: 100%; }
  .grid--no-gutter .grid__col {
    padding-left: 0; }
  .grid--no-gutter .grid__col--span-all {
    margin-left: 0;
    width: 100%; }

.grid__col--ab {
  vertical-align: bottom; }

.grid__col--am {
  vertical-align: middle; }

.breadcrumb-container {
  background-color: #EEEADF;
  padding: 0.75rem 1.5rem;
  margin-bottom: 1.5rem; }
  @media (min-width: 769px) {
    .breadcrumb-container {
      padding: 3rem 1.5rem 0.75rem 1.5rem;
      margin-bottom: 3rem; } }

.breadcrumbs {
  max-width: 1024px;
  margin: auto;
  font-size: 14px;
  position: relative;
  padding-left: 32px;
  box-sizing: border-box; }
  .breadcrumbs:before {
    content: '';
    position: absolute;
    left: 0;
    top: 4px;
    width: 24px;
    height: 11px;
    background-image: url("assets/breadcrumb.svg"); }

.pagination > li {
  margin-left: 0; }

.pagination > li:before {
  content: none;
  position: static;
  left: auto; }

.pagination:after {
  content: "";
  display: table;
  clear: both; }

.pagination li {
  display: inline-block;
  float: left; }

.pagination li:nth-child(2):before {
  content: '|';
  margin: 0 1.5rem; }

.icon .icon__bg {
  fill: #FFFFFF; }

.icon .icon__content {
  fill: #A4292C; }

.icon :hover .icon__bg {
  fill: #6F1C1F; }

.icon :hover .icon__content {
  fill: #FFFFFF; }

.hero {
  background-image: url("assets/hero-bg.png");
  background-size: cover;
  background-position: center;
  padding: 1.5rem;
  text-align: center;
  margin-bottom: 1.5rem; }
  @media (min-width: 450px) {
    .hero {
      padding: 2rem 1.5rem;
      font-size: 22px;
      margin-bottom: 3rem; } }

.hero__txt {
  color: #FFFFFF;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto; }

.hero__cta {
  display: inline-block;
  color: #FFD367;
  font-weight: normal;
  border: 2px solid #FFD367;
  border-radius: 8px;
  padding: 0.25em 0.75em; }
  .hero__cta:hover {
    color: #FFFFFF;
    border-color: #FFFFFF; }

.post-content,
.page-content {
  margin-bottom: 1.5rem; }
  .post-content > p:first-child,
  .page-content > p:first-child {
    font-size: 1.25rem;
    margin-bottom: 1.5rem; }
  .post-content > :first-child,
  .page-content > :first-child {
    margin-top: 0; }
  .post-content > blockquote,
  .page-content > blockquote {
    font-size: 1rem;
    line-height: 1.5;
    margin: 1.5rem 0;
    color: #4A4A4A;
    padding: 1rem;
    background-color: #EEEADF;
    border-left: 3px solid #A4292C; }
  .post-content .aligncenter,
  .page-content .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.5rem; }
  .post-content .alignleft,
  .page-content .alignleft {
    float: left;
    margin-right: 1.5rem;
    margin-bottom: 1.5rem; }
  .post-content .alignright,
  .page-content .alignright {
    float: right;
    margin-left: 1.5rem;
    margin-bottom: 1.5rem; }
  .post-content .alignnone,
  .page-content .alignnone {
    display: block;
    margin-bottom: 1.5rem; }
  .post-content .blocks-gallery-grid,
  .page-content .blocks-gallery-grid {
    align-items: center; }
  .post-content .blocks-gallery-item:before,
  .page-content .blocks-gallery-item:before {
    content: none; }

.post-image {
  display: block;
  border-radius: 8px;
  margin-bottom: 1.5rem; }
  @media (min-width: 769px) {
    .post-image {
      margin-bottom: 3rem; } }

.wp-block-image {
  position: relative; }

.wp-block-image figcaption {
  position: absolute;
  left: 0;
  bottom: 0;
  font-size: 0.75rem;
  padding: 0.25rem;
  margin: 0;
  color: #FFFFFF;
  background-color: rgba(0, 0, 0, 0.75);
  max-width: 100%;
  box-sizing: border-box; }

.card {
  background-color: #EEEADF;
  padding: 1rem;
  border-radius: 3px;
  margin-bottom: 1.5rem; }
  .card:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 450px) {
    .card {
      padding: 1.5rem; } }
  .card > :first-child {
    margin-top: 0; }
  .card > :last-child {
    margin-bottom: 0; }

.card__image {
  width: calc(100px - 1rem);
  margin-right: 1rem;
  display: block;
  border-radius: 8px;
  float: left; }
  @media (min-width: 450px) {
    .card__image {
      width: calc(150px - 1.5rem);
      margin-right: 1.5rem; } }

.card__text {
  width: calc(100% - 100px);
  float: right; }
  @media (min-width: 450px) {
    .card__text {
      width: calc(100% - 150px); } }
  .card__text > :first-child {
    margin-top: 0; }
  .card__text > :last-child {
    margin-bottom: 0; }

.view-more {
  margin-top: -0.75rem; }

@media (min-width: 769px) {
  .card--book .card__text {
    float: left;
    width: calc(100% - 294px); } }

.card--book .card__bookcover {
  display: none;
  max-width: 120px;
  float: right; }
  @media (min-width: 769px) {
    .card--book .card__bookcover {
      display: block; } }

.card--mini {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto; }
  .card--mini .card__text {
    width: calc(100% - 104px); }
    @media (min-width: 450px) {
      .card--mini .card__text {
        width: calc(100% - 104px); } }
  .card--mini .card__image {
    width: calc(104px - 1rem);
    margin-right: 1rem;
    display: block;
    border-radius: 8px;
    float: left; }
    @media (min-width: 450px) {
      .card--mini .card__image {
        width: calc(104px - 1.5rem);
        margin-right: 1.5rem; } }

.card--home {
  padding: 0; }
  .card--home .card__image {
    position: relative;
    float: none;
    width: 100%;
    background-color: #A4292C;
    margin: -3px 0 0 0;
    height: 0;
    overflow: hidden;
    padding-top: 100%;
    border-radius: 3px 3px 0 0; }
  .card--home .card__image img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .card--home .card__text {
    float: none;
    width: 100%;
    box-sizing: border-box;
    padding: 1.5rem; }

.card--report {
  font-size: 14px; }
  .card--report h2 {
    font-size: 1.5em; }
  .card--report ul {
    margin-bottom: 0; }
    .card--report ul:after {
      content: "";
      display: table;
      clear: both; }
  .card--report ul li {
    display: inline-block;
    float: left;
    margin-left: 1.5rem; }
  .card--report ul li:before {
    color: #4A4A4A;
    left: -1rem; }
  .card--report ul li:first-child {
    margin-left: 0; }
  .card--report ul li:first-child:before {
    content: none; }

.card--report__excerpt {
  border-radius: 3px;
  border: 1px solid #dcd4be;
  background-color: #F8F4E9;
  padding: 1rem;
  margin-top: 1rem; }
  .card--report__excerpt > :last-child {
    margin-bottom: 0; }

.book-meta {
  position: relative;
  margin-top: 3rem; }
  @media (min-width: 769px) {
    .book-meta {
      margin-top: 0; } }

.book-meta__personality {
  border-radius: 8px;
  border: 4px solid #F8F4E9;
  position: absolute;
  max-width: 130px;
  top: calc(-1rem - 4px);
  left: calc(50% - 68px);
  z-index: 1; }
  @media (min-width: 769px) {
    .book-meta__personality {
      left: calc(-1rem - 4px); } }

.book-meta__bookcover {
  display: block;
  margin: 0 auto; }
  .book-meta__bookcover:hover {
    z-index: 2; }

.text-donate {
  background-color: #A4292C;
  color: #FFFFFF;
  margin-bottom: 1.5rem;
  padding: 1rem; }
  @media (min-width: 960px) {
    .text-donate {
      padding: 1.5rem 250px 1.5rem 1.5rem;
      background-image: url("assets/text-donate.png");
      background-repeat: no-repeat;
      background-position: right bottom; } }
  .text-donate :last-child {
    margin-bottom: 0; }
  .text-donate__title {
    color: #FFD367; }

.widget {
  background-color: #EEEADF;
  padding: 1rem;
  border-radius: 3px;
  margin-bottom: 1.5rem; }
  .widget:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 450px) {
    .widget {
      padding: 1.5rem; } }
  .widget :last-child {
    margin-bottom: 0; }
  .widget--reversed {
    background-color: #A4292C;
    color: #FFFFFF; }
  .widget--reversed * {
    color: #FFFFFF; }

.widget--footer {
  background-color: transparent;
  padding: 0;
  color: #FFFFFF; }
  .widget--footer > form {
    background-color: transparent;
    padding: 0; }
  .widget--footer > h3 {
    font-weight: normal; }
  .widget--footer input::placeholder {
    color: #FFFFFF; }
  .widget--footer input[type="email"],
  .widget--footer input[type="text"] {
    background-color: #A4292C;
    color: #FFFFFF; }
  .widget--footer input[type="email"]:focus,
  .widget--footer input[type="text"]:focus {
    background-color: #872225;
    outline: none; }
  .widget--footer input[type="submit"] {
    display: block;
    color: #A4292C;
    background-color: #FFFFFF;
    border-color: #FFFFFF; }
  .widget--footer input[type="submit"]:hover {
    color: #FFFFFF;
    background-color: #A4292C; }

.widget--popup {
  display: none;
  box-sizing: border-box;
  position: fixed;
  z-index: 9999999;
  width: 80%;
  max-width: 320px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #FFFFFF;
  padding: 2.5rem; }

.widget--popup-overlay {
  display: none;
  position: fixed;
  z-index: 9999998;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.75); }

.widget--show {
  display: block; }

#widget__close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  width: 2rem;
  height: 2rem;
  background-color: #A4292C;
  text-indent: -99999px;
  overflow: hidden;
  border-radius: 2px;
  cursor: pointer; }
  #widget__close:before, #widget__close:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    height: 3px;
    width: 70%;
    background-color: #FFFFFF;
    transform: translate(-50%, -50%) rotate(45deg); }
  #widget__close:after {
    transform: translate(-50%, -50%) rotate(-45deg); }
  #widget__close:hover {
    background-color: #00758E; }

.widget_calendar .calendar_wrap {
  width: 100%;
  overflow: auto; }

.widget_calendar .calendar_wrap::-webkit-scrollbar {
  display: none; }

.widget_calendar .calendar_wrap table {
  width: 100%;
  border-collapse: collapse; }

.widget_calendar .calendar_wrap table tr td {
  border: 1px solid #F8F4E9;
  text-align: center;
  padding: 2px; }

.widget_custom_html {
  background-color: transparent;
  padding: 0;
  border-radius: 0;
  margin-bottom: 1.5rem; }

.widget_search input[type=text] {
  width: 100%;
  margin-bottom: 0.75rem; }

.widget_statblock_widget {
  padding: 0;
  background-color: transparent;
  position: relative; }
  .widget_statblock_widget img {
    display: block;
    border-radius: 3px; }
  .widget_statblock_widget p {
    position: absolute;
    bottom: 0;
    margin: 0;
    font-size: 18px;
    color: #FFFFFF;
    width: 100%;
    box-sizing: border-box;
    padding: 16px;
    z-index: 1; }
  .widget_statblock_widget:before {
    position: absolute;
    border-radius: 3px;
    content: '';
    background-color: #000;
    opacity: 0.55;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0; }

.show-hide .show-hide__toggle {
  display: none; }

.show-hide--js .show-hide__toggle {
  display: inline-block;
  cursor: pointer; }

.show-hide--js .show-hide__toggle:hover {
  color: #A4292C; }

.show-hide--js .show-hide__toggle--active {
  color: #A4292C;
  position: relative; }

.show-hide--js .show-hide__toggle--active:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 7px 7px 7px;
  border-color: transparent transparent #dcd4be transparent;
  position: absolute;
  left: calc(50% - 7px);
  bottom: -16px; }

.show-hide--js .show-hide__content {
  display: none; }

.show-hide--js .show-hide__content--show {
  display: block; }

.announcement {
  background-color: #872225; }
  .announcement .textwidget {
    max-width: 720px;
    margin: auto; }
  .announcement .textwidget :last-child {
    margin-bottom: 0;
    text-align: center; }
  .announcement p {
    color: #FFFFFF; }
  .announcement p a {
    color: #FFD367; }
  .announcement p a:hover,
  .announcement p a:focus {
    color: #FFD367;
    text-decoration: underline; }

.item .figc * {
  color: #FFFFFF !important; }
