@charset "UTF-8";
/*
Theme Name: HelpGood Corporate
Theme URI: 
Author: Drew Matamales for HelpGood
Author URI: https://helpgood.com
Description: A custom theme made for the HelpGood Corporate site. Based upon Automattic's Block Canvas theme.
Requires at least: 5.8
Tested up to: 6.2
Requires PHP: 5.7
Version: 1.6.36
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: helpgood-corporate
Tags: one-column, wide-blocks, block-patterns, custom-colors, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, rtl-language-support, theme-options, threaded-comments, translation-ready, auto-loading-homepage
*/
/* Normalize
--------------------------------------------- */
/* WordPress-specific files
--------------------------------------------- */
/* Block Canvas Theme
--------------------------------------------- */
/*
=== Block Canvas ===
Contributors: Automattic
Requires at least: 6.0
Tested up to: 6.0
Requires PHP: 5.7
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

== Description ==

Block Canvas is a simple theme that supports full-site editing. It comes with a set of minimal templates and design settings that can be manipulated through Global Styles. Use it to build something beautiful.

== Changelog ==

= 0.0.26 =
* Remove table CSS from block canvas theme as it has been addressed in Gutenberg (#6954)

= 0.0.24 =
* Block Canvas: Add no results content to search template (#6860)

= 0.0.23 =
* Remove font-smoothing CSS (#6816)

= 0.0.22 =
* Add home.html template to Block Canvas (#6784)

= 0.0.21 =
* Block Canvas: Add self-closing tag to comments pattern in page template (#6764)

= 0.0.20 =
* Block Canvas: small updates (#6705)

= 0.0.19 =
* Make theme available for translation as much as possible (#6484)

= 0.0.18 =
* Update block canvas styles (#6640)

= 0.0.17 =
* Block canvas: clean up templates (#6620)

== Copyright ==

Block Canvas WordPress Theme, (C) 2022 Automattic
Block Canvas is distributed under the terms of the GNU GPL.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
*/
/*
 * Control the hover stylings of outline block style.
 * Unnecessary once block styles are configurable via theme.json
 * https://github.com/WordPress/gutenberg/issues/42794
 */
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background):hover {
  background-color: var(--wp--preset--color--secondary);
  color: var(--wp--preset--color--base);
  border-color: var(--wp--preset--color--secondary);
}

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
  text-decoration-thickness: 0.0625em !important;
  text-underline-offset: 0.15em;
}

/* HelpGood WordPress Modifications
--------------------------------------------- */
body:not(.editor-styles-wrapper) {
  background-color: var(--wp--preset--color--primary, white);
  min-height: 100vh;
}
body:not(.editor-styles-wrapper) .wp-site-blocks {
  background-color: var(--wp--preset--color--page, white);
}

/*
 * Style external links
 * https://stackoverflow.com/a/5379820/1709484
**/
a[href]:not(:where([href^="#"],
[href^="tel:"],
[href^="mailto:"],
[href^="http://maps.apple.com/"],
[href^="/"]:not([href^="//"]),
[href*=".manta"],
[href*="helpgood.com"],
.wp-block-social-link-anchor,
.frm_remove_link)):after {
  content: " \f35d";
  display: inline-block;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font: var(--fa-font-solid);
  text-decoration: none !important;
  font-size: 0.55em;
  vertical-align: super;
}

a:where(:not(.wp-element-button)):after {
  font-size: 75%;
}

.wp-block-image > a:after {
  display: none;
}

body > .wp-site-blocks {
  padding-top: 0;
  padding-bottom: 0;
}

body > .wp-site-blocks > header + main {
  margin-block-start: 0;
}

li {
  margin-bottom: 0;
}

.wp-block-navigation__container a:where(:not(.wp-element-button)) {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.wp-block-social-links.is-style-logos-only .wp-social-link {
  transition: 0.2s all;
}

.wp-block-social-links.is-style-logos-only .wp-social-link-facebook {
  margin-top: -1px;
  transform: scale(0.95);
}
.wp-block-social-links.is-style-logos-only .wp-social-link-facebook:hover {
  transform: scale(1.05);
}

.wp-site-blocks *[style*="margin-top:0"]:not([style*="margin-top:0."]) {
  margin-top: 0 !important;
}
.wp-site-blocks *[style*="margin-right:0"]:not([style*="margin-right:0."]) {
  margin-right: 0 !important;
}
.wp-site-blocks *[style*="margin-bottom:0"]:not([style*="margin-bottom:0."]) {
  margin-bottom: 0 !important;
}
.wp-site-blocks *[style*="margin-left:0"]:not([style*="margin-left:0."]) {
  margin-left: 0 !important;
}
.wp-site-blocks *[style*="margin:0"]:not([style*="margin:0."]) {
  margin: 0 !important;
}

body.editor-styles-wrapper .wp-block-post-excerpt__more-text {
  display: none;
}

.hg-no-margin-block-start {
  margin-block-start: 0;
}

.hg-no-margin-block-end {
  margin-block-end: 0;
}

/* Font Fallbacks
--------------------------------------------- */
/* -------------------------------------------
   OPTIMIZED FONT FALLBACKS
   These @font-face rules define a temporary
   fallback font (local Arial/Times) and apply
   metric overrides to eliminate CLS.
------------------------------------------- */
/* --- IBM Plex Sans Fallback (Targets Arial/System) --- */
@font-face {
  font-family: "IBM Plex Sans Fallback";
  src: local("Arial");
  /* Best practice: explicitly use swap for consistency, even if local loads instantly */
  font-display: swap;
  /* Horizontal Match */
  size-adjust: 99.6%;
  /* Vertical Match (forces the box to match IBM Plex Sans) */
  ascent-override: 102.5%;
  descent-override: 27.5%;
  line-gap-override: 0%;
}
/* --- IBM Plex Serif Fallback (Targets Times New Roman/Serif) --- */
@font-face {
  font-family: "IBM Plex Serif Fallback";
  src: local("Times New Roman");
  font-display: swap;
  /* Horizontal Match (Scaling Times New Roman up by ~14%) */
  size-adjust: 114%;
  /* Vertical Match (forces the box to match IBM Plex Serif) */
  ascent-override: 102.5%;
  descent-override: 27.5%;
  line-gap-override: 0%;
}
/* Abstracts
--------------------------------------------- */
/* Variables
--------------------------------------------- */
:root {
  --hg-header-height: 135px;
}

/* Mixins
--------------------------------------------- */
/* Content modifications
--------------------------------------------- */
/* Navigation
--------------------------------------------- */
.hg-link-button a,
.frm_button_submit {
  border: 3px solid var(--wp--preset--color--primary) !important;
  color: var(--wp--preset--color--primary) !important;
  background-color: transparent !important;
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--40) !important;
  border-radius: 2em !important;
  transform: scale(1);
  transition: 0.15s all;
  font-weight: 500 !important;
  font-size: var(--wp--preset--font-size--medium) !important;
  font-family: inherit !important;
}
.hg-link-button a:hover, .hg-link-button a:focus, .hg-link-button a:active,
.frm_button_submit:hover,
.frm_button_submit:focus,
.frm_button_submit:active {
  text-decoration: none !important;
}
.hg-link-button a:hover, .hg-link-button a:focus,
.frm_button_submit:hover,
.frm_button_submit:focus {
  color: var(--wp--preset--color--base) !important;
  transform: scale(1.05);
  background-color: var(--wp--preset--color--primary) !important;
}
.hg-link-button a:active,
.frm_button_submit:active {
  transform: scale(1.07);
}

@media screen and (max-height: 700px) {
  header.wp-block-template-part .hg-hamburger-navigation-menu ul {
    font-size: 24px !important;
  }
  header.wp-block-template-part .hg-hamburger-navigation-menu .hg-menu-separator + ul {
    font-size: 20px !important;
  }
}
@media screen and (max-height: 575px) {
  header.wp-block-template-part .hg-hamburger-navigation-menu ul {
    font-size: 20px !important;
  }
  header.wp-block-template-part .hg-hamburger-navigation-menu .hg-menu-separator + ul {
    font-size: 16px !important;
  }
  header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    flex-direction: row;
    padding-top: 90px;
  }
  header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-spacer {
    display: none;
  }
}

header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content,
footer.wp-block-template-part .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content {
  text-decoration-thickness: 3px !important;
}

.wp-block-social-links.is-style-logos-only .wp-social-link:not(:hover, :focus, :active) {
  color: var(--wp--preset--color--contrast);
}

header.wp-block-template-part .wp-block-navigation__responsive-container {
  padding-left: 0;
  padding-right: 0;
}

.wp-block-site-logo a,
.hg-footer-logo-image-container a {
  display: block;
  transition: 0.15s all;
  transform: scale(1);
  transform-origin: left;
}
.wp-block-site-logo a:hover, .wp-block-site-logo a:focus,
.hg-footer-logo-image-container a:hover,
.hg-footer-logo-image-container a:focus {
  transform: scale(1.075);
}
.wp-block-site-logo a:active,
.hg-footer-logo-image-container a:active {
  transform: scale(1.1);
}

footer.wp-block-template-part a {
  text-decoration: none;
}
footer.wp-block-template-part a:hover, footer.wp-block-template-part a:focus {
  text-decoration: underline;
}

footer.wp-block-template-part .wp-block-navigation__container a:where(:not(.wp-element-button)) {
  padding: 0;
}

.hg-email-signup input[type=email] {
  border: 0 none transparent;
  border-bottom: 3px solid var(--wp--preset--color--primary);
  width: 311px;
  margin-right: 20px;
  margin-top: 1em;
  font-family: var(--wp--preset--font-family--ibm-plex-sans);
  font-size: 1.125rem;
  outline-offset: 0.3em;
  font-weight: lighter;
  background: transparent;
}
.hg-email-signup input[type=submit] {
  border-radius: 50px;
  background-color: transparent;
  padding-top: var(--wp--preset--spacing--20);
  padding-right: var(--wp--preset--spacing--40);
  padding-bottom: var(--wp--preset--spacing--20);
  padding-left: var(--wp--preset--spacing--40);
  border: 3px solid var(--wp--preset--color--primary);
  font-size: var(--wp--preset--font-size--medium);
  color: var(--wp--preset--color--primary);
  margin-top: 1em;
}

footer.wp-block-template-part .yikes-mailchimp-container-1 form.yikes-easy-mc-form,
footer.wp-block-template-part .hg-footer-subscribe-form form.yikes-easy-mc-form {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  width: 400px;
  max-width: 100%;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 form.yikes-easy-mc-form label,
footer.wp-block-template-part .hg-footer-subscribe-form form.yikes-easy-mc-form label {
  margin-bottom: 0 !important;
  flex: 1;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 form.frm-show-form .frm_fields_container,
footer.wp-block-template-part .hg-footer-subscribe-form form.frm-show-form .frm_fields_container {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  width: 400px;
  max-width: 100%;
  gap: 0;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 form.frm-show-form .frm_fields_container .frm_form_field:has(input[type=email]),
footer.wp-block-template-part .hg-footer-subscribe-form form.frm-show-form .frm_fields_container .frm_form_field:has(input[type=email]) {
  flex: 1;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 form.frm-show-form fieldset,
footer.wp-block-template-part .hg-footer-subscribe-form form.frm-show-form fieldset {
  border: 0 none transparent;
  padding: 0;
  margin: 0;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 form.frm-show-form input[type=email],
footer.wp-block-template-part .hg-footer-subscribe-form form.frm-show-form input[type=email] {
  width: 100%;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 form.frm-show-form input[type=email]:focus,
footer.wp-block-template-part .hg-footer-subscribe-form form.frm-show-form input[type=email]:focus {
  box-shadow: 0 3px var(--wp--preset--color--primary) !important;
  outline: 0 none transparent;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 form.frm-show-form button[type=submit],
footer.wp-block-template-part .hg-footer-subscribe-form form.frm-show-form button[type=submit] {
  cursor: pointer;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 input[type=email],
footer.wp-block-template-part .hg-footer-subscribe-form input[type=email] {
  border: 0 none transparent;
  border-bottom: 3px solid var(--wp--preset--color--primary);
  margin-right: 1em;
  margin-top: 1em;
  font-family: var(--wp--preset--font-family--ibm-plex-sans);
  font-size: 1.125rem;
  outline-offset: 0.3em;
  font-weight: lighter;
  background: transparent;
  padding: 1px 2px;
  margin-bottom: 0 !important;
  box-shadow: 0 0 var(--wp--preset--color--primary);
  transition: 0.2s all;
  border-radius: 0;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 input[type=email]:focus,
footer.wp-block-template-part .hg-footer-subscribe-form input[type=email]:focus {
  box-shadow: 0 3px var(--wp--preset--color--primary);
  outline: 0 none transparent;
}
footer.wp-block-template-part .yikes-mailchimp-container-1 button[type=submit],
footer.wp-block-template-part .hg-footer-subscribe-form button[type=submit] {
  border-radius: 50px;
  background-color: transparent;
  padding-top: var(--wp--preset--spacing--20);
  padding-right: var(--wp--preset--spacing--40);
  padding-bottom: var(--wp--preset--spacing--20);
  padding-left: var(--wp--preset--spacing--40);
  border: 3px solid var(--wp--preset--color--primary);
  font-size: var(--wp--preset--font-size--medium);
  color: var(--wp--preset--color--primary);
  margin-top: 1em;
  margin-bottom: 0 !important;
  flex: 0;
}

body .hg-hamburger-navigation-menu > button {
  transition: 0.2s;
}
body .hg-hamburger-navigation-menu > button > svg {
  transition: 0.2s;
}
body .hg-hamburger-navigation-menu .wp-block-navigation__responsive-container {
  scrollbar-gutter: stable;
}
body .hg-hamburger-navigation-menu .wp-block-navigation__responsive-close {
  scrollbar-gutter: stable;
}
html.has-modal-open body .hg-hamburger-navigation-menu > button > svg {
  transform: rotate(45deg) scaleY(0);
  opacity: 0;
}
body .header-nav-desktop {
  align-self: flex-end;
}
@media screen and (max-width: 768px) {
  body .header-nav-desktop {
    display: none;
  }
}

footer.wp-block-template-part .wp-block-navigation-item .wp-block-social-links {
  display: none;
}
footer.wp-block-template-part .wp-block-navigation-item:has(.wp-block-social-links) {
  display: none;
}

/* Posts and Pages
--------------------------------------------- */
body.home .wp-site-blocks > header {
  position: absolute;
  width: 100%;
  top: var(--wp-admin--admin-bar--height);
  right: 0;
  left: 0;
  z-index: 3;
}
body.home .wp-site-blocks > header + div,
body.home .wp-site-blocks > header .wp-block-spacer:last-of-type {
  display: none;
}
body.home .wp-site-blocks > header + div + main {
  margin-top: 0;
}
body.home .entry-content {
  margin-top: 0 !important;
}

body.single-post .wp-block-heading {
  text-wrap: pretty;
}

@media (max-width: 600px) {
  .wp-block-query .columns-4,
  .wp-block-query .columns-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
.wp-block-query .columns-4 .hg-team-infobox {
  grid-column: 1/span 4;
}
.wp-block-query .columns-3 .hg-team-infobox {
  grid-column: 1/span 3;
}
.wp-block-query .wp-block-post-template .hg-team-infobox {
  transition: 0.2s all;
}
.wp-block-query .wp-block-post-template .hg-team-infobox[hidden] {
  display: block;
  padding-bottom: 0;
  border-bottom: 0 solid var(--wp--preset--color--primary);
  margin-bottom: 0;
  max-height: 0;
}
@media (max-width: 600px) {
  .wp-block-query .wp-block-post-template .hg-team-infobox {
    grid-column: 1/span 2;
  }
}
.wp-block-query .wp-block-post-template .hg-team-infobox:not([hidden]) {
  padding-bottom: var(--wp--preset--spacing--60);
  border-bottom: 2px solid var(--wp--preset--color--primary);
  margin-bottom: var(--wp--preset--spacing--60);
  max-height: 1000px;
}
.wp-block-query .wp-block-post-template .hg-team-infobox .entry-content {
  max-height: 1000px;
  opacity: 1;
  transition: 0.2s all;
}
.wp-block-query .wp-block-post-template .hg-team-infobox .entry-content[hidden] {
  display: block;
  opacity: 0;
  max-height: 0;
}
.wp-block-query .team_member {
  position: relative;
}
.wp-block-query .team_member .entry-content[hidden] {
  display: none !important;
}
.wp-block-query .team_member:not(.has-post-thumbnail):before {
  content: "";
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  background: lightgray;
  aspect-ratio: 188/217;
  transition: 0.5s all;
}
.wp-block-query .team_member:not(.has-post-thumbnail):has(a:hover):before {
  background: var(--wp--preset--color--primary);
}
.wp-block-query .team_member:not(.has-post-thumbnail).selected:before {
  background: var(--wp--preset--color--primary);
}
.wp-block-query .team_member .wp-block-post-featured-image img {
  aspect-ratio: 188/217;
}
.wp-block-query .team_member figure {
  overflow: hidden;
  transition: 0.2s all;
}
.wp-block-query .team_member figure img {
  transform-origin: top;
  transition: 0.2s all ease-out;
}
.wp-block-query .team_member h2 {
  transition: 0.2s all;
}
.wp-block-query .team_member a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  color: transparent;
  font-size: 0;
}
.wp-block-query .team_member a:hover ~ figure img {
  scale: 1.05;
}
.wp-block-query .team_member a:hover ~ .wp-block-group h2 {
  color: var(--wp--preset--color--primary);
}
.wp-block-query .team_member a:active ~ figure {
  transform: scale(1.025);
}
.wp-block-query .team_member.selected figure img {
  scale: 1.05;
}
.wp-block-query .team_member.selected .wp-block-group h2 {
  color: var(--wp--preset--color--primary);
}
.wp-block-query .team_member.selected a {
  cursor: s-resize;
}
.wp-block-query .team_member.selected a:active ~ figure {
  transform: scale(1);
}

/* Elements
--------------------------------------------- */
.hg-map-link,
.hg-phone-link {
  color: inherit;
  text-decoration: none;
}
.hg-map-link:hover,
.hg-phone-link:hover {
  text-decoration: underline;
}

.hg-no-underline-link a {
  text-decoration: none;
}

.hg-hot-take-graphic {
  margin-bottom: 0 !important;
}

.hg-hot-takes-list .wp-block-post-excerpt__more-link {
  display: inline-block;
  transform: scaleX(3) scaleY(2.5);
  transform-origin: left;
  margin-left: 0.5em;
}

@media screen and (min-width: 782px) {
  .hg-margin-top-negative {
    margin-top: -1em !important;
  }
}

.wp-block-separator.hg-vertical-separator {
  border-width: 0 1px 0 0;
}

.wp-block-site-logo {
  z-index: 100002;
}

.hg-hamburger-navigation-menu .wp-block-navigation__responsive-container {
  padding-top: var(--wp--preset--spacing--60) !important;
  padding-bottom: var(--wp--preset--spacing--60) !important;
}
.hg-hamburger-navigation-menu .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-close {
  margin-top: 19px !important;
  margin-bottom: 19px !important;
}
.hg-hamburger-navigation-menu .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
  padding-left: calc(var(--wp--preset--spacing--30) - 3px);
  padding-right: var(--wp--preset--spacing--30);
}
.hg-hamburger-navigation-menu ul {
  font-size: var(--wp--preset--font-size--x-large);
  font-weight: 700;
  font-family: var(--wp--preset--font-family--ibm-plex-serif);
  gap: 0 !important;
}
.hg-hamburger-navigation-menu ul a {
  line-height: 1.015;
  padding-top: 0.15em !important;
  padding-bottom: 0.15em !important;
}
.hg-hamburger-navigation-menu ul.wp-block-social-links > li:first-of-type {
  margin-left: -0.125em !important;
}
.hg-hamburger-navigation-menu .hg-menu-separator {
  height: 0 !important;
  display: block !important;
  flex-basis: 0 !important;
}
.hg-hamburger-navigation-menu .hg-menu-separator + ul {
  font-size: 1.45rem;
  font-weight: lighter;
  font-family: inherit;
  gap: inherit;
  letter-spacing: 0.04em;
}
.hg-hamburger-navigation-menu .hg-menu-separator + ul a {
  padding-top: 0.35em !important;
  padding-bottom: 0.35em !important;
}

html.has-modal-open header .wp-block-site-logo {
  filter: invert(1);
}

@media screen and (max-width: 781px) {
  .hg-mobile-stack {
    flex-direction: column;
    align-items: center !important;
  }
  .hg-mobile-stack .wp-block-separator.hg-vertical-separator {
    border-width: 0 0 1px 0;
    align-self: stretch;
  }
}

@media screen and (max-width: 781px) {
  .hg-pattern-samples > .is-layout-flex {
    gap: var(--wp--preset--spacing--60) !important;
  }
}

body .wp-block-button .wp-block-button__link.is-style-outline,
body .wp-block-button.is-style-outline > .wp-block-button__link {
  background-color: transparent !important;
  border-width: 3px;
  font-weight: 500;
}

body.editor-styles-wrapper .swiper-slide {
  outline: 2px dashed gray;
  counter-increment: slide;
  opacity: 1 !important;
}
body.editor-styles-wrapper .swiper-slide:before {
  content: "Slide " counter(slide);
  opacity: 0.75;
  background: white;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
  padding: 3px 7px;
}

details.is-style-plus-minus {
  padding-left: 1em;
}
details.is-style-plus-minus > summary {
  margin-left: -1em;
}
details.is-style-plus-minus > summary::marker, details.is-style-plus-minus > summary::-webkit-details-marker {
  content: "";
  display: none;
}
details.is-style-plus-minus > summary::before {
  display: inline-block;
  content: "﹢";
  margin-left: calc(-1 * 0);
  padding-left: 0;
  padding-right: 0;
  transition: 0.35s all;
  transform: rotate(-360deg);
}
details.is-style-plus-minus.is-opened > summary::before {
  transition: 0.4s all;
  transform: rotate(0);
  content: "﹣";
}
details.is-style-plus-minus > div {
  margin-top: 0;
}
details.is-style-plus-minus > div > ul {
  margin-top: 0.2em;
}
details.is-style-plus-minus > div {
  overflow: hidden;
  transition: 0.4s max-height ease-out, 0.15s opacity linear;
  opacity: 0;
  max-height: 0;
}
details.is-style-plus-minus.is-opened > div, .editor-styles-wrapper details.is-style-plus-minus > div {
  transition: 1.2s max-height linear, 0.25s 0.15s opacity linear;
  opacity: 1;
  max-height: 2000px;
}
.editor-styles-wrapper details.is-style-plus-minus > div {
  overflow: visible;
}

@keyframes fade_in_show {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes details-show {
  from {
    opacity: 0;
    transform: translateY(-50px);
  }
  to {
    opacity: 1 !important;
    transform: translateY(0);
  }
}
ul.is-style-no-bullets,
ol.is-style-no-bullets {
  margin-left: 0;
  padding-left: 0;
  list-style-type: none;
}

ul.is-style-orange-bullets {
  padding-top: 0.5em;
}
ul.is-style-orange-bullets li {
  margin-bottom: 1em;
  padding-left: 0.25em;
}
ul.is-style-orange-bullets li::marker {
  color: var(--wp--preset--color--primary);
}

ul.with-extra-padding {
  line-height: 1.4;
}
ul.with-extra-padding li {
  padding-top: 0.35em;
  padding-bottom: 0.35em;
}

.wp-block-group.hg-hot-take-heading {
  margin-bottom: 60px;
}

.editor-styles-wrapper .with-alphabetical-order {
  position: relative;
}
.editor-styles-wrapper .with-alphabetical-order.has-child-selected::before, .editor-styles-wrapper .with-alphabetical-order.is-selected::before {
  display: block;
  content: "ℹ️ This list will be auto-sorted alphabetically when viewed outside of the editor.";
  background: rgba(0, 0, 0, 0.7);
  padding: 2px 3px;
  border-radius: 3px;
  font-size: 10px;
  color: white;
  position: absolute;
  bottom: 100%;
  pointer-events: none;
  animation-name: floating-dialog;
  animation-duration: 4s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}

@keyframes floating-dialog {
  0% {
    transform: translate(0, 0px);
  }
  50% {
    transform: translate(0, 5px);
  }
  100% {
    transform: translate(0, 0px);
  }
}
ul.with-two-columns {
  columns: 2;
  column-gap: 50px;
}
ul.with-two-columns li {
  break-inside: avoid;
}
@media screen and (max-width: 500px) {
  ul.with-two-columns {
    columns: auto;
  }
}

.hg-half-back .wp-block-cover__background {
  top: 25%;
  bottom: 25%;
}

.hg-three-quarter-back .wp-block-cover__background {
  top: 25%;
}

.hg-negative-border-1 {
  margin-right: -0.44rem !important;
  margin-left: -0.44rem !important;
}

.hg-certifications .wp-block-image a {
  transition: 0.2s all;
  transform: scale(1);
  display: inline-block;
  transform-origin: left;
}
.hg-certifications .wp-block-image a:hover {
  transform: scale(1.075);
}
.hg-certifications .wp-block-image a:active {
  transform: scale(1.125);
}

.hg-badges-galleries .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) {
  margin-bottom: 0;
}
.hg-badges-galleries .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image), .hg-badges-galleries .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) > a {
  display: flex;
  justify-content: center;
}
.hg-badges-galleries .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) > a {
  transition: 0.2s all;
  transform: scale(1);
}
.hg-badges-galleries .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) > a:hover {
  transform: scale(1.05);
}
.hg-badges-galleries .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) > a:active {
  transform: scale(1.075);
}
.hg-badges-galleries .wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image) img[alt="Google Partner Logo"] {
  transform: scale(0.7);
}

.hg-footer-badge a {
  display: block;
  transition: 0.2s all;
  transform: scale(1);
}
.hg-footer-badge a:hover {
  transform: scale(1.05);
}
.hg-footer-badge a:active {
  transform: scale(1.075);
}

.hg-award-offset {
  position: relative;
}
.hg-award-offset figure {
  position: absolute;
  top: -7.5rem !important;
  right: 0;
  width: 127px;
}

.wp-block-quote.is-style-big {
  position: relative;
  font-family: var(--wp--preset--font-family--ibm-plex-serif);
  font-size: var(--wp--preset--font-size--large);
  font-weight: 700;
  border-width: 0;
  border-style: none;
  padding-left: 0;
}
.wp-block-quote.is-style-big:before {
  content: "“";
  position: absolute;
  right: 100%;
  top: 0;
}
.wp-block-quote.is-style-big > p:last-of-type:after {
  content: "”";
  display: inline-block;
}

.hg-video-center .wp-block-cover__inner-container {
  text-align: center;
  font-size: 0;
}
.hg-video-center .wp-block-video {
  display: inline-block;
}
.hg-video-center .wp-block-video video {
  max-height: 90vh;
  width: auto;
  max-width: 100%;
}

.hg-flex-taller {
  flex-basis: 15vh !important;
}
.hg-flex-taller img {
  object-position: center !important;
}

@media screen and (min-width: 782px) {
  .hg-cover-overlay-extend-right,
  .hg-cover-overlay-extend-left {
    overflow: visible;
  }
  .hg-cover-overlay-extend-right .wp-block-cover__background,
  .hg-cover-overlay-extend-left .wp-block-cover__background {
    z-index: 0;
  }
  .hg-cover-overlay-extend-right .wp-block-cover__background:after {
    content: "";
    display: block;
    position: absolute;
    background-color: inherit;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 30vw;
    z-index: 0;
  }
  .hg-cover-overlay-extend-left .wp-block-cover__background:before {
    content: "";
    display: block;
    position: absolute;
    background-color: inherit;
    top: 0;
    bottom: 0;
    right: 100%;
    width: 30vw;
    z-index: 0;
  }
  .hg-cover-overlay-offset .wp-block-column,
  .hg-cover-overlay-offset-alt .wp-block-column {
    justify-content: center;
    display: flex;
  }
  .hg-cover-overlay-offset .wp-block-column:first-of-type,
  .hg-cover-overlay-offset-alt .wp-block-column:first-of-type {
    justify-content: flex-start;
  }
  .hg-cover-overlay-offset .wp-block-column:last-of-type,
  .hg-cover-overlay-offset-alt .wp-block-column:last-of-type {
    justify-content: flex-end;
  }
  .hg-cover-overlay-offset .wp-block-cover__background {
    right: 5rem;
    bottom: 5rem;
    left: 5rem;
  }
  .hg-cover-overlay-offset-alt .wp-block-cover__background {
    top: 5rem;
    right: 5rem;
    bottom: 5rem;
    left: 5rem;
  }
}
.wp-block-video {
  position: relative;
  font-size: 0;
}
.wp-block-video video {
  max-height: 90vh;
}
.wp-block-video .hg-play-replay-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: block;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: 0 none transparent;
  background-color: transparent;
  cursor: pointer;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  pointer-events: none;
}
.wp-block-video .hg-play-replay-overlay.with-play-overlay, .wp-block-video .hg-play-replay-overlay.with-replay-overlay {
  pointer-events: auto;
}
.wp-block-video .hg-play-replay-overlay .icon {
  position: absolute;
  width: 100px;
  height: 100px;
  top: calc(50% - 100px / 2);
  left: calc(50% - 100px / 2);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transition: 0.2s all;
  background-image: url("assets/images/hg-play-button-nocircle.svg");
  opacity: 0;
  transform: scale(5);
  filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.3));
}
.wp-block-video .hg-play-replay-overlay.with-play-overlay .icon {
  background-image: url("assets/images/hg-play-button-nocircle.svg");
  opacity: 1;
  transform: scale(1);
}
.wp-block-video .hg-play-replay-overlay.with-replay-overlay .icon {
  background-image: url("assets/images/hg-replay-button.svg");
  opacity: 1;
  transform: scale(1);
}
.wp-block-video .hg-play-replay-overlay:hover .icon {
  transform: scale(1.075);
}
.wp-block-video .hg-play-replay-overlay:active .icon {
  opacity: 0;
  transform: scale(5);
}

.wp-site-blocks {
  overflow: hidden;
}

.case-study-big-numbers .hg-big-numbers-secondary-text {
  line-height: 1.3 !important;
}

@media screen and (min-width: 782px) {
  .case-study-challenge-solution .wp-block-columns .wp-block-column:nth-of-type(2) {
    padding-top: 10rem;
  }
}

.case-study-top-hero .wp-block-cover__inner-container > p {
  display: none;
}

.hg-cover-image-fill .wp-block-cover__image-background {
  object-fit: fill;
}

.hg-scroll-wide-image {
  height: 720px;
}
.hg-scroll-wide-image .wp-block-group,
.hg-scroll-wide-image .wp-block-image,
.hg-scroll-wide-image .wp-block-image img {
  height: 720px;
}
.hg-scroll-wide-image .wp-block-image img {
  width: auto;
  max-width: unset;
}
.hg-scroll-wide-image .wp-block-image {
  overflow-x: scroll;
  overflow-y: s;
}

@media screen and (max-width: 781px) {
  .case-study-images-with-vertical-video .wp-block-video {
    max-height: 1080px;
    height: 90vh;
    text-align: center;
    width: 100%;
  }
  .case-study-images-with-vertical-video .wp-block-video video {
    height: 100%;
    width: auto;
    max-width: 100%;
    object-position: bottom;
  }
}
@media screen and (min-width: 782px) {
  .case-study-images-with-vertical-video .wp-block-columns {
    align-items: stretch;
    max-height: 90vh;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column {
    align-self: stretch;
    display: flex;
    justify-content: center;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column .wp-block-group {
    justify-content: space-between;
    flex-wrap: nowrap;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column .wp-block-group figure {
    flex: 1 1 0px;
    height: 0;
    position: relative;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column .wp-block-group figure img {
    height: 100%;
    object-fit: contain;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column:first-of-type {
    justify-content: flex-start;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column:first-of-type .wp-block-group figure img {
    object-position: left;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column:last-of-type {
    justify-content: flex-end;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column:last-of-type .wp-block-group figure img {
    object-position: right;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column .wp-block-video {
    height: 100%;
  }
  .case-study-images-with-vertical-video .wp-block-columns .wp-block-column .wp-block-video video {
    width: 100%;
    height: 100%;
  }
  .case-study-columns-popout-image .wp-block-columns {
    align-items: stretch;
  }
  .case-study-columns-popout-image .wp-block-column {
    position: relative;
    align-self: stretch;
    justify-content: center;
  }
  .case-study-columns-popout-image .wp-block-column:first-of-type .wp-block-image img {
    object-position: left;
  }
  .case-study-columns-popout-image .wp-block-column:last-of-type .wp-block-image img {
    object-position: right;
  }
  .case-study-columns-popout-image .wp-block-image img {
    width: auto;
    height: 100%;
    object-fit: contain;
    min-width: 100%;
  }
  .case-study-columns-popout-image .wp-block-image.has-custom-border img {
    min-width: 0;
  }
  .case-study-columns-popout-image .wp-block-image,
  .case-study-columns-popout-image .hg-image-with-video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    top: -7.5rem;
    bottom: -7.5rem;
    text-align: center;
    z-index: 3;
  }
  .case-study-columns-popout-image.with-extreme-top .wp-block-image {
    transition: 0.2s all;
    top: -25rem;
    bottom: -5rem;
  }
}
@media screen and (min-width: 782px) and (min-width: 1200px) {
  .case-study-columns-popout-image.with-extreme-top .wp-block-image {
    left: -5rem;
  }
}
@media screen and (min-width: 782px) {
  .case-study-columns-popout-image .wp-block-column:first-of-type .wp-block-image {
    text-align: left;
  }
  .case-study-columns-popout-image .wp-block-column:last-of-type .wp-block-image {
    text-align: right;
  }
}
.hg-image-with-video {
  gap: 0 !important;
  align-items: stretch !important;
}
@media screen and (min-width: 782px) {
  .hg-image-with-video {
    top: -9rem !important;
    bottom: -9rem !important;
  }
}
.hg-image-with-video > figure {
  width: 50% !important;
  flex: 1;
  position: static !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hg-image-with-video > figure.wp-block-video {
  position: relative !important;
}
.hg-image-with-video > figure.wp-block-image img {
  max-height: 90vh;
}
.hg-image-with-video > figure video,
.hg-image-with-video > figure img {
  height: 100%;
}

.hg-case-studies-taxonomies-row .taxonomy-thing_we_did {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  column-width: 50%;
  width: 600px;
  column-gap: 35px;
}
@media screen and (min-width: 1040px) {
  .hg-case-studies-taxonomies-row .taxonomy-thing_we_did:has(a:nth-of-type(7)) {
    columns: 3;
    -webkit-columns: 3;
    -moz-columns: 3;
    column-width: 33%;
    width: auto;
  }
}
.hg-case-studies-taxonomies-row .wp-block-separator {
  border-width: 0 0 0 3px !important;
  border-color: var(--wp--preset--color--primary) !important;
  border-style: solid;
  margin-left: var(--wp--preset--spacing--70);
  margin-right: var(--wp--preset--spacing--70);
}
.hg-case-studies-taxonomies-row .wp-block-post-terms {
  flex: 1;
}
.hg-case-studies-taxonomies-row .wp-block-post-terms .wp-block-post-terms__separator {
  display: none;
}
.hg-case-studies-taxonomies-row .wp-block-post-terms a {
  display: block;
  text-decoration: none;
  pointer-events: none;
}
@media screen and (max-width: 781px) {
  .hg-case-studies-taxonomies-row {
    flex-wrap: wrap !important;
  }
  .hg-case-studies-taxonomies-row .wp-block-separator {
    display: none;
  }
  .hg-case-studies-taxonomies-row .taxonomy-thing_we_did {
    columns: 1;
    -webkit-columns: 1;
    -moz-columns: 1;
    column-width: 100%;
    width: 100%;
    column-gap: 0;
  }
}

body .is-style-outline.is-style-outline.wp-block-button .wp-block-button__link,
footer.wp-block-template-part .yikes-mailchimp-container .yikes-easy-mc-submit-button {
  transition: 0.2s all;
  transform: scale(1);
}
body .is-style-outline.is-style-outline.wp-block-button .wp-block-button__link:hover, body .is-style-outline.is-style-outline.wp-block-button .wp-block-button__link:focus,
footer.wp-block-template-part .yikes-mailchimp-container .yikes-easy-mc-submit-button:hover,
footer.wp-block-template-part .yikes-mailchimp-container .yikes-easy-mc-submit-button:focus {
  color: var(--wp--preset--color--base) !important;
  background: var(--wp--preset--color--primary) !important;
  border-color: var(--wp--preset--color--primary) !important;
  transform: scale(1.05);
}
body .is-style-outline.is-style-outline.wp-block-button .wp-block-button__link:active,
footer.wp-block-template-part .yikes-mailchimp-container .yikes-easy-mc-submit-button:active {
  transform: scale(1.075);
}

.hg-position-relative {
  position: relative;
}
.hg-position-relative .wp-block-image {
  overflow: hidden;
}
.hg-position-relative.hg-with-transparency .wp-block-image {
  overflow: visible;
}
.hg-position-relative .wp-block-image img {
  transform: scale(1);
  transition: 0.3s all;
}
.hg-position-relative .wp-block-cover img {
  transform: scale(1);
  transition: 0.3s all;
}
.hg-position-relative:has(.hg-block-link-container > a:hover, .hg-block-link-container > a:focus) h1,
.hg-position-relative:has(.hg-block-link-container > a:hover, .hg-block-link-container > a:focus) .readmore {
  text-decoration: underline;
}
.hg-position-relative:has(.hg-block-link-container > a:hover, .hg-block-link-container > a:focus) .wp-block-image img,
.hg-position-relative:has(.hg-block-link-container > a:hover, .hg-block-link-container > a:focus) .wp-block-cover img {
  transform: scale(1.05);
}
.hg-position-relative:has(.hg-block-link-container > a:hover, .hg-block-link-container > a:focus) .has-base-color .has-inline-color.has-base-color {
  text-decoration: underline;
}
.hg-position-relative:has(.hg-block-link-container > a:focus) h1 {
  outline: 1px dotted currentColor;
}
.hg-position-relative:has(.hg-block-link-container > a:focus) .has-base-color .has-inline-color.has-base-color {
  outline: 1px dotted currentColor;
}

.hg-brands-gallery {
  margin-left: -2.5em;
  margin-right: -2.5em;
}
.hg-brands-gallery .wp-block-image {
  justify-content: center;
  margin-bottom: 0 !important;
  padding: 2.5em;
  filter: invert(100%);
}
.hg-brands-gallery .wp-block-image img {
  max-height: 120px !important;
  width: auto;
}
@media screen and (min-width: 600px) and (max-width: 900px) {
  .hg-brands-gallery {
    margin-left: -0.75em;
    margin-right: -0.75em;
  }
  .hg-brands-gallery .wp-block-image {
    padding: 0.75em;
  }
}

.hero-heading-cover {
  padding: 0;
  min-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px)) !important;
  height: calc(100vh - var(--wp-admin--admin-bar--height, 0px)) !important;
}
.hero-heading-cover > .wp-block-cover__inner-container {
  padding-top: var(--hg-header-height);
  height: calc(100% - var(--hg-header-height));
}
.hero-heading-cover .heading-arrow-stack {
  height: 100%;
  flex-wrap: nowrap;
}
@media screen and (max-height: 600px) {
  .hero-heading-cover .heading-arrow-stack {
    gap: 10px;
  }
}
.hero-heading-cover .heading-arrow-stack .hg-hero-flip-heading-container {
  overflow: visible;
  margin-top: 23vh;
  transition: 0.2s all;
}
@media screen and (max-height: 400px) {
  .hero-heading-cover .heading-arrow-stack .hg-hero-flip-heading-container {
    margin-top: 20px;
  }
}
.hero-heading-cover .heading-arrow-stack .hg-hero-flip-heading-container .hg-hero-flip-heading .hero-heading-flipper-content {
  position: relative;
}
.hero-heading-cover .heading-arrow-stack .hg-hero-flip-heading-container .hg-hero-flip-heading .hero-heading-flipper-content .w4hs-lottie-animation-outer {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  bottom: max(-20px, -1vw);
  left: min(100px, 5vw);
  z-index: 4;
  width: min(150px, 20vw);
  transition: 0.2s all;
}
@media screen and (max-width: 1100px) {
  .hero-heading-cover .heading-arrow-stack .hg-hero-flip-heading-container .hg-hero-flip-heading .hero-heading-flipper-content .w4hs-lottie-animation-outer {
    left: 0;
    width: 100px;
  }
}
@media screen and (max-height: 400px) {
  .hero-heading-cover .heading-arrow-stack .hg-hero-flip-heading-container .hg-hero-flip-heading .hero-heading-flipper-content .w4hs-lottie-animation-outer {
    left: 0;
    width: 100px;
  }
}
.hero-heading-cover .heading-arrow-stack h1 {
  transition: 0.15s all;
  margin-top: 0;
  font-size: clamp(2rem, 13vh, min(7vw, 6.5rem)) !important;
}
@media screen and (max-width: 900px) {
  .hero-heading-cover .heading-arrow-stack h1 {
    font-size: 2.5rem !important;
  }
}
@media screen and (max-width: 781px) {
  .hero-heading-cover .heading-arrow-stack h1 {
    font-size: 2.5rem !important;
  }
}
@media screen and (max-width: 400px) {
  .hero-heading-cover .heading-arrow-stack h1 {
    font-size: 8vw !important;
  }
}

.down-arrow-columns {
  margin-bottom: 0;
  flex-grow: 1;
  flex-shrink: 0;
  height: 0;
  width: 100%;
}

.hg-arrow-cols-new {
  width: 100%;
  flex: 1;
}
.hg-arrow-cols-new .wp-block-column {
  text-align: center;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.hg-arrow-final {
  flex: 1;
  height: 30vh;
  width: 100px;
}

.hg-arrow-background {
  flex: 1;
  max-height: 40%;
  width: 50px;
  background: url("assets/images/arrow-down-dynamic-new.svg");
  background-size: 100%;
  background-position: bottom;
  background-repeat: no-repeat;
  position: relative;
  transition: 0.25s max-height;
}
.hg-arrow-background:has(a:hover, a:focus) {
  max-height: 90%;
}
.hg-arrow-background .wp-block-buttons,
.hg-arrow-background .wp-block-buttons .wp-block-button,
.hg-arrow-background .wp-block-buttons a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  font-size: 0;
  color: transparent;
  background-color: transparent;
}
.hg-arrow-background .wp-block-buttons .wp-element-button:after {
  content: "";
  position: absolute;
  top: 0;
  right: -50px;
  bottom: 0;
  left: -50px;
  width: calc(100% + 100px);
  height: 100%;
}

.down-arrow-container {
  overflow: hidden;
  height: 100%;
  position: relative;
}
.down-arrow-container figure {
  height: 100%;
  max-height: 100%;
  position: absolute;
  bottom: 0;
  display: block !important;
}
.down-arrow-container a {
  display: block;
  transition: 0.15s all;
  height: 100%;
}
.down-arrow-container a:hover {
  transform: translateY(0);
}
.hg-hero-video-container .wp-block-cover {
  height: 100vh;
}
.hg-hero-video-container .wp-block-cover__inner-container, .hg-hero-video-container .wp-block-cover__inner-container > .wp-block-group {
  height: 100%;
}
.hg-hero-video-container .alignwide {
  height: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body:not(.editor-styles-wrapper) .hg-hero-video-container .hg-wp-block-video-container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin-top: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  pointer-events: none;
  opacity: 0;
  transform: scale(0.3);
  transition: 0.35s all 0.3s;
}
body:not(.editor-styles-wrapper) .hg-hero-video-container .hg-wp-block-video-container figure {
  position: relative;
  max-height: calc(100vh - var(--wp--preset--spacing--70) - var(--wp--preset--spacing--70));
}
body:not(.editor-styles-wrapper) .hg-hero-video-container.video-visible .hg-wp-block-video-container {
  transform: scale(1);
  opacity: 1;
  pointer-events: auto;
}
.hg-hero-video-container .wp-block-video {
  display: inline-block;
  text-align: center;
}
.hg-hero-video-container .wp-block-video video {
  width: auto;
  max-width: 100%;
  aspect-ratio: 16/9;
  max-height: 100%;
  pointer-events: none;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.7);
  background: rgba(0, 0, 0, 0.7);
}
.hg-hero-video-container .wp-block-video .hg-close-button {
  position: absolute;
  bottom: calc(100% + var(--wp--preset--spacing--20));
  right: 0;
  z-index: 10;
  width: 48px;
  height: 48px;
  cursor: pointer;
  background: url("assets/images/hg-close-button.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  font-size: 0;
  border: 0 none transparent;
  transition: 0.15s all;
  transform: scale(0);
  opacity: 0;
  pointer-events: none;
}
.hg-hero-video-container .wp-block-video .hg-close-button::after {
  content: "";
  display: block;
  position: absolute;
  top: -15px;
  right: -15px;
  bottom: -15px;
  left: -15px;
}
.hg-hero-video-container.video-visible .wp-block-video video {
  pointer-events: auto;
}
.hg-hero-video-container.video-visible .wp-block-video .hg-close-button {
  transform: scale(1);
  transition: 0.15s all;
  opacity: 0.85;
  pointer-events: auto;
}
.hg-hero-video-container.video-visible .wp-block-video .hg-close-button:hover {
  transform: scale(1.1);
  opacity: 1;
  transition: 0.15s all;
}
.hg-hero-video-container.video-visible .wp-block-video .hg-close-button:active {
  transform: scale(1.15);
  opacity: 1;
  transition: 0.15s all;
}
.hg-hero-video-container .hg-hero-video-play-button a {
  display: inline-block;
  transform: scale(1);
  transition: 0.15s all;
  opacity: 0.85;
}
.hg-hero-video-container .hg-hero-video-play-button a:hover {
  transform: scale(1.1);
  opacity: 1;
}
.hg-hero-video-container .hg-hero-video-play-button a:active {
  transform: scale(1.15);
  opacity: 1;
}
.hg-hero-video-container .hg-hero-video-play-button a::after {
  content: "";
  display: block;
  position: absolute;
  top: -30px;
  right: -30px;
  bottom: -30px;
  left: -30px;
}
.hg-hero-video-container.video-visible .hg-hero-video-play-button a {
  transform: scale(2.5);
  opacity: 0;
  pointer-events: none;
}
.hg-hero-video-container video.wp-block-cover__video-background {
  transition: 0.5s all;
}
.hg-hero-video-container.video-visible video.wp-block-cover__video-background {
  filter: blur(1.5rem);
}

.hg-image-logo-featurebox h2 {
  display: inline-block;
  align-self: flex-start;
}
.hg-image-logo-featurebox .wp-block-columns {
  position: relative;
}
.hg-image-logo-featurebox .wp-block-columns .wp-block-cover {
  height: 70vh;
}
.hg-image-logo-featurebox .wp-block-columns .wp-block-cover img {
  transform: scale(1);
  transition: 0.2s all;
}
@media screen and (max-width: 781px) {
  .hg-image-logo-featurebox .wp-block-columns .wp-block-cover {
    height: 50vh;
    min-height: 200px !important;
  }
}
.hg-image-logo-featurebox .wp-block-columns .wp-block-column:first-of-type .wp-block-cover {
  transform-origin: left bottom;
}
.hg-image-logo-featurebox .wp-block-columns .hg-logo-heading-column {
  display: flex;
  flex-direction: column;
  align-self: normal;
}
.hg-image-logo-featurebox .wp-block-columns .hg-logo-heading-column .hg-flex-fill {
  justify-content: center;
}
.hg-image-logo-featurebox:has(a:hover, a:focus) .wp-block-cover img {
  transform: scale(1.05);
}
.hg-image-logo-featurebox:has(a:hover, a:focus) h1,
.hg-image-logo-featurebox:has(a:hover, a:focus) h2,
.hg-image-logo-featurebox:has(a:hover, a:focus) h3 {
  text-decoration: underline;
}
.hg-image-logo-featurebox:has(a:hover, a:focus) .hg-right-cta-arrow {
  transform: scale(1.3);
}
.hg-image-logo-featurebox:has(a:focus) h3 {
  outline: 1px dotted white;
}
@media screen and (max-width: 781px) {
  .hg-image-logo-featurebox .wp-block-spacer {
    display: none;
  }
}

body:not(.editor-styles-wrapper) .hg-block-link-container a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: auto;
  height: auto;
  z-index: 4;
  font-size: 0;
  opacity: 0;
}

.hg-flex-fill {
  flex: 1;
}

.hg-right-cta-arrow {
  flex: 1;
  background: url("assets/images/arrow-right-white-transparent.svg");
  background-size: contain;
  background-position: left;
  background-repeat: no-repeat;
  height: 60%;
  transition: 0.3s all;
  transform: scale(1);
  transform-origin: left;
}
.hg-right-cta-arrow:first-child {
  transform-origin: right;
  background-image: url("assets/images/arrow-left-white-transparent.svg");
  background-position: right;
}

.hg-heading-with-arrow {
  align-items: center;
  align-self: stretch;
}

.hg-label-heading {
  display: inline-block;
}

body:not(.editor-styles-wrapper) .hg-offset-heading {
  transform: translateY(50%);
}
@media screen and (min-width: 782px) {
  body:not(.editor-styles-wrapper) .hg-offset-heading {
    transform: translateY(100%);
  }
}

body:not(.editor-styles-wrapper) .hg-offset-heading-extreme {
  transform: translateY(100%);
}
@media screen and (min-width: 782px) {
  body:not(.editor-styles-wrapper) .hg-offset-heading-extreme {
    transform: translateY(200%);
  }
}

.hg-services-icons .wp-block-image,
.hg-services-icons .w4hs-lottie-animation-outer {
  width: 120px;
  min-width: 120px;
}
.hg-services-icons .wp-block-group.is-layout-flex {
  gap: var(--wp--preset--spacing--40);
}
.hg-services-icons .wp-block-columns {
  gap: var(--wp--preset--spacing--70);
}

.hg-image-bleed-bottom > .wp-block-group {
  padding-bottom: calc(2 * var(--wp--preset--spacing--80));
}
.hg-image-bleed-bottom > .wp-block-image {
  margin-top: calc(-2 * var(--wp--preset--spacing--80));
}

html body .wp-site-blocks .hg-bleed-to-next {
  margin-bottom: calc(-2 * var(--wp--preset--spacing--80)) !important;
}
html body .wp-site-blocks .hg-bleed-to-next + * {
  padding-top: calc(2 * var(--wp--preset--spacing--80)) !important;
}

@media screen and (max-width: 900px) {
  .hg-big-numbers-row {
    flex-direction: column !important;
    justify-content: flex-start;
    align-items: center !important;
    text-align: center;
  }
  .hg-big-numbers-row .hg-award-offset {
    order: -1;
  }
  .hg-big-numbers-row .hg-award-offset figure {
    right: -63.5px;
  }
}
@media screen and (max-width: 900px) {
  .hg-featured-project-results-driven .hg-big-numbers-columns {
    flex-direction: column;
  }
  .hg-featured-project-results-driven .hg-big-numbers-columns .wp-block-column {
    padding: 0 !important;
    border: 0 none transparent !important;
  }
  .hg-featured-project-results-driven .hg-big-numbers-columns .wp-block-column:first-of-type {
    padding-bottom: var(--wp--preset--spacing--70) !important;
  }
  .hg-featured-project-results-driven .hg-big-numbers-columns .wp-block-column:last-of-type {
    padding-top: var(--wp--preset--spacing--70) !important;
    border-top: 3px solid white !important;
  }
}

.hg-featured-project-results-driven-alt .wp-block-image {
  margin-top: calc(-2 * var(--wp--preset--spacing--80));
  margin-bottom: calc(-1 * var(--wp--preset--spacing--60));
  height: 100%;
}
.hg-featured-project-results-driven-alt .wp-block-image img {
  width: auto;
  max-height: 630px;
}

body .swiper .swiper-slide {
  margin-block-start: 0 !important;
}

.swiper-testimonials-container,
.swiper-container {
  overflow: hidden;
}

.swiper-phone-images-container,
.swiper-phone-images,
.swiper-phone-images .swiper-wrapper {
  overflow: visible;
}

.swiper-phone-images {
  width: 100%;
  user-select: none;
}
.swiper-phone-images .swiper-slide {
  height: 720px;
  max-height: 90vh;
  width: auto;
  max-width: 50vw;
  margin-right: min(18vw, 100px) !important;
}
@media screen and (max-width: 700px) {
  .swiper-phone-images .swiper-slide {
    width: 50vw;
  }
}
.swiper-phone-images .swiper-slide:last-of-type {
  margin-right: 0 !important;
}
.swiper-phone-images .swiper-slide figure {
  height: 720px;
  max-height: 90vh;
  width: auto;
}
.swiper-phone-images .swiper-slide figure img {
  width: 100%;
  max-height: 100%;
  object-fit: contain;
}

blockquote cite {
  font-style: normal;
}

.swiper-testimonials {
  width: 100%;
  --top-line-width: 176px;
}
.swiper-testimonials:before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - var(--top-line-width) / 2);
  right: calc(50% - var(--top-line-width) / 2);
  width: var(--top-line-width);
  border: 2px solid var(--wp--preset--color--primary);
  transition: 0.2s all 0.4s;
}
.swiper-testimonials p {
  margin-top: 0;
}
.swiper-testimonials p:first-of-type:before {
  content: "“";
}
.swiper-testimonials p:last-of-type:after {
  content: "”";
}
.swiper-testimonials .wp-block-quote {
  border: 0 none transparent;
  padding: 0;
  margin: 0;
  padding-top: var(--wp--preset--spacing--70);
  padding-bottom: var(--wp--preset--spacing--70);
}
.swiper-testimonials .swiper-slide {
  width: 640px;
  max-width: 80vw;
  opacity: 0.25;
  transition: 0.2s opacity;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.swiper-testimonials .swiper-slide.swiper-slide-active {
  opacity: 1;
}
.case-study-big-numbers .wp-block-quote {
  padding-left: 0;
  border-left: 0;
}

body.editor-styles-wrapper .swiper-testimonials .swiper-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
}

body:not(.editor-styles-wrapper) .hg-more-work-container .wp-block-cover .wp-block-read-more {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  font-size: 0;
  color: transparent;
  width: auto;
}
body:not(.editor-styles-wrapper) .hg-more-work-container .wp-block-post {
  position: relative;
}

.hg-more-work-container .wp-block-cover img {
  transition: 0.2s transform, 0.5s opacity;
  transform: scale(1);
  opacity: 0.85;
}
.hg-more-work-container .wp-block-post-terms .wp-block-post-terms__separator {
  display: none;
}
.hg-more-work-container .wp-block-post-terms a[rel=tag] {
  text-decoration: none;
  cursor: default;
  pointer-events: none;
  display: none;
}
.hg-more-work-container .wp-block-post-terms a[rel=tag].is-primary-term {
  display: block;
}
.hg-more-work-container .wp-block-post-title a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.hg-more-work-container .wp-block-post:has(a:not([rel=tag]):hover, a:not([rel=tag]):focus) .wp-block-cover img {
  transform: scale(1.05);
  opacity: 1;
}
.hg-more-work-container .wp-block-post:has(a:not([rel=tag]):hover, a:not([rel=tag]):focus) a:not([rel=tag]) {
  text-decoration: underline;
}
@media screen and (max-width: 782px) {
  .hg-more-work-container .wp-block-cover {
    min-height: 0 !important;
    overflow: hidden;
    height: auto;
    aspect-ratio: 1 !important;
  }
  .hg-more-work-container .wp-block-cover img {
    object-fit: cover;
    object-position: center;
    height: auto;
    aspect-ratio: 1;
  }
}
@media screen and (max-width: 500px) {
  .hg-more-work-container .wp-block-cover {
    min-height: calc(100vw - 2 * var(--wp--preset--spacing--30)) !important;
  }
  .hg-more-work-container .wp-block-query .columns-4,
  .hg-more-work-container .wp-block-query .columns-3 {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
}

.testimonials-orange-background .swiper-testimonials .wp-block-quote:before {
  border-color: white;
}

.hg-portfolio-infobox {
  flex: 1;
  position: relative;
  transition: 0.2s all;
  width: 100%;
}
.hg-portfolio-infobox .hg-portfolio-infobox-inner, .hg-portfolio-infobox:before {
  transition: 0.2s all;
}
.hg-portfolio-infobox:before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  left: -100vw;
  right: -100px;
  background-color: white;
}
@media screen and (min-width: 782px) {
  .hg-portfolio-infobox {
    justify-content: flex-end;
    display: flex;
    flex-direction: column;
  }
}

.hg-portfolio-infobox-inner {
  position: relative;
  z-index: 2;
}

.hg-portfolio-image {
  width: 475px !important;
  aspect-ratio: 1/1;
  height: auto !important;
  z-index: 3;
  overflow: hidden;
}
@media screen and (max-width: 781px) {
  .hg-portfolio-image {
    width: 100% !important;
    max-width: 475px;
    max-height: 475px;
  }
}
.hg-portfolio-image img {
  transition: 0.2s all;
}
@media screen and (max-width: 781px) {
  .hg-portfolio-image img {
    height: 100% !important;
  }
}

.hg-portfolio-logo img {
  height: 74px !important;
  object-fit: contain;
  object-position: left;
  transition: 0.2s all;
  max-width: 100% !important;
}

.portfolio_item .wp-block-cover__inner-container {
  position: static;
}

@media screen and (max-width: 781px) {
  .hg-portfolio-query .portfolio_item .hg-portfolio-infobox {
    order: 2;
    margin-top: -3rem !important;
  }
}
@media screen and (min-width: 782px) {
  .hg-portfolio-query .portfolio_item:nth-of-type(even) .hg-portfolio-infobox {
    order: 2;
  }
  .hg-portfolio-query .portfolio_item:nth-of-type(even) .hg-portfolio-infobox:before {
    right: -100vw;
    left: -100px;
  }
}

html {
  scrollbar-gutter: stable;
}

html.has-modal-open {
  scrollbar-gutter: auto;
}

body:not(.editor-styles-wrapper) {
  scrollbar-gutter: stable;
}
body:not(.editor-styles-wrapper) .hg-portfolio-row {
  position: relative;
  align-items: stretch;
}
body:not(.editor-styles-wrapper) .hg-portfolio-row .wp-block-read-more {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  z-index: 4;
  font-size: 0;
  color: transparent;
}
body:not(.editor-styles-wrapper) .hg-portfolio-row .wp-block-read-more:hover ~ .hg-portfolio-infobox .hg-portfolio-infobox-inner, body:not(.editor-styles-wrapper) .hg-portfolio-row .wp-block-read-more:hover ~ .hg-portfolio-infobox:before {
  background-color: var(--wp--preset--color--primary) !important;
  color: white !important;
}
body:not(.editor-styles-wrapper) .hg-portfolio-row .wp-block-read-more:hover ~ .hg-portfolio-infobox .hg-portfolio-logo img {
  filter: invert(1);
}
body:not(.editor-styles-wrapper) .hg-portfolio-row .wp-block-read-more:hover ~ .hg-portfolio-image img {
  transform: scale(1.05);
}
body:not(.editor-styles-wrapper) .portfolio_item:nth-of-type(even) .hg-portfolio-row .wp-block-read-more:hover ~ .hg-portfolio-infobox .hg-portfolio-infobox-inner, body:not(.editor-styles-wrapper) .portfolio_item:nth-of-type(even) .hg-portfolio-row .wp-block-read-more:hover ~ .hg-portfolio-infobox:before {
  background-color: var(--wp--preset--color--secondary) !important;
}

@media screen and (max-width: 781px) {
  .hg-portfolio-row {
    flex-direction: column;
  }
}

.hg-services-list .w4hs-lottie-animation {
  width: 82px;
  min-width: 82px;
  font-size: 0;
}
.hg-services-list .w4hs-lottie-animation + .wp-block-group.is-vertical {
  max-width: calc(100vw - 82px - 20px - 3rem);
}
.hg-services-list .w4hs-lottie-animation + .wp-block-group.is-vertical .wp-block-columns-is-layout-flex {
  width: 100%;
}
@media screen and (max-width: 781px) {
  .hg-services-list .w4hs-lottie-animation + .wp-block-group.is-vertical .wp-block-columns-is-layout-flex {
    gap: 0;
  }
}
.hg-services-list .wp-block-heading {
  min-height: 82px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: var(--wp--preset--font-size--x-large);
}
@media screen and (max-width: 781px) {
  .hg-services-list .wp-block-heading {
    font-size: var(--wp--preset--font-size--large);
    hyphens: auto;
  }
}
.hg-services-list .wp-block-column {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.04em;
  width: 366px;
}
.hg-services-list .wp-block-column p {
  margin-block-start: 1em;
}

.hg-awards-content h3 {
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--ibm-plex-serif);
}

.hero-heading-flipper-content {
  display: inline-block;
}
.hero-heading-flipper-content mark {
  display: none;
  transition: transform 0.2s cubic-bezier(0.82, 0.17, 0.27, 2);
  transform: scaleY(1);
  transform-origin: bottom;
}
.hero-heading-flipper-content mark.active {
  display: block;
}
.hero-heading-flipper-content mark.squish {
  transform: scaleY(0);
  transition: transform 0.2s cubic-bezier(0.82, 0.17, 0.27, 1);
}

.job-listing-post-meta .wp-block-post-terms a {
  color: inherit;
  text-decoration: none;
  pointer-events: none;
}

/* Forms
--------------------------------------------- */
#form_readytoconnect .frm_form_field textarea,
#form_readytoconnect2 .frm_form_field textarea,
#form_applyforthisposition .frm_form_field textarea,
.hg-contact-form-container form .frm_form_field textarea {
  border-color: var(--wp--preset--color--primary);
  border-radius: 0;
  background: transparent;
}
#form_readytoconnect .frm_form_field [type=text],
#form_readytoconnect .frm_form_field [type=email],
#form_readytoconnect .frm_form_field [type=tel],
#form_readytoconnect2 .frm_form_field [type=text],
#form_readytoconnect2 .frm_form_field [type=email],
#form_readytoconnect2 .frm_form_field [type=tel],
#form_applyforthisposition .frm_form_field [type=text],
#form_applyforthisposition .frm_form_field [type=email],
#form_applyforthisposition .frm_form_field [type=tel],
.hg-contact-form-container form .frm_form_field [type=text],
.hg-contact-form-container form .frm_form_field [type=email],
.hg-contact-form-container form .frm_form_field [type=tel] {
  border: 0 none transparent;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  padding: 2px 1px;
  box-shadow: 0 0 currentColor;
  transition: 0.2s all;
}
#form_readytoconnect .frm_form_field [type=text]:focus,
#form_readytoconnect .frm_form_field [type=email]:focus,
#form_readytoconnect .frm_form_field [type=tel]:focus,
#form_readytoconnect2 .frm_form_field [type=text]:focus,
#form_readytoconnect2 .frm_form_field [type=email]:focus,
#form_readytoconnect2 .frm_form_field [type=tel]:focus,
#form_applyforthisposition .frm_form_field [type=text]:focus,
#form_applyforthisposition .frm_form_field [type=email]:focus,
#form_applyforthisposition .frm_form_field [type=tel]:focus,
.hg-contact-form-container form .frm_form_field [type=text]:focus,
.hg-contact-form-container form .frm_form_field [type=email]:focus,
.hg-contact-form-container form .frm_form_field [type=tel]:focus {
  box-shadow: 0 3px currentColor;
}
#form_readytoconnect .frm_required,
#form_readytoconnect2 .frm_required,
#form_applyforthisposition .frm_required,
.hg-contact-form-container form .frm_required {
  color: inherit;
  font-weight: lighter;
}
#form_readytoconnect .frm_primary_label span,
#form_readytoconnect2 .frm_primary_label span,
#form_applyforthisposition .frm_primary_label span,
.hg-contact-form-container form .frm_primary_label span {
  font-weight: lighter;
}
#form_readytoconnect #frm_field_10_container,
#form_readytoconnect2 #frm_field_10_container,
#form_applyforthisposition #frm_field_10_container,
.hg-contact-form-container form #frm_field_10_container {
  margin-top: var(--wp--preset--spacing--40) !important;
}

#form_applyforthisposition #frm_field_24_container {
  display: flex;
  flex-direction: column;
}
#form_applyforthisposition #frm_field_24_container textarea {
  flex-grow: 1;
}
#form_applyforthisposition .frm_dropzone.dz-clickable.frm_single_upload {
  max-width: none;
}
#form_applyforthisposition .frm_dropzone.dz-clickable.frm_single_upload .dz-message {
  margin-bottom: 0;
}

/*# sourceMappingURL=style.css.map */
