.elementor-kit-19{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-624f043:#000000;--e-global-color-add973e:#FACC15;--e-global-color-b2884c7:#1E40AF;--e-global-color-87e1a3a:#481D1D08;--e-global-color-a8d7a2a:#383737;--e-global-color-c7e8bcd:#F2F2F2;--e-global-color-e9aebbb:#61667a;--e-global-color-e48442f:#191717;--e-global-color-82cfcc0:#BEBEBE;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-5a838fc-font-family:"Source Sans Pro";--e-global-typography-5a838fc-font-size:1rem;--e-global-typography-5a838fc-font-weight:400;--e-global-typography-5a838fc-line-height:1.4em;--e-global-typography-5a838fc-word-spacing:0.08em;}.elementor-kit-19 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* HOME ONLY — overlap the hero under the header */
.home { --headerH: 120px; }                /* tune 100–140px if needed */

/* Remove any default gap between header template and page */
.home .elementor-location-header + .elementor,
.home header.elementor-location-header + .elementor,
.home header.elementor-location-header + main,
.home .elementor-location-header + main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Pull the first section up by the header height */
.home .elementor-location-header + .elementor > .elementor-section:first-child,
.home .elementor-location-header + main .elementor > .elementor-section:first-child {
  margin-top: calc(-1 * var(--headerH)) !important;
}

/* Keep header above hero */
.home .elementor-location-header {
  z-index: 9999;
  position: relative;
}

/* Admin bar tweak (while logged in) */
@media (min-width: 783px){
  body.admin-bar .elementor-location-header { top: 0; }
}

/* Mobile fine-tuning */
@media (max-width: 767px){
  .home { --headerH: 96px; }               /* adjust if the mobile header is shorter */
}
/* ===== Skyline service cards (no CSS vars) ===== */

/* Treat each slide/column/container as a card */
.service-cards .swiper-slide,
.service-cards .elementor-column,
.service-cards .e-con > .e-con-inner {
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(0, 42, 90, 0.08);
  border-radius: 14px;
  padding: 24px;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  overflow: hidden;
}
#about-text {
  max-width: 720px;
  margin: 56px auto 56px 0;  /* top | right | bottom | left */
  padding-left: 10%;         /* shift slightly left */
  text-align: left;
  font-size: 20px;
  line-height: 1.6;
  font-weight: 400;
  color: #222;
}


/* Optional: make sure it recenters on smaller screens */
@media (max-width: 1024px) {
  #about-text {
    margin: 50px auto;      /* equal spacing, no left bias */
    padding-left: 0;
  }
}
/* === Skyline showcase cards (image background + overlay text) === */
.showcase-card{
  position: relative;
  min-height: 360px;               /* card height */
  border-radius: 18px;
  overflow: hidden;
  padding: 24px;                   /* inner breathing for text */
  display: flex;                   /* let us position text */
  flex-direction: column;
  justify-content: flex-end;       /* text at the bottom; use center if you prefer */
  color: #fff;                     /* default text color on image */
  box-shadow: 0 6px 18px rgba(0,0,0,.10);
  transition: transform .35s ease, box-shadow .35s ease;
}

/* dark overlay for readability */
.showcase-card::before{
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.20) 20%, rgba(0,0,0,.55) 100%);
  transition: opacity .35s ease;
  z-index: 0;
}

/* lift + stronger overlay on hover */
.showcase-card:hover{
  transform: translateY(-6px) scale(1.01);
  box-shadow: 0 14px 32px rgba(0,0,0,.25);
}
.showcase-card:hover::before{ opacity: .95; }

/* make sure inner content sits above overlay */
.showcase-card > *{ position: relative; z-index: 1; }

/* small eyebrow (e.g., category) */
.showcase-card .eyebrow{
  font-size: 12px; letter-spacing: 2px; text-transform: uppercase;
  opacity: .9; margin-bottom: 8px;
}

/* main title */
.showcase-card .title{
  font-size: clamp(20px, 2.2vw, 28px);
  line-height: 1.25; font-weight: 600; margin: 0 0 12px;
}

/* optional description */
.showcase-card .desc{
  font-size: 15px; line-height: 1.6; opacity: .92; margin: 0 0 16px;
}

/* CTA button (Skyline gradient) */
.showcase-card .btn{
  align-self: flex-start;
  padding: 10px 18px; border-radius: 26px;
  background: linear-gradient(90deg,#004aad,#00bfff);
  color:#fff; font-weight: 600; text-decoration:none;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.showcase-card .btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,75,150,.35);
  background: linear-gradient(90deg,#003a88,#00a8ea);
}

/* responsive tune */
@media (max-width: 1024px){
  .showcase-card{ min-height: 320px; padding: 20px; }
}
@media (max-width: 767px){
  .showcase-card{ min-height: 280px; padding: 18px; }
}
.showcase-card{
  position: relative;
  min-height: 380px;
  border-radius: 18px;
  overflow: hidden;
  padding: 24px;
  display: flex; flex-direction: column;
  justify-content: flex-end; align-items: flex-start;
  color:#fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.10);
  transition: transform .35s ease, box-shadow .35s ease;
}
.showcase-card::before{
  content:""; position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.18) 20%, rgba(0,0,0,.55) 100%);
  z-index:0; transition:opacity .35s ease;
}
.showcase-card > *{ position:relative; z-index:1; } /* content above overlay */
.showcase-card:hover{
  transform: translateY(-6px) scale(1.01);
  box-shadow: 0 14px 32px rgba(0,0,0,.25);
}
.showcase-card:hover::before{ opacity:.95; }

/* optional typography helpers */
.showcase-card .eyebrow{ 
  font-size:12px; letter-spacing:2px; text-transform:uppercase; opacity:.9; margin:0 0 6px;
}
.showcase-card .title{ 
  font-size: clamp(20px,2.2vw,28px); line-height:1.25; font-weight:600; margin:0 0 8px;
}
.showcase-card .desc{ 
  font-size:15px; line-height:1.6; opacity:.92; margin:0 0 12px;
}
.showcase-card .btn{
  background: linear-gradient(90deg,#004aad,#00bfff); color:#fff;
  border-radius:26px; padding:10px 18px; font-weight:600; text-decoration:none;
  transition: transform .25s ease, box-shadow .25s ease;
}
.showcase-card .btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,75,150,.35);
}
/* Layout: text left, button right, on the bottom */
.showcase-card{
  display:flex; justify-content:space-between; align-items:flex-end;
  padding:28px; border-radius:18px; position:relative; overflow:hidden;
}
.showcase-card::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.18) 20%, rgba(0,0,0,.55) 100%);
  z-index:0;
}
.showcase-card > *{ position:relative; z-index:1; color:#fff; }

/* Button: transparent pill */
.showcase-card .elementor-button{
  background: transparent !important;
  border:2px solid #fff;
  color:#fff; border-radius:32px; padding:10px 22px;
  transition:.25s ease; margin-left:auto; align-self:flex-end;
}
.showcase-card .elementor-button:hover{
  background: rgba(255,255,255,.12);
  border-color:#00bfff; color:#00bfff;
}/* End custom CSS */