.elementor-22 .elementor-element.elementor-element-9d5bca4{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:32px 0px;--row-gap:32px;--column-gap:0px;--overlay-opacity:0.92;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:200px;--padding-bottom:45px;--padding-left:40px;--padding-right:40px;}.elementor-22 .elementor-element.elementor-element-9d5bca4:not(.elementor-motion-effects-element-type-background), .elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://hein.ca/wp-content/uploads/2026/01/HEIN-Reception-Hero-scaled.jpg");background-position:0px -407px;background-repeat:no-repeat;background-size:cover;}.elementor-22 .elementor-element.elementor-element-9d5bca4::before, .elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-background-video-container::before, .elementor-22 .elementor-element.elementor-element-9d5bca4 > .e-con-inner > .elementor-background-video-container::before, .elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-background-slideshow::before, .elementor-22 .elementor-element.elementor-element-9d5bca4 > .e-con-inner > .elementor-background-slideshow::before, .elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-astglobalcolor2 );--background-overlay:'';}.elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-shape-bottom svg, .elementor-22 .elementor-element.elementor-element-9d5bca4 > .e-con-inner > .elementor-shape-bottom svg{width:calc(0 + 1.3px);height:4em;}.elementor-22 .elementor-element.elementor-element-9a058a0{--display:flex;--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-22 .elementor-element.elementor-element-98e9ed5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-98e9ed5{text-align:center;font-family:"Michroma", Sans-serif;font-size:26px;font-weight:900;text-transform:uppercase;letter-spacing:1.9px;word-spacing:7px;color:#FFFFFF;}.elementor-22 .elementor-element.elementor-element-98e9ed5 p{margin-block-end:0px;}.elementor-22 .elementor-element.elementor-element-baa2238{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;--overlay-opacity:0.03;--padding-top:80px;--padding-bottom:96px;--padding-left:40px;--padding-right:40px;}.elementor-22 .elementor-element.elementor-element-baa2238::before, .elementor-22 .elementor-element.elementor-element-baa2238 > .elementor-background-video-container::before, .elementor-22 .elementor-element.elementor-element-baa2238 > .e-con-inner > .elementor-background-video-container::before, .elementor-22 .elementor-element.elementor-element-baa2238 > .elementor-background-slideshow::before, .elementor-22 .elementor-element.elementor-element-baa2238 > .e-con-inner > .elementor-background-slideshow::before, .elementor-22 .elementor-element.elementor-element-baa2238 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://hein.ca/wp-content/uploads/2026/07/HEIN_BluePrint_Background_Blue-scaled-1.webp");--background-overlay:'';background-repeat:no-repeat;background-size:contain;}.elementor-22 .elementor-element.elementor-element-b507788{--display:flex;}.elementor-22 .elementor-element.elementor-element-97ac930{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--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-22 .elementor-element.elementor-element-8dda205{width:100%;max-width:100%;text-align:start;}.elementor-22 .elementor-element.elementor-element-f581005{width:100%;max-width:100%;text-align:start;}.elementor-22 .elementor-element.elementor-element-f581005 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-41fc3d3{width:100%;max-width:100%;text-align:start;}.elementor-22 .elementor-element.elementor-element-41fc3d3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-373ad8c{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--flex-wrap:nowrap;--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-22 .elementor-element.elementor-element-cde264b{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--flex-wrap:nowrap;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-22 .elementor-element.elementor-element-ba84854{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22 .elementor-element.elementor-element-fe675d7 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-fe675d7{text-align:start;}.elementor-22 .elementor-element.elementor-element-ccd5826 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-633c9f4{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;}.elementor-22 .elementor-element.elementor-element-c1901a7 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-c1901a7 .uael-icon-wrap .uael-icon i{font-size:30px;height:30px;width:30px;line-height:30px;text-align:center;color:#EA7600;}.elementor-22 .elementor-element.elementor-element-c1901a7 .uael-icon-wrap .uael-icon{height:30px;width:30px;line-height:30px;}.elementor-22 .elementor-element.elementor-element-c1901a7 .uael-icon-wrap .uael-icon i,
					.elementor-22 .elementor-element.elementor-element-c1901a7 .uael-icon-wrap .uael-icon svg{transform:rotate(0deg);}.elementor-22 .elementor-element.elementor-element-c1901a7 .uael-icon-wrap .uael-icon svg{fill:#EA7600;}.elementor-22 .elementor-element.elementor-element-c1901a7 .uael-infobox-title{font-size:28px;margin:5px 0px 10px 0px;}.elementor-22 .elementor-element.elementor-element-c1901a7 .uael-imgicon-wrap{margin:10px 10px 10px 10px;}.elementor-22 .elementor-element.elementor-element-c1901a7 .uael-infobox-text{margin:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-f1a18de{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;}.elementor-22 .elementor-element.elementor-element-8291b6b{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-22 .elementor-element.elementor-element-8291b6b > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-8291b6b.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-22 .elementor-element.elementor-element-8291b6b .uael-icon-wrap .uael-icon i{font-size:30px;height:30px;width:30px;line-height:30px;text-align:center;color:#EA7600;}.elementor-22 .elementor-element.elementor-element-8291b6b .uael-icon-wrap .uael-icon{height:30px;width:30px;line-height:30px;}.elementor-22 .elementor-element.elementor-element-8291b6b .uael-icon-wrap .uael-icon i,
					.elementor-22 .elementor-element.elementor-element-8291b6b .uael-icon-wrap .uael-icon svg{transform:rotate(0deg);}.elementor-22 .elementor-element.elementor-element-8291b6b .uael-icon-wrap .uael-icon svg{fill:#EA7600;}.elementor-22 .elementor-element.elementor-element-8291b6b .uael-infobox-title{font-size:28px;margin:5px 0px 10px 0px;}.elementor-22 .elementor-element.elementor-element-8291b6b .uael-imgicon-wrap{margin:10px 10px 10px 10px;}.elementor-22 .elementor-element.elementor-element-8291b6b .uael-infobox-text{margin:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-ff60a5b{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;}.elementor-22 .elementor-element.elementor-element-9b87b6c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-9b87b6c .uael-icon-wrap .uael-icon i{font-size:30px;height:30px;width:30px;line-height:30px;text-align:center;color:#EA7600;}.elementor-22 .elementor-element.elementor-element-9b87b6c .uael-icon-wrap .uael-icon{height:30px;width:30px;line-height:30px;}.elementor-22 .elementor-element.elementor-element-9b87b6c .uael-icon-wrap .uael-icon i,
					.elementor-22 .elementor-element.elementor-element-9b87b6c .uael-icon-wrap .uael-icon svg{transform:rotate(0deg);}.elementor-22 .elementor-element.elementor-element-9b87b6c .uael-icon-wrap .uael-icon svg{fill:#EA7600;}.elementor-22 .elementor-element.elementor-element-9b87b6c .uael-infobox-title{font-size:28px;margin:05px 0px 10px 0px;}.elementor-22 .elementor-element.elementor-element-9b87b6c .uael-imgicon-wrap{margin:10px 10px 10px 10px;}.elementor-22 .elementor-element.elementor-element-9b87b6c .uael-infobox-text{margin:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-ab7f51c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--flex-wrap:nowrap;--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-22 .elementor-element.elementor-element-91b1b50 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-22 .elementor-element.elementor-element-91b1b50 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-22 .elementor-element.elementor-element-91b1b50{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-22 .elementor-element.elementor-element-91b1b50 .elementor-icon-list-text{transition:color 0.3s;}.elementor-22 .elementor-element.elementor-element-e40aa52{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:18px 18px;--row-gap:18px;--column-gap:18px;--margin-top:012px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22 .elementor-element.elementor-element-e743e6b{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:flex-end;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--flex-wrap:nowrap;--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-22 .elementor-element.elementor-element-ff04bef{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;--gap:8px 8px;--row-gap:8px;--column-gap:8px;--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-22 .elementor-element.elementor-element-755ff64{text-align:start;}.elementor-22 .elementor-element.elementor-element-754d8e4{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--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-22 .elementor-element.elementor-element-20d752a > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-22 .elementor-element.elementor-element-20d752a iframe{height:460px;filter:brightness( 100% ) contrast( 100% ) saturate( 110% ) blur( 0px ) hue-rotate( 340deg );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-22 .elementor-element.elementor-element-9d5bca4:not(.elementor-motion-effects-element-type-background), .elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px -90px;}.elementor-22 .elementor-element.elementor-element-9d5bca4{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:110px;--padding-bottom:110px;--padding-left:32px;--padding-right:32px;}.elementor-22 .elementor-element.elementor-element-baa2238{--padding-top:64px;--padding-bottom:72px;--padding-left:32px;--padding-right:32px;}.elementor-22 .elementor-element.elementor-element-b507788{--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-22 .elementor-element.elementor-element-373ad8c{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:32px 32px;--row-gap:32px;--column-gap:32px;}.elementor-22 .elementor-element.elementor-element-cde264b{--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}}@media(max-width:767px){.elementor-22 .elementor-element.elementor-element-9d5bca4:not(.elementor-motion-effects-element-type-background), .elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}.elementor-22 .elementor-element.elementor-element-9d5bca4{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:24px;--padding-right:24px;}.elementor-22 .elementor-element.elementor-element-baa2238{--padding-top:48px;--padding-bottom:56px;--padding-left:20px;--padding-right:20px;}.elementor-22 .elementor-element.elementor-element-b507788{--content-width:1200px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-22 .elementor-element.elementor-element-373ad8c{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-22 .elementor-element.elementor-element-cde264b{--width:100%;--padding-top:24px;--padding-bottom:24px;--padding-left:20px;--padding-right:20px;}.elementor-22 .elementor-element.elementor-element-ba84854{--width:100%;}.elementor-22 .elementor-element.elementor-element-e743e6b{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;--gap:16px 16px;--row-gap:16px;--column-gap:16px;}}@media(min-width:768px){.elementor-22 .elementor-element.elementor-element-cde264b{--width:64%;}.elementor-22 .elementor-element.elementor-element-ba84854{--width:36%;}}@media(max-width:1024px) and (min-width:768px){.elementor-22 .elementor-element.elementor-element-cde264b{--width:100%;}.elementor-22 .elementor-element.elementor-element-ba84854{--width:100%;}}/* Start custom CSS for text-editor, class: .elementor-element-98e9ed5 *//* Makes the liquid glass background hug the project title instead of stretching wide */
.elementor-22 .elementor-element.elementor-element-98e9ed5 {
  width: fit-content !important;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  align-self: center;
}

/* Makes the glass effect area size to the text */
.elementor-22 .elementor-element.elementor-element-98e9ed5 > .elementor-widget-container {
  width: fit-content !important;
  max-width: 100%;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 8px 24px !important;
}

/* Removes extra paragraph spacing from the Text Editor widget */
.elementor-22 .elementor-element.elementor-element-98e9ed5 p {
  margin: 0;
}

/* Keeps the title on one line on desktop */
.elementor-22 .elementor-element.elementor-element-98e9ed5 .elementor-widget-container,
.elementor-22 .elementor-element.elementor-element-98e9ed5 .elementor-text-editor,
.elementor-22 .elementor-element.elementor-element-98e9ed5 p {
  white-space: nowrap;
}

/* Allows the title to wrap nicely on mobile */
@media (max-width: 767px) {
  .elementor-22 .elementor-element.elementor-element-98e9ed5 {
    max-width: 92%;
  }

  .elementor-22 .elementor-element.elementor-element-98e9ed5 .elementor-widget-container,
  .elementor-22 .elementor-element.elementor-element-98e9ed5 .elementor-text-editor,
  .elementor-22 .elementor-element.elementor-element-98e9ed5 p {
    white-space: normal;
    text-align: center;
  }
}





/* Project hero title shadow, matching the project card treatment */
.elementor-22 .elementor-element.elementor-element-98e9ed5 p {
  margin: 0;
  color: #ffffff;
  text-shadow:
    0 1px 3px rgba(0, 0, 0, 0.65),
    0 4px 12px rgba(0, 0, 0, 0.45);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d5bca4 *//* =========================================================
   HEIN INNER-PAGE HERO GRADIENT
   RESPONSIVE SHAPE-DIVIDER SAFE VERSION

   Apply directly to the outermost hero container.
   No CSS class or fixed hero height is required.
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-9d5bca4 {
  position: relative;
  isolation: isolate;
  overflow: hidden;

  /* Desktop curve depth */
  --hein-hero-curve-height: 58px;

  /* Match the Contact Main background below */
  --hein-hero-divider-fill: #f7f9fb;
}


/* Disable Elementor's existing overlay */
.elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-background-overlay {
  display: none !important;
}


/* =========================================================
   HEIN BLUE GRADIENT
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-9d5bca4::before {
  content: "";

  position: absolute;
  inset: 0;
  z-index: 1;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(0, 23, 42, 0.94) 0%,
      rgba(0, 48, 87, 0.86) 45%,
      rgba(51, 91, 141, 0.68) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0, 31, 56, 0.08) 0%,
      rgba(0, 31, 56, 0.26) 100%
    );
}


/* =========================================================
   HERO CONTENT
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-9d5bca4 > .e-con-inner {
  position: relative;
  z-index: 2;
}


.elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-element:not(.elementor-shape):not(.elementor-background-overlay) {
  position: relative;
  z-index: 2;
}


/* =========================================================
   SHAPE DIVIDER

   Controls the curve depth at each breakpoint so the
   divider remains visually consistent on tablet and mobile.
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-shape {
  position: absolute !important;
  left: 0 !important;
  z-index: 4 !important;

  display: block !important;

  width: 100% !important;
  height: var(--hein-hero-curve-height) !important;
  max-height: var(--hein-hero-curve-height) !important;

  overflow: hidden !important;
  pointer-events: none;

  line-height: 0;
}


/* =========================================================
   TOP DIVIDER
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-shape-top {
  top: -1px !important;
  bottom: auto !important;
}


/* =========================================================
   BOTTOM DIVIDER
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-shape-bottom {
  top: auto !important;
  bottom: -1px !important;
}


/* =========================================================
   DIVIDER SVG

   Forces the SVG to fill the controlled divider height.
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-shape svg {
  position: relative;

  display: block;

  width: calc(100% + 2px) !important;
  min-width: calc(100% + 2px) !important;

  height: 100% !important;
  max-height: 100% !important;

  left: 50%;

  transform: translateX(-50%);
}


/* Match divider to Contact Main background */
.elementor-22 .elementor-element.elementor-element-9d5bca4 > .elementor-shape .elementor-shape-fill {
  fill: var(--hein-hero-divider-fill) !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

  .elementor-22 .elementor-element.elementor-element-9d5bca4 {
    --hein-hero-curve-height: 44px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .elementor-22 .elementor-element.elementor-element-9d5bca4 {
    --hein-hero-curve-height: 30px;
  }


  .elementor-22 .elementor-element.elementor-element-9d5bca4::before {
    background:
      linear-gradient(
        90deg,
        rgba(0, 23, 42, 0.92) 0%,
        rgba(0, 48, 87, 0.86) 57%,
        rgba(43, 84, 132, 0.74) 100%
      ),
      linear-gradient(
        180deg,
        rgba(0, 31, 56, 0.08) 0%,
        rgba(0, 31, 56, 0.28) 100%
      );
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

  .elementor-22 .elementor-element.elementor-element-9d5bca4 {
    --hein-hero-curve-height: 28px;
  }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-97ac930 *//* Keep the introduction readable without adding another boxed container */
.elementor-22 .elementor-element.elementor-element-97ac930 {
  width: 100%;
  max-width: 720px;
}/* End custom CSS */
/* Start custom CSS for sureforms_form, class: .elementor-element-95920aa *//* Make SureForms fields solid white for readability */
.heiN-contact-form input,
.hein-contact-form textarea,
.hein-contact-form select,
.hein-contact-form .srfm-input,
.hein-contact-form .srfm-textarea,
.hein-contact-form .srfm-select {
  background-color: #ffffff !important;
  color: #1f2937 !important;
  border: 1px solid rgba(0, 48, 87, 0.22) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

/* Fix typo-safe target in case the class is applied correctly */
.hein-contact-form input,
.hein-contact-form textarea,
.hein-contact-form select {
  background-color: #ffffff !important;
}

/* Placeholder text */
.hein-contact-form input::placeholder,
.hein-contact-form textarea::placeholder {
  color: rgba(31, 41, 55, 0.62) !important;
  opacity: 1 !important;
}

/* Focus state */
.hein-contact-form input:focus,
.hein-contact-form textarea:focus,
.hein-contact-form select:focus {
  background-color: #ffffff !important;
  border-color: #003057 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0, 48, 87, 0.12) !important;
}


/* SureForms Tom Select dropdown control */
.hein-contact-form .ts-wrapper,
.hein-contact-form .ts-control {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-radius: 8px !important;
}

/* The visible dropdown field */
.hein-contact-form .ts-control {
  border: 1px solid rgba(0, 48, 87, 0.22) !important;
  color: #1f2937 !important;
  box-shadow: none !important;
  min-height: 44px;
}

/* The input inside the dropdown */
.hein-contact-form .ts-control input {
  background: transparent !important;
  color: #1f2937 !important;
}

/* Placeholder text inside Tom Select */
.hein-contact-form .ts-control input::placeholder {
  color: rgba(31, 41, 55, 0.62) !important;
  opacity: 1 !important;
}

/* Dropdown focus/open state */
.hein-contact-form .ts-wrapper.focus .ts-control,
.hein-contact-form .ts-wrapper.dropdown-active .ts-control {
  background: #ffffff !important;
  border-color: #003057 !important;
  box-shadow: 0 0 0 3px rgba(0, 48, 87, 0.12) !important;
}

/* Actual dropdown menu */
.hein-contact-form .ts-dropdown {
  background: #ffffff !important;
  border: 1px solid rgba(0, 48, 87, 0.22) !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 28px rgba(0, 48, 87, 0.12) !important;
  overflow: hidden;
}

/* Dropdown options */
.hein-contact-form .ts-dropdown .option {
  background: #ffffff !important;
  color: #1f2937 !important;
}

/* Hover / active dropdown option */
.hein-contact-form .ts-dropdown .option:hover,
.hein-contact-form .ts-dropdown .active {
  background: rgba(0, 48, 87, 0.08) !important;
  color: #003057 !important;
}

/* Dropdown icons */
.hein-contact-form .ts-dropdown-icon,
.hein-contact-form .clear-button {
  color: #003057 !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-baa2238 *//* =========================================================
   HEIN CONTACT PAGE
   ========================================================= */


/* =========================================================
   1. DESIGN TOKENS / ROOT
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 {
  --hein-blue: #003057;
  --hein-blue-dark: #001f38;
  --hein-blue-deep: #00172a;
  --hein-blue-soft: #184e77;
  --hein-orange: #f58220;

  --hein-white: #ffffff;
  --hein-page-background: #f7f9fb;
  --hein-text: #263746;
  --hein-text-muted: #526574;

  --hein-border: rgba(0, 48, 87, 0.12);
  --hein-border-strong: rgba(0, 48, 87, 0.2);
  --hein-focus-ring: rgba(245, 130, 32, 0.55);

  --hein-panel-radius: 12px;
  --hein-panel-shadow: 0 14px 36px rgba(0, 23, 42, 0.08);

  position: relative;

  display: flex !important;
  width: 100%;

  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;

  margin: 0 !important;
  padding: 80px 40px 96px !important;

  overflow: hidden;

  color: var(--hein-text);
  background-color: var(--hein-page-background);
}

.elementor-22 .elementor-element.elementor-element-baa2238,
.elementor-22 .elementor-element.elementor-element-baa2238 *,
.elementor-22 .elementor-element.elementor-element-baa2238 *::before,
.elementor-22 .elementor-element.elementor-element-baa2238 *::after {
  box-sizing: border-box;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .elementor-widget {
  margin-block-end: 0;
}

.elementor-22 .elementor-element.elementor-element-baa2238 > .e-con-inner {
  display: flex !important;

  width: 100% !important;
  max-width: none !important;

  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;

  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   2. CONTACT SHELL
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-shell,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-shell > .e-con-inner {
  display: flex !important;

  width: 100% !important;

  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;

  gap: 48px !important;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-shell {
  max-width: 1200px !important;

  align-self: center;
  margin-inline: auto !important;

  background-color: transparent !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-shell > .e-con-inner {
  max-width: none !important;
}


/* =========================================================
   3. PAGE INTRODUCTION
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-intro {
  display: flex !important;

  width: 100% !important;
  max-width: 720px;

  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;

  gap: 10px !important;

  margin: 0 !important;
  padding: 0 !important;

  background-color: transparent !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-eyebrow,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-heading,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-intro-copy {
  width: 100%;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-eyebrow .elementor-heading-title {
  display: flex;

  align-items: center;

  gap: 10px;

  margin: 0;

  color: var(--hein-orange);

  font-family: "Open Sans", Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;

  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-eyebrow .elementor-heading-title::before {
  content: "";

  display: block;

  width: 24px;
  height: 2px;

  flex: 0 0 24px;

  background: var(--hein-orange);
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-heading .elementor-heading-title {
  margin: 0;

  color: var(--hein-blue);

  font-family: "Aller", "Open Sans", Arial, sans-serif;
  font-size: 38px;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: -0.5px;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-intro-copy,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-intro-copy p {
  color: var(--hein-text-muted);

  font-family: "Open Sans", Arial, sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.7;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-intro-copy p {
  margin: 0;
}


/* =========================================================
   4. MAIN TWO-COLUMN GRID
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid > .e-con-inner {
  display: grid !important;

  width: 100% !important;
  min-width: 0;

  grid-template-columns:
    minmax(0, 1.72fr)
    minmax(340px, 0.98fr);

  align-items: stretch;

  gap: 40px !important;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid {
  background-color: transparent !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid > .e-con-inner {
  max-width: none !important;
  grid-column: 1 / -1;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;

  flex-basis: auto !important;
}


/* =========================================================
   5. SHARED PANEL GEOMETRY
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details {
  position: relative;

  isolation: isolate;

  display: flex !important;

  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start !important;

  margin: 0 !important;

  overflow: hidden;

  border-radius: var(--hein-panel-radius);
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel > .e-con-inner,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details > .e-con-inner {
  display: flex !important;

  width: 100% !important;
  max-width: none !important;

  flex-direction: column;
  align-items: stretch;

  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   6. FORM PANEL
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel {
  gap: 0 !important;

  padding: 34px 40px 34px !important;

  background-color: var(--hein-white) !important;

  border: 1px solid var(--hein-border);

  box-shadow: var(--hein-panel-shadow);
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel > .e-con-inner {
  height: 100%;

  gap: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel::before {
  content: "";

  position: absolute;

  top: 0;
  left: 0;

  z-index: 2;

  width: 190px;
  height: 3px;

  pointer-events: none;

  background: linear-gradient(
    90deg,
    var(--hein-orange) 0%,
    var(--hein-orange) 58%,
    rgba(245, 130, 32, 0.18) 86%,
    transparent 100%
  );
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel > * {
  position: relative;
  z-index: 1;
}


/* =========================================================
   7. SUREFORMS RESET
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form > .elementor-widget-container {
  display: block !important;

  width: 100% !important;
  max-width: none !important;
  min-width: 0;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-form-container,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-form {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-form-wrapper,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-form-content,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-form-body,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-form-inner {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-form-container > :first-child,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-form > :first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-block,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .sureforms-field {
  min-width: 0;
}


/* =========================================================
   8. FORM LABELS
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-block-label,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form label {
  color: var(--hein-blue-deep) !important;

  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-required,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .required {
  color: var(--hein-orange) !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-block-description,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-field-description {
  color: var(--hein-text-muted) !important;

  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}


/* =========================================================
   9. FORM INPUTS
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-input-common,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="text"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="email"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="tel"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="url"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="number"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="search"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form select,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea {
  width: 100% !important;
  max-width: 100% !important;

  color: var(--hein-text) !important;

  background-color: var(--hein-page-background) !important;

  border: 1px solid var(--hein-border-strong) !important;
  border-radius: 7px !important;

  box-shadow: none !important;

  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;

  transition:
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="text"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="email"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="tel"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="url"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="number"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="search"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form select {
  min-height: 50px;

  padding: 12px 14px !important;
}


/* =========================================================
   10. MESSAGE FIELD
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea {
  min-height: 270px !important;
  height: 270px;

  padding: 13px 14px !important;

  resize: vertical;
}

@media (min-width: 1200px) {
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea {
    min-height: 285px !important;
    height: 285px;
  }
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input::placeholder,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea::placeholder {
  color: rgba(38, 55, 70, 0.55) !important;
  opacity: 1;
}

@media (hover: hover) and (pointer: fine) {
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-input-common:hover,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input:hover,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form select:hover,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea:hover {
    border-color: rgba(0, 48, 87, 0.34) !important;
  }
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-input-common:focus,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="text"]:focus,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="email"]:focus,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="tel"]:focus,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="url"]:focus,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="number"]:focus,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="search"]:focus,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form select:focus,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea:focus {
  color: var(--hein-text) !important;

  background-color: var(--hein-white) !important;

  border-color: var(--hein-orange) !important;

  outline: none !important;

  box-shadow:
    0 0 0 3px rgba(245, 130, 32, 0.16) !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="checkbox"],
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form input[type="radio"] {
  accent-color: var(--hein-orange);
}


/* =========================================================
   11. DROPDOWN / TOM SELECT
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-dropdown-common-wrap,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-dropdown-block .ts-wrapper {
  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-dropdown-block .ts-control {
  position: relative;

  display: flex !important;

  width: 100% !important;
  min-height: 50px;

  align-items: center;

  padding: 12px 46px 12px 14px !important;

  color: var(--hein-text) !important;

  background-color: var(--hein-page-background) !important;

  border: 1px solid var(--hein-border-strong) !important;
  border-radius: 7px !important;

  box-shadow: none !important;

  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.5 !important;

  cursor: pointer;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-dropdown-block .ts-control input {
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;

  flex: 1 1 auto;

  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;

  background: transparent !important;

  border: 0 !important;

  outline: 0 !important;

  box-shadow: none !important;

  font: inherit !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-dropdown-block .ts-dropdown-icon {
  position: absolute;

  top: 50%;
  right: 14px;

  display: grid;

  width: 18px;
  height: 18px;

  place-items: center;

  color: var(--hein-blue);

  pointer-events: none;

  transform: translateY(-50%);
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-dropdown-block .ts-control:focus-within,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-dropdown-block .ts-wrapper.focus .ts-control {
  background-color: var(--hein-white) !important;

  border-color: var(--hein-orange) !important;

  box-shadow:
    0 0 0 3px rgba(245, 130, 32, 0.16) !important;
}


/* =========================================================
   12. PRIVACY / VALIDATION
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-privacy-note {
  margin: 2px 0 0;

  color: var(--hein-text-muted);

  font-family: "Open Sans", Arial, sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.55;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-privacy-note a {
  color: var(--hein-blue);

  font-weight: 600;

  text-decoration-line: underline;
  text-decoration-color: rgba(245, 130, 32, 0.75);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-error-message,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-error,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form [role="alert"] {
  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}


/* =========================================================
   13. SUBMIT BUTTON
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form button#srfm-submit-btn,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-submit-button,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form button[type="submit"] {
  min-height: 48px;

  padding: 14px 22px !important;

  color: var(--hein-blue-deep) !important;

  background-color: var(--hein-orange) !important;

  border: 1px solid var(--hein-orange) !important;
  border-radius: 7px !important;

  box-shadow: none !important;

  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;

  letter-spacing: 0.6px !important;
  text-transform: uppercase;

  cursor: pointer;

  transition:
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form button#srfm-submit-btn:hover,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-submit-button:hover,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form button[type="submit"]:hover {
    color: var(--hein-white) !important;

    background-color: var(--hein-blue) !important;

    border-color: var(--hein-blue) !important;

    transform: translateY(-1px);
  }
}


/* =========================================================
   14. CONTACT INFORMATION PANEL
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details {
  padding: 34px 32px 28px !important;

  color: var(--hein-white);

  background-image:
    linear-gradient(
      rgba(255, 255, 255, 0.055) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.055) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(245, 130, 32, 0.085) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(245, 130, 32, 0.085) 1px,
      transparent 1px
    ),
    linear-gradient(
      145deg,
      rgba(0, 23, 42, 0.97) 0%,
      rgba(0, 48, 87, 0.94) 62%,
      rgba(24, 78, 119, 0.91) 100%
    ),
    url("/wp-content/uploads/2026/01/HEIN_BluePrint_Background_White-scaled.png") !important;

  background-size:
    32px 32px,
    32px 32px,
    128px 128px,
    128px 128px,
    cover,
    cover !important;

  background-position:
    0 0,
    0 0,
    0 0,
    0 0,
    center center,
    center center !important;

  background-repeat:
    repeat,
    repeat,
    repeat,
    repeat,
    no-repeat,
    no-repeat !important;

  border: 1px solid rgba(255, 255, 255, 0.1);

  box-shadow:
    0 14px 36px rgba(0, 23, 42, 0.14);
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details::before {
  content: "";

  position: absolute;

  top: 0;
  left: 0;

  z-index: 2;

  width: 100%;
  height: 3px;

  pointer-events: none;

  background: linear-gradient(
    90deg,
    var(--hein-orange) 0%,
    var(--hein-orange) 46%,
    rgba(245, 130, 32, 0.22) 78%,
    transparent 100%
  );
}


/* =========================================================
   15. SIDEBAR INTERNAL LAYOUT
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details > .e-con-inner {
  display: flex !important;

  width: 100% !important;
  height: 100%;

  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;

  gap: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   16. SIDEBAR HEADING
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-heading,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-intro,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-heading > .elementor-widget-container,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-intro > .elementor-widget-container {
  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-heading {
  flex: 0 0 auto;

  margin: 0 0 10px !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-heading .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;

  color: var(--hein-white) !important;

  font-family: "Aller", "Open Sans", Arial, sans-serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;

  letter-spacing: -0.2px !important;
}


/* =========================================================
   17. SIDEBAR INTRO
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-intro {
  flex: 0 0 auto;

  margin: 0 0 18px !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-intro,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-intro p {
  color: rgba(255, 255, 255, 0.82) !important;

  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-intro p {
  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   18. CONTACT CARD WRAPPERS
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card-container {
  display: flex !important;

  width: 100% !important;
  min-width: 0;

  flex: 1 1 0 !important;

  flex-direction: column;
  align-items: stretch;
  justify-content: stretch;

  margin: 0 !important;

  padding: 0 0 14px !important;

  background: transparent !important;

  border: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card-container > .e-con-inner {
  display: flex !important;

  width: 100% !important;
  height: 100%;

  min-width: 0;

  flex: 1 1 auto;

  flex-direction: column;
  align-items: stretch;
  justify-content: stretch;

  gap: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;
}


/* =========================================================
   19. CONTACT CARDS
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card {
  display: flex !important;

  width: 100% !important;
  height: 100%;

  min-width: 0;

  flex: 1 1 auto;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card > .elementor-widget-container {
  position: relative;

  display: flex;

  width: 100%;
  height: 100%;

  min-height: 108px;

  flex: 1 1 auto;

  align-items: center;

  margin: 0 !important;

  padding: 18px !important;

  overflow: hidden;

  color: var(--hein-white);

  background: linear-gradient(
    135deg,
    rgba(0, 23, 42, 0.24) 0%,
    rgba(0, 48, 87, 0.54) 100%
  );

  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 10px;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 8px 20px rgba(0, 23, 42, 0.04);

  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);

  cursor: pointer;

  transition:
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}


/* =========================================================
   20. INFO BOX RESET
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox {
  position: relative;

  display: flex;

  width: 100%;
  height: 100%;

  align-items: center;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;

  border: 0 !important;

  box-shadow: none !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox a {
  color: inherit;

  text-decoration: none !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-left-right-wrap {
  display: flex !important;

  width: 100%;

  align-items: center !important;

  gap: 15px;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-imgicon-wrap {
  display: flex !important;

  width: 44px;

  flex: 0 0 44px;

  align-items: center;
  justify-content: center;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-content {
  min-width: 0;

  flex: 1 1 auto;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-title-wrap,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-text-wrap {
  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   21. CARD ICONS
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-icon-wrap,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .elementor-icon {
  display: grid !important;

  width: 44px !important;
  height: 44px !important;

  place-items: center;

  margin: 0 !important;
  padding: 0 !important;

  color: var(--hein-blue-deep) !important;

  background-color: var(--hein-orange) !important;

  border: 2px solid var(--hein-orange) !important;
  border-radius: 50% !important;

  line-height: 1 !important;

  transform: none !important;

  transition:
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-icon,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-icon i {
  display: grid;

  width: 100%;
  height: 100%;

  place-items: center;

  margin: 0;
  padding: 0;

  color: currentColor !important;

  line-height: 1 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-icon svg,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .elementor-icon svg {
  display: block;

  width: 18px !important;
  height: 18px !important;

  margin: 0;

  fill: currentColor !important;
}


/* =========================================================
   22. CARD TYPOGRAPHY
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-title {
  margin: 0 0 4px !important;

  color: var(--hein-white) !important;

  font-family: "Aller", "Open Sans", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;

  letter-spacing: 0 !important;

  transition: color 180ms ease;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-text,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-text p {
  margin: 0 !important;

  color: rgba(255, 255, 255, 0.9) !important;

  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;

  text-shadow:
    0 1px 2px rgba(0, 23, 42, 0.35);

  overflow-wrap: anywhere;
}


/* =========================================================
   23. CARD HOVER
   ========================================================= */

@media (hover: hover) and (pointer: fine) {
  .elementor-22 .elementor-element.elementor-element-baa2238
    .hein-contact-card:hover
    > .elementor-widget-container {
    background: linear-gradient(
      135deg,
      rgba(0, 23, 42, 0.88) 0%,
      rgba(0, 48, 87, 0.78) 100%
    );

    border-color: rgba(245, 130, 32, 0.42);

    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.06),
      0 12px 26px rgba(0, 23, 42, 0.18);

    transform: translateY(-2px);
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card:hover .uael-icon-wrap,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card:hover .elementor-icon {
    color: var(--hein-orange) !important;

    background-color: var(--hein-blue-deep) !important;

    border-color: var(--hein-orange) !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card:hover .uael-infobox-title {
    color: var(--hein-orange) !important;
  }
}


/* =========================================================
   24. QUICK LINKS
   ---------------------------------------------------------
   Explicit inner-wrapper control prevents Elementor spacing
   from compressing the heading and link list.

   Slightly increased panel padding gives this block the same
   deliberate breathing room as the contact cards above.
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links {
  display: flex !important;

  width: 100% !important;

  flex: 0 0 auto;

  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;

  margin: 0 !important;

  padding: 22px 22px 21px !important;

  background: linear-gradient(
    135deg,
    rgba(0, 23, 42, 0.32) 0%,
    rgba(0, 48, 87, 0.48) 100%
  ) !important;

  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 10px;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05);

  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links > .e-con-inner {
  display: flex !important;

  width: 100% !important;
  max-width: none !important;

  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;

  gap: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links-heading,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links-list,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links-heading > .elementor-widget-container,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links-list > .elementor-widget-container {
  width: 100%;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links-heading {
  flex: 0 0 auto;

  margin: 0 0 16px !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238
  .hein-contact-quick-links-heading
  .elementor-heading-title {
  display: flex;

  min-height: 24px;

  align-items: center;

  gap: 10px;

  margin: 0 !important;
  padding: 0 !important;

  color: var(--hein-white) !important;

  font-family: "Aller", "Open Sans", Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;

  letter-spacing: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238
  .hein-contact-quick-links-heading
  .elementor-heading-title::before {
  content: "";

  display: block;

  width: 20px;
  height: 2px;

  flex: 0 0 20px;

  background: var(--hein-orange);
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links-list {
  flex: 0 0 auto;
}

.elementor-22 .elementor-element.elementor-element-baa2238
  .hein-contact-quick-links-list
  .elementor-icon-list-items {
  display: flex;

  width: 100%;

  flex-direction: column;

  gap: 11px;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238
  .hein-contact-quick-links-list
  .elementor-icon-list-item {
  width: 100%;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238
  .hein-contact-quick-links-list
  .elementor-icon-list-item
  a {
  display: flex;

  width: 100%;

  align-items: center;

  color: rgba(255, 255, 255, 0.88) !important;

  font-family: "Open Sans", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;

  text-decoration: none !important;

  transition:
    color 180ms ease,
    transform 180ms ease;
}

.elementor-22 .elementor-element.elementor-element-baa2238
  .hein-contact-quick-links-list
  .elementor-icon-list-icon {
  display: flex;

  width: 18px;

  flex: 0 0 18px;

  align-items: center;
  justify-content: flex-start;

  color: var(--hein-orange) !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238
  .hein-contact-quick-links-list
  .elementor-icon-list-icon
  svg {
  width: 13px !important;
  height: 13px !important;

  fill: currentColor !important;
}

@media (hover: hover) and (pointer: fine) {
  .elementor-22 .elementor-element.elementor-element-baa2238
    .hein-contact-quick-links-list
    .elementor-icon-list-item
    a:hover {
    color: var(--hein-orange) !important;

    transform: translateX(3px);
  }
}


/* =========================================================
   25. OFFICE LOCATION
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location > .e-con-inner {
  display: flex !important;

  width: 100% !important;

  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;

  gap: 18px !important;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location {
  margin-top: 12px !important;

  background-color: transparent !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location > .e-con-inner {
  max-width: none !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location-header {
  display: flex !important;

  width: 100% !important;

  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;

  gap: 24px !important;

  margin: 0 !important;
  padding: 0 !important;

  background-color: transparent !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location-copy {
  display: flex !important;

  width: 100%;
  max-width: 720px;

  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;

  gap: 8px !important;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location-heading,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location-intro {
  width: 100%;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238
  .hein-contact-location-heading
  .elementor-heading-title {
  margin: 0;

  color: var(--hein-blue);

  font-family: "Aller", "Open Sans", Arial, sans-serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.25;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location-intro,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location-intro p {
  color: var(--hein-text-muted);

  font-family: "Open Sans", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location-intro p {
  margin: 0;
}


/* =========================================================
   26. DIRECTIONS BUTTON
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-directions {
  width: auto !important;

  flex: 0 0 auto;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-directions .elementor-button {
  display: inline-flex;

  min-height: 46px;

  align-items: center;
  justify-content: center;

  padding: 13px 20px;

  color: var(--hein-white);

  background-color: var(--hein-blue);

  border: 1px solid var(--hein-blue);
  border-radius: 7px;

  font-family: "Open Sans", Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;

  letter-spacing: 0.5px;
  text-transform: uppercase;

  transition:
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-directions .elementor-button:hover {
    color: var(--hein-blue-deep);

    background-color: var(--hein-orange);

    border-color: var(--hein-orange);

    transform: translateY(-1px);
  }
}


/* =========================================================
   27. MAP
   ========================================================= */

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map-frame,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map-frame > .e-con-inner {
  display: flex !important;

  width: 100% !important;

  flex-direction: column;

  gap: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map-frame {
  overflow: hidden;

  background-color: var(--hein-white);

  border: 1px solid var(--hein-border);
  border-radius: var(--hein-panel-radius);

  box-shadow: var(--hein-panel-shadow);
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map {
  display: block;

  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map > .elementor-widget-container,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map iframe,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-custom-embed,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-custom-embed iframe,
.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-google-map {
  width: 100% !important;
  height: 420px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0;
}

.elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map iframe {
  display: block;
}


/* =========================================================
   28. SMALL DESKTOP
   ========================================================= */

@media (max-width: 1100px) {
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid > .e-con-inner {
    grid-template-columns:
      minmax(0, 1.62fr)
      minmax(320px, 0.98fr);

    gap: 30px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea {
    min-height: 240px !important;
    height: 240px;
  }
}


/* =========================================================
   29. TABLET
   ========================================================= */

@media (max-width: 1024px) {
  .elementor-22 .elementor-element.elementor-element-baa2238 {
    padding: 64px 32px 72px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-shell,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-shell > .e-con-inner {
    gap: 40px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-heading .elementor-heading-title {
    font-size: 34px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid > .e-con-inner {
    grid-template-columns: minmax(0, 1fr);

    gap: 32px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel {
    padding: 30px 32px 32px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea {
    min-height: 210px !important;
    height: 210px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details {
    padding: 30px 32px 20px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card-container {
    flex: 0 0 auto !important;

    padding-bottom: 14px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card > .elementor-widget-container {
    height: auto;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card > .elementor-widget-container {
    min-height: 96px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map > .elementor-widget-container,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map iframe,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-custom-embed,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-custom-embed iframe,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-google-map {
    height: 360px !important;
  }
}


/* =========================================================
   30. MOBILE
   ========================================================= */

@media (max-width: 767px) {
  .elementor-22 .elementor-element.elementor-element-baa2238 {
    padding: 48px 20px 56px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-shell,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-shell > .e-con-inner {
    gap: 32px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-heading .elementor-heading-title {
    font-size: 28px;
    line-height: 1.22;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-intro-copy,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-intro-copy p {
    font-size: 16px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-grid > .e-con-inner {
    gap: 24px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel {
    padding: 24px 20px 26px !important;

    border-radius: 10px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea {
    min-height: 180px !important;
    height: 180px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details {
    padding: 24px 22px 14px !important;

    border-radius: 10px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-heading .elementor-heading-title {
    font-size: 24px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-heading {
    margin-bottom: 8px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details-intro {
    margin-bottom: 16px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-block,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .sureforms-field {
    width: 100% !important;
    max-width: 100% !important;

    flex-basis: 100% !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form button#srfm-submit-btn,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form .srfm-submit-button,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form button[type="submit"] {
    width: 100% !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card-container {
    padding-bottom: 12px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card > .elementor-widget-container {
    min-height: 92px;

    padding: 16px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-imgicon-wrap {
    width: 42px;

    flex-basis: 42px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-icon-wrap,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .elementor-icon {
    width: 42px !important;
    height: 42px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links {
    padding: 20px 18px 19px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links-heading {
    margin-bottom: 14px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238
    .hein-contact-quick-links-heading
    .elementor-heading-title {
    font-size: 16.5px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238
    .hein-contact-quick-links-list
    .elementor-icon-list-item
    a {
    font-size: 14px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-location-header {
    flex-direction: column;
    align-items: flex-start;

    gap: 16px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-directions,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-directions .elementor-button-wrapper,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-directions .elementor-button {
    width: 100% !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map > .elementor-widget-container,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map iframe,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-custom-embed,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-custom-embed iframe,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-map .elementor-google-map {
    height: 300px !important;
  }
}


/* =========================================================
   31. SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {
  .elementor-22 .elementor-element.elementor-element-baa2238 {
    padding-right: 18px !important;
    padding-left: 18px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form-panel {
    padding: 22px 18px 24px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-form textarea {
    min-height: 165px !important;
    height: 165px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-details {
    padding: 22px 18px 12px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-left-right-wrap {
    gap: 12px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-imgicon-wrap {
    width: 40px;

    flex-basis: 40px;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-icon-wrap,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .elementor-icon {
    width: 40px !important;
    height: 40px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-text,
  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-card .uael-infobox-text p {
    font-size: 13.5px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links {
    padding: 19px 17px 18px !important;
  }

  .elementor-22 .elementor-element.elementor-element-baa2238 .hein-contact-quick-links-heading {
    margin-bottom: 13px !important;
  }
}


/* =========================================================
   32. REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
  .elementor-22 .elementor-element.elementor-element-baa2238 a,
  .elementor-22 .elementor-element.elementor-element-baa2238 button,
  .elementor-22 .elementor-element.elementor-element-baa2238 input,
  .elementor-22 .elementor-element.elementor-element-baa2238 select,
  .elementor-22 .elementor-element.elementor-element-baa2238 textarea,
  .elementor-22 .elementor-element.elementor-element-baa2238 .elementor-widget-container,
  .elementor-22 .elementor-element.elementor-element-baa2238 .uael-icon-wrap,
  .elementor-22 .elementor-element.elementor-element-baa2238 .uael-infobox-title {
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */