/*!
Theme Name: ASO Communications
Theme URI: https://www.asocommunications.com/
Author: Future Perfekt
Author URI: http://futureperfekt.com
Description: Official theme for the ASO Communications website
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: asocommunications
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/


:root
{
  --text-color: #000;
	--aso-max-width: 1314px;
	--aso-content-width: 90%;
	--aso-purple: #4B00BF;
}

@font-face {
  font-family: 'Rubik';
  src: url('/wp-content/themes/asocommunications/fonts/Rubik-VariableFont_wght.ttf') format("truetype-variations");
  font-weight: 1 999;
}

@font-face {
  font-family: "GilroyExtraBold";
  src: url('/wp-content/themes/asocommunications/fonts/GilroyExtraBold/font.woff2') format('woff2'), url('/wp-content/themes/asocommunications/fonts/GilroyExtraBold/font.woff') format('woff');
}

/**
 * 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;
	font-family: 'Rubik', sans-serif;
  font-size: 18px;
  line-height: 1.5em;

  color: #000;
  background-color: #FFDFD5;
  padding-top: 151px;
}

.grecaptcha-badge
{
  opacity: 0;
}

body.search-results,
body.search-no-results
{
  background-color: #FFF;
  color: var(--aso-purple);
  padding-top: 181px;
}

body.search-results a,
body.search-no-results
{
  color: var(--aso-purple);
  text-decoration: none;
}

body.noscroll
{
  overflow: hidden;
}

:where(.wp-block-columns.is-layout-flex)
{
  gap: 0px;
}

body.home
{
  background-color: #FFF;
}

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

a
{
  text-decoration: underline;
  color: var(--aso-purple);
}

img
{
	display: block;
	width: 100%;
	height: auto;
}

h1,h2,h3,h4,h5,h6
{
	font-weight: normal;
	margin: 0px 0px 1em 0px;
  font-family: 'GilroyExtraBold', sans-serif;
}

h2
{

  font-size: 36px;
  line-height: 43px;
  font-weight: 700;
}

figure
{
	margin: 0px;
	position: relative;
}

p
{
		margin: 0px 0px 1em 0px;
}

p:last-child,
p:last-of-type
{
	margin-bottom: 0px;
}

.entry-content > .wp-block-group,
.fade-in-up,
.entry-content > .wp-block-columns,
header.page-header,
.article-list,
.aso-cat-holder
{
  transition: all .6s ease;
  opacity: 0;
  transform: translateY(15px);
}

.entry-content > .wp-block-group.visible,
.fade-in-up.visible,
.entry-content > .wp-block-columns.visible,
header.page-header.visible,
.article-list.visible,
.aso-cat-holder.visible
{
  opacity: 1;
  transform: translateY(0px);
}

.site-header
{
	height: 151px;
	background-color: #FFF;
  padding: 20px 0px;
  position: fixed;
  width: 100%;
  left: 0px;
  top: 0px;
  z-index: 100;

}

body.admin-bar .site-header
{
  top: 32px;
}

.aso-search
{
  position: absolute;
  top: 100%;

  left: 0px;
  padding: 20px 0px;
  margin: 0px auto;
  width: 100%;
  background-color: #FFF;
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s linear;
}

.aso-search.visible
{
  pointer-events: visible;
  opacity: 1;
}

.aso-search form
{
  max-width: 913px;
  width: 90%;
  border-bottom: 1px solid #000;
  margin: 0px auto;
}

.aso-search .search-submit,
.aso-search button
{
  display: none;
}

.aso-search .search-field
{
  width: 100%;
  outline: none;
  -webkit-appearance: none;
  background-color: transparent;
  color: #000;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  font-size: 21px;
  line-height: 25px;
  border-radius: 0;
  border-width: 0px 0px;
}

.site-header .wrap
{
  position: relative;
  max-width: var(--aso-max-width);
  width: var(--aso-content-width);
	margin: 0px auto;
	display: flex;
  flex-direction: column;
  gap: 35px;
}

.site-branding
{
  max-width: 318px;
  width:286px;
  /*width: 18.5vw;*/
}

.hamburger-menu
{
  display: none;
}

.aso-search-toggle
{
  display: block;
  position: absolute;
  right: 150px;
  top: 20px;
  width: 25px;
  height: 25px;
  appearance: none;
  border: none;
  background-color: transparent;
  padding: 0px;
}

.aso-language
{
  display: block;
  position: absolute;
  top: 20px;
  right:0px;
  font-size: 15px;
  text-transform: uppercase;
}

.lang-item::after
{
    margin: 0px 0 0 3px;
}

.aso-language ul
{
  list-style: none;
  padding: 0;
  margin: 0;
}

.aso-language ul li
{
  display: inline-block;
}

.aso-language ul li a
{
  color: #393939;
  text-decoration: none;
  position: relative;
}

.aso-language ul li.current-lang a
{
  color: var(--aso-purple);
  text-decoration: none;
}

.aso-language ul li.current-lang a::before
{
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  bottom: -5px;
  right: 0px;
  border-bottom: 1px solid var(--aso-purple);
}

.mobile-nav
{
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	background-color: #FFF;
  color: #000;
	top: 0px;
	left: 0px;
	z-index: 100;
	text-align: center;
	transition: opacity .3s linear;
	opacity: 0;
	pointer-events: none;
}

.mobile-nav.visible
{
	opacity: 1;
	pointer-events: visible;
}

.main-navigation
{
	flex-basis: 80%;
	align-content: center;
	display: flex;
	justify-content: center;
}

.site-header .menu-main-menu-container,
.site-header .menu-main-menu-espanol-container,
#primary-spanish-menu
{
	align-self: center;
  width: 100%;
}


.main-navigation > div#primary-menu ul,
.site-header .menu-main-menu-container ul#primary-menu,
.site-header .menu-main-menu-espanol-container ul#primary-menu,
.site-header .menu-main-menu-espanol-container ul#primary-spanish-menu,
.site-header #primary-spanish-menu ul
{
	margin: 0px;
	padding: 0px;
	color: var(--aso-purple);
	font-family: 'Rubik', sans-serif;
	font-weight: 400;
	line-height: 1em;
	font-size: 21px;
	line-height: 25px;
  text-align: left;
	list-style: none;
}

.site-header .menu-main-menu-espanol-container ul#primary-menu,
.site-header .menu-main-menu-espanol-container ul#primary-spanish-menu
{
  line-height: 100%;
}

.site-header .menu-main-menu-espanol-container ul#primary-menu
{

}

.main-navigation > div#primary-menu ul li,
.site-header .menu-main-menu-container ul#primary-menu li,
.site-header .menu-main-menu-espanol-container ul#primary-menu li,
.site-header .menu-main-menu-espanol-container ul#primary-spanish-menu li,
.site-header #primary-spanish-menu ul li
{
	margin-left: 4.815%;
	display: inline-block;
  position: relative;
}

.site-header .menu-main-menu-espanol-container ul#primary-menu li,
.site-header .menu-main-menu-espanol-container ul#primary-spanish-menu li,
.site-header #primary-spanish-menu ul li
{
  margin-left: 3.815%;
}

.main-navigation > div#primary-menu ul li:first-child,
.site-header .menu-main-menu-container ul#primary-menu li:first-child,
.site-header .menu-main-menu-espanol-container ul#primary-menu li:first-child,
.site-header .menu-main-menu-espanol-container ul#primary-spanish-menu li:first-child,
.site-header #primary-spanish-menu ul li:first-child
{
  margin-left: 0px;
}

.main-navigation > div#primary-menu ul li a,
.site-header .menu-main-menu-container ul#primary-menu li a,
.site-header .menu-main-menu-espanol-container ul#primary-menu li a,
.site-header .menu-main-menu-espanol-container ul#primary-spanish-menu li a,
.site-header #primary-spanish-menu ul li a
{
  position: relative;
}

.site-header .menu-main-menu-container ul#primary-menu li.current-menu-item > a:after,
.site-header .menu-main-menu-container ul#primary-menu li.current-menu-parent > a:after,
.site-header .menu-main-menu-espanol-container ul#primary-menu li.current-menu-item > a:after,
.site-header .menu-main-menu-espanol-container ul#primary-menu li.current-menu-parent > a:after,
.site-header .menu-main-menu-espanol-container ul#primary-spanish-menu li.current-menu-item > a:after,
.site-header .menu-main-menu-espanol-container ul#primary-spanish-menu li.current-menu-parent > a:after,
.site-header #primary-spanish-menu ul li.current-menu-item > a:after,
.site-header #primary-spanish-menu ul li.current-menu-parent > a:after
{
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  bottom: -5px;
  right: 0px;
  border-bottom: 1px solid var(--aso-purple);
}

.site-header .menu-main-menu-container ul#primary-menu li.current-menu-item a:after
{

}

ul#primary-menu ul.sub-menu,
ul#primary-spanish-menu ul
{
  /*z-index: 1;
  background-color: #FFF;
  position: absolute;
  width: 400px;
  padding: 20px 40px;
  right: -40px;
  text-align: right;
  display: none;*/

  z-index: 1;
  background-color: #FFF;
  position: absolute;
  width: fit-content;
  padding: 20px 40px;
  right: -40px;
  text-align: right;
  display: none;
  white-space: nowrap;

}

ul#primary-menu ul.sub-menu.visible,
ul#primary-spanish-menu ul.visible
{
  display: block;
}

.site-header .menu-main-menu-container ul#primary-menu ul.sub-menu li,
.site-header .menu-main-menu-espanol-container ul#primary-menu ul.sub-menu li
{
  /*display: block;
  margin-bottom: 10px;*/

  display: block;
  margin-bottom: 10px;
  white-space: nowrap;
  width: fit-content;
  text-align: right;
  margin-left: auto;

}

.site-header .menu-main-menu-container ul#primary-menu li:last-child,
.site-header .menu-main-menu-espanol-container ul#primary-menu li:last-child
{
	margin-right: 0px;
}

#primary-menu a
{
		text-decoration: none;
		color: var(--aso-purple);
}

.search-icon
{
  overflow: hidden;
  height: 52px;
  width: 52px;
  top: 18px;
}

.search-icon a
{
  display: block;
  height: 100%;
  width:100%;
  text-indent: -20000px;
  background-image: url('/wp-content/themes/asocommunications/images/search-new.svg');
  background-size: 50% auto;
  background-repeat: no-repeat;
  background-position: center;
}

.site-header .menu-main-menu-container ul#primary-menu li.lang-item
{
  font-size: 15px;
  text-transform: uppercase;
}

.site-header .menu-main-menu-espanol-container ul#primary-menu li.lang-item
{
  font-size: 14px;
  text-transform: uppercase;
}

.site-header .menu-main-menu-container ul#primary-menu li.lang-item.lang-item-51,
.site-header .menu-main-menu-espanol-container ul#primary-menu li.lang-item.lang-item-51
{
  margin-left: 0px;
}

.site-header .menu-main-menu-container ul#primary-menu li.lang-item a,
.site-header .menu-main-menu-espanol-container ul#primary-menu li.lang-item a
{
  color: #393939;
}

.site-header .menu-main-menu-container ul#primary-menu li.lang-item.no-translation a,
.site-header .menu-main-menu-espanol-container ul#primary-menu li.lang-item.no-translation a
{
  cursor: not-allowed;
}

.site-header .menu-main-menu-container ul#primary-menu li.lang-item.current-lang a,
.site-header .menu-main-menu-espanol-container ul#primary-menu li.lang-item.current-lang a

{
  color: var(--aso-purple);
}

.site-header .menu-main-menu-container ul#primary-menu li.lang-item.current-lang a::before,
.site-header .menu-main-menu-espanol-container ul#primary-menu li.lang-item.current-lang a::before
{
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  bottom: -5px;
  right: 0px;
  border-bottom: 1px solid var(--aso-purple);
}

.lang-item:after
{
  content: ' / ';
  display: inline-block;
  margin: 0px 0 0 5px;
  width: 10px;
  text-align: center;
}

.lang-item:last-of-type:after
{
  display: none;
}

@media all and (max-width: 1200px){

  .site-header .menu-main-menu-container ul#primary-menu
  {
      /*font-size: 15px;*/
  }

  .site-header .menu-main-menu-container ul#primary-menu li
  {
    margin-left: 3.82%;
  }

  .site-header .menu-main-menu-container ul#primary-menu li:first-child
  {
    margin-left: 0px;
  }

  /*.site-branding
  {
    width: 200px;
  }*/

  .search-icon
  {
    overflow: hidden;
    height: 42px;
    width: 42px;
    top: 15px;
  }

}


@media all and (max-width: 900px){

  body
  {
    padding-top: 181px;
  }


}

@media all and (max-width: 767px){

  .aso-language
  {
    display: flex;
    align-items: center;
    font-size: 13px;
    text-transform: uppercase;
    position: absolute;
    top:0px;
    right: 120px;
    height: 100%;
  }

  .lang-item::after
  {
      margin: 0px 0 0 3px;
  }

  .aso-language ul
  {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .aso-language ul li
  {
    display: inline-block;
  }

  .aso-language ul li a
  {
    color: #393939;
    text-decoration: none;
  }

  .aso-language ul li.current-lang a
  {
    color: var(--aso-purple);
    text-decoration: underline;
  }

  .aso-language ul li.current-lang a::before
  {
    display: none;
  }

  .mobile-nav
  {
    display: block;
    font-size: 31px;
    line-height: 1.4em;
    z-index: 90;
  }

  .aso-search-toggle
  {
    display: block;
    position: absolute;
    right: 60px;
    width: 30px;
    height: 30px;
    top: 50%;
    top: calc(50% + 2px);
    transform: translateY(-50%);
    -webkit-appearance: none;
    background-color: transparent;
    padding: 0px;
    border: 0px;
  }

  .aso-search-toggle img
  {
    width: 100%;
    height: auto;
  }

  .mobile-nav .wrap
  {
    display: flex;
    justify-content: center;
    overflow: auto;
    height: 100%;
    width: 100%;
  }

  .menu-main-menu-container,
  .menu-main-menu-espanol-container
  {
    margin-top: 90px;
    width: 100%;
  }

  .mobile-nav a
  {
    text-decoration: none;
    color: #4800bd;
  }

  .mobile-nav ul
  {
    list-style: none;
    margin-top: 80px;
    padding: 0px;
  }

  .mobile-nav ul.sub-menu
  {
    margin: 0px;
    padding: 0px 0px 0px 0px;
    max-height: 0px;
    transition: all .6s ease;
    overflow: hidden;
    font-size: 24px;
    line-height: 1.4em;
  }

  .mobile-nav ul.sub-menu.visible
  {
    max-height: 600px;
  }

  .mobile-nav ul.sub-menu.open
  {
    height: 0;
    overflow: hidden;
    box-sizing: border-box;
  }

  .mobile-nav ul > li.lang-item
  {
    display: none;
  }

  .mobile-nav ul > li
  {
    margin-bottom: 30px;
  }

  .mobile-nav li.menu-item-has-children > a:after
  {
    content: '';
    transform: rotate(45deg);
    position: relative;
    left: 10px;
    display: inline-block;
    width: .4em;
    height: .4em;
    border-top: 1px solid var(--aso-purple);
    border-right: 1px solid var(--aso-purple);
    vertical-align: middle;
    margin-top: -.14em;
    transition: transform .4s ease;
  }

  .mobile-nav li.menu-item-has-children > a.open:after
  {
    transform: rotate(135deg);
  }

  .mobile-nav ul.sub-menu li
  {
    margin-bottom: 10px;
  }

  .search-icon
  {
    margin: 0px auto;
  }

  #mobile-menu .search-icon
  {
    display: none;
  }

  .hamburger-menu
	{
    display: block;
    margin: 0px 0px 0px auto;
		width: 29px;
		height: 28px;
		padding: 0px;
		background-color: transparent;
		border-radius: 0px;
		border: none;
		z-index: 1;
		cursor: pointer;
		display: block;
		position: absolute;
    top: 50%;
    top: calc(50% + 2px);
    right: 0px;
    transform: translateY(-50%);
	}

	.hamburger-menu .label
	{
		text-transform: uppercase;
		font-size: 10px;
		position: absolute;
		bottom: 0px;
		line-height: 1em;
		opacity: 1;
		transition: opacity .3s linear;
		display: block;
    color: var(--aso-purple);
	}

	.hamburger-menu .label.hidden
	{
			opacity: 0;
	}

	.stick {
	    position: relative;
			display: block;
	    transform: translateY(0px);
	    background: transparent;
	    transition: all 0s .3s
	}

	.stick:after, .stick:before, .tagline {
	    position: absolute
	}

	.stick, .stick:after, .stick:before {
	    width: 100%;
	    height: 1px
	}

	.stick:before {
	    bottom: 4px;
	    transition: bottom .3s .3s cubic-bezier(.23, 1, .32, 1), transform .3s cubic-bezier(.23, 1, .32, 1)
	}

	.stick:after {
	    top: -14px;
	    transition: top .3s .3s cubic-bezier(.23, 1, .32, 1), transform .3s cubic-bezier(.23, 1, .32, 1);
	}

	.stick.animate {
	    background: rgba(255, 255, 255, 0)
	}

	.stick.animate:before {
	    bottom: 0;
	    transform: rotate(-45deg);
	    transition: bottom .3s cubic-bezier(.23, 1, .32, 1), transform .3s .3s cubic-bezier(.23, 1, .32, 1)
	}

	.stick.animate:after {
	    top: 0;
	    transform: rotate(45deg);
	    transition: top .3s cubic-bezier(.23, 1, .32, 1), transform .3s .3s cubic-bezier(.23, 1, .32, 1)
	}

	.stick:after, .stick:before {
	    content: "";
	    left: 0;
	    background: var(--aso-purple);
	}
}

.wp-block-image figcaption
{
	margin-bottom: 0px;
}

figcaption
{
	font-weight: 300;
	font-size: 15px;
	line-height: 18px;
	color: #000000;
	margin: 0px auto;
}

figcaption a
{
  color: var(--aso-purple);
  text-decoration: underline;
}

.wp-block-group
{
	width: var(--aso-content-width);
	max-width: var(--aso-max-width);
	margin: 0px auto;
}

.aso-cat-holder
{
  width: 90%;
  display: flex;
  justify-content: center;
  margin: 0px auto;
  gap: 40px;
  flex-wrap: wrap;
  margin-bottom: 87px;
}

button.aso-category
{
  -webkit-appearance: none;
  background-color: transparent;
  border: 1px solid var(--aso-purple);
  padding: 17px 25px;
  font-size: 15px;
  line-height: 18px;
  border-radius: 99px;
  color: var(--aso-purple);
  cursor: pointer;
  transition: all .2s linear;
}

button.aso-category:hover,
button.aso-category.active
{
  background-color: var(--aso-purple);
  color: #FFF;
}

body.post-type-archive-messaging_guides .page-header
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto 75px auto;
}

body.post-type-archive-messaging_guides .search-main .page-header
{
  width:100%;
}

body.single-messaging_guides .entry-header
{
  padding: 0px;
  border-bottom: 0px;
  margin-bottom: 1em;
}

body.single-messaging_guides article
{
  width: 29%;
}

body.single-messaging_guides h1
{
  text-align: left;
  font-size: 32px;
  line-height: 130%;
  color: #000;
}

.aso-guide-search
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto 75px auto;
  text-align: center;

}

.aso-guide-search form
{
  width: 49.5%;
  margin: 0px auto;
  border-bottom: 1px solid #4B00BF;
}

.aso-guide-search input[type="text"]
{
  width: 75%;
  width: calc(100% - 40px);
  background-color: transparent;
  padding: 16px 0px 16px 0px;
  outline: none;
  -webkit-appearance: none;
  color: #000;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  font-size: 21px;
  line-height: 25px;
  border-radius: 0;
  border-width: 0px 0px;
}

.aso-guide-search button
{
  background-color: transparent;
  -webkit-appearance: none;
  border: 0px;
  border-radius: 0;
  padding:0px;
  position: relative;
  top: 5px;
}

.aso-guide-search input[type="text"]::placeholder
{
  color: #4B00BF;
  font-weight: 300;
  opacity: .7;

}

.aso-guide-search input[type="submit"]
{
  background: #4B00BF;
  border-radius: 99px;
  border: 0px;
  color: #FFF;
  font-family: 'Rubik', sans-serif;
  font-size: 18px;
  line-height: 18px;
  padding: 16px 32px;
  cursor: pointer;
}

.aso-regular
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto;
}

.aso-row
{
  display: flex;
  flex-direction: row;
  gap: 6.5%;
  row-gap: 225px;
  flex-wrap: wrap;
}

.posts-navigation
{
  border-top: 1px solid #FF8058;
  padding: 57px 0px;
}

.nav-links
{
  display: flex;
  flex-direction: row-reverse;
  font-size: 30px;
  line-height: 150%;

}



.nav-links > div
{
  flex-basis: 50%;
}

.nav-links > div.nav-previous
{
  text-align: right;
}

.nav-links > div.nav-previous a:after
{
  display: inline-block;
  transform: rotate(180deg);
  content: '';
  width: 31px;
  height: 31px;
  background-image: url('/wp-content/themes/asocommunications/images/arrow.svg');
  background-size: 100% auto;
  background-repeat: no-repeat;
  margin-left: 17px;
  position: relative;
  top: 4px;
}

.nav-links > div.nav-next
{
  text-align: left;
  margin-right: auto;
}

.nav-links > div.nav-next a:before
{
  display: inline-block;
  content: '';
  width: 31px;
  height: 31px;
  background-image: url('/wp-content/themes/asocommunications/images/arrow.svg');
  background-size: 100% auto;
  background-repeat: no-repeat;
  margin-right: 17px;
  position: relative;
  top: 8px;
}

@media all and (max-width: 1200px)
{
  .nav-links
  {
    font-size: 18px;
  }

  .nav-links > div.nav-previous a:after,
  .nav-links > div.nav-next a:before
  {
    width: 23px;
    height: 23px;
  }

}


.aso-guide
{

}

.aso-guide-cat
{
  padding: 57px 0px 100px 0px;
}

.aso-guide-cat:nth-child(2n)
{
  background-color: #FFF;
}

.aso-guide-cat h1,
.aso-guide-cat h2
{
  font-size: 50px;
  line-height: 130%;
  margin-bottom: 63px;
  border-bottom: 3px solid #FF8058;
  color: var(--aso-purple);
  text-align: center;
  padding-bottom: 25px;
}

.aso-return-link
{
  margin-top: 80px;
}

.aso-next-link
{
  margin: 40px 0px 0px 0px;
  text-align: right;
}

.aso-next-link a::after
{
  display: inline-block;
  transform: rotate(180deg);
  content: '';
  width: 22px;
  height: 22px;
  background-image: url('/wp-content/themes/asocommunications/images/arrow.svg');
  background-size: 100% auto;
  background-repeat: no-repeat;
  margin-left: 17px;
  position: relative;
  top: 2px;
}

.aso-return-link a::before
{
  display: inline-block;
  transform: rotate(0deg);
  content: '';
  width: 22px;
  height: 22px;
  background-image: url('/wp-content/themes/asocommunications/images/arrow.svg');
  background-size: 100% auto;
  background-repeat: no-repeat;
  margin-right: 17px;
  position: relative;
  top: 6px;
}

.aso-row h3
{
  font-size: 32px;
  line-height: 130%;
  margin-bottom: .5em;
}

.aso-row > div
{
  flex-basis: 28.95%;
  flex-grow: 0;
  flex-shrink: 0;
}

.aso-row p
{
  font-size: 18px;
  line-height: 150%;
}

.wp-block-group.aso-full-width
{
	width: 100%;
	max-width: none;
  position: relative;
}

.wp-block-group.aso-full-width figure
{
  /*height: 0px;
  padding-bottom: calc(52.83%);
  overflow: hidden;*/

  margin-bottom: 30px;
  position: relative;
}

.wp-block-group.aso-full-width figure figcaption
{
  /*position: absolute;
  bottom: 0px;
  left: 0px;
  right: 0px;*/
  width: 100%;
  background-color: #FFF;

  max-width: none;
  height: 40px;
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
}

.aso-full-width .wp-block-group
{
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0px;
  width: 100%;
  transform: translateY(-50%);
  max-width: none;
}

.aso-full-width .wp-block-group .wp-block-group__inner-container
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto;
}

.aso-full-width .wp-block-group.aso-text-group .wp-block-group__inner-container
{
  width: 100%;
  max-width: 696px;
  margin-left: 0px;
}

/*.aso-full-width figure
{
  width: 100%;
  height: 0px;
  overflow: hidden;
  padding-bottom: 52.83%;
}*/

.aso-full-width h2
{
  font-weight: 700;
  font-size: 70px;
  line-height: 83px;
  color: #FF8058;
  margin-bottom: 32px;
}

.aso-full-width p
{
  font-weight: 400;
  font-size: 27px;
  line-height: 40px;
  color: #FFF;
}

.aso-full-width.aso-hero-section
{
	margin-bottom: 111px;
  position: relative;
  overflow: hidden;
  height: 0px;
  padding-bottom: calc(55.63% + 30px);
}

.aso-hero-section .wp-block-group
{
  position: absolute;
  top: auto;
  text-align: left;

  bottom: 70px;
  width: 100%;
  max-width: none;

}

.aso-hero-section .wp-block-group .wp-block-group__inner-container
{
  margin: 0px auto;
  width: var(--aso-content-width);
	max-width: var(--aso-max-width);
	margin: 0px auto;
}

.wp-caption.featured
{
  margin-bottom: 30px;
}

/*.aso-hero-section .wp-block-group__inner-container
{
  position: relative;
}*/

.aso-full-width.aso-hero-section figure
{
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
}

.aso-hero-section h1
{
  font-weight: 700;
  font-size: 144px;
  line-height: 151px;
  color: #FFDFD5;
  /*position: absolute;
  bottom: 70px;
  left: 63px;
  z-index: 1;*/
  margin: 0px;
  overflow: hidden;
  /*animation: animated-text 2s steps(10,end) 1s 1 normal both;*/
}

.aso-hero-section h1 > span
{
  opacity: 0;
}

.aso-hero-section h1 > span.visible
{
  opacity: 1;
}

@keyframes animated-text{
  from{width: 0;}
  to{width: 100%;}
}



.aso-full-width figcaption
{
	width: var(--aso-content-width);
	max-width: var(--aso-max-width);
}

.aso-home-section
{
	font-weight: 400;
	font-size: 27px;
	line-height: 40px;
	margin-bottom: 95px;
	color: var(--aso-purple);
}

.aso-home-section figcaption
{
	position: absolute;
}

.aso-home-section .wp-block-columns
{
  gap: 6%;
}

.aso-home-section .wp-block-column
{
	display: flex;
	flex-direction: column;
	justify-content: center;
  flex-grow: 0 !important;
}

.aso-home-section .wp-block-column:first-child
{
  flex-basis: 54%;
}

.aso-home-section .wp-block-column:last-child
{
  flex-basis: 40.7%;
}

.aso-home-section h2
{
	font-weight: 700;
	font-size: 70px;
	line-height: 83px;
	margin-bottom: .42em;
}


@media all and (max-width: 1200px){
  .aso-hero-section .wp-block-group
  {
    top: 60%;
    bottom: auto;
  }

  .aso-hero-section h1
  {
    font-size: 14vw;
    line-height: 1.3em;
  }

  .aso-home-section h2
  {
    font-size: 40px;
    line-height: 1.3em;
  }

  .aso-home-section p
  {
    font-size: 18px;
    line-height: 1.5em;
  }

  .aso-full-width h2
  {
    font-size: 40px;
    line-height: 1.3em;
  }

  .aso-full-width p
  {
    font-size: 18px;
    line-height: 1.5em;
  }

  .aso-row h3
  {
    font-size: 24px;
  }

  .aso-row p
  {

  }

}

@media all and (max-width: 900px){
  .aso-cat-holder
  {
    flex-wrap: nowrap;
    overflow: auto;
    justify-content: space-between;
    padding-bottom: 20px;
  }

  button.aso-category
  {
    width: auto;
    flex-basis: auto;
    min-width: 150px;
    flex: 0 0 auto;
  }
}

@media all and (max-width: 767px)
{
  body
  {
    padding-top: 100px;
  }

  .main-navigation
  {
    display: none;
  }

  .site-branding
  {
    width: 50%;
  }

  .site-header
  {
    height: 85px;
    padding: 0px;
    display: flex;
    align-items: center;
  }

  .aso-full-width.aso-hero-section
  {
    margin-bottom: 0px;
    height: auto;
    padding-bottom: 0px;
    overflow: visible;
  }

  .aso-hero-section .wp-block-group
  {
    position: absolute;
    top: 0px;
    bottom: auto;
    transform: translateY(0px);
    display: flex;
    align-items: center;
    height: 100%;
  }

  .aso-full-width.aso-hero-section figure
  {
    position: relative;
  }

  .aso-hero-section h1
  {
    font-size: 54px;
    line-height: 1.4em;
    text-align: left;
  }

  .aso-home-section
  {
    margin-top: 40px;
    font-size: 21px;
    line-height: 30px;
  }

  .aso-home-section h2
  {
    font-size: 40px;
    line-height: 1.1em;
  }

  .aso-home-section .wp-block-columns
  {
    gap: 40px;
  }

  .aso-home-section figcaption
  {
    position: relative;
  }

  .aso-home-section .wp-block-column
  {

  }

  .wp-block-group.aso-full-width
  {
    overflow: visible;
    height: auto;
  }

  .aso-full-width p
  {
    font-size: 21px;
    line-height: 30px;
  }

  .aso-row
  {
    flex-direction: column;
    gap: 30px;
    row-gap: 80px;
  }

  .aso-guide-search form
  {
    width: 100%;
  }

  .aso-full-width .wp-block-group.aso-text-group .wp-block-group__inner-container
  {
    width: 90%;
    margin: 0px auto;
  }

  .aso-full-width.aso-persuade .wp-block-group
  {
    position: relative;
    top: 0px;
    transform: translateY(0px);
    min-height: 100vh;
  }

  .aso-full-width.aso-persuade img
  {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }

  .aso-full-width.aso-persuade figure.aso-background
  {
    height: 100vh;
  }

  .aso-full-width.aso-persuade .wp-block-group.aso-text-group
  {
    position: absolute;
    display: flex;
    align-items: center;
  }

  .aso-full-width h2
  {
    font-size: 43px;
    line-height: 46px;
  }

  .aso-cat-holder
  {
    flex-wrap: nowrap;
    overflow: auto;
    justify-content: space-between;
    padding-bottom: 20px;
  }

  .aso-guide-cat h1,
  .aso-guide-cat h2
  {
    font-size: 42px;
    margin-bottom: 63px;
  }

  .wp-block-group.aso-full-width figure
  {
    margin-bottom: 60px;
  }


}

.aso-no-results
{
  text-align: center;
  margin: 0px auto;
}

.site-main
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto;
  min-height: 600px;
}

body.home .site-main,
body.post-type-archive-messaging_guides .site-main,
body.page-id-7 .site-main,
body.post-type-archive-media_appearances .site-main
{
  width: 100%;
  max-width: none;
}


body.post-type-archive-messaging_guides .site-main.search-main
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto;
}

.page-header,
.entry-header
{
  text-align: center;
  border-bottom: 4px solid #FF8058;
  padding: 73px 0px 54px 0px;
  margin-bottom: 75px;
}

.page-header h1,
.entry-header h1
{
  font-family: 'GilroyExtraBold', sans-serif;
  color: #4B00BF;
  font-style: normal;
  font-weight: 800;
  font-size: 70px;
  line-height: 85px;
  margin: 0px;

}

.page-header.search-header,
.no-results header.page-header
{
  border-bottom: 1px solid var(--aso-purple);
  text-align: left;
  padding: 0px 0px 20px 0px;

}

.aso-result-group
{
  margin-bottom: 70px;
}

.page-header.search-header h1,
.no-results header.page-header h1
{
  font-size: 36px;
  line-height: 44px;
  font-weight: 700;
  font-family: 'GilroyExtraBold', sans-serif;
}

.no-results .search-form
{
  border-style: solid;
  border-width: 0px 0px 1px 0px;
  border-color: var(--aso-purple);
  max-width: 650px;

}

.no-results .search-form input[type="search"]
{
  width: 75%;
  width: calc(100% - 40px);
  background-color: transparent;
  padding: 16px 0px 16px 0px;
  outline: none;
  -webkit-appearance: none;
  color: #000;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  font-size: 21px;
  line-height: 25px;
  border-radius: 0;
  border-width: 0px 0px;

}

.no-results .search-form button
{
  -webkit-appearance: none;
  background-color: transparent;
  width: 22px;
  height: 22px;
  padding: 0px;
  background-size: 100% auto;
  background-repeat: no-repeat;
  border: 0px;
  border-radius: 0px;
  cursor: pointer;
}

.article-list
{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  min-height: 600px;
  transition: all .6s ease;
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto;
  padding-top: 57px;
  /*opacity: 1;
  transform: translateY(0px);*/

}

.article-list.hidden
{
  opacity: 0;
  transform: translateY(15px);
}

.article-list .entry-header
{
  border-bottom: 0px;
  padding: 0px;
  text-align: left;
}

.article-list .entry-header h2
{
  margin: 0px;
}

.article-list article
{
  flex-basis: 46%;
  align-self: flex-start;
  margin-bottom: 114px;
}

article.post h2,
.article-list h2
{
  font-family: 'GilroyExtraBold', sans-serif;
  font-weight: 700;
  font-size: 36px;
  line-height: 130%;
}

article.post h2 a::after,
.article-list h2 a::after
{
  content: " \2192";
  font-size: .9em;
  font-family: 'Rubik', sans-serif;
  font-weight: 300;
}


article.post h2 a,
.article-list h2 a
{
  text-decoration: none;
  color: inherit;
}

.search-main
{
  min-height: 600px;
}

.search-main .entry-header
{
  text-align: left;
  border-bottom: none;
  padding: 0px 0px 0px 0px;
  margin-bottom: 12px;
}

.search-main article
{
  margin-bottom: 40px;
}

.search-main article h2
{
  margin: 0px;
  font-family: 'GilroyExtraBold', sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 29px;
}

.search-main article a
{
  text-decoration: none;
  color: var(--aso-purple);
}

.aso-result-group > h2
{
  border-bottom: 1px solid var(--aso-purple);
  padding-bottom: 25px;
  font-size: 30px;
  line-height: 1.3em;
}

.type-media_appearances .featured
{
  width: 63%;
}

.article-list .posts-navigation
{
  flex-basis: 100%;
}

.site-footer
{
	border-top: 1px solid var(--aso-purple);
  padding: 65px 0px 75px 0px;
  color: var(--aso-purple);
  background-color: #FFF;
  margin-top: 100px;
}

body.home .site-footer,
body.post-type-archive-messaging_guides .site-footer,
body.page-id-7 .site-footer
{
  margin-top: 0px;
}

.site-footer .wrap
{
  max-width: var(--aso-max-width);
  width: var(--aso-content-width);
  margin: 0px auto;
  display: flex;
  flex-direction: row;
}

.site-footer .wrap .col
{
  flex-basis: 50%;
}

.site-footer .wrap .col.site-info
{
  display: flex;
  flex-direction: column;
}

.aso-info
{
  margin-left: auto;
  margin-right: 96px;
  font-size: 18px;
  line-height: 21px;
}

.aso-info figure
{
  margin-bottom: 25px;
}

.site-footer form
{
  font-weight: 400;
  font-size: 24px;
  line-height: 30px;
}

span.error
{
  display: block;
  color: #d5310b;
  padding: 5px;
  font-size: 15px;
  line-height: 20px;
}

.site-footer form h2
{
  font-weight: 700;
  font-size: 50px;
  line-height: 59px;
  margin-bottom: 8px;
}

.site-footer button
{
  cursor: pointer;
}

.site-footer input[type="text"],
.site-footer input[type="email"]
{
  -webkit-appearance: none;
  background-color: #FFF;
  color: #000;
  border: 1px solid var(--aso-purple);
  border-radius: 99px;
  font-size: 18px;
  line-height: 40px;
  margin: 0px;
  padding: 0px 15px;
  outline: none;
}

.site-footer input[type="email"]
{
  border-radius: 8px;
}

.aso-subscribe-group
{
  text-align: center;
  border-bottom: 4px solid #FF8058;
  padding: 73px 0px 54px 0px;
  margin-bottom: 75px;
  margin: 0px 0px 75px 0px;
  width: 100%;
}

.aso-subscribe-group  h2
{
  font-family: 'GilroyExtraBold', sans-serif;
  color: #4B00BF;
  font-style: normal;
  font-weight: 800;
  font-size: 70px;
  line-height: 85px;
  margin: 0px;
}

::placeholder
{
  opacity: 1;
  color: #AAA;
  font-family: 'Rubik', sans-serif;
  font-weight: 300;
}

.site-footer button
{
  background: var(--aso-purple);
  border: 0px;
  border-radius: 99px;
  -webkit-appearance: none;
  font-size: 18px;
  line-height: 18px;
  color: #FFF;
  padding: 13px 30px;
  font-weight: 400;
}

.aso-logo
{
  width: 218px;
}

@media all and (max-width: 1200px){

  .site-footer form h2
  {
    font-size: 30px;
    line-height: 1.3em;
  }

  .site-footer form p
  {
    font-size: 18px;
    line-height: 1.5em;
  }

  .site-footer input[type="text"], .site-footer input[type="email"]
  {
    font-size: 16px;
  }

  .site-footer .wrap
  {
    justify-content: space-between;
  }

  .site-footer .wrap .col:first-child
  {
    flex-basis: 50%;
  }

  .site-footer .wrap .col:last-child
  {
    flex-basis: 40%;
  }

}


@media all and (max-width: 900px)
{


  article.post h2, .article-list h2
  {
    font-size: 24px;
    line-height: 1.3em;
  }

}

@media all and (max-width: 767px)
{

  article.post h2, .article-list h2
  {

  }

  .site-footer
  {
    padding-bottom: 50px;
  }

  .site-footer .wrap
  {
    flex-direction: column;
  }

  .site-footer .wrap .col
  {
    margin-bottom: 100px;
  }

  .site-footer .wrap .col:last-child
  {
    margin-bottom: 0px;
  }

  .aso-info
  {
    margin: 0px;
  }

  .site-footer input[type="text"], .site-footer input[type="email"]
  {
    width: 50%;
  }

  .article-list
  {
    flex-direction: column;
  }

  .page-header, .entry-header
  {
    padding-top: 0px;
  }

  .page-header h1,
  .entry-header h1
  {
    font-size: 48px;
    line-height: 1.2em;
  }

}

.the-book .wp-block-columns .wp-block-column
{
  flex-grow: 0;
  flex-basis: 50%;
}

.the-book .wp-block-columns .wp-block-column:last-child
{
  padding-left: 8%;
}
.aso-book figure
{
  width: 80%;
  margin: 0px auto;
}

.wp-block-buttons > .wp-block-button
{
  margin-top: 2em;
}

.wp-block-button__link,
.aso-button
{
  background-color: var(--aso-purple);
  padding: 16px 42px;
  font-size: 18px;
  line-height: 18px;
  color: #FFF;
  border-radius: 99px;
  text-decoration: none;
}

.aso-button
{
  display: inline-block;
  margin: 1em 0px;
}

@media all and (max-width: 900px){
  .entry-content > .wp-block-columns.visible
  {
    flex-direction: column;
  }
  .aso-book figure
  {
    width: 65%;
  }
}

@media all and (max-width: 767px)
{

  .aso-book
  {
      gap: 25px;
  }

  .the-book .wp-block-columns .wp-block-column:last-child
  {
    padding-left: 0px;
  }

  .page-header, .entry-header
  {
    padding-bottom: 35px;
    margin-top: 10px;
  }

}

/* Press Hits */

.press-hits .entry-header
{
  padding: 0px;
  border: 0px;
  text-align: left;
  margin-bottom: 25px;
}

.press-hits .entry-header h2
{
  margin: 0px;
}

figcaption
{
  margin-top: 5px;
}

.article-list.press-hits .wp-caption
{
  height: 0px;
  overflow: hidden;
  padding-bottom: calc(70.1% + 30px);
}

/* End of Press Hits */

/* Presentations */

.aso-video iframe
{
  width: 100%;
}

.wp-block-embed iframe div.player
{
  width: 100%;
}

.wp-block-embed figcaption
{
  font-size: 25px;
  line-height: 1.4em;
  font-weight: 400;
  margin-bottom: 0px;
}


/* end of Presentations */

/* About Page */

.page-team .wp-block-columns,
.page-team.wp-block-columns
{
  gap: 5%;
  margin-bottom: 60px;
  line-height: 1.5em;
}

.page-team h2,
.post-2962 h2
{
  color: var(--aso-purple);
  margin: 0px;
}

.page-team .wp-block-image
{
  margin-bottom: 20px;
}

.aso-col-3,
.aso-3-col
{
  font-size: 15px;
  line-height: 22.5px;
}

.aso-col-2 h2
{
  font-size: 36px;
  line-height: 130%;
}

.aso-col-3 h2,
.aso-3-col h2
{
  font-size: 30px;
  line-height: 39px;
}

.aso-3-col
{
  flex-wrap: wrap !important;
}

.aso-3-col .wp-block-column
{
  flex-basis: 30% !important;
  flex-shrink: 0 !important;
  flex-grow: 0 !important;
  margin-bottom: 40px;
}


@media all and (max-width: 900px)
{



  .entry-content > .aso-col-3.wp-block-columns,
  .entry-content > .aso-3-col.wp-block-columns
  {
    flex-direction: row;
    gap: 4%;
    flex-wrap: wrap !important;
  }

  .page-team .wp-block-columns
  {
    gap: 0px;
  }

  .aso-col-3.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column,
  .aso-3-col.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column,
  .entry-content > .aso-col-3.wp-block-columns .wp-block-column,
  .entry-content > .aso-3-col.wp-block-columns .wp-block-column
  {
    flex-basis: 48% !important;
    flex-shrink: 0;
    flex-grow: 0;
    margin-bottom: 40px;
  }

  /*.entry-content > .aso-col-3.wp-block-columns.visible
  {
    flex-direction: row;
  }*/

  /*.aso-col-3.wp-block-columns > .wp-block-column
  {
    flex-basis: 50% !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
  }*/

  /*.aso-col-3.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column
  {
    flex-basis: 50%;
    flex-shrink: 0;
  }*/
}

@media all and (max-width: 767px){
  .page-team .wp-block-column
  {
    margin-bottom: 60px;
  }

  .aso-col-3.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column, .aso-3-col.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column, .entry-content > .aso-col-3.wp-block-columns .wp-block-column, .entry-content > .aso-3-col.wp-block-columns .wp-block-column
  {
    flex-basis: 100% !important;
  }

}

/* End of About Page */

/* Contact Page */

.aso-contact-section
{
  padding-bottom: 186px;
  max-width: none;
  width: 100%;
}

.aso-contact-section .wp-block-group__inner-container,
.aso-subscribe-section .wp-block-group__inner-container
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto;
}

article.page-contact .entry-header
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin-left: auto;
  margin-right: auto;
}

.aso-subscribe-section
{
  max-width: none;
  width: 100%;
  background-color: #FFF;
  padding-bottom: 100px;
}

.aso-subscribe-section h2
{

  color: var(--aso-purple);
  line-height: 130%;
}

.aso-subscribe-section h3
{
  font-size: 36px;
  line-height: 1.3em;
}

.page-contact .wp-block-columns
{
  gap: 2%;
  margin-bottom: 60px;
}

.wpcf7 form.sent .wpcf7-response-output
{
  background-color: #38C71B;
  padding: 12px 1em;
  border: none;
  margin: 20px 0px 0px 0px;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output,
p.error
{
  border:0px;
  background-color: #d5310b;
  color: #FFF;
  margin: 20px 0px 0px 0px;
  width: 100%;
  padding: 12px 1em;
  box-sizing: border-box;
}

p.error
{
  padding: 12px 1em;
  width: 100%;
  box-sizing: border-box;
}

.aso-sub-conf
{
  margin-top: 20px;
}

div.success
{
  padding: 12px 1em;
  width: 100%;
  box-sizing: border-box;
  margin-top: 20px;
  background-color: #38C71B;
  color: #000;
}

.wpcf7-not-valid-tip
{
  font-size: 15px;
  line-height: 1.4em;
  margin-top: 5px;
}

.wpcf7-form p,
.aso-subscribe p
{
  position: relative;
}

.wpcf7-form .row
{
  display: flex;
  flex-direction: row;
  gap: 14px;
}

.wpcf7-form label,
.aso-subscribe label
{

  font-family: 'Rubik',sans-serif;
  z-index: 1;
  transform: translateY(34px);
  color: #999;
  transition: .2s all ease-out;
  transform-origin: left top;
  display: block;
  font-size: 15px;
  position: relative;
  padding-left: 15px;
  pointer-events: none;
  z-index: 1;
}

.wpcf7-form label.filled,
.aso-subscribe label.filled
{
  transform: translateY(-6px);
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form textarea,
.aso-subscribe input[type="text"],
.aso-subscribe input[type="email"],
.aso-subscribe textarea
{
  -webkit-appearance: none;
  border: 1px solid #4B00BF;
  border-radius: 8px;
  font-size: 16px;
  line-height: 40px;
  color: #000;
  font-family: 'Rubik', sans-serif;
  outline: none;
  width: 100%;
  box-sizing: border-box;
  padding: 0px 15px;
}

.no-margin
{
  margin: 0px;
}

.wpcf7-form textarea
{
  padding-top: 10px;
  height:180px;
  line-height: 1.4em;
}

.wpcf7-form input[type="submit"],
.aso-subscribe input[type="submit"],
.aso-subscribe button
{
  background: #4B00BF;
  border-radius: 99px;
  border: 0px;
  color:#FFF;
  font-family: 'Rubik', sans-serif;
  font-size: 18px;
  line-height: 18px;
  padding: 16px 32px;
  cursor: pointer;
  font-weight: 400;
}

.aso-subscribe
{
  width:  100%;
}

.aso-subscribe p
{

}

.aso-subscribe .row
{
  display: flex;
  flex-direction: row;
  gap: 14px;
}

.aso-subscribe .row p
{
  flex-basis: 50%;
}

.aso-subscribe p input[type="text"],
.aso-subscribe p input[type="email"],
.aso-subscribe p textarea
{
  width: 100%;
}

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

.aso-reverse-button
{
  display: flex;
  flex-direction: row-reverse;

}

.aso-social-icons ul
{
  list-style: none;
  padding: 0px;
  margin: 20px 0px 0px 0px;
  font-size: 20px;
}

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

.aso-social-icons ul li.facebook
{
  top: -1px;
  position: relative;
}

.aso-social-icons ul li.instagram,
.aso-social-icons ul li.bluesky
{
  font-size: 23px;
}

.aso-social-icons ul li.bluesky
{
  width: 23px;
}

.aso-social-icons ul li.bluesky img
{
  top: 1px;
  position: relative;
  width: 20px;
  margin: 0 auto;
}

.aso-social
{
  background-color: var(--aso-purple);
  text-align: center;
  color: #FF8058;
  padding: 30px 0px;
  width: 100%;
  max-width: none;
}

.aso-social .wp-block-group__inner-container
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
}

.aso-social .wp-block-column:first-child
{
  display: flex;
  align-items: center;
  justify-content: center;
}

.aso-social h2
{
  font-size: 70px;
  line-height: 85px;
  margin: 0px;
  position: relative;
}

.aso-social h2 a
{
  color: #FF8058;
  text-decoration: none;

}

.aso-social h2::after
{
  content: '';
  width: 120px;
  height:106px;
  background-image: url('/wp-content/themes/asocommunications/images/image-2026.png');
  background-size: 100% auto;
  background-repeat: no-repeat;
  position: absolute;
  top: -68px;
  right: -100px;
}

.aso-social figure
{
  width: 90%;
}

@media all and (max-width:900px) {
  .page-contact .wp-block-columns
  {
    flex-direction: column;
  }
}

@media all and (max-width:767px) {

  .aso-contact-section
  {
    padding-bottom: 40px;
  }

  .aso-subscribe-section h2
  {
    font-size: 48px;
    line-height: 1.2em;
  }

  .aso-subscribe-section h3
  {
    margin-top: 20px;
  }

  label.message
  {
    transform: translateY(54px);
  }

  .aso-contact-section .wp-block-columns
  {
    gap: 20px;
  }

}

/* End of Contact Page  */

/* Single Posts */

body.single-ads article
{
  width: 46%;
}

body.single article
{
  margin-bottom: 60px;
  margin-top: 40px;
}

body.single-post article
{
  width: 46%;
  margin-top: 40px;
}

body.single-post .entry-header
{
  padding: 0px;
  border-bottom: none;
  margin-bottom: 25px;
}

body.single-post .entry-header h1
{
  font-weight: 700;
  font-size: 36px;
  line-height: 130%;
  color:#000;
  text-align: left;
}

/* End of Single Posts */

/* Media Appearances */

.aso-guide-cat.media-cat
{
  background-color: transparent;
}

.aso-guide-cat.media-cat h2.aso-section-title
{
  font-size: 50px;
  line-height: 130%;
  margin-bottom: 63px;
  border-bottom: none;
  color: var(--aso-purple);
  text-align: center;
  padding-bottom: 25px;
}

body.post-type-archive-media_appearances .page-header
{
  width: var(--aso-content-width);
  max-width: var(--aso-max-width);
  margin: 0px auto 75px auto;
}

.media-cat.aso-guide-cat .aso-row
{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0px;
}

.media-cat.aso-guide-cat .aso-row article
{
  flex-basis: 30%;
  align-self: flex-start;
  margin-bottom: 114px;
}

.media-cat.aso-guide-cat h1,
.media-cat.aso-guide-cat h2
{
  font-weight: 700;
  font-size: 36px;
  line-height: 130%;
  border: none;
  text-align: left;
  color: #000;
}

.single-media article
{
  width: 46%;
  min-height: 600px;
  margin: 60px 0px 60px 0px;
}

.single-media article h1,
.single-media article h2
{
  font-size: 30px;
  line-height: 130%;
}

.aso-post-meta
{
  font-size: 18px;
  line-height: 150%;
}

.aso-regular.media-cat-filter
{
  margin: 75px auto 87px auto;
}

.media-articles.article-list article
{
  flex-basis: 30%;
}

@media all and (max-width: 900px){

  .media-cat.aso-guide-cat h1, .media-cat.aso-guide-cat h2
  {
    font-size: 24px;
    margin-bottom: 1em;
  }

  .media-cat.aso-guide-cat .aso-row article,
  .media-articles.article-list article
  {
    flex-basis: 46%;
  }

}

@media all and (max-width: 767px){

  .media-cat.aso-guide-cat
  {
    padding: 37px 0px 0px 0px;
    margin-bottom: 80px;
  }

  .aso-regular.media-cat-filter
  {
    margin: 100px 0px 80px 0px;
  }

  .media-cat.aso-guide-cat .aso-row article:last-child
  {
    margin-bottom: 0px;
  }

  .media-cat.aso-guide-cat .aso-row
  {
    flex-direction: column;
    gap: 0px;
  }

  body.post-type-archive-media_appearances .article-list,
  body.tax-media-appearances-category .article-list
  {
    padding-top: 0px;
  }

  .aso-media.aso-cat-holder
  {
    margin-bottom: 0px;
  }

}

/* End of Media Appearances*/

/* Ads */

.type-aso-ads h2
{
  margin: 12px 0px 22px 0px;
}

/* End of Ads */

@media all and (max-width: 767px)
{
  figcaption
  {
    font-size: 13px;
  }
}

.grid-container {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: 1fr;
    gap: 2.28%;
    grid-template-areas: ". . . . . . . . . . . .";
    position: fixed;
    height: 100%;
    top: 0px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
    pointer-events: none;
    opacity: 0;
    width: 90%;
		max-width: 1314px;
		mix-blend-mode: multiply;
}

.grid-container.visible
{
		opacity: 1;
}

.grid-container div
{
	background-color: #E6E6E68A; /*#CCCCCC8A*/
}
