.elementor-348 .elementor-element.elementor-element-glhero00{--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;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glhero00:not(.elementor-motion-effects-element-type-background), .elementor-348 .elementor-element.elementor-element-glhero00 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1C221B;}.elementor-348 .elementor-element.elementor-element-glherol1{--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;--gap:22px 22px;--row-gap:22px;--column-gap:22px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glbtn001 .sik-section-button, .elementor-348 .elementor-element.elementor-element-glbtn001 .inner-buttons-wrapper{justify-content:flex-start;}.elementor-348 .elementor-element.elementor-element-glheror2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glgrid00{--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;--gap:44px 44px;--row-gap:44px;--column-gap:44px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-348 .elementor-element.elementor-element-glghead1{--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;--align-items:flex-end;--gap:24px 60px;--row-gap:24px;--column-gap:60px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glghl002{--display:flex;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glghr003{--display:flex;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glgal001 .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-348 .elementor-element.elementor-element-glgal001 .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-348 .elementor-element.elementor-element-glgal001{--image-border-radius:0px;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-348 .elementor-element.elementor-element-glcta000{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-348 .elementor-element.elementor-element-glcta000:not(.elementor-motion-effects-element-type-background), .elementor-348 .elementor-element.elementor-element-glcta000 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1C221B;}.elementor-348 .elementor-element.elementor-element-glctaro1{--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;--align-items:center;--gap:28px 56px;--row-gap:28px;--column-gap:56px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glctal02{--display:flex;--gap:18px 18px;--row-gap:18px;--column-gap:18px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glctar03{--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:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-348 .elementor-element.elementor-element-glbtn002 .sik-section-button, .elementor-348 .elementor-element.elementor-element-glbtn002 .inner-buttons-wrapper{justify-content:flex-start;}@media(min-width:768px){.elementor-348 .elementor-element.elementor-element-glherol1{--width:50%;}.elementor-348 .elementor-element.elementor-element-glheror2{--width:50%;}.elementor-348 .elementor-element.elementor-element-glgrid00{--content-width:1520px;}.elementor-348 .elementor-element.elementor-element-glghl002{--width:58%;}.elementor-348 .elementor-element.elementor-element-glghr003{--width:42%;}.elementor-348 .elementor-element.elementor-element-glcta000{--content-width:1520px;}.elementor-348 .elementor-element.elementor-element-glctal02{--width:62%;}.elementor-348 .elementor-element.elementor-element-glctar03{--width:38%;}}@media(max-width:767px){.elementor-348 .elementor-element.elementor-element-glhero00{--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-348 .elementor-element.elementor-element-glherol1{--width:100%;}.elementor-348 .elementor-element.elementor-element-glheror2{--width:100%;}.elementor-348 .elementor-element.elementor-element-glghead1{--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-348 .elementor-element.elementor-element-glghl002{--width:100%;}.elementor-348 .elementor-element.elementor-element-glghr003{--width:100%;}.elementor-348 .elementor-element.elementor-element-glctaro1{--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-348 .elementor-element.elementor-element-glctal02{--width:100%;}.elementor-348 .elementor-element.elementor-element-glctar03{--width:100%;}}/* Start custom CSS *//* ===== GCD Gallery page (managed block: gcd-gallery) ===== */
/* Elementor 4.x does not render _css_classes on CONTAINERS, only on widgets.
   Containers are therefore targeted by element id. */

/* --- theme chrome -------------------------------------------------- */
.gcd-warranty__hero{display:none !important;}
.entry-page-title{display:none !important;}
.elementor-348{overflow-x:hidden;}
.elementor-348 .e-con,.elementor-348 .elementor-widget{min-width:0;}

/* --- layout contract: boxed 1520 + 20px gutters --------------------- */
.elementor-348 .e-con.elementor-element-glgrid00{
  --padding-inline-start:20px !important;--padding-inline-end:20px !important;
  --padding-block-start:88px !important;--padding-block-end:88px !important;
}
.elementor-348 .e-con.elementor-element-glcta000{
  --padding-inline-start:20px !important;--padding-inline-end:20px !important;
  --padding-block-start:76px !important;--padding-block-end:76px !important;
}
/* full-bleed split: pad the SECTION (100%, excludes scrollbar), not the 50% column */
.elementor-348 .e-con.elementor-element-glhero00{
  --padding-inline-start:max(20px, calc((100% - 1520px)/2)) !important;
  --padding-inline-end:0px !important;
  --padding-block-start:0px !important;--padding-block-end:0px !important;
}
/* inner containers never re-add the gutter */
.elementor-348 .e-con.elementor-element-glherol1,
.elementor-348 .e-con.elementor-element-glheror2,
.elementor-348 .e-con.elementor-element-glghead1,
.elementor-348 .e-con.elementor-element-glghl002,
.elementor-348 .e-con.elementor-element-glghr003,
.elementor-348 .e-con.elementor-element-glctaro1,
.elementor-348 .e-con.elementor-element-glctal02,
.elementor-348 .e-con.elementor-element-glctar03{
  --padding-inline-start:0px !important;--padding-inline-end:0px !important;
  --padding-block-start:0px !important;--padding-block-end:0px !important;
}
.elementor-348 .e-con.elementor-element-glherol1{
  --padding-inline-end:clamp(24px,4vw,72px) !important;
  --padding-block-start:clamp(52px,6vw,104px) !important;
  --padding-block-end:clamp(52px,6vw,104px) !important;
}

/* --- type tokens ---------------------------------------------------- */
.elementor-348 .gcd-eyebrow .elementor-heading-title{
  display:flex;align-items:center;gap:16px;
  font-size:12px;font-weight:700;letter-spacing:2.2px;text-transform:uppercase;
  color:#4F7D14;margin:0;
}
.elementor-348 .gcd-eyebrow .elementor-heading-title::before{
  content:'';flex:0 0 34px;height:2px;background:#7ED321;
}
.elementor-348 .gcd-eyebrow--light .elementor-heading-title{color:#7ED321;}
.elementor-348 .gcd-eyebrow--light .elementor-heading-title::before{background:#7ED321;}

.elementor-348 .gcd-h1 .elementor-heading-title{
  font-size:clamp(34px,4vw,58px);line-height:1.03;letter-spacing:-.02em;
  font-weight:700;color:#FFFFFF;margin:0;
}
.elementor-348 .gcd-h2 .elementor-heading-title{
  font-size:clamp(32px,3.6vw,54px);line-height:1.04;letter-spacing:-.02em;
  font-weight:700;color:#14170F;margin:0;
}
.elementor-348 .gcd-h2--light .elementor-heading-title{color:#FFFFFF;}

.elementor-348 .gcd-lead{font-size:17px;line-height:1.6;color:#6B6B6B;max-width:460px;}
.elementor-348 .gcd-lead--light{color:#C3CCBC;}
.elementor-348 .gcd-lead p{margin:0;}
.elementor-348 .gcd-body{font-size:17px;line-height:1.7;color:#6B6B6B;max-width:520px;}
.elementor-348 .gcd-body p{margin:0;}

/* breadcrumb (heading widget, so target the inner title) */
.elementor-348 .gcd-crumb .elementor-heading-title{
  display:flex;align-items:center;gap:9px;font-size:13px;color:#8C9787;margin:0;font-weight:400;
}
.elementor-348 .gcd-crumb .elementor-heading-title a{color:#8C9787;text-decoration:none;}
.elementor-348 .gcd-crumb .elementor-heading-title a:hover{color:#7ED321;}
.elementor-348 .gcd-crumb .cur{color:#E8EDE3;}
.elementor-348 .gcd-crumb .sep{opacity:.55;}

/* --- buttons (theme sik-button) ------------------------------------- */
.elementor-348 .gcd-btn .sik-btn.btn-button{
  border-radius:999px !important;padding:13px 14px 13px 26px !important;border-style:solid !important;
}
.elementor-348 .gcd-btn .sik-btn .txt{white-space:nowrap;}
.elementor-348 .gcd-btn-green .sik-btn.btn-button{
  background-color:#7ED321 !important;border-color:#7ED321 !important;color:#14170F !important;
}
.elementor-348 .gcd-btn-green .sik-btn.btn-button.show-icon .icon{background-color:#14170F !important;color:#7ED321 !important;}
.elementor-348 .gcd-btn-green .sik-btn.btn-button:hover{background-color:#FFFFFF !important;border-color:#FFFFFF !important;color:#14170F !important;}
.elementor-348 .gcd-btn-green .sik-btn.btn-button:hover .icon{background-color:#14170F !important;color:#FFFFFF !important;}
.elementor-348 .gcd-btn-white .sik-btn.btn-button{
  background-color:#FFFFFF !important;border-color:#FFFFFF !important;color:#14170F !important;
}
.elementor-348 .gcd-btn-white .sik-btn.btn-button.show-icon .icon{background-color:#14170F !important;color:#FFFFFF !important;}
.elementor-348 .gcd-btn-white .sik-btn.btn-button:hover{background-color:#7ED321 !important;border-color:#7ED321 !important;color:#14170F !important;}
.elementor-348 .gcd-btn-white .sik-btn.btn-button:hover .icon{background-color:#14170F !important;color:#7ED321 !important;}

/* --- hero media half ------------------------------------------------ */
.elementor-348 .e-con.elementor-element-glheror2 .elementor-widget-image,
.elementor-348 .e-con.elementor-element-glheror2 figure{height:100%;margin:0;}
.elementor-348 .e-con.elementor-element-glheror2 img{
  width:100%;height:100%;min-height:560px;object-fit:cover;display:block;
}

/* --- gallery grid --------------------------------------------------- */
/* Pro Gallery grid sets tile height natively from --aspect-ratio, so every
   tile is equal height and the image is cover-cropped. */
.elementor-348 .gcd-gallery .e-gallery-item{
  overflow:hidden;
  transition:transform .32s ease, box-shadow .32s ease;
}
.elementor-348 .gcd-gallery .e-gallery-image{transition:transform .5s ease;}
.elementor-348 .gcd-gallery .e-gallery-item:hover{
  transform:translateY(-6px);box-shadow:0 18px 34px rgba(20,23,15,.16);
}
.elementor-348 .gcd-gallery .e-gallery-item:hover .e-gallery-image{transform:scale(1.045);}
.elementor-348 .gcd-gallery .elementor-gallery-item__overlay{
  background-color:rgba(28,34,27,.28);
}

/* --- dark CTA band --------------------------------------------------- */
.elementor-348 .e-con.elementor-element-glctal02 .gcd-lead{max-width:560px;}

/* --- responsive ------------------------------------------------------ */
@media(max-width:1024px){
  .elementor-348 .e-con.elementor-element-glgrid00{
    --padding-block-start:62px !important;--padding-block-end:62px !important;
  }
  .elementor-348 .e-con.elementor-element-glcta000{
    --padding-block-start:56px !important;--padding-block-end:56px !important;
  }
  .elementor-348 .e-con.elementor-element-glhero00{
    flex-direction:column;--padding-inline-start:0px !important;
  }
  .elementor-348 .e-con.elementor-element-glherol1,
  .elementor-348 .e-con.elementor-element-glheror2{width:100% !important;}
  .elementor-348 .e-con.elementor-element-glherol1{
    --padding-inline-start:24px !important;--padding-inline-end:24px !important;
  }
  .elementor-348 .e-con.elementor-element-glheror2 img{min-height:0;height:400px;}
  .elementor-348 .e-con.elementor-element-glctar03{align-items:flex-start;}
}
@media(max-width:767px){
  .elementor-348 .e-con.elementor-element-glgrid00{
    --padding-block-start:46px !important;--padding-block-end:46px !important;
  }
  .elementor-348 .e-con.elementor-element-glcta000{
    --padding-block-start:44px !important;--padding-block-end:44px !important;
  }
  .elementor-348 .gcd-h1 .elementor-heading-title{font-size:clamp(28px,8vw,36px);}
  .elementor-348 .gcd-h2 .elementor-heading-title{font-size:clamp(25px,7vw,33px);}
  .elementor-348 .gcd-eyebrow .elementor-heading-title{gap:12px;letter-spacing:1.8px;}
  .elementor-348 .gcd-eyebrow .elementor-heading-title::before{flex:0 0 22px;}
  .elementor-348 .gcd-lead,.elementor-348 .gcd-body{font-size:16px;max-width:none;}
  .elementor-348 .e-con.elementor-element-glheror2 img{height:260px;}
  .elementor-348 .gcd-btn .sik-btn .txt{white-space:normal;}
  .elementor-348 .gcd-crumb .elementor-heading-title{font-size:12px;gap:7px;}
}
/* ===== end managed block: gcd-gallery ===== */


/* --- hero media fix: the image's intrinsic ratio was driving the whole
       section to 1137px tall. Take it out of flow and let it fill. --- */
.elementor-348 .e-con.elementor-element-glhero00{min-height:620px;}
.elementor-348 .e-con.elementor-element-glheror2{position:relative;overflow:hidden;align-self:stretch;}
.elementor-348 .e-con.elementor-element-glheror2 .elementor-widget-image{position:absolute;inset:0;width:100%;height:100%;margin:0;}
.elementor-348 .e-con.elementor-element-glheror2 figure{height:100%;margin:0;}
.elementor-348 .e-con.elementor-element-glheror2 img{width:100%;height:100%;min-height:0 !important;object-fit:cover;display:block;}
@media(max-width:1024px){
.elementor-348 .e-con.elementor-element-glhero00{min-height:0;}
.elementor-348 .e-con.elementor-element-glheror2{position:static;height:400px;}
.elementor-348 .e-con.elementor-element-glheror2 .elementor-widget-image{position:static;height:100%;}
.elementor-348 .e-con.elementor-element-glheror2 img{height:100% !important;}
}
@media(max-width:767px){
.elementor-348 .e-con.elementor-element-glheror2{height:260px;}
}


/* ===== client feedback fixes ===== */
/* 3. theme reserves padding-bottom under the last section (main.main-content
      60/70/80px in synory/assets/css/style.css), which showed as a white strip
      between the dark CTA band and the global footer. */
#main.main-content{padding-bottom:0 !important;margin-bottom:0 !important;}

/* 2. Sources are MIXED orientation (21 portrait / 26 landscape). Masonry gives
      every tile its own natural aspect ratio, so nothing is cropped and there is
      no letterboxing — which is why the tile can now be filled with `cover`
      instead of `contain`. The tile ratio equals the image ratio, so `cover`
      crops nothing; it just removes sub-pixel gaps at the tile edges.
      NOTE: .e-gallery-image is a background-image DIV, not an <img>, so this is
      background-size, not object-fit. */
/* Masonry height comes from an inline padding-bottom that e-gallery.min.css
   TRANSITIONS (.e-gallery-container:not(.e-gallery-grid){transition:padding-bottom}).
   That animation only exists to smooth gallery-filter changes, and this gallery is
   gallery_type:single — there are no filter tabs, so nothing ever animates. Killing
   the transition makes the container take its full height immediately instead of
   easing into it, which also removes a 350ms layout shift on first paint. */
.elementor-348 .gcd-gallery .e-gallery-container{transition:none !important;}
.elementor-348 .gcd-gallery .e-gallery-item{background-color:#F4F5F6;}
.elementor-348 .gcd-gallery .e-gallery-image{background-size:cover !important;background-repeat:no-repeat;background-position:center center;}/* End custom CSS */