.elementor-3088 .elementor-element.elementor-element-f39b91c{--display:flex;--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;}.elementor-3088 .elementor-element.elementor-element-1b860bc{--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;}.elementor-3088 .elementor-element.elementor-element-f1b5bc3{--display:flex;--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;--justify-content:center;}.ee-tooltip.ee-tooltip-d7a1890.to--top,
							 .ee-tooltip.ee-tooltip-d7a1890.to--bottom{margin-left:0px;}.ee-tooltip.ee-tooltip-d7a1890.to--left,
							 .ee-tooltip.ee-tooltip-d7a1890.to--right{margin-top:0px;}.elementor-3088 .elementor-element.elementor-element-d7a1890 img{width:100%;}.elementor-3088 .elementor-element.elementor-element-1883fde{--display:flex;--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;}.elementor-3088 .elementor-element.elementor-element-b1030a6{font-size:24px;line-height:39px;color:var( --e-global-color-text );}.elementor-3088 .elementor-element.elementor-element-a2f9579{--display:flex;--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;}.elementor-3088 .elementor-element.elementor-element-707c7c6{--display:flex;--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;}.ee-tooltip.ee-tooltip-79a26a9.to--top,
							 .ee-tooltip.ee-tooltip-79a26a9.to--bottom{margin-left:0px;}.ee-tooltip.ee-tooltip-79a26a9.to--left,
							 .ee-tooltip.ee-tooltip-79a26a9.to--right{margin-top:0px;}.elementor-3088 .elementor-element.elementor-element-08f12a0{text-align:center;}.elementor-3088 .elementor-element.elementor-element-08f12a0 .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-3088 .elementor-element.elementor-element-348f308{--display:flex;--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;}.elementor-3088 .elementor-element.elementor-element-4f653ce{--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;}.elementor-3088 .elementor-element.elementor-element-6b07842{--display:flex;}.ee-tooltip.ee-tooltip-64c0ec8.to--top,
							 .ee-tooltip.ee-tooltip-64c0ec8.to--bottom{margin-left:0px;}.ee-tooltip.ee-tooltip-64c0ec8.to--left,
							 .ee-tooltip.ee-tooltip-64c0ec8.to--right{margin-top:0px;}.elementor-3088 .elementor-element.elementor-element-64c0ec8 img{width:100%;border-radius:0px 0px 0px 0px;}.elementor-3088 .elementor-element.elementor-element-ca05978{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:0px;}.elementor-3088 .elementor-element.elementor-element-3efe2c8{--display:flex;}.ee-tooltip.ee-tooltip-795ede6.to--top,
							 .ee-tooltip.ee-tooltip-795ede6.to--bottom{margin-left:0px;}.ee-tooltip.ee-tooltip-795ede6.to--left,
							 .ee-tooltip.ee-tooltip-795ede6.to--right{margin-top:0px;}.elementor-3088 .elementor-element.elementor-element-7fef3ad{--display:grid;--min-height:328px;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.ee-tooltip.ee-tooltip-7a33ffe.to--top,
							 .ee-tooltip.ee-tooltip-7a33ffe.to--bottom{margin-left:0px;}.ee-tooltip.ee-tooltip-7a33ffe.to--left,
							 .ee-tooltip.ee-tooltip-7a33ffe.to--right{margin-top:0px;}.ee-tooltip.ee-tooltip-d2ff091.to--top,
							 .ee-tooltip.ee-tooltip-d2ff091.to--bottom{margin-left:0px;}.ee-tooltip.ee-tooltip-d2ff091.to--left,
							 .ee-tooltip.ee-tooltip-d2ff091.to--right{margin-top:0px;}.ee-tooltip.ee-tooltip-411db2a.to--top,
							 .ee-tooltip.ee-tooltip-411db2a.to--bottom{margin-left:0px;}.ee-tooltip.ee-tooltip-411db2a.to--left,
							 .ee-tooltip.ee-tooltip-411db2a.to--right{margin-top:0px;}.elementor-3088 .elementor-element.elementor-element-428f2a0 .elementor-heading-title{color:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-3088 .elementor-element.elementor-element-7fef3ad{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-3088 .elementor-element.elementor-element-f1b5bc3{--width:42%;}.elementor-3088 .elementor-element.elementor-element-1883fde{--width:58%;}.elementor-3088 .elementor-element.elementor-element-6b07842{--width:30%;}.elementor-3088 .elementor-element.elementor-element-ca05978{--width:70%;}}@media(max-width:767px){.elementor-3088 .elementor-element.elementor-element-64c0ec8 img{width:100%;height:236px;object-fit:cover;object-position:top center;}.elementor-3088 .elementor-element.elementor-element-ca05978{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-3088 .elementor-element.elementor-element-7fef3ad{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for image, class: .elementor-element-79a26a9 *//* Suite 1400 image glow */
.elementor-3088 .elementor-element.elementor-element-79a26a9 {
  display: block;
  margin: 2rem auto;
  max-width: 980px;
  border: 6px solid #A66FCF;          /* accent */
  border-radius: 14px;
  background: linear-gradient(180deg,#f5f8ff 0%,#ffffff 100%);
  padding: 10px;
  box-shadow: 0 14px 30px rgba(0,0,0,.18);
  transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
}
.elementor-3088 .elementor-element.elementor-element-79a26a9:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 24px 48px rgba(0,0,0,.22);
  filter: saturate(1.06);
}
.elementor-3088 .elementor-element.elementor-element-79a26a9 img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  display: block;
}
.elementor-3088 .elementor-element.elementor-element-79a26a9 { position: relative; overflow: hidden; }
.elementor-3088 .elementor-element.elementor-element-79a26a9::after{
  content:"";
  position:absolute; top:0; left:-120%;
  width:120%; height:100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent);
  transform: skewX(-20deg);
  animation: sheen 3.5s linear infinite;
}
@keyframes sheen { 0%{left:-120%;} 60%{left:120%;} 100%{left:120%;} }/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-64c0ec8 *//* Chef image – framed, glow, double border */
.elementor-3088 .elementor-element.elementor-element-64c0ec8{
  position: relative;
  display: block;
  margin: 2rem auto;
  max-width: 880px;
  padding: 12px;                         /* space for inner border */
  border-radius: 16px;
  background: linear-gradient(180deg,#f5f8ff 0%, #ffffff 100%);
  border: 8px solid #A66FCF;             /* outer accent border */
  box-shadow: 0 14px 30px rgba(0,0,0,.18);
  transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
}
.elementor-3088 .elementor-element.elementor-element-64c0ec8::before{
  content:"";
  position: absolute;
  inset: 6px;                             /* creates a second (inner) border */
  border-radius: 12px;
  border: 2px solid #003366;              /* navy inner border */
  pointer-events: none;
}
.elementor-3088 .elementor-element.elementor-element-64c0ec8:hover{
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 24px 48px rgba(0,0,0,.22);
  filter: saturate(1.06);
}
.elementor-3088 .elementor-element.elementor-element-64c0ec8 img{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;                    /* rounds bitmap corners to match frame */
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-73f1e3c *//* Chef bio – premium card */
.elementor-3088 .elementor-element.elementor-element-73f1e3c{
  position: relative;
  display: block;
  padding: 22px 26px;
  border-radius: 16px;
  background: linear-gradient(180deg, #f5f8ff 0%, #ffffff 100%);
  border: 2px solid #A66FCF;                 /* brand accent */
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
}

/* left accent bar */
.elementor-3088 .elementor-element.elementor-element-73f1e3c::before{
  content:"";
  position:absolute; inset: 0 auto 0 0;
  width: 6px;
  background:#A66FCF;
  border-radius: 16px 0 0 16px;
}

/* typography &amp; rhythm */
.elementor-3088 .elementor-element.elementor-element-73f1e3c p{
  margin: 0 0 1rem;
  line-height: 1.65;
  font-size: 1.05rem;
  color: #1a1a1a;
}

/* lead paragraph pop + drop cap */
.elementor-3088 .elementor-element.elementor-element-73f1e3c p:first-of-type{
  font-weight: 500;
}
.elementor-3088 .elementor-element.elementor-element-73f1e3c p:first-of-type::first-letter{
  float: left;
  font-size: 3rem;
  line-height: 1;
  margin-right: .4rem;
  color: #A66FCF;
  font-weight: 700;
}

/* optional mini-tags row */
.elementor-3088 .elementor-element.elementor-element-73f1e3c .bio-meta{
  display:flex; flex-wrap:wrap; gap:8px 10px;
  margin: -4px 0 12px;
}
.elementor-3088 .elementor-element.elementor-element-73f1e3c .tag{
  background:#003366; color:#fff;
  padding: 4px 10px;
  border-radius: 999px;
  font-size:.78rem; letter-spacing:.02em;
}

/* optional pull-quote style */
.elementor-3088 .elementor-element.elementor-element-73f1e3c blockquote{
  margin: 12px 0;
  padding: 12px 16px;
  background:#f7f1ff;
  border-left: 4px solid #A66FCF;
  border-radius: 10px;
  color:#2a2a2a;
  font-style: italic;
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-795ede6 *//* Single image — framed + glow + hover (paste in the IMAGE widget) */
.elementor-3088 .elementor-element.elementor-element-795ede6,
.elementor-3088 .elementor-element.elementor-element-795ede6 .elementor-widget-container,
.elementor-3088 .elementor-element.elementor-element-795ede6 a{
  display:block;
  box-sizing:border-box;
  background: linear-gradient(180deg,#f5f8ff 0%,#ffffff 100%);
  padding:12px;                         /* space for frame */
  border:6px solid #A66FCF;             /* accent border */
  border-radius:16px;
  outline:2px solid #003366;            /* thin inner navy line */
  outline-offset:-8px;
  box-shadow:0 14px 30px rgba(0,0,0,.18);
  transition:transform .28s ease, box-shadow .28s ease, filter .28s ease;
}

/* The bitmap */
.elementor-3088 .elementor-element.elementor-element-795ede6 img{
  display:block;
  width:100%;
  height:auto;
  border-radius:10px;                   /* match the frame */
}

/* Hover lift */
.elementor-3088 .elementor-element.elementor-element-795ede6:hover,
.elementor-3088 .elementor-element.elementor-element-795ede6 a:hover{
  transform: translateY(-2px) scale(1.015);
  filter: saturate(1.06);
  box-shadow:0 24px 48px rgba(0,0,0,.22);
}

/* Debug (uncomment if nothing changes, then remove)
   .elementor-3088 .elementor-element.elementor-element-795ede6{ outline:1px dashed red !important; } *//* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d2ff091 *//* Frame the three Image widgets inside this container */

/* The framed wrapper (Image widget container, Gallery items, or E-gallery items) */
.elementor-3088 .elementor-element.elementor-element-d2ff091 .elementor-widget-image .elementor-widget-container,
.elementor-3088 .elementor-element.elementor-element-d2ff091 .elementor-gallery-item__image,
.elementor-3088 .elementor-element.elementor-element-d2ff091 .e-gallery-image{
  background: linear-gradient(180deg,#f5f8ff 0%,#ffffff 100%);
  padding: 10px;
  border: 5px solid #A66FCF;      /* accent border */
  border-radius: 16px;
  outline: 2px solid #003366;     /* thin inner navy line */
  outline-offset: -8px;
  box-shadow: 0 14px 30px rgba(0,0,0,.14);
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

/* The images themselves */
.elementor-3088 .elementor-element.elementor-element-d2ff091 .elementor-widget-image img,
.elementor-3088 .elementor-element.elementor-element-d2ff091 .elementor-gallery-item__image img,
.elementor-3088 .elementor-element.elementor-element-d2ff091 .e-gallery-image img{
  display:block;
  width:100%;
  height:auto;
  border-radius:10px;
}

/* Hover lift */
.elementor-3088 .elementor-element.elementor-element-d2ff091 .elementor-widget-image:hover .elementor-widget-container,
.elementor-3088 .elementor-element.elementor-element-d2ff091 .elementor-gallery-item__image:hover,
.elementor-3088 .elementor-element.elementor-element-d2ff091 .e-gallery-image:hover{
  transform: translateY(-2px) scale(1.01);
  filter: saturate(1.05);
  box-shadow: 0 22px 44px rgba(0,0,0,.20);
}

/* Add breathing room between items */
.elementor-3088 .elementor-element.elementor-element-d2ff091 .elementor-container,
.elementor-3088 .elementor-element.elementor-element-d2ff091 .elementor-gallery__container,
.elementor-3088 .elementor-element.elementor-element-d2ff091 .e-gallery-container{
  gap: 28px;
}

/* Debug line (temporary). If you don't see a red outline, CSS isn't applying to this container. Remove after testing. */
/* .elementor-3088 .elementor-element.elementor-element-d2ff091 { outline: 1px dashed red !important; } *//* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-411db2a *//* ===== Suite 1400 gallery frame (works for Gallery or 3 Image widgets) ===== */

/* The framed wrapper */
.suite1400-gallery .elementor-image,
.suite1400-gallery .elementor-gallery-item__image,
.suite1400-gallery .e-gallery-image{
  background: linear-gradient(180deg,#f5f8ff 0%,#ffffff 100%);
  padding: 10px;
  border: 5px solid #A66FCF;        /* accent border */
  border-radius: 16px;
  outline: 2px solid #003366;       /* thin inner navy line */
  outline-offset: -8px;
  box-shadow: 0 14px 30px rgba(0,0,0,.14);
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

/* The images themselves */
.suite1400-gallery .elementor-image img,
.suite1400-gallery .elementor-gallery-item__image img,
.suite1400-gallery .e-gallery-image img{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

/* Hover lift */
.suite1400-gallery .elementor-image:hover,
.suite1400-gallery .elementor-gallery-item__image:hover,
.suite1400-gallery .e-gallery-image:hover{
  transform: translateY(-2px) scale(1.01);
  filter: saturate(1.05);
  box-shadow: 0 22px 44px rgba(0,0,0,.20);
}

/* Add a bit more gap between items (Elementor gallery containers) */
.suite1400-gallery .elementor-gallery__container,
.suite1400-gallery .e-gallery-container{
  gap: 28px; /* tweak to taste */
}

/* OPTIONAL: force uniform crop/height for a tighter row
   (uncomment if you want consistent height tiles) */
/*
.suite1400-gallery .elementor-gallery-item__image,
.suite1400-gallery .elementor-image,
.suite1400-gallery .e-gallery-image{
  aspect-ratio: 4 / 3;
}
.suite1400-gallery .elementor-gallery-item__image img,
.suite1400-gallery .elementor-image img,
.suite1400-gallery .e-gallery-image img{
  width: 100%; height: 100%; object-fit: cover;
}
*//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7fef3ad *//* ===== Photo grid frame — paste in the GRID container's Custom CSS ===== */
.elementor-3088 .elementor-element.elementor-element-7fef3ad { --accent:#A66FCF; --navy:#003366; --bg:#f5f8ff; }

/* Frame each tile (covers Image widgets, Elementor Gallery, and Pro Gallery) */
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-widget-image .elementor-widget-container,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-image-gallery .gallery-item a,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-gallery-item__image,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .e-gallery-item .e-gallery-image,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-image-carousel .swiper-slide{
  display:block;
  box-sizing:border-box;
  background: linear-gradient(180deg, var(--bg) 0%, #ffffff 100%);
  padding:10px;
  border:5px solid var(--accent);
  border-radius:16px;
  outline:2px solid var(--navy);
  outline-offset:-8px;
  box-shadow:0 12px 24px rgba(0,0,0,.14);
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

/* Images themselves */
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-widget-image img,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-image-gallery .gallery-item img,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-gallery-item__image img,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .e-gallery-item .e-gallery-image img,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-image-carousel .swiper-slide img{
  display:block;
  width:100%;
  height:auto;
  border-radius:10px;
}

/* Hover lift */
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-widget-image:hover .elementor-widget-container,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-image-gallery .gallery-item a:hover,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-gallery-item__image:hover,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .e-gallery-item .e-gallery-image:hover,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-image-carousel .swiper-slide:hover{
  transform: translateY(-3px) scale(1.015);
  filter: saturate(1.06);
  box-shadow:0 22px 44px rgba(0,0,0,.20);
}

/* Add spacing between tiles */
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-gallery__container,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .e-gallery-container,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .gallery,
.elementor-3088 .elementor-element.elementor-element-7fef3ad .elementor-container{ gap:26px; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3efe2c8 */.course-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1.5rem;
  padding: 2rem;
}

.course-card {
  background-color: #0D2240;
  color: #fff;
  padding: 1.5rem;
  border-radius: 12px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.2);
  transition: transform 0.3s ease;
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* This is new */
  min-height: 440px; /* ← consistent height for all cards */
  height: 100%;
}

.course-card:hover {
  transform: translateY(-8px);
}

.course-icon {
  font-size: 2.5rem;
  margin-bottom: 0.5rem;
}

.course-title {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: #ffffff;
}

.course-badge {
  background-color: #1E3A8A;
  padding: 0.25rem 0.75rem;
  border-radius: 20px;
  font-size: 0.8rem;
  margin-bottom: 1rem;
  display: inline-block;
}

.course-details,
.course-schedule {
  display: flex;
  justify-content: space-between;
  width: 100%;
  font-size: 0.9rem;
  margin-bottom: 0.5rem;
  flex-wrap: wrap;
}

.course-dates {
  font-size: 0.85rem;
  margin: 1rem 0;
}

.learn-more {
  margin-top: auto;
  background-color: #2563EB;
  color: #fff;
  text-decoration: none;
  padding: 0.5rem 1rem;
  border-radius: 8px;
  font-weight: bold;
  transition: background-color 0.3s ease;
  align-self: flex-start;
}

.learn-more:hover {
  background-color: #1D4ED8;
}

@media (max-width: 600px) {
  .course-details,
  .course-schedule {
    flex-direction: column;
    gap: 0.25rem;
  }.hvac-hero-image {
  width: 100%;
  max-width: 800px;
  height: auto;
  display: block;
  margin: 0 auto;
  border-radius: 12px;
}
.elementor-3088 .elementor-element.elementor-element-3efe2c8 img {
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
  transition: transform 0.3s ease;
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

.elementor-3088 .elementor-element.elementor-element-3efe2c8 img:hover {
  transform: scale(1.03);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
}

}/* End custom CSS */