/*!
Theme Name: EnviroSmartSolutions
Theme URI: http://underscores.me/
Author: Dries Bester JR
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: envirosmartsolutions
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

EnviroSmartSolutions is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/
/* Apply this class to the body tag */
.fade-in {
  opacity: 0;
  animation: fadeInAnimation ease 1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards; }

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

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
:root {
  --color-primary: #2a5c16;
  /* Rich Green */
  --color-secondary: #57A0D3;
  /* Sky Blue */
  --color-tertiary: #8B4513;
  /* Earthy Brown */
  --color-accent1: #FADA5E;
  /* Light Yellow */
  --color-accent2: #1E90FF;
  /* Deep Blue */
  --well-color: #f2f2f2;
  /* soft grey used for well */
  --color-green-dark: #4f704f;
  --color-green-light: #bcdabc;
  --canvas-green: #F4FBF3;
  --color-text-primary: #1E1E1E;
  --color-text-primary-light: #707070;
  --color-text-light: #ffffff;
  --shadow-dark: 0 1rem 3rem rgba(0,0,0, .3);
  --shadow-light: 0 .5rem 1rem rgba(0,0,0, .1);
  --rounded-corners: 20px;
  --rounded-corners-minimal: 10px;
  --rails: 1px solid var(--color-green-dark); }

* {
  margin: 0;
  padding: 0; }

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

html {
  box-sizing: border-box;
  font-size: 62.5%; }
  @media only screen and (max-width: 68.75em) {
    html {
      font-size: 62.5%; } }
  @media only screen and (max-width: 56.25em) {
    html {
      font-size: 55%; } }
  @media only screen and (max-width: 37.5em) {
    html {
      font-size: 50%; } }
  @media only screen and (max-width: 31.25em) {
    html {
      font-size: 40%; } }

::selection {
  background-color: var(--color-primary); }

a {
  color: var(--color-primary); }
  a:visited {
    color: #5A825A; }
  a:hover, a:focus, a:active {
    color: #efcdaf; }
  a:focus {
    outline: thin dotted; }
  a:hover, a:active {
    outline: 0; }
  a.primary-button {
    background-color: var(--color-primary);
    border: 2px solid var(--color-primary);
    display: inline-block;
    color: white;
    border-radius: .5rem;
    text-decoration: none; }
    a.primary-button:visited {
      color: white;
      text-decoration: underline; }
    a.primary-button:hover {
      opacity: .75; }
    a.primary-button--large {
      padding: 2rem 2rem;
      font-size: 1.8rem;
      font-weight: 700;
      text-transform: uppercase; }
    a.primary-button--medium {
      padding: .5rem 1rem;
      font-size: 1.6rem; }
    a.primary-button--small {
      padding: .1rem .6rem;
      font-size: 1.2rem; }
  a.ghost-button {
    background-color: transparent;
    border: 2px solid var(--color-primary);
    display: inline-block;
    color: var(--color-primary);
    border-radius: .5rem;
    text-decoration: none;
    transition: transform 0.3s ease-out; }
    a.ghost-button:visited {
      color: var(--color-primary);
      text-decoration: underline; }
    a.ghost-button:hover {
      opacity: .75;
      transform: translateY(-2px);
      transition-delay: 0.3s;
      transition: transform 0.2s ease-in-out; }
    a.ghost-button--large {
      padding: 2rem 2rem;
      font-size: 1.8rem;
      font-weight: 700;
      text-transform: uppercase; }
    a.ghost-button--medium {
      padding: .5rem 1rem;
      font-size: 1.6rem; }
    a.ghost-button--small {
      padding: .1rem .6rem;
      font-size: 1.2rem; }

ul,
ol {
  margin: 0 0 1.5em 3em; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em; }

dt {
  font-weight: 700; }

dd {
  margin: 0 1.5em 1.5em; }

body {
  font-weight: 100;
  line-height: 1.6;
  background-size: cover;
  background-repeat: no-repeat;
  min-height: 100vh;
  color: var(--color-text-primary); }

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: var(--rounded-corners-minimal);
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 1rem 3rem;
  font-size: 1.6rem; }
  button:hover,
  input[type="button"]:hover,
  input[type="reset"]:hover,
  input[type="submit"]:hover {
    border-color: #ccc #bbb #aaa;
    cursor: pointer; }
  button:active, button:focus,
  input[type="button"]:active,
  input[type="button"]:focus,
  input[type="reset"]:active,
  input[type="reset"]:focus,
  input[type="submit"]:active,
  input[type="submit"]:focus {
    border-color: #aaa #bbb #bbb; }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="password"]:focus,
  input[type="search"]:focus,
  input[type="number"]:focus,
  input[type="tel"]:focus,
  input[type="range"]:focus,
  input[type="date"]:focus,
  input[type="month"]:focus,
  input[type="week"]:focus,
  input[type="time"]:focus,
  input[type="datetime"]:focus,
  input[type="datetime-local"]:focus,
  input[type="color"]:focus,
  textarea:focus {
    color: #111; }

select {
  border: 1px solid #ccc; }

textarea {
  width: 100%; }

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em; }

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%; }

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

figure {
  margin: 1em 0; }

table {
  margin: 0 0 1.5em;
  width: 100%; }

* {
  font-family: 'Open Sans', sans-serif; }

p {
  margin-bottom: 1.5em;
  font-size: 1.6rem; }

li {
  font-size: 1.6rem;
  line-height: 1.8; }

dfn,
cite,
em,
i {
  font-style: italic; }

blockquote {
  margin: 0 1.5em; }

address {
  margin: 0 0 1.5em; }

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em; }

code,
kbd,
tt,
var {
  font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace; }

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help; }

mark,
ins {
  background: #fff9c0;
  text-decoration: none; }

big {
  font-size: 125%; }

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  font-weight: 700;
  color: var(--color-primary); }

h1 {
  font-size: 3.0rem;
  /* Larger for main titles */ }

h2 {
  font-size: 2.25rem;
  /* Slightly smaller than h1 */ }

h3 {
  font-size: 1.75rem;
  /* Slightly smaller than h2 */ }

h4 {
  font-size: 1.5rem;
  /* Slightly smaller than h3 */ }

h5 {
  font-size: 1.25rem;
  /* Slightly smaller than h4 */ }

h6 {
  font-size: 1.0rem;
  /* Smallest, suitable for the least prominent headings */ }

body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5; }

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
.section__category-description {
  padding: 1.5rem;
  border: var(--rails); }
  .section__category-description p {
    margin-bottom: 0; }

#page {
  max-width: 1440px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 auto; }

header, main, footer {
  width: 100%; }

.soil-gel-page .container__1 {
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 15rem;
  padding-bottom: 10rem; }

.soil-gel-page .container__2 {
  background-color: var(--canvas-green); }
  .soil-gel-page .container__2 .section__how-it-works {
    background-image: linear-gradient(to right bottom, var(--color-green-dark), var(--color-green-light));
    background-size: cover;
    text-align: center;
    color: var(--color-text-light);
    border-radius: var(--rounded-corners);
    margin-top: 8rem;
    box-shadow: var(--shadow-light); }
    .soil-gel-page .container__2 .section__how-it-works h2 {
      padding-top: 2rem;
      padding-bottom: 2rem; }
    .soil-gel-page .container__2 .section__how-it-works .content {
      display: flex;
      margin-bottom: 6rem; }
      @media only screen and (max-width: 56.25em) {
        .soil-gel-page .container__2 .section__how-it-works .content {
          flex-direction: column;
          align-items: center; } }
      .soil-gel-page .container__2 .section__how-it-works .content img {
        border-radius: 100%;
        margin-bottom: 1.5rem; }
      .soil-gel-page .container__2 .section__how-it-works .content > div {
        display: flex;
        flex-direction: column;
        width: 50%;
        align-items: center;
        padding-left: 2rem;
        padding-right: 2rem; }
  .soil-gel-page .container__2 .section__testimonial {
    text-align: center;
    padding: 10rem 15rem; }
    @media only screen and (max-width: 56.25em) {
      .soil-gel-page .container__2 .section__testimonial {
        padding: 10rem 3rem; } }
  .soil-gel-page .container__2 .section__applications {
    display: flex;
    padding: 3rem 3rem;
    border: 3px solid var(--color-green-dark);
    border-radius: var(--rounded-corners);
    margin-bottom: 8rem;
    box-shadow: var(--shadow-light); }
    @media only screen and (max-width: 56.25em) {
      .soil-gel-page .container__2 .section__applications {
        flex-direction: column;
        align-items: center;
        padding: 3rem 0;
        text-align: center; } }
    .soil-gel-page .container__2 .section__applications .copy {
      width: 40%;
      align-self: center; }
      @media only screen and (max-width: 56.25em) {
        .soil-gel-page .container__2 .section__applications .copy {
          width: 80%; } }
    .soil-gel-page .container__2 .section__applications .image-grid {
      width: 60%;
      display: flex;
      justify-content: space-around;
      flex-wrap: wrap; }
      @media only screen and (max-width: 56.25em) {
        .soil-gel-page .container__2 .section__applications .image-grid {
          width: 90%; } }
      .soil-gel-page .container__2 .section__applications .image-grid__grid-item {
        width: 28%; }
        .soil-gel-page .container__2 .section__applications .image-grid__grid-item:nth-child(3) {
          margin-bottom: 3rem; }
        .soil-gel-page .container__2 .section__applications .image-grid__grid-item:nth-child(6) {
          margin-bottom: 3rem; }
        .soil-gel-page .container__2 .section__applications .image-grid__grid-item--image {
          width: 100%;
          border-radius: var(--rounded-corners);
          z-index: 2; }
        .soil-gel-page .container__2 .section__applications .image-grid__grid-item--caption {
          background-color: #212121;
          text-align: center;
          margin-top: -2.7rem;
          position: relative;
          z-index: 3;
          border-bottom-left-radius: 2rem;
          border-bottom-right-radius: 2rem;
          color: #ffffff;
          margin-bottom: 0; }

.soil-gel-page .container__3 {
  background-color: #ffffff; }
  .soil-gel-page .container__3 .section__benefits {
    text-align: center;
    padding-left: 0rem;
    padding-right: 0rem; }
    .soil-gel-page .container__3 .section__benefits h2 {
      margin-top: 3rem;
      margin-bottom: 3rem; }
    .soil-gel-page .container__3 .section__benefits .card-section {
      display: flex;
      justify-content: space-between;
      margin-bottom: 6rem; }
      @media only screen and (max-width: 56.25em) {
        .soil-gel-page .container__3 .section__benefits .card-section {
          flex-direction: column;
          align-items: center; } }
      .soil-gel-page .container__3 .section__benefits .card-section .card {
        width: 32%;
        background-color: var(--canvas-green);
        border-radius: var(--rounded-corners);
        padding-left: 2rem;
        box-shadow: var(--shadow-light); }
        @media only screen and (max-width: 56.25em) {
          .soil-gel-page .container__3 .section__benefits .card-section .card {
            width: 70%;
            margin-bottom: 2rem; } }
        .soil-gel-page .container__3 .section__benefits .card-section .card h3 {
          margin-top: 1rem;
          margin-bottom: 1rem; }
        .soil-gel-page .container__3 .section__benefits .card-section .card img {
          border-radius: 100%;
          width: 12.5rem;
          height: 12.5rem;
          margin-top: 2rem; }
        .soil-gel-page .container__3 .section__benefits .card-section .card ul {
          text-align: left;
          list-style-type: none;
          margin-left: 1.5rem;
          margin-right: 1.5rem; }
          .soil-gel-page .container__3 .section__benefits .card-section .card ul li {
            vertical-align: middle;
            text-indent: -2rem; }
          .soil-gel-page .container__3 .section__benefits .card-section .card ul li::before {
            content: "";
            display: inline-block;
            width: 1rem;
            height: 1rem;
            background-color: var(--color-primary);
            border-radius: 100%;
            margin-right: 1rem; }
          .soil-gel-page .container__3 .section__benefits .card-section .card ul li:last-child {
            margin-bottom: 2rem; }

.soil-gel-page .container__4 {
  background-color: var(--canvas-green); }
  .soil-gel-page .container__4 .section__faq {
    padding-top: 3rem;
    padding-bottom: 6rem; }
    .soil-gel-page .container__4 .section__faq h2 {
      text-align: center;
      padding-bottom: 2rem;
      margin-top: 1rem;
      margin-bottom: 2rem; }

.spotlight {
  margin-top: 2rem;
  margin-bottom: 2rem;
  display: flex;
  border-radius: 3rem; }
  @media only screen and (max-width: 56.25em) {
    .spotlight {
      flex-direction: column;
      align-items: center;
      margin-left: 1rem;
      margin-right: 1rem; } }
  .spotlight .featured-article {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex: 0 0 60%;
    box-shadow: var(--shadow-light);
    border-radius: 50px;
    overflow: hidden; }
    @media only screen and (max-width: 56.25em) {
      .spotlight .featured-article {
        margin-bottom: 2rem; } }
    .spotlight .featured-article .image {
      flex: 0 0 50%;
      width: 100%;
      height: 50rem; }
    .spotlight .featured-article .details {
      flex: 0 0 50%;
      background-color: white;
      padding: 3rem 2rem; }
      .spotlight .featured-article .details h3 {
        margin-bottom: 1.2rem; }
      .spotlight .featured-article .details p {
        margin-bottom: 0;
        font-size: 1.4rem; }
      .spotlight .featured-article .details .excerpt {
        margin: 2.5rem 0;
        font-size: 1.6rem; }
      .spotlight .featured-article .details a {
        margin-top: 2rem;
        text-decoration: none; }
      .spotlight .featured-article .details span {
        font-weight: 100;
        font-style: italic; }
  .spotlight .latest-articles {
    margin-left: 2rem; }
    .spotlight .latest-articles .item {
      display: flex;
      align-items: center;
      margin-bottom: 1rem;
      cursor: pointer;
      transition: box-shadow 0.3s ease;
      /* Transition effect for the box-shadow */ }
      @media only screen and (max-width: 56.25em) {
        .spotlight .latest-articles .item {
          margin-bottom: 2rem; } }
      .spotlight .latest-articles .item:hover {
        box-shadow: var(--shadow-light);
        /* Box shadow applied on hover */ }
      .spotlight .latest-articles .item .left {
        width: 20rem;
        height: 17rem; }
      .spotlight .latest-articles .item .right {
        width: 70%;
        padding: 1.5rem; }
        .spotlight .latest-articles .item .right a {
          text-decoration: none; }
        .spotlight .latest-articles .item .right p {
          margin-bottom: 0.5rem; }

.hero {
  padding: 1rem 1rem;
  display: flex;
  border: 2px solid var(--color-primary);
  border-radius: 20px;
  margin-bottom: 2rem; }
  @media only screen and (max-width: 56.25em) {
    .hero {
      flex-direction: column;
      align-items: center; } }
  .hero .left {
    flex: 0 0 55%;
    padding: 20rem 5rem; }
    @media only screen and (max-width: 56.25em) {
      .hero .left {
        padding: 10rem 5rem; } }
    .hero .left h1 {
      font-size: 4rem;
      letter-spacing: -2px; }
  .hero .right {
    position: relative;
    /* Ensure that the pseudo-element is positioned relatively to this container */
    flex: 0 0 45%; }
    .hero .right:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: url("images/home/hero.png") no-repeat center center;
      background-size: cover;
      transform: scaleX(-1);
      /* Flip the pseudo-element horizontally */
      z-index: -1;
      /* Position the pseudo-element behind the content of '.right' */ }

.single-post-banner {
  height: 35rem;
  width: 100%;
  background-position: center center;
  background-size: cover; }
  @media only screen and (max-width: 37.5em) {
    .single-post-banner {
      height: 20rem; } }

.section__article-body {
  padding: 1.5rem;
  margin: 0 auto; }
  .section__article-body h1 {
    margin-bottom: 1rem; }
  .section__article-body .single-post-meta {
    display: flex;
    align-items: center;
    margin-bottom: 2rem; }
    .section__article-body .single-post-meta__published-date p {
      margin-bottom: 0;
      font-style: italic;
      font-size: 1.4rem; }
    .section__article-body .single-post-meta__social-icons {
      margin-left: auto; }
      .section__article-body .single-post-meta__social-icons a {
        margin-left: 2rem;
        display: inline-block; }
        .section__article-body .single-post-meta__social-icons a:first-child {
          margin-left: 0; }
        .section__article-body .single-post-meta__social-icons a img {
          height: 3rem;
          transition: transform 0.3s ease-out; }
          .section__article-body .single-post-meta__social-icons a img:hover {
            transform: translateY(-2px);
            transition-delay: 0.3s;
            transition: transform 0.2s ease-in-out; }
  @media only screen and (max-width: 56.25em) {
    .section__article-body {
      width: 100%;
      margin-top: 0rem; } }

.article-container {
  display: flex; }
  .article-container .left {
    flex: 0 0 40rem;
    padding: 1.5rem; }
    @media only screen and (max-width: 56.25em) {
      .article-container .left {
        display: none; } }
    .article-container .left ul {
      margin-left: 0;
      margin-bottom: 0;
      list-style: none; }
      .article-container .left ul li {
        font-size: 1.4rem; }
    .article-container .left h3 {
      font-weight: bold; }
    .article-container .left .table-of-contents {
      background-color: var(--well-color);
      padding: 1.5rem; }
      .article-container .left .table-of-contents a {
        color: var(--color-secondary); }
  .article-container .right {
    flex: 1 0; }
    .article-container .right .article_sources {
      background-color: var(--well-color);
      padding: 1rem;
      border-radius: 1rem; }
      .article-container .right .article_sources p {
        margin-bottom: 0; }

.sticky {
  position: fixed;
  top: 10px;
  /* Adjust this value according to your site's layout */
  width: 26.85rem; }

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Navigation
--------------------------------------------- */
.section__blog-navigation {
  display: flex;
  justify-content: left;
  align-items: center; }
  @media only screen and (max-width: 56.25em) {
    .section__blog-navigation button {
      font-size: 1.8rem;
      border: 1px solid var(--color-primary); } }
  .section__blog-navigation .categories-pane {
    display: flex; }
    @media only screen and (max-width: 56.25em) {
      .section__blog-navigation .categories-pane {
        padding-left: 0rem;
        padding-right: 0rem; } }
    .section__blog-navigation .categories-pane__list ul {
      display: flex;
      margin-left: 0;
      margin-bottom: 0;
      background-color: white;
      border-radius: var(--rounded-corners-minimal);
      box-shadow: var(--shadow-light);
      padding-left: 1.5rem;
      padding-right: 1.5rem; }
      @media only screen and (max-width: 56.25em) {
        .section__blog-navigation .categories-pane__list ul {
          display: none; } }
      .section__blog-navigation .categories-pane__list ul li {
        list-style: none; }
        .section__blog-navigation .categories-pane__list ul li:not(:first-child) {
          margin-left: 1rem; }
        .section__blog-navigation .categories-pane__list ul li a, .section__blog-navigation .categories-pane__list ul li span {
          display: inline-block;
          padding-bottom: 1.2rem;
          padding-top: 1.2rem;
          border-bottom: 4px solid transparent;
          text-decoration: none;
          color: var(--color-text-primary); }
          .section__blog-navigation .categories-pane__list ul li a:hover, .section__blog-navigation .categories-pane__list ul li span:hover {
            border-bottom: 4px solid var(--color-secondary);
            color: currentColor; }
        .section__blog-navigation .categories-pane__list ul li span {
          color: lightgray;
          border-bottom: 4px solid var(--color-secondary); }
          .section__blog-navigation .categories-pane__list ul li span:hover {
            border-bottom: 4px solid var(--color-secondary);
            color: lightgray; }
      .section__blog-navigation .categories-pane__list ul.expanded {
        padding-left: 0px;
        padding-right: 0px;
        flex-direction: column;
        display: inherit;
        position: absolute;
        margin-top: 5rem;
        box-shadow: var(--shadow-light);
        animation: fadeIn .5s; }
        @media only screen and (max-width: 37.5em) {
          .section__blog-navigation .categories-pane__list ul.expanded {
            width: 100%;
            left: 0; } }
        .section__blog-navigation .categories-pane__list ul.expanded li {
          margin-left: 0; }
          .section__blog-navigation .categories-pane__list ul.expanded li a, .section__blog-navigation .categories-pane__list ul.expanded li span {
            padding: 1.5rem;
            width: 100%; }
          .section__blog-navigation .categories-pane__list ul.expanded li span {
            display: inline-block; }
    .section__blog-navigation .categories-pane__toggle {
      display: none; }
      @media only screen and (max-width: 56.25em) {
        .section__blog-navigation .categories-pane__toggle {
          display: inherit; } }
      .section__blog-navigation .categories-pane__toggle .categories-pane__toggle--button {
        background-color: white;
        box-shadow: var(--shadow-light); }
        .section__blog-navigation .categories-pane__toggle .categories-pane__toggle--button span::after {
          content: "\203A";
          margin-left: 1rem;
          display: inline-block;
          transition: all .25s;
          rotate: 90deg; }
        .section__blog-navigation .categories-pane__toggle .categories-pane__toggle--button.expanded span::after {
          rotate: -90deg; }
  .section__blog-navigation .tag-dropdown {
    flex: 0 0 auto;
    margin-left: 5px;
    align-self: stretch;
    box-shadow: var(--shadow-light);
    border-radius: var(--rounded-corners-minimal); }
    .section__blog-navigation .tag-dropdown button {
      background-color: white; }
      @media only screen and (min-width: 56.25em) {
        .section__blog-navigation .tag-dropdown button {
          border: none;
          border-bottom: 4px solid transparent;
          height: 100%; }
          .section__blog-navigation .tag-dropdown button span {
            font-size: 1.6rem; } }
      .section__blog-navigation .tag-dropdown button span::after {
        content: "\203A";
        color: var(--color-text-primary);
        margin-left: 1rem;
        display: inline-block;
        transition: all .25s;
        rotate: 90deg; }
      .section__blog-navigation .tag-dropdown button.expanded span::after {
        rotate: -90deg; }
    .section__blog-navigation .tag-dropdown .tag-dropdown__panel {
      display: none; }
      .section__blog-navigation .tag-dropdown .tag-dropdown__panel ul {
        background-color: white;
        margin-left: 0;
        margin-bottom: 0;
        list-style: none; }
        .section__blog-navigation .tag-dropdown .tag-dropdown__panel ul li.tagItem {
          width: 100%; }
          .section__blog-navigation .tag-dropdown .tag-dropdown__panel ul li.tagItem a {
            text-decoration: none;
            display: inline-block;
            width: 100%;
            padding: 2rem 2rem;
            color: var(--color-text-primary);
            transition: background-color 0.3s ease; }
            .section__blog-navigation .tag-dropdown .tag-dropdown__panel ul li.tagItem a:hover {
              background-color: var(--color-secondary); }
    .section__blog-navigation .tag-dropdown__panel.expanded {
      display: inherit;
      position: absolute;
      box-shadow: var(--shadow-light);
      animation: fadeIn .5s;
      border-radius: var(--rounded-corners-minimal); }
      @media only screen and (max-width: 37.5em) {
        .section__blog-navigation .tag-dropdown__panel.expanded {
          width: 100%;
          left: 0; } }
  .section__blog-navigation .search-box {
    border: var(--rails);
    margin-left: 5px;
    box-shadow: var(--shadow-light); }
    .section__blog-navigation .search-box__button {
      display: flex;
      justify-content: center;
      align-items: center; }
      .section__blog-navigation .search-box__button img {
        width: 1.5rem; }
      .section__blog-navigation .search-box__button button {
        background-color: white;
        border-color: var(--color-text-primary); }
        @media only screen and (min-width: 56.25em) {
          .section__blog-navigation .search-box__button button {
            border: none; } }

.section__breadcrumbs {
  padding: 1.5rem;
  display: flex;
  background-color: var(--well-color); }
  .section__breadcrumbs ol.breadcrumb {
    display: flex;
    list-style-type: none;
    margin-bottom: 0;
    margin-left: 0; }
    .section__breadcrumbs ol.breadcrumb .breadcrumb-item {
      margin-right: 1rem;
      font-size: 1.4rem; }
      .section__breadcrumbs ol.breadcrumb .breadcrumb-item a {
        color: var(--color-secondary);
        text-decoration: none; }
    .section__breadcrumbs ol.breadcrumb :not(:last-child).breadcrumb-item::after {
      display: inline-block;
      content: ">";
      margin-left: 1rem; }

.footer .section__footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1rem 3rem; }
  .footer .section__footer img {
    padding-top: 5rem;
    width: 10rem;
    height: 10rem; }
  .footer .section__footer p {
    margin-bottom: 1rem;
    margin-top: 2rem;
    padding-bottom: 3rem;
    font-style: italic;
    font-size: 1.6rem;
    color: var(--color-text-primary);
    text-align: center; }

.main-navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2rem 0rem; }
  .main-navigation .nav-left .logo-box {
    display: flex;
    align-items: center; }
    .main-navigation .nav-left .logo-box img {
      width: 3.5rem;
      height: 3.5rem;
      margin-right: .5rem; }
    .main-navigation .nav-left .logo-box a {
      text-decoration: none;
      font-weight: 100;
      color: var(--color-text-primary); }
      .main-navigation .nav-left .logo-box a:visited {
        color: var(--color-text-primary); }
    .main-navigation .nav-left .logo-box h4 {
      letter-spacing: -2px;
      transition: transform 0.2s ease-out; }
      .main-navigation .nav-left .logo-box h4:hover {
        transform: translateY(-1px);
        transition-delay: 0.2s;
        transition: transform 0.2s ease-in-out; }
    .main-navigation .nav-left .logo-box span {
      color: var(--color-primary);
      font-weight: 700; }
  .main-navigation .nav-right {
    display: flex; }
    .main-navigation .nav-right .menu-box {
      text-transform: uppercase;
      display: block; }
      @media only screen and (max-width: 56.25em) {
        .main-navigation .nav-right .menu-box {
          display: none; } }
      .main-navigation .nav-right .menu-box ul {
        margin: 0; }
      .main-navigation .nav-right .menu-box-list {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        list-style: none; }
        .main-navigation .nav-right .menu-box-list--item {
          padding: 1rem 2rem;
          font-weight: 700; }
          .main-navigation .nav-right .menu-box-list--item a {
            text-decoration: none;
            color: var(--color-text-primary); }
            .main-navigation .nav-right .menu-box-list--item a:hover {
              color: var(--color-secondary); }
    .main-navigation .nav-right .button-box {
      display: none; }
      .main-navigation .nav-right .button-box button {
        font-size: 1.5rem;
        border: 2px solid var(--color-primary);
        background-color: var(--color-primary);
        color: #ffffff; }
        .main-navigation .nav-right .button-box button:active, .main-navigation .nav-right .button-box button:hover {
          opacity: .5; }
      @media only screen and (max-width: 56.25em) {
        .main-navigation .nav-right .button-box {
          display: block; } }
  .main-navigation.toggled .menu-box {
    display: block;
    background-color: #ffffff;
    padding-bottom: 1rem;
    position: absolute;
    width: 100vw;
    top: 8.6rem;
    left: 0;
    padding-bottom: 0;
    z-index: 1000; }
    .main-navigation.toggled .menu-box .menu-box-list {
      flex-direction: column;
      margin: 0;
      z-index: 999; }
      .main-navigation.toggled .menu-box .menu-box-list--item {
        width: 100%;
        padding: 0; }
        .main-navigation.toggled .menu-box .menu-box-list--item a {
          display: block;
          padding: 2rem 2rem; }

.post-navigation {
  display: flex;
  justify-content: space-between;
  padding-top: .8rem;
  padding-bottom: .8rem; }
  .post-navigation .next-post-link {
    margin-left: auto; }
  .post-navigation a {
    font-size: 1.4rem; }

.section__tag-section .tags-list {
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: flex;
  justify-content: center;
  font-size: 1.6rem; }
  .section__tag-section .tags-list .tag-link {
    margin-left: .5rem; }

/* Posts and pages
--------------------------------------------- */
.accordion__item {
  background-color: #ffffff;
  margin-bottom: 1rem;
  border: 1px solid var(--color-text-primary);
  box-shadow: var(--shadow-light); }
  .accordion__item--heading h3 {
    padding: 2rem 2rem; }
  .accordion__item--heading h3 a {
    text-decoration: none;
    color: var(----color-text-primary);
    display: block; }
    .accordion__item--heading h3 a:hover {
      opacity: .75;
      cursor: pointer; }
  .accordion__item--content {
    height: 0px;
    visibility: hidden;
    opacity: 0; }
    .accordion__item--content p {
      padding: 1rem 0rem;
      margin-bottom: 0; }
  .accordion__item--content.active {
    padding: 2rem 2rem;
    visibility: visible;
    width: 100%;
    height: inherit;
    transition: all .2s;
    opacity: 1;
    border-top: 1px solid var(--color-text-primary); }

.card-section {
  display: flex;
  justify-content: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
  flex-wrap: wrap;
  gap: 2rem; }
  @media only screen and (max-width: 56.25em) {
    .card-section {
      flex-direction: column;
      align-items: center; } }
  .card-section .single-content-card {
    display: flex;
    flex: 1 0 20rem;
    min-width: 27rem;
    max-width: 27rem;
    flex-direction: column;
    box-shadow: var(--shadow-dark);
    border-radius: 2rem;
    background-color: white;
    transition: transform 0.3s ease-out; }
    @media only screen and (max-width: 56.25em) {
      .card-section .single-content-card {
        flex: 1 0 20rem;
        max-width: 50rem;
        margin-bottom: 3rem; } }
    .card-section .single-content-card:hover {
      transform: translateY(-2px);
      transition-delay: 0.3s;
      transition: transform 0.2s ease-in-out; }
    .card-section .single-content-card:last-child {
      margin-right: 0; }
    .card-section .single-content-card__header {
      height: 20rem;
      overflow: hidden;
      border-top-right-radius: 2rem;
      border-top-left-radius: 2rem; }
    .card-section .single-content-card__body {
      color: var(--color-text-primary);
      padding: 2rem 3rem; }
      .card-section .single-content-card__body h3 {
        margin-bottom: 1.8rem; }
        .card-section .single-content-card__body h3 a {
          text-decoration: none; }
      .card-section .single-content-card__body p {
        margin-bottom: 2rem;
        font-size: 1.4rem; }
    .card-section .single-content-card__cta {
      padding: 0.5rem 3rem 2rem 3rem;
      margin-top: auto; }

.modal {
  display: none;
  /* Hidden by default */
  position: fixed;
  /* Stay in place */
  z-index: 1;
  /* Sit on top */
  padding-top: 5rem;
  /* Location of the box */
  left: 0;
  top: 0;
  width: 100%;
  /* Full width */
  height: 100%;
  /* Full height */
  overflow: auto;
  /* Enable scroll if needed */
  background-color: black;
  /* Fallback color */
  background-color: rgba(0, 0, 0, 0.4);
  /* Black w/ opacity */ }
  .modal-content {
    background-color: var(--canvas-green);
    margin: auto;
    padding: 20px;
    border: 5px solid var(--color-green-dark);
    width: 50%;
    box-shadow: var(--shadow-dark);
    animation: fadeIn 1s;
    color: var(--color-text-primary); }
    .modal-content h3 {
      font-weight: bold;
      font-size: 3rem;
      margin-bottom: 2rem; }
    @media only screen and (max-width: 56.25em) {
      .modal-content {
        width: 85%;
        margin-top: 10rem; } }

#myModal {
  background-color: white;
  z-index: 15; }
  #myModal input, #myModal textarea {
    width: 100%;
    font-size: 1.6rem;
    padding: 2rem;
    border-radius: 5px;
    border: 1px solid var(--color-text-primary); }
  #myModal input {
    height: 3rem; }
  #myModal textarea {
    height: 10rem; }
  #myModal .wpcf7-submit {
    padding-bottom: 3.5rem;
    background-color: var(--color-primary);
    color: #ffffff;
    text-transform: uppercase;
    font-weight: 700;
    border: 2px solid var(--color-primary);
    cursor: pointer; }
    #myModal .wpcf7-submit:hover {
      opacity: .75; }
  #myModal .wpcf7-response-output {
    font-size: 1.6rem;
    border-color: crimson; }

/* The Close Button */
.close {
  color: var(--color-primary);
  float: right;
  font-size: 3rem;
  font-weight: bold; }

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer; }

.explore {
  border: 2px solid var(--color-primary);
  border-radius: var(--rounded-corners);
  padding: 2rem 2rem; }
  .explore h3 {
    font-size: 4rem; }
  .explore .card-group {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    flex-wrap: wrap;
    padding: 2rem; }
    @media only screen and (max-width: 56.25em) {
      .explore .card-group {
        flex-direction: column; } }
    .explore .card-group .card {
      flex: 0 0 22%;
      margin: 5px;
      box-sizing: border-box; }
      .explore .card-group .card .card-top {
        height: 30rem;
        border-top-left-radius: var(--rounded-corners);
        border-top-right-radius: var(--rounded-corners);
        overflow: hidden;
        display: flex;
        justify-content: center;
        align-items: center;
        text-decoration: none;
        color: inherit; }
      .explore .card-group .card .card-bottom {
        background-color: var(--well-color);
        text-align: center;
        padding: 2rem 0; }
        .explore .card-group .card .card-bottom a {
          text-decoration: none;
          color: inherit; }
        .explore .card-group .card .card-bottom h4 {
          margin: 0; }

.section__hero {
  text-align: center;
  color: #ffffff;
  display: flex;
  align-items: center;
  flex-direction: column;
  padding: 10rem; }
  .section__hero h1 {
    color: #ffffff;
    margin: 0;
    line-height: 5.5rem;
    opacity: 0;
    animation-delay: .5s;
    animation: fadeIn 1.5s;
    animation-fill-mode: forwards; }
  .section__hero p {
    color: #ffffff;
    font-size: 2.4rem;
    margin-bottom: 0;
    margin-top: 1rem;
    opacity: 0;
    animation: fadeIn 1.5s;
    animation-delay: 1s;
    animation-fill-mode: forwards; }
  .section__hero .button-box {
    opacity: 0;
    animation: fadeIn 1.5s;
    animation-delay: 2s;
    animation-fill-mode: forwards; }
    .section__hero .button-box a:first-child {
      margin-left: 1rem;
      margin-right: 1rem; }

.newsletter {
  background-color: var(--well-color);
  /* Ensure --well-color is defined */
  display: flex;
  border-radius: 2rem;
  margin-top: 2rem; }
  @media only screen and (max-width: 56.25em) {
    .newsletter {
      flex-direction: column;
      align-items: center; } }
  .newsletter .left {
    flex: 0 0 30%;
    padding: 2rem; }
    .newsletter .left p {
      margin-bottom: 0; }
    @media only screen and (max-width: 56.25em) {
      .newsletter .left {
        width: 100%; } }
  .newsletter .right {
    flex: 0 0 70%;
    padding: 2rem;
    padding-top: 3rem; }
    @media only screen and (max-width: 56.25em) {
      .newsletter .right {
        width: 100%; } }
    .newsletter .right .wpcf7-form {
      width: 100%;
      /* Ensure the form takes full width of its parent */ }
      .newsletter .right .wpcf7-form #submit_button {
        background-color: var(--color-primary);
        color: white;
        padding: 1.8rem;
        border: transparent; }
      .newsletter .right .wpcf7-form p {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 10px;
        margin-bottom: 0; }
        .newsletter .right .wpcf7-form p .wpcf7-form-control-wrap {
          flex: 1;
          /* Allows the fields to grow and take available space */
          min-width: 120px;
          /* Minimum width of the fields */ }
          .newsletter .right .wpcf7-form p .wpcf7-form-control-wrap:not(.wpcf7-submit) {
            margin-right: 10px;
            /* Space between fields, except the submit button */ }
          .newsletter .right .wpcf7-form p .wpcf7-form-control-wrap input {
            width: 100%;
            /* Full width of the parent */
            padding: 1rem;
            /* Padding for inputs */
            margin-bottom: 0;
            /* Reset margin bottom */
            font-size: 2.1rem;
            /* Set the font size of inputs */ }

.sticky {
  display: block; }

.updated:not(.published) {
  display: none; }

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0; }

.page-links {
  clear: both;
  margin: 0 0 1.5em; }

.section__social-proof {
  background-image: linear-gradient(to right bottom, var(--color-green-dark), var(--color-green-light));
  border-radius: var(--rounded-corners);
  padding: 10rem 15rem;
  text-align: center;
  margin-bottom: 6rem;
  box-shadow: var(--shadow-dark); }
  @media only screen and (max-width: 56.25em) {
    .section__social-proof {
      padding: 10rem 3rem; } }
  .section__social-proof h4 {
    color: #ffffff; }

/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word; }

.bypostauthor {
  display: block; }

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em; }
  .widget select {
    max-width: 100%; }

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0; }

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block; }

/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%; }
  .wp-caption img[class*="wp-image-"] {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .wp-caption .wp-caption-text {
    margin: 0.8075em 0; }

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

/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em; }

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%; }

.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr); }

.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr); }

.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr); }

.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr); }

.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr); }

.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr); }

.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr); }

.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr); }

.gallery-caption {
  display: block; }

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none; }

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block; }

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; }
  .screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    clip-path: none;
    color: #21759b;
    display: block;
    font-size: 0.875rem;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000; }

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0; }

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em; }

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em; }

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em; }

/*
Theme Name: EnviroSmartSolutions

WooCommerce styles override
*/
/* Apply this class to the body tag */
.fade-in {
  opacity: 0;
  animation: fadeInAnimation ease 1s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards; }

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

/**
 * Shop tables
 */
table.shop_table_responsive thead {
  display: none; }

table.shop_table_responsive tbody th {
  display: none; }

table.shop_table_responsive tr td {
  display: block;
  text-align: right;
  clear: both; }
  table.shop_table_responsive tr td::before {
    content: attr(data-title) ": ";
    float: left; }
  table.shop_table_responsive tr td.product-remove a {
    text-align: left; }
  table.shop_table_responsive tr td.product-remove::before {
    display: none; }
  table.shop_table_responsive tr td.actions::before, table.shop_table_responsive tr td.download-actions::before {
    display: none; }
  table.shop_table_responsive tr td.download-actions .button {
    display: block;
    text-align: center; }

@media screen and (min-width: 48em) {
  table.shop_table_responsive thead {
    display: table-header-group; }
  table.shop_table_responsive tbody th {
    display: table-cell; }
  table.shop_table_responsive tr th,
  table.shop_table_responsive tr td {
    text-align: left; }
  table.shop_table_responsive tr td {
    display: table-cell; }
    table.shop_table_responsive tr td::before {
      display: none; } }

/**
 * Products
 */
ul.products {
  margin: 0;
  padding: 0; }
  ul.products li.product {
    list-style: none;
    position: relative;
    margin-bottom: 2em; }
    ul.products li.product img {
      display: block; }
    ul.products li.product .button {
      display: block; }

@media screen and (min-width: 48em) {
  ul.products li.product {
    width: 30.79667%;
    float: left;
    margin-right: 3.8%; }
    ul.products li.product.first {
      clear: both; }
    ul.products li.product.last {
      margin-right: 0; }
  ul.products.columns-1 li.product {
    float: none;
    width: 100%; }
  ul.products.columns-2 li.product {
    width: 48.1%; }
  ul.products.columns-3 li.product {
    width: 30.79667%; }
  ul.products.columns-4 li.product {
    width: 22.15%; }
  ul.products.columns-5 li.product {
    width: 16.96%; }
  ul.products.columns-6 li.product {
    width: 13.49333%; } }

/**
 * Single product
 */
.single-product div.product {
  position: relative; }
  .single-product div.product .woocommerce-product-gallery {
    position: relative;
    float: left; }
    .single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
      position: absolute;
      top: 2em;
      right: 1em;
      display: block;
      z-index: 99; }
    .single-product div.product .woocommerce-product-gallery .flex-viewport {
      margin-bottom: 1em; }
    .single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
      margin: 0;
      padding: 0; }
      .single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
        list-style: none;
        cursor: pointer;
        float: left; }
        .single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
          opacity: 0.5; }
          .single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
            opacity: 1; }
        .single-product div.product .woocommerce-product-gallery .flex-control-thumbs li:hover img {
          opacity: 1; }
    .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li {
      width: 48.1%; }
      .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li:nth-child(2n) {
        margin-right: 0; }
      .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li:nth-child(2n+1) {
        clear: both; }
    .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li {
      width: 30.79667%; }
      .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n) {
        margin-right: 0; }
      .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1) {
        clear: both; }
    .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
      width: 22.15%; }
      .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n) {
        margin-right: 0; }
      .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1) {
        clear: both; }
    .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li {
      width: 16.96%; }
      .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n) {
        margin-right: 0; }
      .single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1) {
        clear: both; }

.stock:empty::before {
  display: none; }

.stock.in-stock {
  color: #a1e8b9; }

.stock.out-of-stock {
  color: #df7f69; }

/**
 * Checkout
 */
@media screen and (min-width: 768px) {
  .col2-set .form-row-first {
    float: left;
    margin-right: 3.8%; }
  .col2-set .form-row-last {
    float: right;
    margin-right: 0; }
  .col2-set .form-row-first,
  .col2-set .form-row-last {
    width: 48.1%; } }

/**
 * General WooCommerce components
 */
/**
 * Header cart
 */
.site-header-cart {
  position: relative;
  margin: 0;
  padding: 0; }
  .site-header-cart .cart-contents {
    text-decoration: none; }
  .site-header-cart .widget_shopping_cart {
    display: none; }
  .site-header-cart .product_list_widget {
    margin: 0;
    padding: 0; }

/**
 * Star rating
 */
.star-rating {
  overflow: hidden;
  position: relative;
  height: 1.618em;
  line-height: 1.618;
  width: 5.3em;
  font-family: star;
  font-weight: 400; }
  .star-rating::before {
    content: "\53\53\53\53\53";
    opacity: 0.25;
    float: left;
    top: 0;
    left: 0;
    position: absolute; }
  .star-rating span {
    overflow: hidden;
    float: left;
    top: 0;
    left: 0;
    position: absolute;
    padding-top: 1.5em; }
  .star-rating span::before {
    content: "\53\53\53\53\53";
    top: 0;
    position: absolute;
    left: 0;
    color: #F0821F; }

p.stars a {
  position: relative;
  height: 1em;
  width: 1em;
  text-indent: -999em;
  display: inline-block;
  text-decoration: none;
  margin-right: 1px;
  font-weight: 400; }
  p.stars a::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 1em;
    height: 1em;
    line-height: 1;
    font-family: star;
    content: "\53";
    color: #404040;
    text-indent: 0;
    opacity: 0.25; }
  p.stars a:hover ~ a::before {
    content: "\53";
    color: #404040;
    opacity: 0.25; }

p.stars:hover a::before {
  content: "\53";
  color: #F0821F;
  opacity: 1; }

p.stars.selected a.active::before {
  content: "\53";
  color: #F0821F;
  opacity: 1; }

p.stars.selected a.active ~ a::before {
  content: "\53";
  color: #404040;
  opacity: 0.25; }

p.stars.selected a:not(.active)::before {
  content: "\53";
  color: #F0821F;
  opacity: 1; }

/**
 * Tabs
 */
.woocommerce-tabs ul.tabs {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: left; }
  .woocommerce-tabs ul.tabs li {
    display: block;
    margin: 0;
    position: relative; }
    .woocommerce-tabs ul.tabs li a {
      padding: 1em 0;
      display: block; }

.woocommerce-tabs .panel h2:first-of-type {
  margin-bottom: 1em; }

/**
 * Password strength meter
 */
.woocommerce-password-strength {
  text-align: right; }
  .woocommerce-password-strength.strong {
    color: #a1e8b9; }
  .woocommerce-password-strength.short {
    color: #df7f69; }
  .woocommerce-password-strength.bad {
    color: #df7f69; }
  .woocommerce-password-strength.good {
    color: #008ddf; }

/**
 * Forms
 */
.form-row.woocommerce-validated input.input-text {
  box-shadow: inset 2px 0 0 #a1e8b9; }

.form-row.woocommerce-invalid input.input-text {
  box-shadow: inset 2px 0 0 #df7f69; }

.required {
  color: #f00; }

/**
 * Notices
 */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
  background-color: #a1e8b9;
  clear: both; }

.woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
  background-color: #008ddf; }

.woocommerce-error {
  background-color: #df7f69; }

.demo_store {
  position: fixed;
  left: 0;
  bottom: 0;
  right: 0;
  margin: 0;
  padding: 1em;
  background-color: #008ddf;
  z-index: 9999; }

@media screen and (min-width: 48em) {
  /**
	 * Header cart
	 */
  .site-header-cart .widget_shopping_cart {
    position: absolute;
    top: 100%;
    width: 100%;
    z-index: 999999;
    left: -999em;
    display: block;
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2); }
  .site-header-cart:hover .widget_shopping_cart, .site-header-cart.focus .widget_shopping_cart {
    left: 0;
    display: block; } }

/**
 * WooCommerce widgets
 */
/**
 * WooCommerce Price Filter
 */
.widget_price_filter .price_slider {
  margin-bottom: 1.5em; }

.widget_price_filter .price_slider_amount {
  text-align: right;
  line-height: 2.4; }
  .widget_price_filter .price_slider_amount .button {
    float: left; }

.widget_price_filter .ui-slider {
  position: relative;
  text-align: left; }

.widget_price_filter .ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 1em;
  height: 1em;
  cursor: ew-resize;
  outline: none;
  background: #F0821F;
  box-sizing: border-box;
  margin-top: -0.25em;
  opacity: 1; }
  .widget_price_filter .ui-slider .ui-slider-handle:last-child {
    margin-left: -1em; }
  .widget_price_filter .ui-slider .ui-slider-handle:hover, .widget_price_filter .ui-slider .ui-slider-handle.ui-state-active {
    box-shadow: 0 0 0 0.25em rgba(0, 0, 0, 0.1); }

.widget_price_filter .ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  display: block;
  border: 0;
  background: #F0821F; }

.widget_price_filter .price_slider_wrapper .ui-widget-content {
  background: rgba(0, 0, 0, 0.1); }

.widget_price_filter .ui-slider-horizontal {
  height: 0.5em; }

.widget_price_filter .ui-slider-horizontal .ui-slider-range {
  height: 100%; }
