:root {
  --accent-color: #859898;
  --footer-color: #f4f7f7;
  --text-color: #323B3C;
  --body-font: "Hind", Arial, serif;
  --heading-font: "Nunito", Arial, serif;
}

body.bck-white {
  background: #fff;
}

a:where(:not(.wp-element-button)) {
  text-decoration: none;
}

/* Font Sizes
  ---------------------------------------------------------------------------- */

.site-container .has-small-font-size {
  font-size: 14px;
}

.site-container .has-regular-font-size {
  font-size: 16px;
}

.site-container .has-large-font-size {
  font-size: 20px;
}

.site-container .has-larger-font-size {
  font-size: 24px;
}

/* Drop Caps
  ---------------------------------------------------------------------------- */

.site-container .has-drop-cap:not(:focus)::first-letter {
  margin: 0.1em 0.08em 0 -0.08em;
}

.site-container .has-larger-font-size.has-drop-cap:not(:focus)::first-letter, .site-container .has-small-font-size.has-drop-cap:not(:focus)::first-letter {
  margin-right: 0.01em;
}

/* Background Color
  ---------------------------------------------------------------------------- */

.site-container p.has-background {
  padding: 25px 30px;
}

.site-container p.has-background a, .site-container p.has-text-color a {
  color: inherit;
}

.site-container p.has-background a {
  border-width: 0;
  box-shadow: none;
  text-decoration: underline;
}

.site-container p.has-background a:focus, .site-container p.has-background a:hover, .site-container p.has-text-color a:focus, .site-container p.has-text-color a:hover {
  color: inherit;
  text-decoration: none;
}

.site-container .has-theme-primary-background-color {
  background-color: var(--accent-color);
}

.site-container .has-theme-footer-background-color {
  background-color: var(--footer-color);
}

.site-container .has-theme-text-background-color {
  background-color: var(--text-color);
}

.site-container .has-theme-base-background-color {
  background-color: #fff;
}

/* Alignment
  ---------------------------------------------------------------------------- */

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

.wp-block-image.osom-podcast-icon {
  margin-bottom: 10px;
}

.wp-block-button.alignleft, .wp-block-cover.alignleft, .wp-block-image .alignleft {
  margin-right: 20px;
}

.wp-block-button.alignright, .wp-block-cover.alignright, .wp-block-image .alignright {
  margin-left: 20px;
}

.wp-block-image.alignwide, .wp-block-image.alignfull, .wp-block-embed.alignwide, .wp-block-embed.alignfull {
  margin-bottom: 30px;
}

.page.full-width-content .entry-content .alignfull, .single.full-width-content .entry-content .alignfull {
  max-width: 100%;
  margin-left: calc(-100vw / 2 + 100% / 2);
  margin-right: calc(-100vw / 2 + 100% / 2);
  max-width: 100vw;
}

.wp-block-gallery.alignfull .blocks-gallery-grid {
  margin-left: 0;
}

@media only screen and (min-width: 1240px) {
  .page.full-width-content .entry-content .alignwide, .single.full-width-content .entry-content .alignwide {
    margin-left: auto;
    margin-right: auto;
    width: auto;
    max-width: 1200px;
  }
  .custom-page.full-width-content .entry-content .alignwide {
    margin-left: -80px;
    margin-right: -80px;
  }

  .page.full-width-content figure.wp-block-image.alignwide, .single.full-width-content .entry-content  figure.wp-block-image.alignwide {
    margin-left: -100px;
    margin-right: -100px;
    width: auto;
    max-width: 1200px;
  }

}

@media only screen and (max-width: 960px) {
  .site-header {
    margin-bottom: 40px;
  }
}

@media only screen and (max-width: 600px) {

  .page.full-width-content .entry-content .alignfull, .single.full-width-content .entry-content .alignfull {
    padding: 20px;
  }

  
}


/* Columns
  ---------------------------------------------------------------------------- */

.site-container .wp-block-columns {
  margin-bottom: 30px;
}

.site-container .wp-block-columns .wp-block-column>*:first-child {
  margin-top: 0;
}

.image-grid.wp-block-columns[class*="has-"] .wp-block-column {
  flex: 1;
  margin-right: 20px;
}

.image-grid.wp-block-columns[class*="has-"] .wp-block-column:last-child {
  margin-right: 0;
}

@media (max-width: 599px) {
  .wp-block-column {
    text-align: center;
  }
}

@media (max-width: 781px) and (min-width: 600px) {
  .site-container .wp-block-column:nth-child(2n) {
    margin-left: 16px;
    margin-right: 16px;
  }
}

@media only screen and (min-width: 600px) {
  .site-container .wp-block-columns {
    flex-wrap: nowrap;
  }
  .site-container .wp-block-columns[class*="has-"]>* {
    margin-right: 20px;
    margin-left: 0;
  }
  .site-container .wp-block-columns[class*="has-"]>*:last-child {
    margin-right: 0;
  }
  .site-container .wp-block-columns .wp-block-column>*:last-child {
    margin-bottom: 0;
  }
}

/* Cover Image
  ---------------------------------------------------------------------------- */

.wp-block-cover {
  width: auto;
}

.entry-content .wp-block-cover .wp-block-cover-text {
  font-size: 48px;
}

/* Buttons
  ---------------------------------------------------------------------------- */

a.wp-block-button__link, a.wp-block-button__link:hover {
  color: #fff;
}

.site-container .wp-block-button .wp-block-button__link {
  border-width: 0;
  border-radius: 5px !important;
  box-shadow: none;
  cursor: pointer;
  font-family: var(--heading-font);
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.5px;
  padding: 15px 30px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  white-space: normal;
  width: auto;
}

/* Button Variations */

.site-container .wp-block-button.is-style-squared .wp-block-button__link {
  border-radius: 0;
}

div.site-container .wp-block-button.is-style-outline .wp-block-button__link:focus, div.site-container .wp-block-button.is-style-outline .wp-block-button__link:hover {
  color: var(--text-color);
}

.site-container .wp-block-button.is-style-outline .wp-block-button__link {
  background-color: transparent;
  border: 2px solid var(--accent-color);
  border-radius: 5px;
  padding: 13px 28px;
  color: var(--accent-color);
}

.site-container .wp-block-button .wp-block-button__link:focus, .site-container .wp-block-button .wp-block-button__link:hover, .site-container .wp-block-button.is-style-outline .wp-block-button__link:focus, .site-container .wp-block-button.is-style-outline .wp-block-button__link:hover {
  box-shadow: inset 0 0 200px rgba(230, 230, 230, 0.25);
}

.site-container .wp-block-file .wp-block-file__button {
  border-radius: 5px;
  border: solid 2px var(--accent-color);
  color: var(--text-color);
  background-color: inherit;
  box-shadow: none;
  font-size: 13px;
}

.site-container .wp-block-file .wp-block-file__button:hover {
  color: var(--accent-color);
}

.wp-element-button.wp-block-search__button {
  padding: 7px 15px;
  font-size: 15px;
}

/* Blockquotes and captions
  ---------------------------------------------------------------------------- */

.site-container .wp-block-quote {
  border: none;
  margin: 30px;
}

.wp-block-pullquote {
  padding: 2em 0;
  margin: 40px 0;
}

.wp-block-pullquote.alignleft {
  margin: 0 20px 20px 0;
}

.wp-block-pullquote.alignright {
  margin: 0 0 20px 20px;
}

.site-container .wp-block-pullquote p, .site-container .wp-block-quote p {
  font-family: var(--heading-font);
  font-size: 2.2rem;
  font-size: 22px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.75;
  max-width: 900px;
  margin: 0 auto 10px auto;
}

.site-container .wp-block-pullquote p:after, .site-container .wp-block-quote p:after {
  content: '';
  width: 50px;
  height: 2px;
  background-color: var(--accent-color);
}

.site-container .wp-block-pullquote p, .site-container .wp-block-quote.is-style-large p {
  font-size: 30px;
}

.site-container .wp-block-pullquote.is-style-solid-color p {
  color: #fff;
  margin-bottom: 40px;
  text-align: center;
}

.site-container .wp-block-pullquote.is-style-solid-color {
  background-color: var(--text-color);
}

.wp-block-pullquote.is-style-solid-color.alignleft blockquote, .wp-block-pullquote.is-style-solid-color.alignright blockquote {
  max-width: 80%;
}

.site-container .wp-block-pullquote:not(.is-style-solid-color)[style*="border-color"] {
  border: 2px solid;
  border-left: none;
  border-right: none;
}

.site-container .wp-block-pullquote cite, .site-container .wp-block-quote cite {
  display: block;
  font-family: var(--heading-font);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.5px;
  text-align: inherit;
  text-transform: uppercase;
}

.site-container .wp-block-pullquote cite {
  text-align: center;
}

.site-container .wp-block-pullquote.is-style-solid-color cite {
  color: #fff;
  font-style: italic;
}

.wp-block-pullquote.is-style-solid-color blockquote p {
  font-size: 22px;
}

.site-container .wp-block-pullquote .has-text-color cite, .site-container .wp-block-pullquote .has-text-color p {
  color: currentColor;
}

.site-container .wp-block-image>figure.aligncenter {
  text-align: center;
}

.site-container .wp-block-audio figcaption, .site-container .wp-block-embed figcaption, .site-container .wp-block-image figcaption {
  color: #666;
  font-size: 1.6rem;
  font-size: 16px;
  font-style: italic;
  position: relative;
  padding: 5px 20px;
  display: inline-block;
}

/* Category Block
  ---------------------------------------------------------------------------- */

.site-container .wp-block-categories, .site-container .wp-block-categories ol, .site-container .wp-block-categories ul {
  margin-left: 0;
  padding-left: 0;
}

.site-container .wp-block-categories li {
  list-style-type: none;
}

.site-container .wp-block-categories.aligncenter {
  text-align: center;
}

.site-container .wp-block-categories-list.alignfull {
  padding: 0 30px;
}

/* Latest Posts Block
  ---------------------------------------------------------------------------- */

.site-container .wp-block-latest-posts {
  clear: both;
  margin-left: 0;
}

.site-container .wp-block-latest-posts li {
  list-style-type: none;
}

.site-container .wp-block-latest-posts.aligncenter {
  text-align: center;
}

.site-container .wp-block-latest-posts.alignfull {
  padding: 0 30px;
}

/* Other Blocks
  ---------------------------------------------------------------------------- */

.wp-block-preformatted, .wp-block-verse {
  font-size: 16px;
}

.wp-block-preformatted {
  white-space: pre-wrap;
}

hr.wp-block-separator {
  border: none;
  border-top: 1px solid #eee;
  margin: 1.65em auto;
}

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  max-width: 100px;
}

.wp-block-audio audio {
  display: inline-block;
  width: 100%;
}

.site-container .wp-block-gallery {
  margin-left: 0;
}

@media only screen and (max-width: 600px) {
  .wp-block-media-text.is-stacked-on-mobile figure {
    margin-bottom: 20px;
  }

  .wp-block-image img {
    height: auto !important;
}
}

/* CUSTOM BLOCK TEMPLATES STYLES 
---------------------------------------------------------------------------- */

h6.osom-heading {
  margin-top: 10px !important;
}

.pricing-list .paragraph-1 {
  max-width: 40%;
  margin: 0 auto;
}

.pricing-list .wp-block-columns .wp-block-group {
  padding: 66px 0;
  border: 1px solid #516163;
  border-radius: 5px;
  margin-bottom: 20px;
}

.testimonial h4 {
  margin: 20px 0 0 43px !important;
}

.testimonial h2 {
  margin: 0 0 0 43px !important;
}

.testimonial .wp-block-columns {
  max-width: 87%;
  margin: 0 auto;
}

.testimonial figure.is-style-circle-mask {
  background: var(--accent-color);
  border-radius: 9999px;
  padding: 20px;
}

.team .wp-block-column {
  margin-bottom: 10px;
}

.team .paragraph-1 {
  max-width: 47%;
  margin: 0 auto;
}

.team .wp-block-columns {
  max-width: 80%;
  margin: 0 auto;
}

.team .paragraph-2 {
  margin: 30px 0 0 0;
}

.team .paragraph-3 {
  margin: 0 0 261px 0;
}

.team .wp-block-image.is-resized {
  background: #323B3C;
  width: 230px;
  height: 230px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/* Genesis Blocks
  ---------------------------------------------------------------------------- */

.site-container .gb-button {
  font-family: var(--heading-font);
  font-weight: 400;
  text-transform: uppercase;
}

.site-container .gb-block-spacer {
  margin-bottom: 0;
}

.site-container .gb-block-post-grid h2 a:hover {
  box-shadow: none;
  border-bottom: 1px solid #ddd;
}

.wp-block-buttons.aligncenter {
  display: block;
}

.wp-block-button.aligncenter {
  text-align: center;
}

.gb-block-post-grid h2 a {
  border-width: 0;
}

.gb-block-post-grid header .gb-block-post-grid-title a {
  box-shadow: none;
}

a.gb-text-link, .gb-block-post-grid h2 a, .gb-block-post-grid h2 a:hover, .gb-block-post-grid .gb-block-post-grid-author a, .gb-block-post-grid .gb-block-post-grid-byline {
  color: #000;
}

.gb-block-post-grid a.gb-text-link {
  box-shadow: inset 0 -3px 0 0 var(--accent-color);
}

.gb-block-post-grid .gb-block-post-grid-author a {
  text-decoration: underline;
  box-shadow: none;
}

.gb-block-post-grid .gb-block-post-grid-link:hover, .gb-block-post-grid .gb-block-post-grid-author a:hover, .gb-block-post-grid a.gb-text-link:hover {
  color: var(--text-color);
  box-shadow: inset 0 -25px 0 0 #efefef;
  text-decoration: none;
}

@media only screen and (max-width: 600px) {
  .gb-block-container {
    padding: 0 10px;
  }

}


/* Genesis Blocks - Testimonial
  ---------------------------------------------------------------------------- */

.gb-block-testimonial {
  background-color: transparent !important;
  padding: 5% 1%;
}

.gb-testimonial-text p:first-child {
  font-family: var(--heading-font);
  font-size: 22px !important;
  text-align: center;
}

.gb-testimonial-text {
  background: var(--footer-color);
  padding: 5%;
  border-radius: 10px;
  border: solid 2px #EEEEEE;
}

.gb-block-testimonial .gb-testimonial-title {
  color: var(--accent-color);
}

.gb-block-testimonial .gb-testimonial-info {
  text-align: left;
  padding-left: 30%;
}

.gb-block-testimonial .gb-testimonial-info .gb-testimonial-avatar-wrap {
  margin-left: 10%;
}

.gb-block-testimonial .gb-testimonial-avatar-wrap+.gb-testimonial-name, .gb-block-testimonial .gb-testimonial-avatar-wrap+.gb-testimonial-name+.gb-testimonial-title, .gb-block-testimonial .gb-testimonial-avatar-wrap+.gb-testimonial-title, .gb-block-testimonial .gb-testimonial-avatar-wrap+.editor-rich-text, .gb-block-testimonial .gb-testimonial-avatar-wrap+.editor-rich-text+.editor-rich-text {
  margin-left: 0;
}

@media only screen and (max-width: 960px) {
  .gb-block-testimonial .gb-testimonial-info {
    padding-left: 40%;
  }
}

@media only screen and (max-width: 600px) {
  .gb-block-testimonial .gb-testimonial-info {
    padding-left: 35%;
  }
}

/* Genesis Blocks - Price Table
  ---------------------------------------------------------------------------- */

.gb-block-pricing-table-inside {
  border-radius: 5px;
  border-color: var(--accent-color);
  padding-bottom: 20px;
}

.gb-pricing-table-title, .gb-pricing-table-price-wrap {
  background: #F4F7F7;
}

.gb-pricing-table-title {
  color: #4F4F4F;
  font-size: 30px;
  font-family: var(--heading-font);
  border-radius: 5px;
}

.wp-block-genesis-blocks-gb-pricing-table-price.gb-pricing-table-price-wrap.gb-pricing-has-currency {
  background: #F4F7F7;
  margin: 0 auto;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  margin-top: -40px;
  border: solid 1px var(--accent-color);
  width: 110px;
  height: 110px;
  line-height: 25px;
}

.gb-pricing-table-price, .gb-pricing-table-term {
  display: block;
  font-size: 16px;
}

.gb-pricing-table-price {
  font-size: 36px;
}

.gb-pricing-table-title {
  min-height: 130px;
}

.wp-block-genesis-blocks-gb-pricing-table-subtitle.gb-pricing-table-subtitle {
  font-family: var(--heading-font);
  font-style: italic;
  font-size: 18px;
  max-width: 85%;
  margin: 10px auto;
  border-bottom: solid 1px var(--accent-color);
}

.wp-block-genesis-blocks-gb-pricing-table.gb-block-pricing-table-center.gb-block-pricing-table.featured:before {
  content: 'FEATURED';
  position: absolute;
  background: var(--accent-color);
  color: #fff;
  padding: 5px 10px;
}

.gb-button {
  background: var(--accent-color);
}

.wp-block-genesis-blocks-gb-pricing-table.gb-block-pricing-table-center.gb-block-pricing-table.featured:before {
  content: 'Best choice';
  position: absolute;
  background: var(--accent-color);
  color: #fff;
  transform: translateY(100%) rotate(-90deg) translateX(50.71067811865476%) rotate(45deg);
  transform-origin: bottom right;
  margin-left: -50px;
  box-shadow: 1px 2px 2px rgba(0, 0, 0, 0.5);
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  letter-spacing: 1px;
  border-top-right-radius: 35px;
  border-top-left-radius: 35px;
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
  font-family: var(--heading-font);
  font-size: 15px;
  width: 155px;
}

/* GB Notice
  ---------------------------------------------------------------------------- */

.gb-block-notice .gb-notice-title {
  background: var(--accent-color);
}

.gb-block-notice .gb-notice-text {
  color: var(--text-color);
  background: #fff;
}

/* GB Accordion
  ---------------------------------------------------------------------------- */

.gb-block-accordion:focus, .gb-block-accordion .gb-accordion-title:focus {
  outline: none; 
}

.gb-block-accordion .gb-accordion-title {
  padding: 10px 15px;
  border-radius: 5px;
  cursor: pointer;
  border: solid 1px var(--accent-color);
  margin-bottom: 0;
}

.gb-block-accordion .gb-accordion-title:hover {
  background: var(--accent-color);
  color: #fff;
}

.gb-block-accordion .gb-accordion-text {
  padding: 10px 15px;
  border: solid 1px var(--accent-color);
  border-bottom-left-radius: 5px;
  border-top: none;
  border-bottom-right-radius: 5px;
}

/* Team-dakota
  ---------------------------------------------------------------------------- */

.team-dakota .wp-block-column {
  background: #fff;
  padding: 40px 20px;
  border-radius: 10px;
  text-align: center;
}

.team-dakota img {
  max-width: 150px;
  margin-top: 20px;
}

.team-dakota h4 {
  font-size: 22px;
  font-weight: 600;
  margin-top: 20px;
}

@media only screen and (max-width: 781px) and (min-width: 600px) {
  .team-dakota .wp-block-column {
    margin-left: 22px;
    margin-right: 22px;
  }
}

/* Genesis Blocks - Homepage
  ---------------------------------------------------------------------------- */

.home .gb-block-cta:nth-last-child(n) {
  margin-bottom: 0;
}

/* Custom Blocks Styles
  ---------------------------------------------------------------------------- */

blockquote.wp-block-quote.is-style-osom-quote {
  padding: 30px;
  border-left: solid 10px var(--accent-color);
  margin-left: 0px;
  background: var(--footer-color);
}

@media only screen and (max-width: 600px) {

  blockquote.wp-block-quote.is-style-osom-quote {
    padding: 10px;
    margin: 10px;
  }

}


.wp-block-pullquote.is-style-osom-pullquote p, .wp-block-pullquote.is-style-osom-pullquote:not(.is-large):not(.is-style-large) p {
  border-bottom: solid 1px var(--accent-color);
  border-top: solid 1px var(--accent-color);
  padding: 30px;
  background: var(--footer-color);
  font-size: 26px;
  margin-bottom: 0px !important;
}

.wp-block-media-text.is-style-osom-media-text {
  padding: 20px;
  border-radius: 5px;
  box-shadow: 0px 0px 22px #efefef;
}

.wp-block-media-text.is-style-osom-media-text .wp-block-media-text__content {
  background: var(--accent-color);
  color: #fff;
  padding: 20px;
  margin: 20px;
  border-radius: 5px;
}

.wp-block-social-links.is-style-osom-social-links {
  justify-content: center;
}

.wp-block-social-links.is-style-osom-social-links li {
  color: var(--accent-color) !important;
  background-color: transparent !important;
}

ul.gb-pricing-table-features li {
  list-style: none !important;
}

/* Custom Page Templates
  ---------------------------------------------------------------------------- */

.skewl {
  transform: skewY(3deg);
  padding: 100px 0;
  margin-bottom: -200px;
  z-index: -1;
  position: relative;
}

.skewr {
  transform: skewY(3deg);
  padding: 10px 0;
  margin-top: -50px;
  margin-bottom: -50px;
  z-index: 9;
  height: 100px;
  position: relative;
}

.ctacontact {
  background-color: #f4f7f7;
  margin-top: -50px;
  z-index: -100;
}

@media only screen and (min-width: 600px) {

  .osom-featured-text .gb-block-layout-column:nth-child(1), .wp-block-columns.osom-featured-text .wp-block-column:nth-child(1) {
    margin-left: 75px;
  }

}

.osom-featured-text .gb-block-layout-column:nth-child(1) *, .osom-featured-text .gb-block-layout-column:nth-child(1) p, .wp-block-columns.osom-featured-text .wp-block-column:nth-child(1) *, .wp-block-columns.osom-featured-text .wp-block-column:nth-child(1) p {
  padding-right: 100px;
}

  
.osom-featured-text .wp-block-button.is-style-outline .wp-block-button__link {
    padding-right: 28px;
}


.osom-featured-text .wp-block-image {
  margin-left: -75px;
  margin-top: 100px;
  max-width: 450px;
}

ul.is-style-osom-list li {
  margin: 30px 30px 30px 0;
  list-style-type: none;
  padding-left: 80px;
  background: transparent url(../../images/check-circle-osom.svg);
  background-repeat: no-repeat;
  min-height: 55px;
}

@media only screen and (max-width: 600px) {

  .osom-featured-text .gb-block-layout-column:nth-child(1) {
    margin-left: 0px;
  }

  .osom-featured-text .gb-block-layout-column:nth-child(1) *, .osom-featured-text .gb-block-layout-column:nth-child(1) p {
    padding-right: 0px;
  }
  
  .osom-featured-text .wp-block-image {
    margin-left: 0px;
    margin-top: 20px;
    max-width: 100%;
  }

}

.is-style-osom-query ul {
  margin-left: 0;
}

.is-style-osom-query ul li {
  list-style-type: none; 
}

.is-style-osom-query a {
  box-shadow: none;
}

.is-style-osom-query .wp-block-post-excerpt__more-link {
  margin-bottom: 30px;
  position: relative;
  float: right;
  margin-top: 20px;
  color: #5b7171;
  text-align: center;
  box-shadow: inset 0 -3px 0 0 var(--accent-color);
  text-decoration: none;
}

.is-style-osom-query .wp-block-post-excerpt__more-link:after {
  display: inline-block;
  content: '';
  margin-right: 5px;
  margin-left: 5px;
  color: var(--accent-color);
  background-image: url(../../images/bx-play-circle.svg);
  background-size: contain;
  height: 20px;
  width: 20px;
  vertical-align: middle;
}
