.elementor-96918 .elementor-element.elementor-element-5df0cda3{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-96918 .elementor-element.elementor-element-5df0cda3:not(.elementor-motion-effects-element-type-background), .elementor-96918 .elementor-element.elementor-element-5df0cda3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-e1ade16 );}.elementor-96918 .elementor-element.elementor-element-5df0cda3:hover::before{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-96918 .elementor-element.elementor-element-11098bd7{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-96918 .elementor-element.elementor-element-11098bd7:hover::before{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-96918 .elementor-element.elementor-element-47b5309a > .elementor-widget-container > .jet-listing-grid > .jet-listing-grid__items, .elementor-96918 .elementor-element.elementor-element-47b5309a > .jet-listing-grid > .jet-listing-grid__items{--columns:3;}.elementor-96918 .elementor-element.elementor-element-47b5309a > .elementor-widget-container{padding:0px 0px 0px 0px;}@media(max-width:1080px){.elementor-96918 .elementor-element.elementor-element-5df0cda3{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-96918 .elementor-element.elementor-element-11098bd7{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-96918 .elementor-element.elementor-element-47b5309a > .elementor-widget-container > .jet-listing-grid > .jet-listing-grid__items, .elementor-96918 .elementor-element.elementor-element-47b5309a > .jet-listing-grid > .jet-listing-grid__items{--columns:2;}}@media(max-width:767px){.elementor-96918 .elementor-element.elementor-element-47b5309a > .elementor-widget-container > .jet-listing-grid > .jet-listing-grid__items, .elementor-96918 .elementor-element.elementor-element-47b5309a > .jet-listing-grid > .jet-listing-grid__items{--columns:2;}}/* Start custom CSS for jet-listing-grid, class: .elementor-element-47b5309a *//* ===== Editor / No-JS fallbacks ===== */
.elementor-editor-active #award_grid .jet-listing-grid__item,
#award_grid:not(.js-ready) .jet-listing-grid__item {
  opacity: 1 !important;
  transform: none !important;
}

/* ===== Vars ===== */
#award_grid {
  --flip-duration: 500ms;
  --flip-ease: cubic-bezier(.2,.8,.2,1);
  --fade-duration: 600ms;
  --fade-ease: ease-out;
  --fade-translate: 20px;
}

/* ===== Fade-in on appear ===== */
#award_grid .jet-listing-grid__item {
  opacity: 0;
  transform: translateY(var(--fade-translate));
  transition: opacity var(--fade-duration) var(--fade-ease),
              transform var(--fade-duration) var(--fade-ease);
  will-change: opacity, transform;
}
#award_grid .jet-listing-grid__item.fade-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  #award_grid .jet-listing-grid__item { transition: none; transform: none; opacity: 1; }
}

/* ===== 1:1 tiles ===== */
#award_grid .bg-100 { position: relative; aspect-ratio: 1/1; overflow: hidden; }
@supports not (aspect-ratio: 1/1) {
  #award_grid .bg-100 { height: 0; padding-bottom: 100%; }
}
#award_grid .bg-100 .ratio-media,
#award_grid .bg-100 .ratio-media-one-by-one {
  position: absolute; inset: 0; width: 100%; max-height: 100%; object-fit: cover;
}

/* ===== Flip card core ===== */
/* Perspective lives on the non-rotating parent */
#award_grid .award-card {
  position: relative;
  aspect-ratio: 1/1;
  perspective: 1000px;
  perspective-origin: 50% 50%;
  outline: none;
  isolation: isolate;
}

/* Rotating stage (force block so Elementor flex doesn’t flatten 3D) */
#award_grid .award-card__inner {
  display: block !important;
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  -webkit-transform-style: preserve-3d;
  transition: transform var(--flip-duration) var(--flip-ease);
  overflow: hidden;
  will-change: transform;
}

/* Faces */
#award_grid .award-card__face {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  /* Hide the back sides of faces (not descendants globally) */
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  /* Cross-fade safety so only one can paint */
  opacity: 0;
  transition: opacity 160ms ease;
}

/* Default orientations */
#award_grid .award-card__front { transform: rotateY(0deg); }
#award_grid .award-card__back  { /*transform: rotateY(180deg);*/ background:#111; color:#fff; }

/* Visible state defaults (front visible by default) */
#award_grid .award-card__front { opacity: 1; }

/* Desktop hover flip + keyboard focus; JS toggles .is-flipped for touch */
@media (hover:hover) and (pointer:fine) {
  #award_grid .award-card:hover > .award-card__inner,
  #award_grid .award-card:focus-within > .award-card__inner {
    transform: rotateY(180deg);
  }
  #award_grid .award-card:hover .award-card__front,
  #award_grid .award-card:focus-within .award-card__front { opacity: 0; }
  #award_grid .award-card:hover .award-card__back,
  #award_grid .award-card:focus-within .award-card__back  { opacity: 1; }
}

/* Touch / JS toggle */
#award_grid .award-card.is-flipped > .award-card__inner { transform: rotateY(180deg); }
#award_grid .award-card.is-flipped .award-card__front { opacity: 0; pointer-events: none; }
#award_grid .award-card.is-flipped .award-card__back  { opacity: 1; pointer-events: auto; }

/* Front image sizing */
#award_grid .award-card__front img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  padding: 10%;
  
}

/* Keyboard focus ring */
#award_grid .award-card:focus-visible { box-shadow: 0 0 0 3px rgba(0,123,255,.6); }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  #award_grid .award-card__inner { transition: none; }
}

/* Embeds on the back sometimes need their own layer to paint in 3D */
#award_grid .award-card__back iframe,
#award_grid .award-card__back .wp-embedded-content { display:block; width:100%; height:100%; transform: translateZ(0); }

/* 3D stage */
#award_grid .award-card { perspective: 1000px; }
#award_grid .award-card__inner {
  display: block !important;                 /* avoid flex flattening */
  transform-style: preserve-3d !important;
  -webkit-transform-style: preserve-3d !important;
  transition: transform .5s cubic-bezier(.2,.8,.2,1);
}

/* Flip on hover/click (keep your JS for .is-flipped) */
@media (hover:hover) and (pointer:fine) {
  #award_grid .award-card:hover .award-card__inner { transform: rotateY(180deg); }
}
#award_grid .award-card.is-flipped .award-card__inner { transform: rotateY(180deg); }


/* Front + Back orientations */
#award_grid .award-card__front { transform: rotateY(0); z-index:2; }


/* CRITICAL: let the back's children paint when the stage flips */
#award_grid .award-card__back *{
  -webkit-backface-visibility:visible !important;
  backface-visibility:visible !important;
}

/* Helpful for embeds on the back */
#award_grid .award-card__back iframe,
#award_grid .award-card__back .wp-embedded-content{
  display:block; width:100%; height:100%; transform: translateZ(180deg);
}

/* Make the back face a vertical flex container that fills the card */
#award_grid .award-card__back {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;   /* we'll control vertical placement via children */
  gap: 12px;                     /* optional spacing between text + button */
  padding: 40px 20px;       /* adjust to taste */
}

/* Fix for Elementor flex containers so they can shrink properly in a column */
#award_grid .award-card__back > .e-con { 
  min-height: 0;
}

/* COPY AREA (first child) — take remaining height & center content vertically */
#award_grid .award-card__back > :first-child {
  flex: 1 1 auto;                /* consume available vertical space */
  display: flex;                 /* so we can center the text inside */
  align-items: center;           /* vertical center */
  justify-content: center;       /* horizontal center; change to flex-start if you prefer left */
  text-align: center;            /* center multi-line text */
  overflow: hidden;              /* prevent odd overflow; switch to auto if you want scroll */
}

/* BUTTON AREA (last child) — stick to the bottom */
#award_grid .award-card__back > :last-child {
  margin-top: auto;              /* pushes this block to the bottom */
}

/* Keep Elementor's button alignment but ensure wrapper behaves nicely */
#award_grid .award-card__back .elementor-button-wrapper {
  width: 100%;                   /* let alignment control placement */
  display: flex;
}

/* Respect Elementor per-breakpoint alignment classes:
   - elementor-align-right/left/center already applied on your button widget.
   If you want a consistent default, uncomment one of these:
*/
/* #award_grid .award-card__back .elementor-button-wrapper { justify-content: flex-end; }  right
   #award_grid .award-card__back .elementor-button-wrapper { justify-content: center; }    center
   #award_grid .award-card__back .elementor-button-wrapper { justify-content: flex-start; } left
*/

/* Optional: tighten text sizing on small screens so it doesn't crowd the button */
@media (max-width: 480px) {
  #award_grid .award-card__back .elementor-widget-text-editor {
    font-size: 0.95rem;          /* tweak to taste */
    line-height: 1.35;
  }
}/* End custom CSS */
/* Start custom CSS */div#heading1-title * {
    font-family: 'Aeonik-Light' !important;
}

div#subtitle-one * {
    font-family: 'AeonikMono-Bold' !important;
}

div#clm-hvr {
    min-height: 370px;
}

div#body-text * {
    font-family: 'Aeonik-Regular' !important;
}

div#subtitle-two * {
    font-size: 1.125rem;
    font-family: 'Aeonik-Light' !important;
    color: #DCE3F9;
}

div#number-small * {
    font-family: 'Aeonik-Regular' !important;
    font-size: 2rem !important;
}/* End custom CSS */