@charset "UTF-8";
/*
Theme Name: Gateway
Theme URI: https://rescuethemes.com/wordpress-themes/gateway
Author: Rescue Themes
Author URI: https://rescuethemes.com
Description: Gateway incorporates elegant style with user friendly customizer options making it perfectly suited for a variety of WordPress users. Further instructions within the readme.txt file.
Version: 1.2.31
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gateway
Tags: light, white, three-columns, responsive-layout, featured-images, theme-options, custom-colors, threaded-comments, translation-ready, right-sidebar, full-width-template, sticky-post, custom-header, custom-background

Gateway WordPress Theme, Copyright 2015 Rescue Themes
Gateway is distributed under the terms of the GNU GPL

Gateway is based on Underscores http://underscores.me/, (C) 2012-2015 Automattic, Inc.

*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------

1.0 Defaults
2.0 Alignments
3.0 Accessibility
4.0 Inifinite Scroll
5.0 Media
6.0 Header
	6.1 Navigation
7.0 Home
	7.1 Home Hero
	7.2 Home Posts
	7.3 Home Content
8.0 Forms
9.0 Content
	9.1 Posts
	9.2 Blog Page
	9.3 404 Page
	9.4 Archive Page
	9.5 Full Width
	9.6 Contact Page
10.0 Comments
11.0 Widgets
12.0 Footer
13.0 Videos
14.0 Misc
15.0 Pro

--------------------------------------------------------------*/
/*--------------------------------------------------------------
1.0 Defaults
--------------------------------------------------------------*/
a {
  -o-transition: 0.2s;
  -ms-transition: 0.2s;
  -moz-transition: 0.2s;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

abbr, acronym {
  cursor: pointer;
}

blockquote {
  margin: 1rem 7rem 1.5rem 7rem !important;
  background-color: #f8f8f8 !important;
  border-left: 8px solid transparent !important;
  padding: 1rem 2rem 1rem 2rem !important;
  box-sizing: content-box !important;
}

blockquote p {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

@media only screen and (max-width: 40em) {
    blockquote {
      margin: 1rem 2rem 1.5rem 2rem !important;
      background-color: #f8f8f8 !important;
      border-left: 8px solid transparent !important;
      padding: 1rem 0.5rem 1rem 0.5rem !important;
      box-sizing: content-box !important;
    }

    blockquote p {
      margin-top: 1rem !important;
      margin-bottom: 1rem !important;
    }
}

blockquote cite {
  margin-top: 1em;
}

button, .button {
  font-style: italic;
}

.vcard {
  border: none;
  margin: 0 0;
  padding: 0 0;
}

pre {
  background-color: #efefef;
  line-height: 2;
  padding: 2em;
}

/*--------------------------------------------------------------
2.0 Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  display: block;
  margin: 0 auto;
}

/*--------------------------------------------------------------
3.0 Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.screen-reader-text:hover, .screen-reader-text:active, .screen-reader-text:focus {
  background-color: #f1f1f1;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar */
}

/*--------------------------------------------------------------
4.0 Inifinite Scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .paging-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before */
.infinity-end.neverending .site-footer {
  display: block;
}

#infinite-footer .container {
  padding: 20px !important;
}
#infinite-footer .blog-info a {
  font-size: 1.325rem !important;
  color: #666666 !important;
  font-weight: normal !important;
}
#infinite-footer .blog-info a:before {
  font-family: 'FontAwesome';
  content: "";
  margin: 0 15px 0 -15px;
  margin: 0 10px 0 0;
}
#infinite-footer .blog-info a:hover {
  text-decoration: none !important;
  color: #e8554e !important;
}

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

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

.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

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

.gallery {
  margin: 2.5em 0;
  float: left;
}

.gallery figure {
  margin: 0 0;
}

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

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
6.0 Header
--------------------------------------------------------------*/
.bg-image-header .site-branding, .home-header-bg .site-branding {
  padding: 2.188em 0;
  text-align: center;
  display: block;
  margin: 0 auto;
}
.bg-image-header .site-branding h1 a, .home-header-bg .site-branding h1 a {
  color: #FFFFFF;
}
.bg-image-header .site-branding h2, .home-header-bg .site-branding h2 {
  font-size: 1em;
  color: #FFFFFF;
}

.site-header hr {
  margin: 0 0;
}

.bg-image {
  height: 210px;
  width: 100%;
}

/* Banner or Inner hero: make sure fixed heights don’t cap it */
.bg-image.bg-image-header {
  height: auto !important;
  min-height: var(--inner-hero-min-h, 300px); /* overridden inline from Twig */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: auto; /* prevent margin collapse */
}
/* Move spacing from child margin to padding so it contributes to height */
.hero-widgets-wrap {
  margin: 0 0 5em 0;             /* remove huge top margin */
  padding-top: 6em;              /* add inner space instead */
}
@media only screen and (max-width: 40em) {
  .hero-widgets-wrap {
    margin: 0 0 1em 0;
    padding-top: 2.5em;
  }
  .bg-image.bg-image-header {
  height: auto !important;
  min-height: var(--inner-hero-min-h, 280px); /* overridden inline from Twig */
}
}



/*--------------------------------------------------------------
6.1 Navigation
--------------------------------------------------------------*/
nav.top-bar {
  text-align: center;
}
@media only screen and (min-width: 64.063em) {
  nav.top-bar {
    height: 100%;
  }
}
@media only screen and (min-width: 40.063em) {
  nav.top-bar {
    height: 100%;
  }
}
@media only screen and (max-width: 40em) {
  nav.top-bar {
    text-align: left;
  }
}
nav.top-bar ul.title-area li.menu-icon {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
nav.top-bar .dropdown {
  background: #FFFFFF;
  border-left: 1px solid #DDDDDD;
  border-right: 1px solid #DDDDDD;
  border-bottom: 1px solid #DDDDDD;
}
@media only screen and (max-width: 40em) {
  nav.top-bar .dropdown {
    border-left: none;
  }
}
@media only screen and (max-width: 40em) {
  nav.top-bar .dropdown {
    border-right: none;
  }
}
@media only screen and (max-width: 40em) {
  nav.top-bar .dropdown {
    border-bottom: none;
  }
}
nav.top-bar .sub-menu {
  border-top: 1px solid #DDDDDD;
}
@media only screen and (max-width: 40em) {
  nav.top-bar .sub-menu {
    border-top: none;
  }
}
nav.top-bar .sub-menu li:nth-of-type(3) ul.sub-menu {
  border-top: none;
}

.top-bar-section {
  position: relative;
  top: 0.75em;
}
.top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
  line-height: 45px;
}

section.top-bar-section {
  display: inline-block;
}
@media only screen and (max-width: 40em) {
  section.top-bar-section {
    display: block;
  }
}
section.top-bar-section ul li > a {
  text-transform: uppercase;
  font-size: 0.875rem;
  letter-spacing: 0.06em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
section.top-bar-section .dropdown li.title h5 a {
  color: #888888;
  font-weight: bold;
}

/*--------------------------------------------------------------
7.0 Home
--------------------------------------------------------------*/
.header-bg {
  background-color: #e8554e;
}

/*--------------------------------------------------------------
7.1 Home Hero
--------------------------------------------------------------*/
.hero-widgets-wrap {
  text-align: center;
  color: #FFFFFF;
  margin: 8.5em 0 5em 0;
}
@media only screen and (max-width: 40em) {
  .hero-widgets-wrap {
    margin: 7em 0 1em 0;
  }
}
/*changes on title and subtitle. font-size and weight*/
.hero-widgets-wrap h1.widget-title {
  color: #FFFFFF;
  font-weight: 700;
  font-size: 7rem;
  margin-bottom: 0;
}

.hero-widgets-wrap div.textwidget p {
  font-size: 1.7rem;
  line-height: 0.4;
  margin: 0 0 5em 0;
}
.hero-widgets-wrap p {
  margin: 0 0 5em 0;
}
@media only screen and (max-width: 40em) {
  .hero-widgets-wrap p {
    margin: 0 0 3.5em 0;
  }
}
.hero-widgets-wrap .button {
  margin: 10em 0 0 0;
}
@media only screen and (max-width: 40em) {
  .hero-widgets-wrap .button {
    margin: 0 0 0 0;
  }
}

/* Hero: fully transparent buttons when .is-transparent is present */
a.button.radius.is-transparent,
.button.is-transparent {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  color: transparent !important;   /* hide label as well */
  opacity: 0 !important;           /* ensure full transparency */
  pointer-events: none;            /* optional: not clickable while hidden */
}
a.button.radius.is-transparent:hover,
.button.radius.is-transparent:hover {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/*--------------------------------------------------------------
7.2 Home Posts
--------------------------------------------------------------*/
.home_posts_titles {
  text-align: center;
  margin-bottom: 6em;
}
.home_posts_titles h2 {
  font-size: 2.625rem;
  font-weight: normal;
}
.home_posts_titles h3 {
  font-size: 1rem;
  color: #888888;
  font-weight: normal;
  width: 35%;
  display: block;
  margin: 0 auto;
}
@media only screen and (max-width: 40em) {
  .home_posts_titles h3 {
    width: 100%;
  }
}
@media only screen and (min-width: 40.063em) and (max-width: 64em) {
  .home_posts_titles h3 {
    width: 100%;
  }
}

.page-template-template-home-php .site-content hr {
  margin: 8em 0;
}

.page-template-template-home-php .featured-posts article.hentry {
  margin: 0 0;
}
@media only screen and (max-width: 40em) {
  .page-template-template-home-php .featured-posts article.hentry {
    margin-bottom: 3em;
  }
}
.page-template-template-home-php .featured-posts h3.entry-title {
  font-size: 1.375rem;
}

/*--------------------------------------------------------------
7.3 Home Content
--------------------------------------------------------------*/
.home-content .home-content-right {
  text-align: center;
  padding-top: 1em;
}
.home-content .home-content-right h3 {
  margin-bottom: 1em;
}
.home-content .home-content-right p {
  margin-bottom: 3em;
}
.home-content .home-content-right .button {
  text-align: center;
}

/*--------------------------------------------------------------
8.0 Forms
--------------------------------------------------------------*/
input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="week"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="color"], textarea {
  background-color: #EEEEEE;
  border: none;
  box-shadow: none;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
}

html input[type="button"], input[type="reset"], input[type="submit"], button[type="submit"] {
  background-color: #e8554e;
  color: #FFFFFF;
  padding: 0.35em 1.5em;
  border: none;
  font-size: 16px;
  font-style: italic;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -o-transition: 0.2s;
  -ms-transition: 0.2s;
  -moz-transition: 0.2s;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
html input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover, button[type="submit"]:hover {
  background-color: #555555;
}

/* Make the Infinite Footer full width and let blog-info grow */
#infinite-footer .container {
  max-width: 100%;
  width: 100%;
  padding-left: 1rem;
  padding-right: 1rem;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

/* Blog title area takes available space */
#infinite-footer .blog-info {
  flex: 1 1 auto;
}

/* If credits exist, keep them sized to content */
#infinite-footer .blog-credits {
  flex: 0 0 auto;
}

/*--------------------------------------------------------------
9.0 Content
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.hentry {
  margin: 0 0 1.5em;
}

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

.single .byline,
.group-blog .byline {
  display: inline;
}

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

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

.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
  display: none;
}

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

.bypostauthor {
  display: block;
}

.site-content {
  margin-top: 4.5em;
}

/*--------------------------------------------------------------
9.1 Posts
--------------------------------------------------------------*/
article.hentry {
  margin: 0 0 8em 0;
}
article.sticky {
  padding: 4em;
  background-color: #f7fbff;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
article h1 a, article h2 a, article h3 a, article h4 a, article h5 a {
  color: #666666;
}
article hr {
  margin: 2.25rem 0 2.1875rem;
}
article .featured-image img {
  width: 356px;
  float: left;
  border: 1px solid #EFEFEF;
  margin-right: 1.875rem;
  margin-bottom: 1.875rem;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
  -o-transition: 0.2s;
  -ms-transition: 0.2s;
  -moz-transition: 0.2s;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
article .featured-image img:hover {
  opacity: 0.8;
}
@media only screen and (max-width: 40em) {
  article .featured-image img {
    width: 100%;
  }
}
article .entry-header {
  margin-bottom: 2.75em;
}
@media only screen and (max-width: 40em) {
  article .entry-header {
    text-align: center;
  }
}

article .entry-content {
  text-align: left;
  }

/*on samll screens center the text*/
@media only screen and (max-width: 40em) {
  article .entry-content {
    text-align: center;
    }
}
/* Tiny screens: add side padding to featured post content */
@media only screen and (max-width: 40em) {
  article.post.type-post.hentry.category-featured .entry-header,
  article.post.type-post.hentry.category-featured .entry-content,
  article.post.type-post.hentry.category-featured .entry-footer {
    padding-left: 1rem;
    padding-right: 1rem;
    box-sizing: border-box;
  }
}

article .entry-content:after {
  clear: none;
}
article .entry-content li {
  margin-bottom: 1em;
}
article .entry-footer {
  margin: 1em 0;
}
article .entry-footer .left {
  background-color: #efefef;
  padding: 0.2em 2em;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
article .entry-footer .left i {
  color: #d5d5d5;
  padding: 0.25em 0.25em;
  -o-transition: 0.2s;
  -ms-transition: 0.2s;
  -moz-transition: 0.2s;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
article .entry-footer .left i:hover {
  color: #e8554e;
}
article .entry-footer .right {
  color: #d5d5d5;
}
article .entry-footer .cat-links, article .entry-footer .tags-links {
  margin-right: 1em;
}
article table td, article table tr th {
  padding: 1.5em;
}
@media only screen and (max-width: 40em) {
  article table td, article table tr th {
    padding: 0.5em;
  }
}
article table tr th, article table tr td {
  font-size: 1.1rem;
  font-weight: normal;
}
article table tr th {
  color: #555555;
  font-weight: bold;
}
article table tr td {
  color: #777777;
}
article table .even {
  background-color: #ffffff;
}

/* Post Nav Links */
.nav-links .nav-previous {
  float: left;
}
.nav-links .nav-next {
  float: right;
}

/* Single */
.single article {
  margin: 0 0 4em 0;
}
.single article .author.vcard .fn {
  font-weight: normal;
}
.single article .entry-footer {
  margin-top: 3em;
}
.single article .entry-footer .right {
  padding: 0.5em 0;
  color: #666666;
}

.post-navigation {
  margin: 0 0 3em 0;
}

/*--------------------------------------------------------------
9.2 Blog Page
--------------------------------------------------------------*/
.more-link {
  font-style: italic;
  display: inline-block;
}

.blog_page_titles {
  text-align: center;
  margin-bottom: 1rem;
}
.blog_page_titles h2 {
  font-size: 2.625rem;
  font-weight: normal;
}
.blog_page_titles h3 {
  font-size: 1rem;
  color: #888888;
  font-weight: normal;
  width: 35%;
  display: block;
  margin: 0 auto;
}
@media only screen and (max-width: 40em) {
  .blog_page_titles h3 {
    width: 100%;
  }
}
@media only screen and (min-width: 40.063em) and (max-width: 64em) {
  .blog_page_titles h3 {
    width: 100%;
  }
}

/*--------------------------------------------------------------
9.3 404 Page
--------------------------------------------------------------*/
.error-404 header, .error-404 .page-content p {
  text-align: center;
}
.error-404 .search-form {
  margin-top: 5em;
}
.error-404 .large-3 {
  margin-top: 5em;
}
.error-404 .large-3 h2 {
  font-size: 1.1em;
}

/*--------------------------------------------------------------
9.4 Archive Page
--------------------------------------------------------------*/
.search .page-header, .archive .page-header {
  margin: 0 0 5em 0;
}

/*--------------------------------------------------------------
9.5 Full Width
--------------------------------------------------------------*/
.page-template-template-full-php h2 {
  text-align: center;
  margin-bottom: 2em;
}

/*--------------------------------------------------------------
9.6 Contact Page
--------------------------------------------------------------*/
.contact-form label {
  margin: 1.5em 0 0.25em 0 !important;
  font-size: 1.125rem;
  color: #666666;
}
.contact-form input[type="text"], .contact-form input[type="email"] {
  width: 500px !important;
  height: 4em;
}
.contact-form textarea {
  height: 20em !important;
  width: 100% !important;
  margin-bottom: 2em !important;
}

/*--------------------------------------------------------------
10.0 Comments
--------------------------------------------------------------*/
.comments-area h4.comments-title {
  margin: 2em 0;
}
.comments-area ol {
  list-style: none;
  margin-left: 0;
}
.comments-area ol .children {
  margin-left: 80px;
}

.comment {
  margin-top: 40px;
}
.comment img.avatar {
  display: block;
  float: left;
  height: 60px;
  margin: 0 20px 0 0;
  width: 60px;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
.comment .comment-content {
  background-color: #F6F6F6;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
  padding: 2.5rem;
}
.comment .comment-meta-header cite {
  margin-right: 1em;
  font-weight: bold;
  color: #555555;
}
.comment .comment-meta-header .comment-meta {
  font-size: 0.875rem;
}
.comment .comment-meta-header .comment-reply-link {
  float: right;
  font-size: 1rem;
  font-style: italic;
}

.comment-respond {
  margin: 3em 0;
}
.comment-respond h3.comment-reply-title {
  font-size: 1.25rem;
}
.comment-respond .comment-form-comment label {
  display: none;
}
.comment-respond .logged-in-as {
  font-size: 0.875rem;
}
.comment-respond textarea {
  background-color: #F6F6F6;
}
.comment-respond #cancel-comment-reply-link {
  float: right;
  position: relative;
  top: 2.5em;
  font-style: italic;
  font-weight: normal;
}

/*--------------------------------------------------------------
11.0 Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets */
}
.widget select {
  max-width: 100%;
}

/* Search widget */
.widget_search .search-submit {
  display: none;
}

.widget-area aside {
  margin-bottom: 4.5em;
}

h1.widget-title {
  font-size: 1rem;
  margin-bottom: 2em;
}

/* Search Widget */
.search-form input[type="search"] {
  height: 2.8125rem;
}

footer .search-form input[type="search"] {
  background-color: #464646;
}

/* Archive, Categories, pages, Meta, Comments, Posts Widget */
.widget_archive ul, .widget_categories ul, .widget_pages ul, .widget_meta ul, .widget_recent_comments ul, .widget_recent_entries ul {
  color: #bebebe;
  list-style: none;
}
.widget_archive li:before, .widget_categories li:before, .widget_pages li:before, .widget_meta li:before, .widget_recent_comments li:before, .widget_recent_entries li:before {
  font-family: 'FontAwesome';
  content: "";
  margin: 0 15px 0 -15px;
}

/* RSS Widget */
.widget_rss ul {
  list-style: none;
  margin-left: 0;
}
.widget_rss li {
  margin-bottom: 2em;
}
.widget_rss .rssSummary {
  margin: 2em 0;
}

/* Tags Widget */
.widget_tag_cloud {
  content: "";
  display: table;
}
.widget_tag_cloud a {
  background-color: #e8554e;
  color: #FFFFFF;
  padding: 0.35em 1.5em;
  float: left;
  margin-right: 0.35em;
  margin-bottom: 0.35em;
  font-size: 16px !important;
  font-style: italic;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -o-transition: 0.2s;
  -ms-transition: 0.2s;
  -moz-transition: 0.2s;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.widget_tag_cloud a:hover {
  background-color: #555555;
}

/* Recent Entries Widget  */
.widget_recent_entries .post-date {
  font-style: italic;
  display: block;
  margin-left: 15px;
}

/* Calendar Widget */
.widget_calendar table caption {
  margin-bottom: 0.75em;
  font-size: 1.2em;
  color: #555555;
}
.widget_calendar table td, .widget_calendar table tr th {
  padding-top: 1em;
  padding-bottom: 1em;
}
.widget_calendar table tr th, .widget_calendar table tr td {
  font-size: 1.1rem;
  font-weight: normal;
}
.widget_calendar table tr th {
  color: #555555;
}
.widget_calendar table tr td {
  color: #777777;
}

/* Footer Font Awesome Icons */
footer .textwidget a i {
  color: #FFFFFF;
  padding-left: 0.5em;
  font-size: 1.25rem;
}
footer .textwidget a:hover i {
  color: #e8554e;
}

/*--------------------------------------------------------------
12.0 Footer
--------------------------------------------------------------*/
.footer-wrap {
  background-color: #303030;
  margin-top: 8em;
}

footer {
  margin: 4em 0 0 0;
  font-size: 1rem;
}
footer p, footer a {
  font-size: 1rem;
}
footer .large-4 {
  margin-top: 1em;
  margin-bottom: 4.5em;
}
@media only screen and (max-width: 40em) {
  footer .large-4 {
    text-align: center;
    margin-top: 1em;
    margin-bottom: 0;
  }
}
footer .site-info {
  color: #555555;
  font-size: 1rem;
  font-style: italic;
}
@media only screen and (max-width: 40em) {
  footer .site-info {
    text-align: center;
  }
}
footer .widget {
  margin-bottom: 1em;
}

footer .widget li {
  margin-bottom: 0.75em;
}
footer .widget-title {
  color: #FFFFFF;
}

/* Dropdown base */
.langswitch { position: relative; display: inline-block; }
.langswitch__btn { 
  display: inline-flex; 
  align-items: center;
  gap: 6px;
  padding-top: 0.625rem;
  padding-right: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 0.625rem;
  font-size: 0.9rem;
}
.langswitch__caret { margin-left: 2px; opacity: .7; }


/* Use a DIV for the list to avoid top-bar dropdown CSS */
.langswitch__list {
  position: absolute; right: 0; top: 100%;
  margin-top: 6px; min-width: 180px;
  background: #E7E7E7; border: 1px solid rgba(0,0,0,.12);
  border-radius: 4px; box-shadow: 0 6px 20px rgba(0,0,0,.12);
  padding: 6px 0; display: none; z-index: 1000;
}
.langswitch.is-open .langswitch__list { display: block; }


/* Change langswitch__name color*/
.langswitch__name { color: #333333 }

/* Langswitch: dropdown same width as button */
nav.top-bar .langswitch { position: relative; } /* override earlier 'static' so the list is positioned to the wrapper */
.langswitch__list {
  width: 100%;
  min-width: 0;
  max-width: none;
  box-sizing: border-box;
  right: auto;         
  left: 0;
}

.langswitch__item {
  display: flex; align-items: center; gap: 8px;
  padding: 6px 10px; color: inherit; text-decoration: none;
}
.langswitch__item:hover { background: rgba(0,0,0,.05); } 

/* Right-align items inside the language dropdown */
.langswitch__list { text-align: flex-end; }
.langswitch__item {
  width: 100%;                 /* span full list width */
  justify-content: flex-end;   /* push flag + name to the right */
  text-align: flex-end;           /* align the text itself */
}

/* Flags: map codes to images (place files under your theme) */
.langswitch__flag { width: 18px; height: 12px; display: inline-block; background-size: cover; background-position: 50% 50%; }
.flag.flag-en { background-image: url('/user/plugins/language-selector/flags/en.png'); }
.flag.flag-es { background-image: url('/user/plugins/language-selector/flags/es.png'); }
.flag.flag-fr { background-image: url('/user/plugins/language-selector/flags/fr.png'); }
.flag.flag-ar { background-image: url('/user/plugins/language-selector/flags/ar.png'); }

/* Menu placement */
nav.top-bar .langswitch__li { list-style: none; }
nav.top-bar .langswitch { position: static; }

/* Hero top-right */
.langswitch--hero { position: absolute; top: 16px; right: 16px; z-index: 5; }

/* 13. VIDEOS */

.videos { max-width: 1100px; margin: 0 auto; padding: 2rem 1rem; }
.videos-header { text-align: center; margin-bottom: 1.5rem; }
.videos-title { margin: 0 0 .25rem 0; }
.videos-subtitle { margin: 0; opacity: .8; }

.videos-list {
  display: grid;
  grid-template-columns: 1fr;      /* vertical stack */
  gap: 1.75rem;
}
@media (min-width: 900px) {
  .videos-list { max-width: 860px; margin: 0 auto; }
}

.video-card {
  background: rgba(255,255,255,.02);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 10px 25px rgba(0,0,0,.15);
  transition: transform .18s ease, box-shadow .18s ease;
}
.video-card:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(0,0,0,.2); }

.video-thumb {
  position: relative; aspect-ratio: 16/9; cursor: pointer; overflow: hidden;
  background: #000;
}
.video-thumb__img {
  position: absolute; inset: 0;
  background-size: cover; background-position: 50% 50%;
  transition: transform .2s ease; filter: brightness(.92);
}
.video-thumb:hover .video-thumb__img { transform: scale(1.03); }

.video-thumb__play {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
  background: rgba(0,0,0,.55); color: #fff; border: 2px solid rgba(255,255,255,.75);
  border-radius: 999px; width: 64px; height: 64px; font-size: 22px; line-height: 1;
  display: grid; place-items: center;
}

.video-title { margin: .85rem 1rem .25rem 1rem; font-size: 1.1rem; }
.video-desc  { margin: 0 1rem 1rem 1rem; opacity: .85; }

/* Dark/light friendly */
@media (prefers-color-scheme: light) {
  .video-card { background: #fff; border-color: rgba(0,0,0,.08); box-shadow: 0 10px 25px rgba(0,0,0,.08); }
}

/*HOME Modular video*/
/* Responsive 16:9 wrapper for YouTube embeds */
.yt-16x9 { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.yt-16x9 iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* Adding a background image or colour to the modular video section */
.mod-section {
  background-color: transparent;  /* will be overridden by inline style if set */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin: 1em 0em;
  padding-top: 3.5rem; padding-bottom: 2.5rem;            /* give the background space to show */
  --mod-text: inherit;
  --mod-link: var(--mod-text);

  color: var(--mod-text);
}

@media only screen and (max-width: 40em) { 
  .mod-section {
    text-align: center !important;
  }
  
}
/*color of the text over the backgroun photo*/
.mod-section h1, .mod-section h2, .mod-section h3,
.mod-section h4, .mod-section h5, .mod-section h6,
.mod-section p, .mod-section li, .mod-section span,
.mod-section .videos-title, .mod-section .videos-subtitle {
  color: var(--mod-text);
}
.mod-section a { color: var(--mod-link); }
.mod-section a:hover { opacity: .9; }
/* If buttons inside should follow text color for readability */
.mod-section .button { color: var(--mod-link); }

/* Centered modular press section */
.mod-press--center { text-align: center; }

/* 14 MISC */
/* FOOTER: center social (text-6) and contact (contact-cta) within their large-4 column */
footer .large-4.columns #text-6,
footer .large-4.columns #contact-cta {
  display: flex;
  flex-direction: column;
  align-items: center;   /* horizontal center */
  text-align: center;    /* center inline text/icons */
}

footer .large-4.columns #text-6 .textwidget a {
  display: inline-block; /* ensures clean centering of icons */
  margin: 0 .35em;
}

/* Modular separator spacing (use margin, not padding) */
:root { --mod-gap: 0.5rem; }  /* tweak this value to taste */

hr.mod-sep {
  border: 0 !important;
  height: 0 !important;
  margin: var(--mod-gap) 0 !important;  /* vertical space between sections */
  padding: 0 !important;
  background: transparent !important;
  line-height: 0 !important;
  appearance: none;
}

/* Safety net for unclassed hr after a module */
.mod-section + hr {
  border: 0 !important;
  height: 0 !important;
  margin: var(--mod-gap) 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/*15*/
/* 15. PRO MODULE */
/* Pro module: only customize button/link text color via CSS vars */
.mod-pro .pro-actions .pro-buttons a.button {
  color: var(--pro-btn-color, inherit) !important;
  border-color: transparent !important;
}
.mod-pro .pro-actions .pro-buttons a.button:hover,
.mod-pro .pro-actions .pro-buttons a.button:focus {
  color: var(--pro-btn-color, inherit) !important;
  border-color: transparent !important;
}

.mod-pro .pro-actions .pro-photos a {
  color: var(--pro-photos-color, inherit) !important;
}
.mod-pro .pro-actions .pro-photos a:hover,
.mod-pro .pro-actions .pro-photos a:focus {
  color: var(--pro-photos-color, inherit) !important;
}

/* optional spacing for buttons */
.mod-pro .pro-buttons a { margin: .25rem .4rem; }