/*-----------------------------------------------------------------------
   Fonts
-----------------------------------------------------------------------*/

@import url('https://use.typekit.net/hig5mxq.css');

/*-----------------------------------------------------------------------
   Variables
-----------------------------------------------------------------------*/

:root {
   --admin-height: 32px;
   --header-height: 100px;
   --notice-height: 0px;

   --font-primary: 'open-sans', sans-serif;
   --font-secondary: 'brandon-grotesque', sans-serif;
   --font-tertiary: 'bebas-neue', sans-serif;

   --white: #ffffff;
   --white-rgb: 255, 255, 255;

   --fog: #fcfcfc;
   --fog-rgb: 252, 252, 252;

   --grey: #f6f6f6;
   --grey-rgb: 246, 246, 246;

   --silver: #d9d9d9;
   --silver-rgb: 217, 217, 217;

   --black: #1e1e1e;
   --black-rgb: 30, 30, 30;

   --navy-blue: #0e57a3;
   --navy-blue-rgb: 14, 87, 163;

   --true-blue: #00b3dc;
   --true-blue-rgb: 0, 179, 220;

   --bright-blue: #0bc3dc;
   --bright-blue-rgb: 11, 195, 220;

   --turquoise-blue: #91d5d8;
   --turquoise-blue-rgb: 145, 213, 216;

   --sky-blue: #83d3ef;
   --sky-blue-rgb: 131, 211, 239;

   --pale-blue: #def2f3;
   --pale-blue-rgb: 222, 242, 243;

   --red: #ff1414;
   --red-rgb: 255, 20, 20;

   --border-radius-xs: 3px;
   --border-radius-sm: 5px;
   --border-radius-md: 10px;
   --border-radius-lg: 20px;

   --container-ex: 480px;
   --container-xs: 620px;
   --container-sm: 860px;
   --container-md: 1120px;
   --container-lg: 1360px;

   --box-shadow: 0 0 5px rgba(var(--black-rgb), 10%);

   --transition: 0.3s ease;
}

/* Responsive */

@media (max-width: 782px) {
   :root {
      --admin-height: 46px;
   }
}

@media (max-width: 920px) {
   :root {
      --header-height: 120px;
   }
}

/*-----------------------------------------------------------------------
   Base
-----------------------------------------------------------------------*/

.ace-theme *,
.ace-theme *:before,
.ace-theme *:after {
   box-sizing: border-box;
}

.ace-theme * {
   scroll-margin-top: calc(var(--header-height) + var(--admin-height));
}

body.ace-theme,
.editor-styles-wrapper {
   font-optical-sizing: auto;
   -webkit-text-size-adjust: none;
   -webkit-font-smoothing: antialiased;
   color: var(--black);
   font-family: var(--font-primary) !important;
   font-size: 15px !important;
   line-height: 1.3;
   font-weight: 400;
}

body.ace-theme,
.editor-styles-wrapper,
.site-main {
   background: var(--pale-blue);
}

/* .site-main {
   position: relative;
   transition: var(--transition) all;
   z-index: 1;
} */

/*-----------------------------------------------------------------------
   Admin Bar
-----------------------------------------------------------------------*/

body.ace-theme {
   padding-top: calc(var(--header-height) + var(--notice-height)) !important;
}

body.ace-theme.admin-bar {
   padding-top: calc(var(--header-height) + var(--notice-height) + var(--admin-height)) !important;
}

#wpadminbar {
   position: fixed;
   z-index: 20000000000000001;
   top: 0;
}

#wpadminbar ul li.admin-bar-search {
   display: none !important;
}

/*-----------------------------------------------------------------------
   Block Editor Components
-----------------------------------------------------------------------*/

.editor-styles-wrapper .wp-block {
   overflow: visible !important;
}

.editor-styles-wrapper .wp-block .ace-theme a {
   pointer-events: none;
}

@media (min-width: 960px) {
   .editor-sidebar .components-panel .component-col-2 {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
   }
}

/*-----------------------------------------------------------------------
   Layouts
-----------------------------------------------------------------------*/

.ace-theme *[class*='container-'],
.ace-theme *[class*='section-'],
.ace-theme *[class*='block-'],
.ace-theme *[class*='entry-'],
.ace-theme .relative {
   position: relative;
}

.ace-theme .absolute {
   position: absolute;
}

/* Flex Layout */

.ace-theme .flex-layout,
.ace-theme .flex-align-start,
.ace-theme .flex-align-center,
.ace-theme .flex-align-end,
.ace-theme .flex-justify-start,
.ace-theme .flex-justify-center,
.ace-theme .flex-justify-end,
.ace-theme .flex-justify-between {
   display: flex;
   flex-wrap: wrap;
}

.ace-theme .flex-align-start {
   align-items: flex-start;
}

.ace-theme .flex-align-center {
   align-items: center;
}

.ace-theme .flex-align-end {
   align-items: flex-end;
}

.ace-theme .flex-justify-start {
   justify-content: flex-start;
}

.ace-theme .flex-justify-center {
   justify-content: center;
}

.ace-theme .flex-justify-end {
   justify-content: flex-end;
}

.ace-theme .flex-justify-between {
   justify-content: space-between;
}

.ace-theme .flex-row-reverse {
   flex-direction: row-reverse;
}

.ace-theme .flex-column-reverse {
   flex-direction: column-reverse;
}

.ace-theme .flex-nowrap {
   flex-wrap: nowrap;
}

.ace-theme .flex-gap {
   gap: 10px;
}

/* Containers */

.ace-theme .container,
.ace-theme .container-xl,
.ace-theme .container-lg,
.ace-theme .container-md,
.ace-theme .container-sm,
.ace-theme .container-xs,
.ace-theme .container-ex {
   z-index: 99;
   margin: auto;
   width: calc(100% - 60px);
}

.ace-theme .container,
.ace-theme .container-xl {
   width: 100%;
}

.ace-theme .container-lg {
   max-width: var(--container-lg);
}

.ace-theme .container-md {
   max-width: var(--container-md);
}

.ace-theme .container-sm {
   max-width: var(--container-sm);
}

.ace-theme .container-xs {
   max-width: var(--container-xs);
}

.ace-theme .container-ex {
   max-width: var(--container-ex);
}

/* Padding */

.ace-theme .padding-lg,
.ace-theme .padding-lg-top {
   padding-top: 80px;
}

.ace-theme .padding-lg,
.ace-theme .padding-lg-bot {
   padding-bottom: 80px;
}

.ace-theme .padding-md,
.ace-theme .padding-md-top {
   padding-top: 40px;
}

.ace-theme .padding-md,
.ace-theme .padding-md-bot {
   padding-bottom: 40px;
}

.ace-theme .padding-sm,
.ace-theme .padding-sm-top {
   padding-top: 15px;
}

.ace-theme .padding-sm,
.ace-theme .padding-sm-bot {
   padding-bottom: 15px;
}

/* Grid Layout */

.ace-theme .grid-col-1,
.ace-theme .grid-col-2,
.ace-theme .grid-col-3,
.ace-theme .grid-col-4,
.ace-theme .grid-col-5,
.ace-theme .grid-col-6 {
   display: grid;
   gap: 20px;
}

.ace-theme .grid-col-2 {
   gap: 60px;
}

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

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

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

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

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

/* Visibility */

.ace-theme .desktop-only {
   display: block;
}

.ace-theme .mobile-only {
   display: none;
}

.ace-theme .has-low-index {
   z-index: 0;
}

.ace-theme .has-high-index {
   z-index: 999;
}

/* Block Settings */

.ace-theme .block-setting-padding {
   padding-top: var(--block-padding-top);
   padding-bottom: var(--block-padding-bottom);
}

.ace-theme .block-setting-background-colour {
   background-color: var(--block-background-colour);
}

.ace-theme .block-background-pattern {
   background-image: url(../img/pattern-5.svg);
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
   background-attachment: fixed;
}

/* Responsive */

@media (min-width: 860px) {
   .ace-theme .grid-col-2.sidebar-left {
      grid-template-columns: 1fr 1.75fr;
   }

   .ace-theme .grid-col-2.sidebar-right {
      grid-template-columns: 1.75fr 1fr;
   }
}

@media (max-width: 1200px) {
   .ace-theme .grid-col-5,
   .ace-theme .grid-col-4 {
      grid-template-columns: repeat(3, 1fr);
   }

   .ace-theme .grid-col-6 {
      grid-template-columns: repeat(4, 1fr);
   }
}

@media (max-width: 860px) {
   .ace-theme .container-lg,
   .ace-theme .container-md,
   .ace-theme .container-sm,
   .ace-theme .container-xs {
      width: calc(100% - 50px);
   }

   .ace-theme .padding-lg,
   .ace-theme .padding-lg-top {
      padding-top: 40px;
   }

   .ace-theme .padding-lg,
   .ace-theme .padding-lg-bot {
      padding-bottom: 40px;
   }

   .ace-theme .grid-col-2 {
      gap: 20px;
   }

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

   .ace-theme .grid-col-3,
   .ace-theme .grid-col-4 {
      grid-template-columns: repeat(2, 1fr);
   }

   .ace-theme .grid-col-5,
   .ace-theme .grid-col-6 {
      grid-template-columns: repeat(3, 1fr);
   }

   .ace-theme .block-setting-padding {
      padding-top: calc(var(--block-padding-top) / 1.25);
      padding-bottom: calc(var(--block-padding-bottom) / 1.25);
   }
}

@media (max-width: 720px) {
   .ace-theme .grid-col-4,
   .ace-theme .grid-col-5 {
      grid-template-columns: repeat(2, 1fr);
   }

   .ace-theme .desktop-only {
      display: none;
   }

   .ace-theme .mobile-only {
      display: block;
   }
}

@media (max-width: 550px) {
   .ace-theme .grid-col-3,
   .ace-theme .grid-col-4 {
      grid-template-columns: repeat(1, 1fr);
   }

   .ace-theme .grid-col-6 {
      grid-template-columns: repeat(2, 1fr);
   }

   .ace-theme .block-setting-padding {
      padding-top: calc(var(--block-padding-top) / 2);
      padding-bottom: calc(var(--block-padding-bottom) / 2);
   }
}

/*-----------------------------------------------------------------------
   Dividers
-----------------------------------------------------------------------*/

.ace-theme div[class^='block-divider'] {
   position: relative;
   display: block;
   width: 100%;
   z-index: 99;
}

.ace-theme div[class^='block-divider-sm'] {
   height: 20px;
}

.ace-theme .block-divider-sm-top {
   margin-top: -20px;
   mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1200 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1050 0C1108.58 0 1141.06 16.6669 1200 16.667V20H0V16.667C47.9165 16.6669 91.4224 0 150.001 0C208.579 4.68101e-05 240.213 16.8449 300 16.667C357.842 16.4949 391.423 0 450.001 0C508.579 8.19174e-05 540.213 16.8449 600 16.667C657.842 16.4948 691.422 6.87459e-05 750 0C808.578 0 840.212 16.8448 899.999 16.667C957.842 16.4949 991.422 2.86443e-05 1050 0Z' fill='black'/%3E%3C/svg%3E");
   mask-repeat: repeat-x;
   mask-size: 1200px;
   mask-position: center;
}

.ace-theme .block-divider-sm-bot {
   margin-bottom: -20px;
   /* mask-image: url("data:image/svg+xml,%3Csvg width='1200' height='20' viewBox='0 0 1200 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1050 20C1108.58 20 1141.06 3.33309 1200 3.33301V0H0V3.33301C47.9165 3.33311 91.4224 20 150.001 20C208.579 20 240.213 3.15515 300 3.33301C357.842 3.50514 391.423 20 450.001 20C508.579 19.9999 540.213 3.15515 600 3.33301C657.842 3.50515 691.422 19.9999 750 20C808.578 20 840.212 3.15523 899.999 3.33301C957.842 3.50508 991.421 20 1050 20Z' fill='black'/%3E%3C/svg%3E%0A"); */
   mask-image: url("data:image/svg+xml,%3Csvg width='1200' height='20' viewBox='0 0 1200 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1200 19.9986C1141.06 19.9985 1108.58 3.05058 1050 3.05058C991.421 3.05061 957.842 19.8236 899.999 19.9986C840.212 20.1794 808.578 3.05058 750 3.05058C691.422 3.05065 657.842 19.8235 600 19.9986C540.213 20.1794 508.579 3.05066 450.001 3.05058C391.423 3.05058 357.842 19.8235 300 19.9986C240.213 20.1794 208.579 3.05063 150.001 3.05058C91.4224 3.05058 47.9165 19.9985 0 19.9986V0H1200L1200 19.9986Z' fill='black'/%3E%3C/svg%3E");
   mask-repeat: repeat-x;
   mask-size: 1200px;
   mask-position: center;
}

.ace-theme div[class^='block-divider-lg'] {
   height: 50px;
}

.ace-theme .block-divider-lg-top {
   margin-top: -50px;
   mask-image: url("data:image/svg+xml,%3Csvg width='1200' height='50' viewBox='0 0 1200 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 26.5498C55.6112 30.5291 114.913 33.333 183 33.333C417.835 33.333 548.165 0 783 0C949.748 0 1063.81 16.8043 1200 26.5498V50H0V26.5498Z' fill='black'/%3E%3C/svg%3E%0A");
   mask-repeat: repeat-x;
   mask-size: 1200px;
   mask-position: center;
}

.ace-theme .block-divider-lg-bot {
   margin-bottom: -50px;
   mask-image: url("data:image/svg+xml,%3Csvg width='1200' height='50' viewBox='0 0 1200 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1200 23.4502C1144.39 19.4709 1085.09 16.667 1017 16.667C782.165 16.667 651.835 50 417 50C250.252 50 136.194 33.1957 0 23.4502V0H1200V23.4502Z' fill='black'/%3E%3C/svg%3E%0A");
   mask-repeat: repeat-x;
   mask-size: 1200px;
   mask-position: center;
}

/* Responsive */

@media (max-width: 860px) {
   .ace-theme div[class^='block-divider-sm'] {
      height: 10px;
   }

   .ace-theme .block-divider-sm-top {
      margin-top: -10px;
      mask-size: 600px;
   }

   .ace-theme .block-divider-sm-bot {
      margin-bottom: -10px;
      mask-size: 600px;
   }

   .ace-theme div[class^='block-divider-lg'] {
      height: 25px;
   }

   .ace-theme .block-divider-lg-top {
      mask-size: 600px;
      margin-top: -25px;
   }

   .ace-theme .block-divider-lg-bot {
      mask-size: 600px;
      margin-bottom: -25px;
   }
}

/*-----------------------------------------------------------------------
   Typography
-----------------------------------------------------------------------*/

.ace-theme .h0,
.ace-theme .h0 *,
.ace-theme h1,
.ace-theme h1 *,
.ace-theme .h1,
.ace-theme .h1 *,
.ace-theme h2,
.ace-theme h2 *,
.ace-theme .h2,
.ace-theme .h2 *,
.ace-theme h3,
.ace-theme h3 *,
.ace-theme .h3,
.ace-theme .h3 *,
.ace-theme h4,
.ace-theme h4 *,
.ace-theme .h4,
.ace-theme .h4 *,
.ace-theme h5,
.ace-theme h5 *,
.ace-theme .h5,
.ace-theme .h5 *,
.ace-theme h6,
.ace-theme h6 *,
.ace-theme .h6,
.ace-theme .h6 *,
.ace-theme ul,
.ace-theme ol,
.ace-theme li,
.ace-theme p,
.ace-theme a {
   margin: 0;
   padding: 0;
   color: var(--black);
   font-weight: 400;
   text-wrap: wrap;
   word-break: break-word;
}

.ace-theme h1,
.ace-theme h1 *,
.ace-theme .h1,
.ace-theme .h1 *,
.ace-theme h2,
.ace-theme h2 *,
.ace-theme .h2,
.ace-theme .h2 *,
.ace-theme h3,
.ace-theme h3 *,
.ace-theme .h3,
.ace-theme .h3 *,
.ace-theme h4,
.ace-theme h4 *,
.ace-theme .h4,
.ace-theme .h4 *,
.ace-theme h5,
.ace-theme h5 *,
.ace-theme .h5,
.ace-theme .h5 * {
   font-family: var(--font-secondary);
   text-transform: uppercase;
   font-weight: 600;
}

.ace-theme .h0,
.ace-theme .h0 * {
   font-family: var(--font-tertiary);
   font-size: 115px;
   line-height: 115px;
}

.ace-theme h1,
.ace-theme h1 *,
.ace-theme .h1,
.ace-theme .h1 * {
   font-size: 62px;
   line-height: 64px;
}

.ace-theme h2,
.ace-theme h2 *,
.ace-theme .h2,
.ace-theme .h2 * {
   font-size: 42px;
   line-height: 48px;
}

.ace-theme h3,
.ace-theme h3 *,
.ace-theme .h3,
.ace-theme .h3 * {
   font-size: 30px;
   line-height: 36px;
}

.ace-theme h4,
.ace-theme h4 *,
.ace-theme .h4,
.ace-theme .h4 * {
   font-size: 26px;
   line-height: 30px;
}

.ace-theme h5,
.ace-theme h5 *,
.ace-theme .h5,
.ace-theme .h5 * {
   font-size: 20px;
   line-height: 24px;
}

.ace-theme h6,
.ace-theme h6 *,
.ace-theme .h6,
.ace-theme .h6 * {
   font-family: var(--font-tertiary);
   font-size: 18px;
   line-height: 20px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.ace-theme ul,
.ace-theme ol,
.ace-theme li {
   margin: 0;
   padding: 0;
   list-style: none;
}

.ace-theme p,
.ace-theme li {
   font-weight: 400;
   font-size: 15px !important;
   line-height: 20px !important;
}

.ace-theme a,
.ace-theme u,
.ace-theme *[style*='text-decoration: underline'] {
   text-underline-offset: 3px !important;
   text-decoration-thickness: 1px !important;
}

.ace-theme strong,
.ace-theme strong * {
   font-weight: 700 !important;
}

.ace-theme code {
   padding: 10px;
   font-size: 14px;
   color: var(--white);
   background: var(--black);
}

.ace-theme mark {
   background: none;
}

.ace-theme hr {
   width: 100%;
   border: 0;
   border-top: 1px solid var(--grey);
}

/* Responsive */

@media (max-width: 860px) {
   .ace-theme .h0,
   .ace-theme .h0 * {
      font-size: 62px;
      line-height: 64px;
   }

   .ace-theme h1,
   .ace-theme h1 *,
   .ace-theme .h1,
   .ace-theme .h1 * {
      font-size: 44px;
      line-height: 48px;
   }

   .ace-theme h2,
   .ace-theme h2 *,
   .ace-theme .h2,
   .ace-theme .h2 * {
      font-size: 36px;
      line-height: 40px;
   }

   /* .ace-theme h3,
   .ace-theme h3 *,
   .ace-theme .h3,
   .ace-theme .h3 * {
      font-size: 26px;
      line-height: 30px;
   }

   .ace-theme h4,
   .ace-theme h4 *,
   .ace-theme .h4,
   .ace-theme .h4 * {
      font-size: 22px;
      line-height: 24px;
   } */
}

@media (max-width: 720px) {
   .ace-theme h1 br,
   .ace-theme h2 br,
   .ace-theme h3 br,
   .ace-theme h4 br,
   .ace-theme h5 br,
   .ace-theme h6 br,
   .ace-theme p br,
   .ace-theme li br {
      display: none;
   }
}

/*-----------------------------------------------------------------------
   Content Styling
-----------------------------------------------------------------------*/

/* Sizes */

.ace-theme .text-sub,
.ace-theme .text-sub *,
.ace-theme .text-small,
.ace-theme .text-small * {
   font-size: 13px !important;
   line-height: 18px !important;
}

.ace-theme .text-sub,
.ace-theme .text-sub * {
   font-family: var(--font-secondary);
}

/* Alignment */

.ace-theme .text-left {
   text-align: left;
}

.ace-theme .text-center {
   text-align: center;
}

.ace-theme .text-right {
   text-align: right;
}

/* Colours */

.ace-theme .text-muted {
   opacity: 50%;
}

.ace-theme .text-white,
.ace-theme .text-white *:not(.button, button, .button *, button *, [style*='color']) {
   color: var(--white) !important;
   border-color: var(--white);
}

.ace-theme .text-silver,
.ace-theme .text-silver *:not(.button, button, .button *, button *, [style*='color']) {
   color: #333 !important;
   border-color: #333;
}

.ace-theme .text-navy-blue,
.ace-theme .text-navy-blue *:not(.button, button, .button *, button *, [style*='color']) {
   color: var(--navy-blue) !important;
   border-color: var(--navy-blue);
}

.ace-theme .text-true-blue,
.ace-theme .text-true-blue *:not(.button, button, .button *, button *, [style*='color']) {
   color: var(--true-blue) !important;
   border-color: var(--true-blue);
}

.ace-theme .text-bright-blue,
.ace-theme .text-bright-blue *:not(.button, button, .button *, button *, [style*='color']) {
   color: var(--bright-blue) !important;
   border-color: var(--bright-blue);
}

.ace-theme .text-turquoise-blue,
.ace-theme .text-turquoise-blue *:not(.button, button, .button *, button *, [style*='color']) {
   color: var(--turquoise-blue) !important;
   border-color: var(--turquoise-blue);
}

.ace-theme .text-sky-blue,
.ace-theme .text-sky-blue *:not(.button, button, .button *, button *, [style*='color']) {
   color: var(--sky-blue) !important;
   border-color: var(--sky-blue);
}

/*-----------------------------------------------------------------------
   WYSIWYG Content
-----------------------------------------------------------------------*/

.wysiwyg-content {
   width: 100%;
   position: relative;
   z-index: 99;
}

.wysiwyg-content h1:not(:last-child),
.wysiwyg-content h2:not(:last-child),
.wysiwyg-content h3:not(:last-child),
.wysiwyg-content h4:not(:last-child),
.wysiwyg-content h5:not(:last-child),
.wysiwyg-content h6:not(:last-child),
.wysiwyg-content ul:not(:last-child),
.wysiwyg-content ol:not(:last-child),
.wysiwyg-content p:not(:last-child),
.wysiwyg-content img,
.wysiwyg-content table:not(:last-child),
.wysiwyg-content code:not(:last-child),
.wysiwyg-content blockquote:not(:last-child) {
   margin: 0 0 15px !important;
}

.wysiwyg-content li:not(:last-child) {
   margin: 0 0 10px !important;
}

/* Lists */

.wysiwyg-content ul,
.wysiwyg-content ol {
   display: inline-block;
}

.wysiwyg-content ul.grid-col-2,
.wysiwyg-content ol.grid-col-2 {
   grid-template-columns: repeat(2, 1fr);
   gap: 15px;
}

.wysiwyg-content li {
   position: relative;
   text-align: left;
   padding: 0 0 0 20px;
}

.wysiwyg-content li:not(:last-child) {
   margin: 0 0 5px !important;
}

.wysiwyg-content li ul {
   margin: 5px 0;
}

.wysiwyg-content ul li:before {
   content: '';
   display: block;
   position: absolute;
   top: 9px;
   left: 3px;
   width: 3px;
   height: 3px;
   border-radius: 3px;
   background: var(--black);
}

.wysiwyg-content ul li {
   padding: 0 0 0 25px;
}

.wysiwyg-content ul li:before {
   content: '';
   display: block;
   position: absolute;
   width: 4px;
   height: 4px;
   border-radius: 4px;
   background: var(--black);
   left: 8px;
   top: 9px;
}

.wysiwyg-content ul.list-style-checkmark li:before {
   content: '';
   display: block;
   position: absolute;
   width: 15px;
   height: 15px;
   background: url(../img/icon-checkmark.svg) 50% no-repeat !important;
   background-size: contain !important;
   left: 0;
   top: 3px;
}

.wysiwyg-content ol {
   counter-reset: item;
   list-style-position: outside;
}

.wysiwyg-content ol li:before {
   content: counter(item) '. ';
   counter-increment: item;
   display: block;
   position: absolute;
   top: 0;
   left: 0;
}

/* Blockquote */

.wysiwyg-content blockquote {
   margin-left: 0;
   margin-right: 0;
   padding: 20px 0 20px 20px;
   border-left: 1px solid var(--black);
}

/* Links */

.wysiwyg-content h5 a,
.wysiwyg-content p a,
.wysiwyg-content li a,
.wysiwyg-content span a {
   text-decoration: underline;
}

/* Hr */

.wysiwyg-content hr {
   margin: 30px 0;
}

/* Images */

.wysiwyg-content img {
   display: inline !important;
   max-width: 100% !important;
   height: auto !important;
   border-radius: var(--border-radius-md);
}

.wysiwyg-content img.aligncenter {
   display: block !important;
   margin-left: auto !important;
   margin-right: auto !important;
   float: none;
}

.wysiwyg-content img.alignleft {
   float: left;
}

.wysiwyg-content img.alignright {
   float: right;
}

.wysiwyg-content img.size-full {
   width: 100% !important;
}

/* Buttons */

.wysiwyg-content .button-group {
   width: 100%;
}

/* Responsive */

@media (max-width: 720px) {
   .wysiwyg-content ul.grid-col-2,
   .wysiwyg-content ol.grid-col-2 {
      grid-template-columns: repeat(1, 1fr);
      gap: 10px;
   }
}

/*-----------------------------------------------------------------------
   Content Navigation
-----------------------------------------------------------------------*/

.ace-theme .sidebar-nav {
   position: relative;
   padding: 30px;
   margin-left: 15px;
   background: var(--white);
   border-top-right-radius: var(--border-radius-md);
   border-bottom-right-radius: var(--border-radius-md);
   box-shadow: var(--box-shadow);
   border-left: 5px solid var(--navy-blue);
}

.ace-theme .sidebar-nav:before {
   content: '';
   display: block;
   position: absolute;
   left: -45px;
   top: 25px;
   border: 25px solid transparent;
   border-right: 15px solid var(--navy-blue);
}

/*-----------------------------------------------------------------------
   Global Forms
-----------------------------------------------------------------------*/

.ace-theme form,
.ace-theme form *:not(table, table *, button) {
   border: 0;
   padding: 0;
   margin: 0;
   outline: 0 !important;
   box-shadow: none !important;
   position: relative;
}

.ace-theme form *[disabled] {
   opacity: 50%;
   pointer-events: none;
}

/* Labels */

.ace-theme label,
.ace-theme legend,
.ace-theme form .ginput_preview,
.ace-theme form .gform-field-label,
.ace-theme form .gfield_description,
.ace-theme form .ginput_quantity_label,
.ace-theme form .gform_fileupload_rules,
.ace-theme form .gfield_password_strength {
   display: block !important;
   margin: 0 !important;
   padding: 0 !important;
   font-family: var(--font-secondary);
   font-size: 12px !important;
   text-transform: uppercase !important;
   line-height: 25px !important;
   font-weight: 500 !important;
   margin: 5px 0 !important;
}

.ace-theme label a,
.ace-theme legend a {
   color: var(--black) !important;
   text-decoration: underline;
}

.ace-theme label .required,
.ace-theme legend .required,
.ace-theme form .gfield_label .gfield_required {
   color: var(--red) !important;
   margin-left: 2px !important;
   text-decoration: none !important;
}

/* Basic Fields */

.ace-theme input:not([class*='ui-'], [type='button'], [type='submit']),
.ace-theme select:not([class*='ui-']),
.ace-theme .select2-container .select2-selection,
.ace-theme textarea:not([class*='ui-']) {
   appearance: none;
   -webkit-appearance: none;
   display: block;
   width: 100% !important;
   height: auto !important;
   border: 0 !important;
   border-radius: var(--border-radius-sm) !important;
   border: 1px solid var(--silver) !important;
   background: var(--fog) !important;
   padding: 12px 20px !important;
   color: var(--black) !important;
   font-size: 14px !important;
   line-height: 20px !important;
   font-weight: 400 !important;
   text-align: left !important;
   text-decoration: none !important;
   transition: none !important;
   resize: none;
}

.ace-theme textarea:not([class*='ui-']) {
   min-height: 100px;
   max-height: 200px;
}

.ace-theme input:not([class*='ui-'], [type='button'], [type='submit']):hover,
.ace-theme input:not([class*='ui-'], [type='button'], [type='submit']):focus,
.ace-theme select:not([class*='ui-']):hover,
.ace-theme select:not([class*='ui-']):focus,
.ace-theme textarea:not([class*='ui-']):hover,
.ace-theme textarea:not([class*='ui-']):focus {
   outline: 0 !important;
   box-shadow: none !important;
}

.ace-theme input:not([class*='ui-'])[disabled],
.ace-theme select:not([class*='ui-'])[disabled],
.ace-theme textarea:not([class*='ui-'])[disabled],
.ace-theme button:not([class*='ui-'])[disabled] {
   opacity: 50%;
   pointer-events: none;
}

.ace-theme input:not([class*='ui-']):-webkit-autofill,
.ace-theme input:not([class*='ui-']):-webkit-autofill:hover,
.ace-theme input:not([class*='ui-']):-webkit-autofill:focus,
.ace-theme input:not([class*='ui-']):-webkit-autofill:active,
.ace-theme textarea:not([class*='ui-']):-webkit-autofill,
.ace-theme textarea:not([class*='ui-']):-webkit-autofill:hover,
.ace-theme textarea:not([class*='ui-']):-webkit-autofill:focus,
.ace-theme textarea:not([class*='ui-']):-webkit-autofill:active {
   -webkit-box-shadow: 0 0 0 30px var(--white) inset !important;
   -webkit-text-fill-color: var(--black);
}

.ace-theme ::placeholder {
   color: var(--black);
}

/* Select */

.ace-theme select:not([class*='ui-'], [multiple='multiple']) {
   padding-right: 45px !important;
   background: var(--fog) url(../img/icon-chevron-down.svg) 50% no-repeat !important;
   background-size: 12px !important;
   background-position: center right 20px !important;
   cursor: pointer;
}

.ace-theme .select2,
.ace-theme .select2 * {
   margin: 0 !important;
   padding: 0 !important;
}

.ace-theme .select2-container .select2-selection {
   background: var(--fog) url(../img/icon-chevron-down.svg) 50% no-repeat !important;
   background-size: 12px !important;
   background-position: center right 20px !important;
   cursor: pointer;
}

.ace-theme .select2-container .select2-selection,
.ace-theme .select2-container .select2-selection * {
   line-height: 20px !important;
}

.ace-theme .select2-selection__rendered,
.ace-theme .select2-selection__placeholder {
   color: var(--black) !important;
}

.ace-theme .select2-selection__clear {
   margin-right: 20px !important;
   font-size: 18px !important;
   font-weight: 500 !important;
}

.ace-theme .select2-dropdown {
   top: -3px;
   border-width: 1px !important;
   border-color: var(--silver) !important;
   background: var(--fog);
}

.ace-theme .select2-dropdown .select2-search,
.ace-theme .select2-dropdown .select2-results__option {
   padding: 5px;
}

.ace-theme .select2-dropdown .select2-results__option.select2-results__option--highlighted {
   background: var(--navy-blue);
}

.ace-theme .select2-container .select2-selection__arrow {
   display: none;
}

/* Checkbox & Radio */

.ace-theme input[type='checkbox']:not([class*='ui-']),
.ace-theme input[type='radio']:not([class*='ui-']) {
   min-height: 22px !important;
   min-width: 22px !important;
   max-width: 22px !important;
   max-height: 22px !important;
   border-radius: 3px !important;
   border: 1px solid var(--silver) !important;
   padding: 0 !important;
   background: var(--fog);
   box-shadow: none !important;
   margin: 0 10px 0 0 !important;
   position: relative;
   display: inline-block;
   cursor: pointer;
   transition: none !important;
}

.ace-theme input[type='radio']:not([class*='ui-']) {
   border-radius: 22px !important;
}

.ace-theme label:has(input[type='radio']:not([class*='ui-'])),
.ace-theme label:has(input[type='checkbox']:not([class*='ui-'])),
.ace-theme input[type='checkbox']:not([class*='ui-']) + label,
.ace-theme input[type='radio']:not([class*='ui-']) + label {
   font-weight: 400 !important;
   font-size: 15px !important;
   font-family: var(--font-primary);
   letter-spacing: inherit;
   text-transform: none !important;
   margin: 0 !important;
}

.ace-theme input[type='checkbox']:not([class*='ui-']) + label,
.ace-theme input[type='radio']:not([class*='ui-']) + label {
   display: inline-block !important;
   max-width: calc(100% - 40px) !important;
}

.ace-theme label:has(input[type='radio']:not([class*='ui-'])),
.ace-theme label:has(input[type='checkbox']:not([class*='ui-'])) {
   display: flex !important;
   width: 100%;
}

.ace-theme label:has(input[type='radio']:not([class*='ui-'])) input[type='radio'],
.ace-theme label:has(input[type='checkbox']:not([class*='ui-'])) input[type='checkbox'] {
   vertical-align: middle;
}

.ace-theme input[type='checkbox']:not([class*='ui-']):checked {
   border-color: var(--bright-blue) !important;
   background: var(--bright-blue) url(../img/icon-checkbox.svg) 50% no-repeat !important;
   background-size: 14px !important;
}

.ace-theme input[type='radio']:not([class*='ui-']):checked {
   border: 6px solid var(--bright-blue) !important;
}

.ace-theme input[type='radio']:not([class*='ui-']):before,
.ace-theme input[type='checkbox']:not([class*='ui-']):before {
   display: none !important;
}

/*-----------------------------------------------------------------------
   Gravity Forms
-----------------------------------------------------------------------*/

.gform_wrapper .gform_body,
.gform_wrapper .gform_fields,
.gform_wrapper .gform_footer {
   margin: 0 !important;
}

.gform_wrapper .gform_fields {
   gap: 10px 20px !important;
}

.gform_wrapper .ginput_complex {
   gap: 0 !important;
}

.gform_wrapper .gform_footer {
   padding: 0 !important;
   margin-top: 25px !important;
}

.gform_wrapper .gform_required_legend {
   display: none !important;
}

/* AJAX Spinner */

.gform_wrapper .gform_ajax_spinner,
.gform_wrapper .gform-loader {
   width: 12px !important;
   height: 12px !important;
   margin: 0 0 0 20px !important;
}

/* Labels */

.gform_wrapper .gfield_description,
.gform_wrapper .gfield_list_group_item:before,
.gform_wrapper .gfield_list .gform-field-label,
.gform_wrapper .gform-field-label--type-sub {
   font-size: 12px !important;
   font-weight: 400 !important;
   color: rgba(var(--black-rgb), 50%) !important;
   text-transform: none !important;
   letter-spacing: 0 !important;
}

.gform_wrapper .gform_title {
   font-size: 38px;
   font-weight: 700;
   margin-bottom: 30px;
}

/* Radio / Checkbox */

.gform_wrapper .gfield_checkbox .gchoice,
.gform_wrapper .gfield_radio .gchoice {
   margin: 10px 0 !important;
}

/* Date / Time */

.gform_wrapper .ginput_container_date,
.gform_wrapper .ginput_container_time {
   flex-basis: auto !important;
   max-width: 100% !important;
   flex: 1 !important;
}

.gform_wrapper .hour_minute_colon {
   line-height: 35px !important;
}

/* List */

.gform_wrapper .gfield_list .gfield_list_icons button {
   min-width: 16px !important;
   min-height: 16px !important;
   width: 16px !important;
   height: 16px !important;
}

/* File Upload */

.gform_wrapper .gform_drop_area {
   padding: 20px !important;
   border-radius: 0 !important;
   background: transparent !important;
   border: 1px dashed rgba(var(--black-rgb), 25%) !important;
}

.gform_wrapper .gform_drop_area:before {
   display: none !important;
}

.gform_wrapper .gform_drop_area .gform_button_select_files {
   margin: auto !important;
}

.gform_wrapper .gfield--type-fileupload .ginput_preview {
   font-size: 14px;
   display: flex !important;
   align-items: center;
   margin: 10px 0 0 !important;
}

.gform_wrapper .gfield--type-fileupload .ginput_preview * {
   margin: 0 5px 0 0 !important;
   order: 9;
}

.gform_wrapper .gfield--type-fileupload .ginput_preview .gfield_fileupload_progressbar {
   display: none;
}

.gform_wrapper .gform_delete_file,
.gform_wrapper .gform_delete_file * {
   padding: 0 !important;
   margin: 0 0 1px !important;
   min-width: 0 !important;
   box-shadow: none !important;
   font-size: 15px !important;
   line-height: 18px !important;
   color: var(--black) !important;
   order: 1 !important;
}

.gform_wrapper .gform_delete_file:hover * {
   color: var(--red) !important;
}

.gform_wrapper .gfield--type-fileupload .gform_fileupload_rules {
   padding-top: inherit !important;
}

/* Price / Product */

.gform_wrapper .ginput_product_price_wrapper {
   width: 100%;
   margin: 0 0 10px;
}

/* Consent */

.gform_wrapper .ginput_container_consent {
   display: flex;
}

/* Progress Bar */

.gform_wrapper .gf_progressbar_wrapper {
   margin: 0 0 30px;
}

.gform_wrapper .gf_progressbar,
.gform_wrapper .gf_progressbar_wrapper,
.gform_wrapper .gf_progressbar_percentage {
   border-radius: 20px !important;
}

.gform_wrapper .gf_progressbar {
   background: rgba(var(--black-rgb), 5%) !important;
}

.gform_wrapper .gf_progressbar_percentage {
   height: 16px !important;
   background: var(--grey) !important;
}

.gform_wrapper .gf_progressbar_title,
.gform_wrapper .gf_progressbar_percentage span {
   margin: 0 !important;
}

.gform_wrapper .gf_progressbar_title {
   font-size: 12px !important;
   font-weight: 400 !important;
}

.gform_wrapper .gf_progressbar_percentage span {
   padding: 0 5px !important;
   color: var(--black) !important;
   font-size: 10px !important;
   line-height: 15px !important;
   text-transform: uppercase !important;
}

/* Page Footer */

.gform_wrapper .gform_page_footer {
   display: flex;
   gap: 10px;
   align-items: center;
}

.gform_wrapper .gform_page_footer .button {
   margin: 0 !important;
}

.gform_wrapper .gform_page_footer .gform_previous_button:not(:hover, :focus),
.gform_wrapper .gform_page_footer .gform_next_button:not(:hover, :focus) {
   color: var(--black) !important;
}

/* Validation */

.gform_wrapper .gform_validation_errors {
   outline: 0 !important;
   border: 0 !important;
   border-radius: 0 !important;
   box-shadow: none !important;
   margin-bottom: 20px !important;
}

.gform_wrapper .gform_validation_errors *,
.gform_wrapper .gfield .gfield_validation_message {
   color: var(--red) !important;
   font-family: var(--font-primary);
   text-transform: none !important;
   font-weight: 400;
   letter-spacing: 0 !important;
}

.gform_wrapper .gfield_validation_message {
   background: transparent !important;
   border: 0 !important;
   padding: 0 !important;
}

/*-----------------------------------------------------------------------
   Filter Form
-----------------------------------------------------------------------*/

.ace-theme form.filter-form {
   width: fit-content !important;
   max-width: 100%;
}

.ace-theme *[id*='response'] {
   transition: var(--transition) all;
}

.ace-theme .filter-loading {
   opacity: 50%;
}

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

.ace-theme .button-group {
   display: flex;
   flex-wrap: wrap;
   gap: 10px;
}

.ace-theme .button svg {
   width: 15px;
   height: 15px;
   color: var(--white);
}

/* Default Styles */

.ace-theme button,
.ace-theme .button,
.ace-theme .button:hover,
.ace-theme .button:focus {
   appearance: none;
   -webkit-appearance: none;
   position: relative;
   margin: 0;
   outline: 0;
   border: 0;
   width: auto;
   height: auto;
   min-height: 0 !important;
   font-family: var(--font-tertiary);
   color: var(--true-blue);
   font-weight: 500;
   text-align: center;
   background: transparent;
   text-decoration: none !important;
   transition: var(--transition) all;
   cursor: pointer;
}

.ace-theme .button,
.ace-theme .button:hover,
.ace-theme .button:focus {
   display: flex !important;
   align-items: center;
   justify-content: center;
   gap: 10px;
   padding: 14px 20px !important;
   font-size: 18px !important;
   line-height: 20px !important;
   letter-spacing: 1px;
   color: var(--white);
   background: var(--true-blue);
   border: 1px solid var(--true-blue);
   border-radius: var(--border-radius-sm) !important;
}

/* Additional Styles */

.ace-theme .button.button-outlined {
   background: transparent;
   border-color: var(--true-blue);
}

.ace-theme .button.button-outlined,
.ace-theme .button.button-outlined svg {
   color: var(--true-blue);
}

/* Navy */

.ace-theme .button.button-navy,
.ace-theme .button-outlined.button-navy {
   border-color: var(--navy-blue);
}

.ace-theme .button.button-navy {
   background: var(--navy-blue);
}

.ace-theme .button.button-navy,
.ace-theme .button.button-navy svg {
   color: var(--white);
}

.ace-theme .button-outlined.button-navy {
   background: transparent;
}

.ace-theme .button-outlined.button-navy,
.ace-theme .button-outlined.button-navy svg {
   color: var(--navy-blue);
}

/* Black */

.ace-theme .button.button-black,
.ace-theme .button-outlined.button-black {
   border-color: var(--black);
}

.ace-theme .button.button-black {
   background: var(--black);
}

.ace-theme .button.button-black,
.ace-theme .button.button-black svg {
   color: var(--white);
}

.ace-theme .button-outlined.button-black {
   background: transparent;
}

.ace-theme .button-outlined.button-black,
.ace-theme .button-outlined.button-black svg {
   color: var(--black);
}

/* White */

.ace-theme .button.button-white,
.ace-theme .button-outlined.button-white {
   border-color: var(--white);
}

.ace-theme .button.button-white {
   background: var(--white);
}

.ace-theme .button.button-white,
.ace-theme .button.button-white svg {
   color: var(--black);
}

.ace-theme .button-outlined.button-white {
   background: transparent;
}

.ace-theme .button-outlined.button-white,
.ace-theme .button-outlined.button-white svg {
   color: var(--white);
}

/* Hover/Focus */

.ace-theme button:hover,
.ace-theme button:focus,
.ace-theme .button:hover,
.ace-theme .button:focus {
   outline: 0;
   box-shadow: none;
   transform: scale(97%);
}

/* Responsive */

@media (max-width: 550px) {
   .ace-theme .button-group {
      width: 100%;
   }
}

/*-----------------------------------------------------------------------
   Site Notice
-----------------------------------------------------------------------*/

.site-notice {
   padding: 10px 0;
   background: var(--black);
}

/*-----------------------------------------------------------------------
   Site Logo
-----------------------------------------------------------------------*/

.site-logo,
.site-logo img,
.site-logo svg {
   display: block;
   max-width: 130px;
   max-height: 130px;
   width: auto;
   height: auto;
   z-index: 20000;
   transition: none;
}

/* Responsive */

@media (max-width: 920px) {
   .site-header .site-logo,
   .site-header .site-logo svg,
   .site-header .site-logo img {
      max-width: 60px;
      max-height: 60px;
   }
}

/*-----------------------------------------------------------------------
   Site Header
-----------------------------------------------------------------------*/

.site-header {
   top: 0;
   width: 100%;
   display: block;
   position: fixed;
   background: var(--white);
   box-shadow: var(--box-shadow);
   z-index: 2000000002;
}

body.ace-theme.admin-bar .site-header {
   top: var(--admin-height);
}

.site-header > div[class*='container'] {
   height: var(--header-height);
}

/* Logo */

.site-header a.site-logo {
   top: 0;
   position: absolute;
   background: var(--white);
}

.site-header a.site-logo svg {
   padding: 10px;
   transition: var(--transition) max-height;
}

.site-header.is-scrolled a.site-logo svg {
   max-height: var(--header-height);
}

/* Top Menu */

.site-header .header-top {
   gap: 20px;
}

.site-header .header-top .button-group {
   gap: 5px;
   max-width: max-content !important;
}

.site-header .header-top .button {
   border-top-left-radius: 0 !important;
   border-top-right-radius: 0 !important;
   padding: 8px 14px !important;
   font-family: var(--font-secondary);
   font-size: 10px !important;
   line-height: 12px !important;
   font-weight: 600 !important;
   text-transform: uppercase !important;
   letter-spacing: 0.5px !important;
   transform-origin: top;
}

.site-header .header-top form.search-form {
   width: 180px;
}

/* Main Menu */

.site-header .main-menu {
   flex: 1;
}

.site-header .main-menu,
.site-header .main-menu > ul {
   display: flex;
   align-items: center;
}

.site-header .main-menu {
   min-height: 68px;
   justify-content: flex-end;
   gap: 15px;
}

.site-header .main-menu > ul {
   gap: 25px;
}

.ace-theme .main-menu ul li,
.ace-theme .main-menu ul li a {
   position: relative;
}

.ace-theme .main-menu ul li a {
   display: block;
   padding: 24px 5px;
   font-family: var(--font-secondary);
   font-size: 12px;
   line-height: 18px;
   font-weight: 600;
   text-transform: uppercase;
}

.ace-theme .main-menu ul:not(.sub-menu) > li > a:after {
   content: '';
   display: block;
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   height: 5px;
   background: var(--bright-blue);
   transform: scaleX(0);
   transform-origin: bottom right;
   transition: var(--transition) transform;
}

.ace-theme .main-menu ul:not(.sub-menu) > li.current-menu-item > a:after,
.ace-theme .main-menu ul:not(.sub-menu) > li.current-menu-parent > a:after,
.ace-theme .main-menu ul:not(.sub-menu) > li > a:hover:after,
.ace-theme .main-menu ul:not(.sub-menu) > li > a:focus:after {
   /* width: 100%; */
   transform: scaleX(1);
   transform-origin: bottom left;
}

/* Sub Menu */

.site-header .main-menu .trigger-sub-menu {
   display: none;
}

.ace-theme .main-menu ul.sub-menu,
.ace-theme .main-menu ul.sub-menu li,
.ace-theme .main-menu ul.sub-menu li a {
   display: block;
}

.site-header ul.sub-menu {
   padding: 12px 10px;
   background: var(--white);
   border-left: 5px solid var(--bright-blue);
   overflow: hidden;
}

.site-header ul.sub-menu li a {
   padding: 5px;
}

.ace-theme .main-menu ul.sub-menu li.current-menu-item a,
.ace-theme .main-menu ul.sub-menu li a:hover,
.ace-theme .main-menu ul.sub-menu li a:focus {
   color: var(--bright-blue);
}

.site-header ul li .sub-menu-wrap {
   width: max-content;
   opacity: 0;
   display: block;
   position: absolute;
   top: 100%;
   left: 0;
   margin: 0;
   pointer-events: none;
   z-index: 20000;
}

.site-header ul ul .sub-menu-wrap {
   padding: 0 0 0 8px;
   top: 0;
   right: auto;
   left: 100%;
   transform: translate(0);
}

.site-header ul li:hover > .sub-menu-wrap {
   opacity: 1;
   pointer-events: all;
}

/* Icon Menu */

.site-header .header-right {
   gap: 10px;
}

.site-header *[class^='icon-'],
.site-header *[class^='icon-'] svg {
   display: block;
   width: 20px;
   height: 20px;
   color: var(--black);
   cursor: pointer;
}

.site-header .icon-cart {
   position: relative;
   width: 25px;
}

.site-header .icon-cart .cart-count {
   display: block;
   position: absolute;
   top: -3px;
   right: 0;
   font-family: var(--font-secondary);
   font-size: 8px;
   font-weight: 600;
   width: 13px;
   line-height: 13px;
   border-radius: 13px;
   text-align: center;
   background: var(--true-blue);
   color: var(--white);
}

/* Hamburger */

.site-header .icon-hamburger {
   width: 18px;
   height: 18px;
   align-items: center;
   justify-content: center;
   position: relative;
   cursor: pointer;
}

.site-header .icon-hamburger span,
.site-header .icon-hamburger span:before,
.site-header .icon-hamburger span:after {
   display: block;
   position: absolute;
   left: 0;
   width: 18px;
   height: 2px;
   background: var(--black);
   transition: background 0s 0.3s;
}

.site-header .icon-hamburger span {
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}

.site-header .icon-hamburger span:before {
   content: '';
   top: -6px;
   transition-property: top, transform;
   transition-duration: 0.3s, 0.3s;
   transition-delay: 0.3s, 0s;
}

.site-header .icon-hamburger span:after {
   content: '';
   bottom: -6px;
   transition-property: bottom, transform;
   transition-duration: 0.3s, 0.3s;
   transition-delay: 0.3s, 0s;
}

body.ace-theme.menu-active .site-header .icon-hamburger span {
   background: none;
}

body.ace-theme.menu-active .site-header .icon-hamburger span:before {
   top: 0;
   transform: rotate(45deg);
   transition-delay: 0s, 0.3s;
}

body.ace-theme.menu-active .site-header .icon-hamburger span:after {
   bottom: 0;
   transform: rotate(-45deg);
   transition-delay: 0s, 0.3s;
}

/* Responsive Menu */

.site-responsive-menu {
   width: 100%;
   position: fixed;
   right: 0;
   top: -100%;
   height: calc(100vh - var(--header-height) - var(--notice-height));
   overflow-y: auto;
   background: var(--white);
   transition: var(--transition) top;
   z-index: 200000;
}

body.admin-bar.site-responsive-menu {
   height: calc(100vh - var(--header-height) - var(--notice-height) - var(--admin-height));
}

.site-responsive-menu div[class*='container'] {
   opacity: 0;
   transition: var(--transition) opacity;
   transition-delay: 0.25s;
}

/* Responsive Menu: Menu */

.site-responsive-menu .main-menu ul,
.site-responsive-menu .main-menu ul a {
   display: block;
}

.site-responsive-menu .menu-search {
   padding: 20px 0;
}

.site-responsive-menu .main-menu ul li a {
   padding: 20px 5px;
   font-size: 16px;
   border-bottom: 1px solid var(--grey);
}

.site-responsive-menu .main-menu ul:not(.sub-menu) > li > a:after {
   height: 4px;
   bottom: -2px;
}

.site-responsive-menu .main-menu ul li .trigger-sub-menu {
   width: 20px;
   float: right;
}

/* Responsive Menu: Sub Menu */

.site-responsive-menu .main-menu ul.sub-menu {
   padding: 5px;
}

.site-responsive-menu .main-menu ul.sub-menu li a {
   font-size: 14px;
   font-weight: 500;
   padding: 10px 5px;
}

.site-responsive-menu .main-menu ul.sub-menu li.current-page-item a .site-responsive-menu ul li.menu-item-has-children ul.sub-menu,
.site-responsive-menu ul li.menu-item-has-children .sub-menu-wrap {
   display: none;
}

.site-responsive-menu ul li.menu-item-has-children.sub-menu-active > a > .trigger-sub-menu svg {
   transform: rotate(135deg);
}

.site-responsive-menu ul li.menu-item-has-children.sub-menu-active > .sub-menu-wrap {
   display: block !important;
}

/* Responsive */

@media (min-width: 920px) {
   .site-header .trigger-menu,
   .site-header .trigger-search,
   .site-responsive-menu {
      display: none !important;
   }
}

@media (max-width: 920px) {
   .site-header a.site-logo {
      top: auto;
      bottom: 12px;
   }

   .site-header a.site-logo svg {
      padding: 0;
   }

   .site-header .main-menu {
      min-height: 88px;
   }

   .site-header .main-menu ul {
      display: none !important;
   }

   .site-header .trigger-menu,
   .site-header .trigger-search {
      display: flex !important;
   }

   body.menu-active .site-responsive-menu {
      top: calc(var(--header-height) + var(--notice-height));
   }

   body.admin-bar.menu-active .site-responsive-menu {
      top: calc(var(--header-height) + var(--notice-height) + var(--admin-height));
   }

   body.menu-active .site-responsive-menu div[class*='container'] {
      opacity: 1;
   }
}

@media (max-width: 720px) {
   .site-header form.search-form {
      flex: 1;
      width: auto;
   }
}

@media (max-width: 500px) {
   .site-header .header-top form.search-form {
      display: none;
   }
}

/*-----------------------------------------------------------------------
   Site Footer
-----------------------------------------------------------------------*/

.site-footer {
   position: relative;
   background: var(--black);
}

.site-footer a:hover {
   text-decoration: underline;
}

/* Columns */

.site-footer .footer-columns {
   gap: 60px;
}

.site-footer .footer-columns .footer-logo {
   flex: 1;
}

.site-footer .footer-columns .footer-menu {
   width: 170px;
}

.site-footer .footer-columns .footer-social {
   width: 260px;
}

.site-footer .footer-columns h6 {
   position: relative;
   margin: 0 0 20px;
   padding: 0 0 10px;
}

.site-footer .footer-columns h6:after {
   content: '';
   display: block;
   position: absolute;
   bottom: 0;
   left: 0;
   width: 25px;
   background: rgba(var(--white-rgb), 30%);
   height: 1px;
}

/* Menus */

.site-footer ul,
.site-footer ul li,
.site-footer .footer-columns .footer-menu ul {
   display: block;
}

.site-footer ul li {
   margin: 0 0 5px;
}

.site-footer ul li a {
   font-size: 12px;
}

.site-footer ul.sub-menu {
   display: none;
}

/* Social */

.site-footer .footer-social p {
   margin: 15px 0 10px;
}

/* Copyright */

.site-footer .footer-copyright {
   border-top: 1px solid rgba(var(--white-rgb), 30%);
}

.site-footer .footer-copyright p {
   font-size: 12px !important;
}

/* Responsive */

@media (max-width: 1200px) {
   .site-footer .footer-columns .footer-logo {
      flex: 100%;
   }

   .site-footer .footer-columns .footer-menu,
   .site-footer .footer-columns .footer-social {
      flex: 1;
   }
}

@media (max-width: 860px) {
   .site-footer .footer-columns .footer-logo {
      margin: 0 auto 30px;
   }

   .site-footer a.site-logo {
      margin: auto;
   }

   .site-footer * {
      text-align: center;
      justify-content: center;
   }

   .site-footer .footer-columns {
      gap: 0;
   }

   .site-footer .footer-columns .footer-menu,
   .site-footer .footer-columns .footer-social {
      flex: 100%;
   }

   .site-footer .footer-columns .footer-menu ul {
      display: none;
   }

   .site-footer .footer-columns .footer-menu ul li:last-child {
      margin-bottom: 20px;
   }

   .site-footer .footer-columns h6 {
      padding: 15px 0;
      margin: 0;
   }

   .site-footer .footer-columns h6:after {
      bottom: auto;
      top: 0;
      width: 100%;
      background: var(--white);
   }

   .site-footer .footer-copyright div[class*='container'] {
      justify-content: center;
   }
}

/*-----------------------------------------------------------------------
   Site Search
-----------------------------------------------------------------------*/

.ace-theme form.search-form,
.ace-theme form .search-input {
   display: flex;
   gap: 15px;
}

.ace-theme form.search-form > input,
.ace-theme form .search-input > input {
   flex: 1;
}

.ace-theme form.search-form > input[type='submit'],
.ace-theme form .search-input > input[type='submit'] {
   max-width: max-content;
}

.ace-theme form.search-form > input[type='text'],
.ace-theme form .search-input > input[type='text'] {
   padding: 6px 0 5px 0 !important;
   background: transparent !important;
   border: 0 !important;
   border-radius: 0 !important;
   border-bottom: 1px solid var(--silver) !important;
   font-size: 12px !important;
}

.ace-theme form.search-form > input[type='text'] {
   padding-left: 30px !important;
}

.ace-theme form .search-input > input[type='text'] {
   padding-right: 30px !important;
}

.ace-theme form.search-form > input[name='text']::placeholder,
.ace-theme form .search-input > input[type='text']::placeholder {
   font-style: italic;
}

.ace-theme form.search-form > input[type='submit'],
.ace-theme form .search-input > input[type='submit'] {
   position: absolute;
   bottom: 0;
   font-size: 0 !important;
   max-width: 20px !important;
   width: 20px;
   height: 32px;
   background: url(../img/icon-search.svg) 50% no-repeat;
   background-size: 16px;
}

.ace-theme form.search-form > input[type='submit'] {
   left: 0;
}

.ace-theme form .search-input > input[type='submit'] {
   right: 0;
}

/*-----------------------------------------------------------------------
   Site Breadcrumbs
-----------------------------------------------------------------------*/

.site-breadcrumbs .flex-layout {
   padding: 20px 0;
   gap: 10px;
}

.site-breadcrumbs a {
   transition: none;
}

.site-breadcrumbs a:hover,
.site-breadcrumbs a:focus {
   text-decoration: underline;
}

/*-----------------------------------------------------------------------
   Media
-----------------------------------------------------------------------*/

.ace-theme img {
   max-width: 100%;
   height: auto;
   display: block;
}

.ace-theme svg {
   transition: var(--transition) all;
}

.ace-theme .image-square,
.ace-theme .image-portrait,
.ace-theme .image-landscape {
   position: relative;
   overflow: hidden;
   background: rgba(var(--navy-blue-rgb), 10%);
}

.ace-theme .image-square {
   aspect-ratio: 1 / 1;
}

.ace-theme .image-portrait {
   aspect-ratio: 3 / 5;
}

.ace-theme .image-landscape {
   aspect-ratio: 5 / 3;
}

/* Background Elements */

.ace-theme .background-image,
.ace-theme .background-video,
.ace-theme .background-blurred:before,
.ace-theme .background-overlay:before {
   position: absolute;
   top: 0;
   right: 0;
   left: 0;
   bottom: 0;
}

.ace-theme .background-image {
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center;
   z-index: 0;
}

.ace-theme .background-video,
.ace-theme .background-video video {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.ace-theme .background-overlay:before {
   content: '';
   background: rgba(0, 0, 0, 30%);
}

.ace-theme .background-pattern {
   pointer-events: none;
   background-repeat: repeat-y;
   background-size: 100% auto;
   background-position: top center;
   z-index: -9;
}

.ace-theme .background-blurred:before {
   content: '';
   display: block;
   backdrop-filter: blur(15px);
}

/* Video Embed */

.ace-theme .responsive-embed {
   position: relative;
   padding-bottom: 56.25%; /* 16:9 */
   height: 0;
   border-radius: var(--border-radius-md);
   overflow: hidden;
}

.ace-theme .responsive-embed iframe {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}

/*-----------------------------------------------------------------------
   Animations
-----------------------------------------------------------------------*/

@keyframes rotate {
   0% {
      transform: rotate(0deg);
   }
   0% {
      transform: rotate(360deg);
   }
}

.ace-theme .anim-rotate-sm {
   animation: rotate 8s linear infinite;
   transform-origin: center center;
}

.ace-theme .anim-rotate-md {
   animation: rotate 14s linear infinite;
   transform-origin: center center;
}

.ace-theme .anim-rotate-lg {
   animation: rotate 19s linear infinite;
   transform-origin: center center;
}

.ace-theme .anim-rotate-xl {
   animation: rotate 28s linear infinite;
   transform-origin: center center;
}

@keyframes typing {
   from {
      width: 0;
   }
   to {
      width: 100%;
   }
}

@keyframes blink-caret {
   from,
   to {
      border-color: transparent;
   }
   50% {
      border-color: var(--silver);
   }
}

.ace-theme .anim-type-in {
   overflow: hidden;
   border-right: 2px solid var(--silver);
   padding-right: 2px;
   display: inline-block;
   max-width: max-content;
   white-space: nowrap;
   margin: 0 auto;
}

.ace-theme .swiper-slide-active .anim-type-in {
   animation: typing 3.5s steps(40, end), blink-caret 0.75s step-end infinite;
}

/*-----------------------------------------------------------------------
   Swiper
-----------------------------------------------------------------------*/

.ace-theme .swiper-carousel-wrap {
   min-width: 100%;
   overflow: hidden;
}

.ace-theme .swiper-slide {
   width: auto;
   height: auto;
}

/* Pagination */

.ace-theme .swiper-pagination {
   position: relative;
   top: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   margin-top: 30px;
}

.ace-theme .swiper-pagination span {
   opacity: 100%;
   margin: 0 3px;
   width: 6px;
   height: 6px;
   border-radius: 6px;
   opacity: 50%;
   background: var(--navy-blue);
   transition: var(--transition) opacity;
}

.ace-theme .swiper-pagination span.swiper-pagination-bullet-active {
   opacity: 100%;
}

/* Navigation */

.ace-theme .swiper-navigation {
   display: flex;
   align-items: center;
}

.ace-theme .swiper-navigation div[class^='swiper-nav'] {
   width: 40px;
   height: 40px;
   border-radius: 40px;
   background: url(../img/circle-navy-blue.svg) 50% no-repeat;
   background-size: contain;
   display: flex;
   align-items: center;
   justify-content: center;
   position: absolute;
   top: calc(50% - 20px);
   z-index: 99;
   cursor: pointer;
}

.ace-theme .swiper-navigation .swiper-nav-prev {
   left: 0;
}

.ace-theme .swiper-navigation .swiper-nav-next {
   right: 0;
}

.ace-theme .swiper-navigation div[class^='swiper-nav'] svg {
   width: 16px;
   height: 16px;
   color: var(--sky-blue);
}

/* Responsive */

@media (max-width: 860px) {
   .ace-theme .swiper .swiper-pagination {
      margin-top: 15px;
   }
}

/*-----------------------------------------------------------------------
   Tables
-----------------------------------------------------------------------*/

.ace-theme .table-wrapper {
   background: var(--white);
   padding: 0 15px;
   border-radius: var(--border-radius-sm);
   border: 1px solid var(--silver);
   min-width: 100%;
}

.ace-theme table {
   border-collapse: collapse;
   width: 100%;
}

.ace-theme table,
.ace-theme table tr,
.ace-theme table th,
.ace-theme table td {
   border: 0;
   background: transparent;
}

.ace-theme table tr:not(:last-child) {
   border-bottom: 1px dashed var(--silver);
}

.ace-theme table th,
.ace-theme table td {
   padding: 15px 0;
   text-align: left;
   vertical-align: top;
}

.ace-theme table th,
.ace-theme table th * {
   font-family: var(--font-tertiary);
   font-size: 18px;
   font-weight: 400;
   line-height: 20px;
   letter-spacing: 1px;
   text-transform: uppercase;
   color: rgba(var(--black-rgb), 50%);
   text-align: left;
}

.ace-theme table tr th {
   width: 200px;
}

.ace-theme table a {
   text-decoration: underline;
}

.ace-theme table .button {
   width: fit-content !important;
   margin: 5px 5px 5px 0 !important;
}

/*-----------------------------------------------------------------------
   Social Icons
-----------------------------------------------------------------------*/

.ace-theme .social-icons {
   gap: 10px;
}

.ace-theme .social-icons a,
.ace-theme .social-icons div,
.ace-theme .social-icons svg {
   margin: 0;
   display: block;
   text-decoration: none;
}

.ace-theme .social-icons svg {
   width: 20px;
   height: 20px;
}

.ace-theme .social-icons:not(.share-icons) > a,
.ace-theme .social-icons:not(.share-icons) > div {
   width: 44px;
   height: 44px;
   background: var(--bright-blue);
   border-radius: 44px;
   display: flex;
   align-items: center;
   justify-content: center;
}

.ace-theme .social-icons:not(.share-icons) svg {
   color: var(--white);
}

.ace-theme .social-icons:not(.share-icons) > a:hover,
.ace-theme .social-icons:not(.share-icons) > div:hover {
   background: var(--turquoise-blue);
}

.ace-theme .share-icons svg {
   width: 16px;
   height: 16px;
   color: var(--true-blue);
}

.ace-theme .share-icons > a:hover svg,
.ace-theme .share-icons > div:hover svg {
   color: var(--navy-blue);
}

.ace-theme .social-icons .has-tooltip .tooltip {
   display: flex;
   align-items: center;
   gap: 10px;
   background: var(--navy-blue);
   width: max-content !important;
   padding: 10px 12px 12px 12px;
}

.ace-theme .social-icons .has-tooltip .tooltip:after {
   border-color: var(--navy-blue) transparent transparent transparent;
}

/*-----------------------------------------------------------------------
   Tooltips
-----------------------------------------------------------------------*/

.ace-theme .has-tooltip {
   position: relative;
   cursor: pointer;
}

.ace-theme .has-tooltip .tooltip {
   background: var(--black);
   padding: 5px 8px;
   border-radius: 4px;
   position: absolute;
   top: 0;
   left: 50%;
   width: auto;
   min-width: 80px;
   white-space: nowrap;
   color: var(--white);
   font-size: 11px;
   line-height: 1.2;
   text-align: center;
   opacity: 0;
   visibility: hidden;
   transform: translate(-50%, -140%);
   transition: var(--transition) all;
}

.ace-theme .has-tooltip .tooltip:after {
   content: '';
   position: absolute;
   top: 100%;
   left: 50%;
   margin-left: -5px;
   border-width: 5px;
   border-style: solid;
   border-color: var(--black) transparent transparent transparent;
}

.ace-theme .has-tooltip:hover .tooltip {
   visibility: visible;
   opacity: 1;
}

/*-----------------------------------------------------------------------
   Tags
-----------------------------------------------------------------------*/

.ace-theme .item-tag {
   padding: 8px 12px;
   background: var(--bright-blue);
   border-radius: 20px;
   color: var(--white);
   font-family: var(--font-secondary);
   font-weight: 600;
   text-transform: uppercase;
   font-size: 12px;
   line-height: 14px;
   width: max-content;
}

/*-----------------------------------------------------------------------
   Popups
-----------------------------------------------------------------------*/

.ace-theme .trigger-popup,
.ace-theme .close-popup {
   cursor: pointer;
   z-index: 20000;
}

.ace-theme .popup-wrap {
   display: none;
}

.ace-theme .popup-overlay {
   position: fixed;
   left: 0;
   top: 0;
   bottom: 0;
   right: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   background: rgba(var(--black-rgb), 80%);
   z-index: 20000000000;
}

/* Containers */

.ace-theme .popup-overlay > *[class^='container'] {
   position: relative;
   overflow-y: auto;
   max-height: 80vh;
   padding: 40px;
   background: var(--white);
}

/* Close Button */

.ace-theme .popup-overlay .close-popup:not(.button) {
   position: absolute;
   right: 0;
   top: 0;
   padding: 20px;
}

.ace-theme .popup-overlay .close-popup svg {
   width: 16px;
   height: 16px;
}

/* Responsive */

@media (max-width: 720px) {
   .ace-theme .popup-overlay > *[class^='container'] {
      padding: 25px;
   }
}

/*-----------------------------------------------------------------------
   Newsletter Popup
-----------------------------------------------------------------------*/

.ace-theme #popup-newsletter .wysiwyg-content {
   max-width: 680px;
   margin: 0 auto 30px;
}

.ace-theme #popup-newsletter #mc_embed_signup {
   padding: 25px;
   background: rgba(var(--turquoise-blue-rgb), 25%);
   border-radius: var(--border-radius-sm);
}

.ace-theme #popup-newsletter #mc_embed_signup .mc-field-wrapper,
.ace-theme #popup-newsletter #mc_embed_signup .mc-field-wrapper ul {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 10px 20px;
}

.ace-theme #popup-newsletter #mc_embed_signup .mc-field-wrapper ul li {
   display: flex;
}

.ace-theme #popup-newsletter #mc_embed_signup .mc-field-group.mc-checkbox-group {
   grid-column: span 2;
}

.ace-theme #popup-newsletter #mc_embed_signup input[type='submit'] {
   margin-top: 25px;
}

/* Responsive */

@media (max-width: 720px) {
   .ace-theme #popup-newsletter #mc_embed_signup .mc-field-group {
      grid-column: span 2;
   }

   .ace-theme #popup-newsletter #mc_embed_signup .mc-field-wrapper,
   .ace-theme #popup-newsletter #mc_embed_signup .mc-field-wrapper ul {
      grid-template-columns: repeat(1, 1fr);
      gap: 10px;
   }
}

/*-----------------------------------------------------------------------
   Tabs
-----------------------------------------------------------------------*/

.block-tabs .badge-apply-now {
   display: block;
   position: absolute;
   top: -60px;
   right: -80px;
   width: 200px;
   height: 200px;
   z-index: 999;
}

.block-tabs .badge-apply-now svg {
   width: 100%;
   height: auto;
}

.ace-theme .tab-navigation {
   display: flex;
   gap: 5px;
   margin-bottom: -1px;
}

.ace-theme .tab-title {
   position: relative;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   padding: 14px 20px;
   font-family: var(--font-tertiary);
   font-size: 18px;
   line-height: 20px;
   letter-spacing: 1px;
   color: var(--white);
   font-weight: 500;
   text-align: center;
   background: var(--black);
   border-top-right-radius: var(--border-radius-sm);
   border-top-left-radius: var(--border-radius-sm);
   transition: var(--transition) all;
   cursor: pointer;
}

.ace-theme .tab-title svg {
   width: 15px;
   height: 15px;
   color: var(--true-blue);
}

.ace-theme .tab-title:after {
   content: '';
   display: block;
   position: absolute;
   width: 4px;
   bottom: -4px;
   left: 0;
   right: 0;
   margin: auto;
   border-top: 4px solid var(--black);
   border-left: 4px solid transparent;
   border-right: 4px solid transparent;
   transition: var(--transition) border;
}

.ace-theme .tab-title:not(.is-active):after {
   border-top-color: transparent;
}

.ace-theme .tab-title:not(.is-active) {
   background: var(--silver);
}

.ace-theme .tab-title:not(.is-active) svg {
   color: var(--white);
}

.ace-theme .tab-content {
   display: none;
   background: var(--white);
   padding: 25px;
   border: 1px solid var(--silver);
   border-radius: var(--border-radius-sm);
   border-top-left-radius: 0;
}

.ace-theme .tab-content.is-active {
   display: block;
}

/* Responsive */

@media (max-width: 720px) {
   .block-tabs .badge-apply-now {
      display: none;
   }

   .ace-theme .tab-title {
      flex: 100%;
      justify-content: flex-start;
   }

   .ace-theme .tab-title:not(:last-child) {
      border-radius: var(--border-radius-sm);
   }

   .ace-theme .tab-title:after {
      display: none;
   }

   .ace-theme .tab-content {
      border-top-right-radius: 0;
   }
}

/*-----------------------------------------------------------------------
   Pagination
-----------------------------------------------------------------------*/

.ace-theme .archive-pagination {
   margin: auto;
   margin-top: 40px;
   width: fit-content;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
}

.ace-theme .archive-pagination a:not(.prev-page, .next-page) {
   width: 50px;
   text-align: center;
   padding: 14px 5px !important;
   font-size: 18px !important;
   font-family: var(--font-tertiary);
   line-height: 20px !important;
   letter-spacing: 1px;
   color: var(--black);
   background: var(--white);
   border: 1px solid var(--white);
   border-radius: var(--border-radius-sm) !important;
}

.ace-theme .archive-pagination a:hover:not(.prev-page, .next-page),
.ace-theme .archive-pagination a.current:not(.prev-page, .next-page) {
   background: var(--true-blue);
   border-color: var(--true-blue);
   color: var(--white);
}

.ace-theme .archive-pagination .prev-page,
.ace-theme .archive-pagination .next-page {
   width: 40px;
   text-align: center;
}

.ace-theme .archive-pagination .prev-page svg,
.ace-theme .archive-pagination .next-page svg {
   width: 20px;
   height: 20px;
}

/*-----------------------------------------------------------------------
   Entry - Default
-----------------------------------------------------------------------*/

.ace-theme *[class^='entry-'] {
   display: block;
   position: relative;
   text-decoration: none;
   transition: var(--transition) all;
}

.ace-theme *[class^='entry-'] .inner-entry-image {
   overflow: hidden;
   border-radius: var(--border-radius-md);
}

.ace-theme *[class^='entry-'] .inner-entry-content {
   padding: 20px 0;
}

.ace-theme *[class^='entry-'] .inner-entry-content > *:not(:last-child) {
   margin: 0 0 10px !important;
}

.ace-theme *[class^='entry-'] .inner-entry-arrow {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 24px;
   height: 24px;
   min-width: 24px;
   min-height: 24px;
   border-radius: 24px;
   background: var(--navy-blue);
}

.ace-theme *[class^='entry-'] .inner-entry-arrow svg {
   width: 12px;
   height: 12px;
   color: var(--sky-blue);
}

/*-----------------------------------------------------------------------
   Block - Content
-----------------------------------------------------------------------*/

.block-wysiwyg-content .flex-main {
   flex: 1;
}

.block-wysiwyg-content .flex-sidebar {
   width: 330px;
   margin-left: 40px;
}

.block-wysiwyg-content .flex-sidebar.sticky-sidebar .sidebar-nav {
   position: sticky;
   top: calc(var(--header-height) + var(--admin-height) + 40px);
}

.block-wysiwyg-content .sidebar-nav h5 {
   margin: 5px 0;
}

.block-wysiwyg-content .sidebar-nav h5,
.block-wysiwyg-content .sidebar-nav h5 * {
   text-decoration: none;
   font-weight: 500 !important;
   line-height: 22px !important;
}

.block-wysiwyg-content .sidebar-nav h5 a:hover {
   text-decoration: underline !important;
}

.block-wysiwyg-content .sidebar-nav hr {
   margin: 20px 0;
   border-color: var(--navy-blue);
}

.block-wysiwyg-content.has-envelope-shape:before {
   content: '';
   display: block;
   position: absolute;
   top: -60px;
   left: 0;
   right: 0;
   margin: auto;
   width: 180px;
   height: 130px;
   transform: rotate(10deg);
   background: url(../img/shape-envelope.svg) 50% no-repeat;
   background-size: contain;
   z-index: 999;
}

/* Responsive */

@media (max-width: 720px) {
   .block-wysiwyg-content.has-envelope-shape:before {
      width: 100px;
      height: 80px;
      top: -35px;
   }

   .block-wysiwyg-content.has-envelope-shape .wysiwyg-content {
      padding: 20px 10px;
   }
}

/*-----------------------------------------------------------------------
   Block - Multicolumn
-----------------------------------------------------------------------*/

.block-multicolumn div[class^='grid-col-'].has-column-background {
   gap: 40px;
}

.block-multicolumn div[class^='grid-col-'].has-column-background div[class^='col-'] {
   padding: 25px;
   background: var(--column-background-color);
   border-radius: var(--border-radius-md);
}

/*-----------------------------------------------------------------------
   Block - Accordion
-----------------------------------------------------------------------*/

.ace-theme .entry-accordion {
   margin: 0;
   height: auto;
   display: block;
   padding: 15px 20px;
   background: var(--white);
   border-radius: var(--border-radius-sm);
   border: 2px solid var(--grey);
}

.ace-theme .entry-accordion .trigger-accordion {
   display: flex;
   align-items: center;
   justify-content: space-between;
   position: relative;
   flex-wrap: nowrap;
   cursor: pointer;
   transition: var(--transition) all;
}

.ace-theme .entry-accordion .trigger-accordion svg {
   width: 16px;
   height: 30px;
   min-width: 16px;
   min-height: 30px;
   margin-left: 10px;
}

.ace-theme .entry-accordion.is-active .trigger-accordion svg {
   transform: rotate(135deg);
}

.ace-theme .entry-accordion .wysiwyg-content {
   display: none;
}

.ace-theme .entry-accordion .wysiwyg-content > :first-child {
   margin-top: 10px !important;
}

/*-----------------------------------------------------------------------
   Block - Image Gallery
-----------------------------------------------------------------------*/

.block-image-gallery .carousel-gallery img {
   width: auto;
   height: 220px;
}

.block-image-gallery .carousel-gallery .swiper-nav-prev {
   left: 20px;
}

.block-image-gallery .carousel-gallery .swiper-nav-next {
   right: 20px;
}

/*-----------------------------------------------------------------------
   Block - Hero Banner
-----------------------------------------------------------------------*/

.block-hero-banner {
   overflow: hidden;
}

.block-hero-banner .hero-banner-wrap {
   position: relative;
   width: 1440px;
   height: auto;
   min-height: 800px;
   margin: auto;
   display: flex;
   justify-content: center;
   align-items: center;
   padding-bottom: 60px;
}

.block-hero-banner .carousel-hero-banner {
   margin: 0;
   max-width: 560px;
}

.block-hero-banner .carousel-hero-banner .swiper-pagination {
   justify-content: flex-start;
}

.block-hero-banner .carousel-hero-banner .swiper-pagination span {
   background: var(--white);
}

.block-hero-banner .banner-badge svg,
.block-hero-banner div[class^='banner-shape'] svg {
   width: 100%;
   height: auto;
}

.block-hero-banner .banner-image,
.block-hero-banner .banner-badge,
.block-hero-banner div[class^='banner-shape'] {
   position: absolute;
   pointer-events: none;
   z-index: 9;
}

.block-hero-banner .banner-image {
   overflow: hidden;
   width: 880px;
   right: -180px;
   bottom: 70px;
   aspect-ratio: 1 / 1;
   border-radius: 50%;
   background: var(--white);
}

.block-hero-banner .banner-image .background-image {
   top: 130px;
}

.block-hero-banner .banner-badge {
   width: 230px;
   height: 230px;
   bottom: 100px;
   right: 550px;
   z-index: 99;
}

.block-hero-banner .banner-shape-sm-1 {
   width: 320px;
   height: 320px;
   bottom: 20px;
   left: -180px;
}

.block-hero-banner .banner-shape-sm-2 {
   width: 200px;
   height: 200px;
   top: -150px;
   right: 400px;
}

.block-hero-banner .banner-shape-lg-1 {
   width: 580px;
   height: 580px;
   top: -420px;
   left: 360px;
}

.block-hero-banner .banner-shape-lg-2 {
   width: 290px;
   height: 290px;
   bottom: 180px;
   right: -220px;
}

.block-hero-banner .banner-shape-xl {
   width: 960px;
   left: -100px;
   bottom: 90px;
   z-index: 0 !important;
}

/* Responsive */

@media (max-width: 860px) {
   .block-hero-banner .hero-banner-wrap {
      width: 100%;
      min-height: 600px;
   }

   .block-hero-banner .banner-image {
      width: 400px;
      right: -90px;
      top: -150px;
      bottom: auto;
   }

   .block-hero-banner .banner-image .background-image {
      top: 150px;
   }

   .block-hero-banner .banner-badge {
      width: 160px;
      height: 160px;
      bottom: 40px;
      right: 30px;
   }

   .block-hero-banner .banner-shape-sm-1 {
      width: 90px;
      height: 90px;
      bottom: 50px;
      left: -45px;
   }

   .block-hero-banner .banner-shape-sm-2 {
      width: 90px;
      height: 90px;
      top: -55px;
      right: 240px;
   }

   .block-hero-banner .banner-shape-lg-1 {
      width: 280px;
      height: 280px;
      top: -200px;
      right: 240px;
      left: auto;
   }

   .block-hero-banner .banner-shape-lg-2 {
      width: 160px;
      height: 160px;
      top: 140px;
      right: -110px;
   }

   .block-hero-banner .banner-shape-xl {
      width: 1800px;
      left: -560px;
      bottom: 30px;
      z-index: 0;
      right: auto;
      animation: none;
   }
}

@media (max-width: 640px) {
   .block-hero-banner .hero-banner-wrap {
      padding-top: 250px;
      padding-bottom: 150px;
      align-items: flex-start;
   }

   .block-hero-banner div[class^='container'] {
      margin: 0 auto;
   }

   .block-hero-banner .banner-badge {
      bottom: 0;
   }
}

/*-----------------------------------------------------------------------
   Block - Page Banner
-----------------------------------------------------------------------*/

.block-page-banner {
   overflow: hidden;
}

.block-page-banner .page-banner-wrap {
   position: relative;
   width: 1440px;
   height: auto;
   min-height: 520px;
   margin: auto;
   display: flex;
   justify-content: center;
   align-items: center;
   padding-bottom: 60px;
}

.block-page-banner .wysiwyg-content {
   /* max-width: 560px; */
   max-width: 600px;
}

.block-page-banner .banner-badge svg,
.block-page-banner div[class^='banner-shape'] svg {
   width: 100%;
   height: auto;
}

.block-page-banner .banner-image,
.block-page-banner .banner-badge,
.block-page-banner div[class^='banner-shape'] {
   position: absolute;
   pointer-events: none;
   z-index: 9;
}

.block-page-banner .banner-badge {
   width: 230px;
   height: 230px;
   right: 320px;
   bottom: 0;
   z-index: 99;
}

.block-page-banner .banner-image {
   overflow: hidden;
   top: -130px;
   right: -100px;
   width: 620px;
   aspect-ratio: 1 / 1;
   border-radius: 50%;
   background: var(--turquoise-blue);
}

.block-page-banner .banner-image .background-image {
   top: 130px;
}

.block-page-banner .banner-shape-sm {
   width: 260px;
   height: 260px;
   top: 190px;
   left: -190px;
}

.block-page-banner .banner-shape-lg {
   width: 460px;
   height: 460px;
   top: -120px;
   right: 300px;
}

.block-page-banner .background-shape {
   pointer-events: none;
   background-size: 1820px;
   background-position: center bottom !important;
}

/* Simple Banner */

.block-simple-page-banner .wysiwyg-content {
   max-width: 760px;
}

.block-simple-page-banner .banner-shape-lg,
.block-simple-page-banner .banner-shape-lg svg {
   width: 500px;
   height: 500px;
}

.block-simple-page-banner .banner-shape-lg {
   top: -100px;
   right: -100px;
}

.block-simple-page-banner .banner-badge {
   right: 200px;
   bottom: 40px;
}

/* Responsive */

@media (max-width: 860px) {
   .block-page-banner .page-banner-wrap {
      width: 100%;
      min-height: 600px;
   }

   .block-page-banner .banner-image {
      width: 400px;
      right: -90px;
      top: -150px;
      bottom: auto;
   }

   .block-page-banner .banner-image .background-image {
      top: 150px;
   }

   .block-page-banner .banner-badge {
      width: 160px;
      height: 160px;
      bottom: 0;
      right: 30px;
   }

   .block-page-banner .banner-shape-lg {
      width: 280px;
      height: 280px;
      top: -180px;
      right: 270px;
      left: auto;
   }

   .block-page-banner .banner-shape-sm {
      width: 90px;
      height: 90px;
      top: auto;
      bottom: 20px;
      left: -45px;
   }

   .block-page-banner .background-shape {
      background-size: cover;
      background-position: center bottom 60px !important;
   }
}

@media (max-width: 640px) {
   .block-page-banner .page-banner-wrap {
      padding-top: 250px;
      padding-bottom: 150px;
      align-items: flex-start;
   }
}

/*-----------------------------------------------------------------------
   Block - Split Content
-----------------------------------------------------------------------*/

/* Responsive */

@media (max-width: 860px) {
   .block-split-content .col-content {
      order: 9;
   }

   .block-split-content .col-image {
      order: 1;
   }
}

/*-----------------------------------------------------------------------
   Block - About
-----------------------------------------------------------------------*/

.block-about .block-background-pattern {
   background-image: url(../img/pattern-6.svg);
   background-position: right;
   overflow: hidden;
}

.block-about div[class*='col-'] svg {
   max-width: 100%;
}

/* Responsive */

@media (max-width: 860px) {
   .block-about .grid-col-2 {
      gap: 0;
   }

   .block-about div[class*='col-'] svg {
      width: 200px;
      height: auto;
      margin: -50px 0 0 auto;
      display: block;
   }
}

@media (max-width: 550px) {
   .block-about div[class*='col-'] svg {
      max-width: 170px;
      width: 40%;
      margin: -60px -20px 0 auto;
   }
}

/*-----------------------------------------------------------------------
   Block - Our Team
-----------------------------------------------------------------------*/

.block-team .team-filter {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 20px;
   padding: 20px 0;
   border-bottom: 1px solid var(--true-blue);
   width: fit-content;
   margin: 0 auto 60px;
}

.block-team .team-filter h6 {
   cursor: pointer;
   transition: var(--transition) color;
}

.block-team .team-filter h6:hover,
.block-team .team-filter h6.is-active {
   color: var(--true-blue);
}

.block-team .team-filter span:last-child {
   display: none;
}

.block-team .listing-team.grid-col-3 {
   gap: 30px;
}

.ace-theme .entry-team {
   aspect-ratio: 275 / 415;
   overflow: hidden;
   border-radius: var(--border-radius-lg);
   border: 1px solid var(--entry-background-colour);
}

.ace-theme .entry-team .inner-entry-icon,
.ace-theme .entry-team .inner-entry-icon img {
   width: 65px;
   height: 65px;
   margin: 0 auto;
}

.ace-theme .entry-team .text-default .inner-entry-icon img {
   filter: invert(1);
}

.ace-theme .entry-team .inner-entry-content,
.ace-theme .entry-team .inner-entry-preview {
   height: 100%;
   padding: 20px;
}

.ace-theme .entry-team .inner-entry-content {
   background: var(--grey);
   position: absolute;
   top: 100%;
   left: 0;
   right: 0;
   z-index: 9;
   border-top-left-radius: calc(var(--border-radius-lg) - 1px);
   border-top-right-radius: calc(var(--border-radius-lg) - 1px);
   overflow: auto;
   scrollbar-width: 0px;
   transition: var(--transition) top;
}

.ace-theme .entry-team:hover .inner-entry-content {
   top: 0;
}

.ace-theme .entry-team .inner-entry-preview {
   background: var(--entry-background-colour);
   display: flex;
   align-items: center;
   justify-content: center;
   text-align: center;
}

.ace-theme .entry-team .inner-entry-preview .h6 {
   margin: 15px auto;
}

.ace-theme .entry-team .inner-entry-content h5,
.ace-theme .entry-team .inner-entry-preview h5 {
   margin: 3px 0 0 !important;
   line-height: 1.2 !important;
   font-weight: 400 !important;
}

.ace-theme .entry-team .inner-entry-content h3 {
   margin: 0 0 10px;
}

.ace-theme .entry-team .inner-entry-content p {
   margin: 10px 0 0;
}

/*-----------------------------------------------------------------------
   Block - Values
-----------------------------------------------------------------------*/

.block-values .entry-value {
   box-shadow: var(--box-shadow);
   border-radius: var(--border-radius-md);
   overflow: hidden;
}

.block-values .entry-value .entry-image {
   border-radius: 0;
   border-bottom-left-radius: 0;
   border-bottom-right-radius: 0;
}

.block-values .entry-value .entry-title {
   padding: 15px;
   text-align: center;
   background: var(--white);
}

.block-values .entry-value .entry-title h5 {
   font-size: 13px;
}

.block-values .entry-value .entry-details {
   background: var(--bright-blue);
   position: absolute;
   padding: 20px;
   height: 100%;
   top: 100%;
   left: 0;
   right: 0;
   z-index: 9;
   border-top-left-radius: var(--border-radius-md);
   border-top-right-radius: var(--border-radius-md);
   transition: var(--transition) top;
}

.block-values .entry-value:hover .entry-details {
   top: 0;
}

.block-values .entry-value .entry-details h5 {
   padding-bottom: 10px;
   margin-bottom: 10px;
   border-bottom: 1px solid var(--sky-blue);
}

/*-----------------------------------------------------------------------
   Block - Text Marquee
-----------------------------------------------------------------------*/

.block-text-marquee .carousel-marquee .swiper-wrapper {
   transition-timing-function: linear !important;
}

/*-----------------------------------------------------------------------
   Block - Key Facts
-----------------------------------------------------------------------*/

.block-key-facts .block-setting-background-colour {
   background-image: url(../img/pattern-7.svg);
   background-repeat: no-repeat;
   background-position: bottom;
   background-size: cover;
   background-attachment: fixed;
}

.block-key-facts div[class^='container'].flex-layout {
   justify-content: space-between;
}

.block-key-facts .col-1 {
   width: 370px;
}

.block-key-facts .col-2 {
   width: calc(100% - 370px - 80px);
}

.block-key-facts .entry-fact-slide {
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
   width: calc(100% - 120px);
   margin: auto;
   padding: 30px;
   text-align: center;
   background: var(--white);
   border-radius: var(--border-radius-md);
}

.block-key-facts .swiper .swiper-nav-prev,
.block-key-facts .swiper .swiper-nav-next {
   position: absolute;
   top: calc(50% - 20px);
   z-index: 99;
}

.block-key-facts .swiper .swiper-nav-prev {
   left: 0;
}

.block-key-facts .swiper .swiper-nav-next {
   right: 0;
}

/* Responsive */

@media (max-width: 920px) {
   .block-key-facts div[class^='container'].flex-layout {
      flex-wrap: wrap;
      justify-content: center;
      gap: 30px;
   }

   .block-key-facts .col-1 {
      text-align: center;
      max-width: 500px;
   }

   .block-key-facts .col-1,
   .block-key-facts .col-2 {
      width: 100%;
   }
}

/*-----------------------------------------------------------------------
   Block - Checklist
-----------------------------------------------------------------------*/

.block-checklist .listing-checklist {
   gap: 20px;
}

.block-checklist .entry-checkmark {
   display: flex;
   gap: 15px;
   padding: 15px 25px 15px 15px;
   border-radius: 40px;
   background: var(--white);
}

.block-checklist .entry-checkmark svg {
   color: var(--bright-blue);
}

/*-----------------------------------------------------------------------
   Block - Icon Grid
-----------------------------------------------------------------------*/

.ace-theme .entry-icon {
   display: flex;
}

/* Style 1 */

.ace-theme .listing-icons.style-1 .entry-icon {
   flex-direction: column;
}

.ace-theme .listing-icons.style-1 .entry-icon .inner-entry-icon {
   width: 100px;
   height: 100px;
   border-radius: 100px;
   display: flex;
   align-items: center;
   justify-content: center;
   background: var(--navy-blue);
   margin: 0 auto -50px;
   z-index: 9;
}

.ace-theme .listing-icons.style-1 .entry-icon .inner-entry-icon img {
   max-width: 65px;
   max-height: 65px;
}

.ace-theme .listing-icons.style-1 .entry-icon .inner-entry-content {
   text-align: center;
   flex: 1;
   padding: 70px 30px 30px;
   background: var(--white);
   border-radius: var(--border-radius-md);
}

.ace-theme .listing-icons.style-1 .entry-icon .inner-entry-content hr {
   display: none;
}

/* Style 2 */

.ace-theme .listing-icons.style-2 {
   gap: 40px;
}

.ace-theme .entry-icon .inner-entry-icon img {
   max-width: 70px;
   max-height: 70px;
}

.ace-theme .listing-icons.style-2 .entry-icon .inner-entry-content {
   margin-left: 20px;
   padding: 10px 0;
}

.ace-theme .listing-icons.style-2 .entry-icon .inner-entry-content h6 {
   font-family: var(--font-primary);
   font-size: 22px;
   font-weight: 700;
   letter-spacing: 0;
   color: var(--navy-blue);
}

.ace-theme .listing-icons.style-2 .entry-icon .inner-entry-content hr {
   border-color: var(--navy-blue);
}

/* Responsive */

@media (max-width: 720px) {
   .ace-theme .listing-icons.style-2 {
      gap: 20px;
   }
}

/*-----------------------------------------------------------------------
   Block - Timeline
-----------------------------------------------------------------------*/

.block-timeline .listing-timeline .anchor-line {
   display: block;
   position: absolute;
   width: 5px;
   top: 0;
   bottom: 100%;
   background: var(--navy-blue);
   left: 0;
   right: 0;
   margin: auto;
   transition: var(--transition) bottom;
}

.block-timeline .listing-timeline,
.block-timeline .entry-event {
   position: relative;
}

.block-timeline .entry-event:not(:last-child) {
   margin-bottom: 100px;
}

.block-timeline .entry-event .inner-entry-anchor {
   display: flex;
   align-items: center;
   justify-content: center;
   position: absolute;
   left: 0;
   right: 0;
   top: 20px;
   margin: auto;
   width: 60px;
   height: 60px;
   border-radius: 60px;
   background: var(--silver);
   transition: var(--transition) background;
}

.block-timeline .entry-event.is-visible .inner-entry-anchor {
   background: var(--navy-blue);
}

.block-timeline .entry-event .inner-entry-anchor img {
   width: 30px;
   height: 30px;
}

.block-timeline .entry-event .grid-col-2 {
   gap: 100px;
   align-items: flex-start;
}

.block-timeline .entry-event .inner-entry-image {
   border-radius: var(--border-radius-lg);
}

.block-timeline .entry-event .sidebar-nav,
.block-timeline .entry-event .sidebar-nav:before {
   transition: var(--transition) border-color;
}

.block-timeline .entry-event:not(.is-visible) .sidebar-nav {
   border-color: var(--silver);
}

.block-timeline .entry-event:not(.is-visible) .sidebar-nav:before {
   border-color: transparent;
}

/* Responsive */

@media (max-width: 860px) {
   .block-timeline .listing-timeline .anchor-line {
      left: 20px;
      right: auto;
   }

   .block-timeline .entry-event {
      padding-left: 60px;
   }

   .block-timeline .entry-event .col-1 {
      display: none;
   }

   .block-timeline .entry-event .inner-entry-image {
      margin-bottom: 25px;
      display: block;
   }

   .block-timeline .entry-event .inner-entry-anchor {
      right: auto;
      width: 45px;
      height: 45px;
   }
}

/*-----------------------------------------------------------------------
   Block - Course Feed
-----------------------------------------------------------------------*/

.block-course-feed form.course-search-form {
   display: flex;
   flex-wrap: nowrap;
   gap: 15px;
}

/* Course Default */

.ace-theme .entry-course,
.ace-theme .entry-course .inner-entry-content {
   height: 100%;
   min-height: 240px;
}

.ace-theme .entry-course .inner-entry-content {
   position: relative;
   padding: 40px;
   background: var(--white);
   border-radius: var(--border-radius-lg);
   transition: var(--transition) background;
}

.ace-theme .entry-course .inner-entry-content p {
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 3;
   overflow: hidden;
}

.ace-theme .entry-course .inner-entry-arrow {
   width: 44px;
   height: 44px;
   border-radius: 44px;
   position: absolute;
   top: -10px;
   right: -10px;
   z-index: 99;
}

.ace-theme .entry-course .inner-entry-arrow svg {
   width: 16px;
   height: 16px;
}

/* .ace-theme .entry-course .inner-entry-content {
   position: relative;
   aspect-ratio: 110 / 55;
   width: 100%;
   max-width: 100%;
   clip-path: url(#clippath-course);
   -webkit-clip-path: url(#clippath-course);
   border-radius: 0;
   background-color: var(--white);
   padding: 45px;
   transition: var(--transition) background;
}

.ace-theme .entry-course:hover .inner-entry-content {
   background: #c5eced;
}

.ace-theme .entry-course .inner-entry-arrow {
   aspect-ratio: 1 / 1;
   min-width: auto;
   min-height: auto;
   width: auto;
   height: auto;
   border-radius: 50%;
   background: var(--navy-blue);
   display: flex;
   align-items: center;
   justify-content: center;
   width: 8%;
   position: absolute;
   right: -1%;
   top: -5%;
}

.ace-theme .entry-course .inner-entry-arrow svg {
   width: 40%;
   height: 40%;
} */

/* Course Basic */

.ace-theme .entry-course-basic .inner-entry-title,
.ace-theme .entry-course-basic .inner-entry-image:after {
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
}

.ace-theme .entry-course-basic .inner-entry-title {
   padding: 20px;
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   flex-wrap: nowrap;
   z-index: 9;
}

.ace-theme .entry-course-basic .inner-entry-image:after {
   content: '';
   display: block;
   mix-blend-mode: multiply;
   background: rgba(var(--black-rgb), 20%);
   transition: var(--transition) background;
}

.ace-theme .entry-course-basic:hover .inner-entry-image:after {
   background: rgba(var(--black-rgb), 60%);
}

/* Course Categories */

.ace-theme .listing-course-categories.grid-col-4 {
   gap: 15px;
}

.ace-theme .entry-course-category > svg {
   position: absolute;
}

.ace-theme .entry-course-category .inner-entry-image:after {
   content: '';
   display: block;
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   background: url(../img/shape-course-category-outline.svg) 50% no-repeat;
   background-size: contain;
}

.ace-theme .entry-course-category .inner-entry-image {
   position: relative;
   aspect-ratio: 110 / 70;
   width: 100%;
   max-width: 100%;
   clip-path: url(#clippath-course-category);
   -webkit-clip-path: url(#clippath-course-category);
   border-radius: 0;
}

.ace-theme .entry-course-category .inner-entry-details {
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   background: rgba(var(--black-rgb), 60%);
   z-index: 999;
   padding: 20px;
   display: flex;
   align-items: center;
   justify-content: center;
   text-align: center;
   opacity: 0;
   transition: var(--transition) opacity;
}

.ace-theme .entry-course-category:hover .inner-entry-details {
   opacity: 100%;
}

.ace-theme .entry-course-category .inner-entry-icon,
.ace-theme .entry-course-category .inner-entry-arrow {
   aspect-ratio: 1 / 1;
   border-radius: 50%;
   background: var(--navy-blue);
   display: flex;
   align-items: center;
   justify-content: center;
}

.ace-theme .entry-course-category .inner-entry-icon img,
.ace-theme .entry-course-category .inner-entry-arrow svg {
   width: 60%;
   height: 60%;
}

.ace-theme .entry-course-category .inner-entry-icon {
   width: 17%;
}

.ace-theme .entry-course-category .inner-entry-arrow {
   position: absolute;
   right: 0;
   top: 0;
   width: 8%;
   height: auto;
}

.ace-theme .entry-course-category .inner-entry-arrow svg {
   color: var(--bright-blue);
}

.ace-theme .entry-course-category .inner-entry-title {
   display: flex !important;
   align-items: flex-start;
   margin-top: -11%;
}

.ace-theme .entry-course-category .inner-entry-title span {
   font-weight: 600;
   text-transform: uppercase;
   color: var(--navy-blue);
   padding-top: calc(11% + 10px);
   margin-left: 10px;
   flex: 1;
}

/* Responsive */

@media (min-width: 860px) {
   .block-course-list .listing-courses.grid-col-2 {
      align-items: flex-start;
      gap: 40px 80px;
   }

   .block-course-list .listing-courses .entry-course:nth-child(even) {
      margin-top: -80px;
   }
}

@media (max-width: 860px) {
   .ace-theme .entry-course,
   .ace-theme .entry-course .inner-entry-content {
      min-height: 0;
   }

   .ace-theme .entry-course .inner-entry-content {
      padding: 30px;
   }
}

/*-----------------------------------------------------------------------
   Block - Pathways
-----------------------------------------------------------------------*/

.block-pathways div[class^='container']:after {
   content: '';
   display: block;
   position: absolute;
   left: -100px;
   right: 100px;
   top: 0;
   bottom: 0;
   margin: auto;
   background-image: url(../img/shape-pathways-lg.svg);
   background-position: top right;
   background-repeat: no-repeat;
   background-size: 1200px;
   z-index: -9;
}

.block-pathways .flex-layout {
   gap: 20px;
}

/* Responsive */

@media (min-width: 920px) {
   .block-pathways .flex-layout .col-1 {
      width: 550px;
   }

   .block-pathways .flex-layout .col-2 {
      flex: 1;
   }
}

@media (max-width: 920px) {
   .block-pathways div[class^='container']:after {
      left: -20px;
      right: 30px;
      bottom: 30px;
      background-image: url(../img/shape-pathways-sm.svg);
      background-position: bottom right;
      background-size: 400px;
   }

   .block-pathways .flex-layout {
      justify-content: flex-start;
   }

   .block-pathways .flex-layout {
      flex-direction: column;
   }

   .block-pathways .flex-layout div[class^='col'] {
      width: 100%;
   }
}

/*-----------------------------------------------------------------------
   Block - Apply Now
-----------------------------------------------------------------------*/

.block-apply-now .tab-content .flex-sidebar .button-group {
   flex-direction: column;
}

/* Responsive */

@media (min-width: 860px) {
   .block-apply-now .tab-content .grid-col-2.sidebar-right {
      grid-template-columns: 1fr 250px;
   }
}

@media (max-width: 860px) {
   .block-apply-now .tab-content .product-details tr,
   .block-apply-now .tab-content .product-details td,
   .block-apply-now .tab-content .product-details th {
      display: block;
      width: 100%;
   }

   .block-apply-now .tab-content .product-details th {
      padding-bottom: 0;
   }
}

/*-----------------------------------------------------------------------
   Block - Review List
-----------------------------------------------------------------------*/

.block-review-list form.review-filter {
   max-width: 350px;
   margin: 0 auto;
}

/* Default Order */

.block-review-list .entry-review-row .col-image,
.block-review-list .entry-review-row .col-image img {
   aspect-ratio: 1 / 1;
   object-fit: cover;
}

.block-review-list .entry-review-row .col-image {
   position: relative;
   width: 100%;
}

.block-review-list .entry-review-row .col-image:after {
   content: '';
   display: block;
   position: absolute;
   bottom: 0;
   right: 0;
   width: 140px;
   height: 140px;
   opacity: 20%;
}

.block-review-list .entry-review-row .col-image,
.block-review-list .entry-review-row .col-image:after {
   background: url(../img/circle-sky-blue.svg) 50% no-repeat;
   background-size: contain;
}

.block-review-list .entry-review-row .col-image img {
   margin: 30px;
   width: calc(100% - 60px);
   border-radius: 50%;
}

.block-review-list .entry-review-row .wysiwyg-content h6 {
   margin: 30px 0 10px !important;
}

/* Reversed Order */

.block-review-list .entry-review-row.row-reversed .col-image {
   order: 9;
}

.block-review-list .entry-review-row.row-reversed .col-image,
.block-review-list .entry-review-row.row-reversed .col-image:after {
   background: url(../img/circle-turquoise-blue.svg) 50% no-repeat;
   background-size: contain;
}

.block-review-list .entry-review-row.row-reversed .col-image:after {
   right: auto;
   left: 0;
}

.block-review-list .entry-review-row.row-reversed .col-content {
   order: 1;
}

/*-----------------------------------------------------------------------
   Block - Review Feed
-----------------------------------------------------------------------*/

.block-review-feed .background-shape,
.block-review-feed .entry-review-slide {
   margin: auto;
   width: calc(100% - 120px) !important;
}

.block-review-feed .background-shape {
   position: absolute;
   left: 0;
   right: 0;
   top: 40px;
   bottom: 0;
   z-index: 0;
}

.block-review-feed .background-shape svg {
   width: 100%;
   height: 100%;
}

.block-review-feed .entry-review-slide {
   position: relative;
   padding: 0 80px 50px;
   z-index: 9;
}

.block-review-feed .entry-review-slide .inner-entry-image {
   margin-top: -40px;
   margin: 0 auto 30px;
   width: 140px;
   height: 140px;
   background: url(../img/circle-turquoise-blue.svg) 50% no-repeat;
   background-size: contain;
}

.block-review-feed .entry-review-slide .inner-entry-image img {
   width: 120px;
   height: 120px;
   aspect-ratio: 1 / 1;
   object-fit: cover;
   border-radius: 120px;
   margin: 10px;
}

.block-review-feed .entry-review-slide .inner-entry-content > p {
   width: 100%;
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 5;
   overflow: hidden;
   margin-bottom: 30px !important;
}

.block-review-feed .button-group {
   margin-top: 40px;
}

/* Responsive */

@media (max-width: 550px) {
   .block-review-feed .background-shape,
   .block-review-feed .entry-review-slide {
      margin: auto;
      width: 100% !important;
   }

   .block-review-feed .entry-review-slide {
      padding: 0 50px 50px;
   }

   .block-review-feed .entry-review-slide .inner-entry-image {
      margin: 0 auto;
   }
}

/*-----------------------------------------------------------------------
   Block - Featured Posts
-----------------------------------------------------------------------*/

.block-featured-posts.block-simple-page-banner .wysiwyg-content {
   max-width: 600px;
}

.block-featured-posts.block-simple-page-banner .banner-image .swiper-carousel-wrap,
.block-featured-posts.block-simple-page-banner .carousel-featured-posts-img {
   width: 100%;
   height: 100%;
}

.block-featured-posts .carousel-featured-posts .swiper-pagination {
   justify-content: flex-start;
}

.block-featured-posts .carousel-featured-posts .swiper-pagination span {
   background: var(--white);
}

/* Responsive */

@media (min-width: 860px) {
   .block-featured-posts.block-simple-page-banner .banner-shape-lg,
   .single-post .block-simple-page-banner .banner-shape-lg {
      top: -160px;
      right: -210px;
      width: 320px;
      height: 320px;
   }

   .block-featured-posts.block-simple-page-banner .banner-badge,
   .single-post .block-simple-page-banner .banner-badge {
      right: 350px;
      bottom: 0;
   }
}

/*-----------------------------------------------------------------------
   Block - Post Feed
-----------------------------------------------------------------------*/

.block-post-feed form.post-filter-form {
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
}

.block-post-feed form.post-filter-form select,
.block-post-feed form.post-filter-form .search-input {
   max-width: 280px;
   width: 100%;
}

.block-post-feed form.post-filter-form .search-input > input[type='text'] {
   padding: 10px 30px 10px 0 !important;
}

.block-post-feed form.post-filter-form .search-input > input[type='submit'] {
   height: 41px;
   background-size: 20px;
}

.ace-theme .entry-post-basic .inner-entry-image {
   border-radius: var(--border-radius-lg);
}

.ace-theme .entry-post-basic:hover .background-image {
   transform: scale(102%);
}

.ace-theme .entry-post-basic .inner-entry-title {
   padding: 5px 0;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 10px;
   flex-wrap: nowrap;
   z-index: 9;
}

.ace-theme .entry-post-full .item-tag {
   position: absolute;
   right: 15px;
   top: 15px;
   z-index: 99;
}

.ace-theme .entry-post-full {
   border-radius: var(--border-radius-lg) !important;
   overflow: hidden;
   background: var(--white);
}

.ace-theme .entry-post-full,
.ace-theme .entry-post-full .inner-entry-content {
   display: flex;
   flex-direction: column;
}

.ace-theme .entry-post-full .inner-entry-content {
   flex: 1;
   padding: 25px;
}

.ace-theme .listing-posts .entry-post-full .inner-entry-content hr {
   margin-top: auto !important;
}

.ace-theme .entry-post-full .inner-entry-image {
   border-radius: 0;
}

.ace-theme *[class^='entry-post-'] .background-image {
   transition: var(--transition) transform;
}

.ace-theme *[class^='entry-post-']:hover .background-image {
   transform: scale(102%);
}

/* Responsive */

@media (max-width: 640px) {
   .block-post-feed form.post-filter-form {
      flex-wrap: wrap;
      gap: 10px;
   }

   .block-post-feed form.post-filter-form select,
   .block-post-feed form.post-filter-form .search-input {
      max-width: 100%;
   }
}

/*-----------------------------------------------------------------------
   Block - Logo Carousel
-----------------------------------------------------------------------*/

.block-logo-carousel .carousel-logos .swiper-wrapper {
   transition-timing-function: linear !important;
}

.block-logo-carousel .swiper-slide,
.block-logo-carousel .swiper-slide img {
   max-width: 250px !important;
   height: 60px !important;
   width: auto;
   object-fit: cover;
}

/*-----------------------------------------------------------------------
   Block - Campus Map
-----------------------------------------------------------------------*/

.block-campus-map div[class^='container'] {
   min-height: 500px;
}

.block-campus-map .grid-col-2 {
   grid-template-columns: 0.7fr 1fr;
}

.block-campus-map .background-image {
   width: calc(45% - 40px);
   right: auto;
   background-size: contain !important;
   background-position: right center !important;
   background-repeat: no-repeat !important;
}

.block-campus-map .listing-campus-links {
   margin: 15px 0;
}

.block-campus-map .entry-campus-link {
   display: flex;
   align-items: center;
   gap: 10px;
   padding: 10px 0;
}

.block-campus-map .entry-campus-link:not(:last-child) {
   border-bottom: 1px solid var(--sky-blue);
}

.block-campus-map .entry-campus-link > svg {
   width: 28px;
   height: 28px;
   color: var(--true-blue);
}

.block-campus-map .entry-campus-link > p {
   font-size: 18px !important;
   font-weight: 700 !important;
   flex: 1;
}

/* Responsive */

@media (max-width: 920px) {
   .block-campus-map div[class^='container'] {
      min-height: 0;
   }

   .block-campus-map .grid-col-2 {
      display: block !important;
   }

   .block-campus-map .background-image {
      display: none;
   }
}

@media (max-width: 640px) {
   .block-campus-map .entry-campus-link {
      flex-wrap: wrap;
      padding: 15px 0;
   }

   .block-campus-map .entry-campus-link .button-group {
      flex: 100%;
      margin-top: 10px;
   }
}

/*-----------------------------------------------------------------------
   Block - Campus List
-----------------------------------------------------------------------*/

.block-campus-list .entry-campus {
   display: flex;
   background: var(--white);
   border-radius: var(--border-radius-lg);
   overflow: hidden;
}

.block-campus-list .entry-campus .inner-entry-image,
.block-campus-list .entry-campus .inner-entry-map-embed {
   background: var(--grey);
   width: 35%;
   min-width: 300px;
   min-height: 450px;
   border-top-right-radius: 0;
   border-bottom-right-radius: 0;
}

.block-campus-list .entry-campus .google-map-embed {
   width: 100%;
   height: 100%;
}

.block-campus-list .entry-campus .inner-entry-content {
   flex: 1;
   padding: 35px;
}

.block-campus-list .entry-campus .inner-entry-content h3 {
   padding-bottom: 10px;
   border-bottom: 1px solid var(--sky-blue);
}

.block-campus-list .entry-campus .inner-entry-content .grid-col-2 {
   margin-top: 20px;
}

.block-campus-list .entry-campus .inner-entry-detail {
   margin: 0 0 20px;
   display: flex;
   gap: 10px;
}

.block-campus-list .entry-campus .inner-entry-detail svg {
   width: 20px;
   min-width: 20px;
   height: 20px;
   color: var(--bright-blue);
}

.block-campus-list .entry-campus .inner-entry-detail p {
   margin-bottom: 5px;
}

.block-campus-list .entry-campus .inner-entry-detail p:nth-child(3) {
   margin-top: 15px;
}

/* Responsive */

@media (max-width: 720px) {
   .block-campus-list .entry-campus {
      flex-direction: column;
   }

   .block-campus-list .entry-campus .grid-col-2 {
      gap: 0;
   }

   .block-campus-list .entry-campus .inner-entry-image,
   .block-campus-list .entry-campus .inner-entry-map-embed {
      width: 100%;
   }
}

/*-----------------------------------------------------------------------
   Block - Map Embed
-----------------------------------------------------------------------*/

.block-map-embed .google-map-embed {
   width: 100%;
   height: 25vw;
   min-height: 420px;
}

/*-----------------------------------------------------------------------
   Block - Contact Form
-----------------------------------------------------------------------*/

/* Responsive */

@media (min-width: 860px) {
   .block-contact-form .grid-col-2 {
      grid-template-columns: 1fr 1.25fr;
   }
}

/*-----------------------------------------------------------------------
   Block - 404
-----------------------------------------------------------------------*/

.block-404 .h0 {
   font-size: 200px;
   line-height: 180px;
}

.block-404 p {
   font-size: 18px !important;
}

.block-404 .button-group {
   margin-top: 25px;
}

.block-404 .background-shape {
   width: 500px;
   height: 500px;
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   margin: auto;
   animation: rotate 20s linear infinite;
}

.block-404 .background-shape svg {
   width: 100%;
   height: auto;
}

/* Responsive */

@media (max-width: 720px) {
   .block-404 .h0 {
      font-size: 90px;
      line-height: 90px;
   }

   .block-404 .background-shape {
      max-width: 380px;
      width: 380px;
      max-height: 380px;
      height: 380px;
   }
}

@media (max-width: 550px) {
   .block-404 .background-shape {
      width: 100%;
      height: auto;
      aspect-ratio: 1 / 1;
   }
}

/*-----------------------------------------------------------------------
   Single - Post
-----------------------------------------------------------------------*/

.block-post-content div[class^='container'] {
   padding: 40px 60px;
   background: var(--white);
   border-radius: var(--border-radius-lg);
}

.block-post-content div[class^='container'] > hr {
   margin: 30px 0;
}

.block-post-content .post-tags a {
   text-decoration: underline;
}

/* Responsive */

@media (max-width: 720px) {
   .block-post-content div[class^='container'] {
      padding: 30px;
   }
}

/*-----------------------------------------------------------------------
   Taxonomy - Course Category
-----------------------------------------------------------------------*/

.taxonomy-course-category .block-simple-page-banner img.banner-icon {
   width: 60px;
   height: 60px;
}

.taxonomy-course-category .block-split-content .col-image,
.taxonomy-course-category .block-split-content .col-image img {
   aspect-ratio: 1 / 1;
   object-fit: cover;
}

.taxonomy-course-category .block-split-content .col-image {
   position: relative;
   width: 100%;
   background: url(../img/circle-sky-blue.svg) 50% no-repeat;
   background-size: contain;
}

.taxonomy-course-category .block-split-content .col-image img {
   margin: 30px;
   width: calc(100% - 60px);
   border-radius: 50%;
}

/* Responsive */

@media (min-width: 920px) {
   .taxonomy-course-category .block-pathways div[class^='container']:after {
      left: 0;
      right: -100px;
   }
}

@media (max-width: 860px) {
   .taxonomy-course-category .block-simple-page-banner .page-banner-wrap {
      min-height: 400px;
      padding-top: 100px;
      padding-bottom: 200px;
   }

   .taxonomy-course-category .block-simple-page-banner .banner-shape-lg {
      top: -160px;
      right: -100px;
   }
}
