.elementor-2319 .elementor-element.elementor-element-2bf93af{--display:flex;--justify-content:flex-start;--gap:010px 010px;--row-gap:010px;--column-gap:010px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-2319 .elementor-element.elementor-element-2bf93af:not(.elementor-motion-effects-element-type-background), .elementor-2319 .elementor-element.elementor-element-2bf93af > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EBE6DAC4;}.elementor-2319 .elementor-element.elementor-element-0b380dd > .jet-listing-grid > .jet-listing-grid__items{--columns:1;}.elementor-2319 .elementor-element.elementor-element-0b380dd{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}:is( .elementor-2319 .elementor-element.elementor-element-0b380dd > .jet-listing-grid > .jet-listing-grid__items, .elementor-2319 .elementor-element.elementor-element-0b380dd > .jet-listing-grid > .jet-listing-grid__slider > .jet-listing-grid__items > .slick-list > .slick-track, .elementor-2319 .elementor-element.elementor-element-0b380dd > .jet-listing-grid > .jet-listing-grid__scroll-slider > .jet-listing-grid__items ) > .jet-listing-grid__item{padding-left:calc(0px / 2);padding-right:calc(0px / 2);}:is( .elementor-2319 .elementor-element.elementor-element-0b380dd > .jet-listing-grid, .elementor-2319 .elementor-element.elementor-element-0b380dd > .jet-listing-grid > .jet-listing-grid__slider, .elementor-2319 .elementor-element.elementor-element-0b380dd > .jet-listing-grid > .jet-listing-grid__scroll-slider ) > .jet-listing-grid__items{margin-left:calc( 0px / -2);margin-right:calc( 0px / -2);width:calc(100% + 0px);}.elementor-2319 .elementor-element.elementor-element-0c4e02a{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2319 .elementor-element.elementor-element-f02ce2b{width:100%;max-width:100%;margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0% 0% 0% 0%;text-align:start;}.elementor-2319 .elementor-element.elementor-element-f02ce2b .elementor-heading-title{font-family:"Noto Sans SC", Sans-serif;font-size:19px;font-weight:300;text-transform:uppercase;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2319 .elementor-element.elementor-element-a80bc7c{--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;--margin-top:-4%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-2319 .elementor-element.elementor-element-a80bc7c:not(.elementor-motion-effects-element-type-background), .elementor-2319 .elementor-element.elementor-element-a80bc7c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EBE6DA00;}.elementor-2319 .elementor-element.elementor-element-def30dd{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2319 .elementor-element.elementor-element-460296b{--display:flex;}.elementor-2319 .elementor-element.elementor-element-0f75ab8{width:100%;max-width:100%;margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0% 0% 0% 1%;text-align:start;}.elementor-2319 .elementor-element.elementor-element-0f75ab8 .elementor-heading-title{font-family:"Noto Sans SC", Sans-serif;font-size:19px;font-weight:300;text-transform:uppercase;}.elementor-2319 .elementor-element.elementor-element-1586b74{--display:flex;}.elementor-2319 .elementor-element.elementor-element-79d744f{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 3%) 0%;}.elementor-2319 .elementor-element.elementor-element-35f1c8e{--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;}body.elementor-page-2319:not(.elementor-motion-effects-element-type-background), body.elementor-page-2319 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EBE6DA;}@media(max-width:1366px){.elementor-2319 .elementor-element.elementor-element-f02ce2b{margin:-6% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-2319 .elementor-element.elementor-element-0f75ab8{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}}@media(max-width:1200px){.elementor-2319 .elementor-element.elementor-element-f02ce2b{margin:-7% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-2319 .elementor-element.elementor-element-0f75ab8{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-2319 .elementor-element.elementor-element-79d744f{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}}@media(max-width:1024px){.elementor-2319 .elementor-element.elementor-element-2bf93af{--padding-top:0%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-2319 .elementor-element.elementor-element-0b380dd{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2319 .elementor-element.elementor-element-f02ce2b{margin:-10% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-2319 .elementor-element.elementor-element-a80bc7c{--margin-top:-6%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-2319 .elementor-element.elementor-element-0f75ab8{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}}@media(max-width:880px){.elementor-2319 .elementor-element.elementor-element-2bf93af{--padding-top:5%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-2319 .elementor-element.elementor-element-0b380dd > .jet-listing-grid > .jet-listing-grid__items{--columns:2;}.elementor-2319 .elementor-element.elementor-element-f02ce2b{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0% 0% 0% 01%;}.elementor-2319 .elementor-element.elementor-element-a80bc7c{--margin-top:-7%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-2319 .elementor-element.elementor-element-0f75ab8{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0% 0% 0% 01%;}}@media(max-width:767px){.elementor-2319 .elementor-element.elementor-element-2bf93af{--padding-top:15%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-2319 .elementor-element.elementor-element-f02ce2b{padding:0% 0% 0% 01%;}.elementor-2319 .elementor-element.elementor-element-f02ce2b .elementor-heading-title{font-size:18px;}.elementor-2319 .elementor-element.elementor-element-a80bc7c{--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-2319 .elementor-element.elementor-element-460296b{--width:45%;--justify-content:center;}.elementor-2319 .elementor-element.elementor-element-0f75ab8{width:100%;max-width:100%;padding:0% 0% 0% 0%;}.elementor-2319 .elementor-element.elementor-element-0f75ab8 .elementor-heading-title{font-size:15px;}.elementor-2319 .elementor-element.elementor-element-1586b74{--width:45%;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}}/* Start custom CSS for jet-listing-grid, class: .elementor-element-0b380dd *//* MIDDLE GROUND - Compromise between portrait and landscape */
/* Container - Keep working setup */
.project-gallery-scroll .jet-listing-grid__items {
    display: flex !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    flex-wrap: nowrap !important;
    padding-left: 01vw !important;
    padding-right: 10vw !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    width: 100% !important;
    box-sizing: border-box !important;
}

.project-gallery-scroll .jet-listing-grid__items::-webkit-scrollbar {
    display: none;
}

/* Items - DESKTOP DIMENSIONS */
.jet-listing-grid__item {
    width: 45vw !important;
    min-width: 40vw !important;
    max-width: 45vw !important;
    height: 78vh !important;
    min-height: 78vh !important;
    max-height: 78vh !important;
    margin-right: 8px !important;
    
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    flex-basis: 40vw !important;
    
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    overflow: hidden !important;
    position: relative !important;
    
    background: transparent !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Images - Desktop */
.jet-listing-grid__item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 30% !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Reduce space around title */
.jet-listing-grid__item h2,
.jet-listing-grid__item h3,
.jet-listing-grid__item .elementor-heading-title,
.jet-listing-grid__item .jet-listing-dynamic-field {
    margin: 0 !important;
    padding: 0 !important;
}

.jet-listing-grid__item:last-child {
    margin-right: 0 !important;
}

/* TABLET responsive */
@media (max-width: 1024px) and (min-width: 769px) {
    .jet-listing-grid__item {
        width: 42vw !important;
        min-width: 42vw !important;
        max-width: 42vw !important;
        height: 75vh !important;
        min-height: 75vh !important;
        max-height: 75vh !important;
        flex-basis: 42vw !important;
    }
}

/* MOBILE responsive */
@media (max-width: 768px) {
    .project-gallery-scroll .jet-listing-grid__items {
        padding-left: 1vw !important;
        padding-right: 1vw !important;
    }
    
    .jet-listing-grid__item {
        width: 85vw !important;
        min-width: 85vw !important;
        max-width: 85vw !important;
        height: 65vh !important;
        min-height: 65vh !important;
        max-height: 65vh !important;
        flex-basis: 85vw !important;
        margin-right: 6px !important;
        gap: 3px !important;
    }
}

/* SMALL MOBILE responsive */
@media (max-width: 480px) {
    .jet-listing-grid__item {
        width: 90vw !important;
        min-width: 90vw !important;
        max-width: 90vw !important;
        height: 60vh !important;
        min-height: 60vh !important;
        max-height: 60vh !important;
        flex-basis: 90vw !important;
    }
}

/* Desktop */
@media (min-width:1200px){
  .elementor-2319 .elementor-element.elementor-element-0b380dd { margin-top: -65px !important; }
}
/* Large tablet */
@media (min-width:1024px) and (max-width:1199px){
  .elementor-2319 .elementor-element.elementor-element-0b380dd { margin-top: -56px !important; }
}
/* Tablet */
@media (min-width:768px) and (max-width:1023px){
  .elementor-2319 .elementor-element.elementor-element-0b380dd { margin-top: -44px !important; }
}
/* Mobile */
@media (max-width:767px){
  .elementor-2319 .elementor-element.elementor-element-0b380dd { margin-top: -28px !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0c4e02a *//* Hide by default (before JS moves it) */
.elementor-2319 .elementor-element.elementor-element-0c4e02a { visibility: hidden; }

/* Show + perfectly centre once JS tags it */
.elementor-2319 .elementor-element.elementor-element-0c4e02a.is-in-grid{
  visibility: visible;
  display: grid;
  place-items: center;              /* centres V & H */
  background: #efece1;
  box-sizing: border-box;
  padding: clamp(16px, 3vw, 36px);
  text-align: left;
  height: 100%;
}

/* Keep the text column a nice readable width */
.elementor-2319 .elementor-element.elementor-element-0c4e02a.is-in-grid > .e-con-inner,
.elementor-2319 .elementor-element.elementor-element-0c4e02a.is-in-grid > .elementor-widget-wrap{
  width: min(46ch, 95%);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
}

/* Typography */
.elementor-2319 .elementor-element.elementor-element-0c4e02a .elementor-heading-title{
  margin: 0 0 .5rem 0;
  font-size: clamp(14px, 1vw, 18px);
  letter-spacing: .04em;
  text-transform: uppercase;
}
.elementor-2319 .elementor-element.elementor-element-0c4e02a .jet-listing-dynamic-field{
  margin: 0;
  font-size: clamp(13px, .95vw, 16px);
  line-height: 1.5;
}

/* Center the text and make the content span wider */
.elementor-2319 .elementor-element.elementor-element-0c4e02a.is-in-grid{ 
  text-align: center !important;          /* center heading + body */
}

/* widen the readable line length */
.elementor-2319 .elementor-element.elementor-element-0c4e02a.is-in-grid > .e-con-inner,
.elementor-2319 .elementor-element.elementor-element-0c4e02a.is-in-grid > .elementor-widget-wrap{
  width: min(72ch, 92%) !important;       /* increase from ~46ch */
  margin: 0 auto !important;
}

/* ensure widgets inherit the centering */
.elementor-2319 .elementor-element.elementor-element-0c4e02a .elementor-heading-title,
.elementor-2319 .elementor-element.elementor-element-0c4e02a .jet-listing-dynamic-field{
  text-align: inherit !important;
}

/* HEADER ONLY — center it and match the contact style */
.elementor-2319 .elementor-element.elementor-element-0c4e02a .elementor-heading-title{
  text-align: center !important;     /* force centered */
  text-transform: uppercase;         /* keep caps */
  letter-spacing: .08em;             /* subtle tracking like contact */
  font-weight: 500;                  /* adjust weight; 400–600 as you prefer */
  margin: 0 0 .9rem 0 !important;    /* tidy space above body copy */
  line-height: 1.2;
}

/* Intro card heading: light Noto Sans SC, not bold */
.elementor-2319 .elementor-element.elementor-element-0c4e02a .elementor-heading-title{
  font-family: "Noto Sans SC", sans-serif !important;
  font-weight: 300 !important;                /* light */
  font-variation-settings: "wght" 300;        /* if variable font is loaded */
  text-transform: uppercase;                  /* keep caps */
  letter-spacing: .08em;
  margin: 0 0 .9rem 0 !important;
  line-height: 1.2;
}

/* If anything inside forces bold, neutralize it */
.elementor-2319 .elementor-element.elementor-element-0c4e02a .elementor-heading-title b,
.elementor-2319 .elementor-element.elementor-element-0c4e02a .elementor-heading-title strong,
.elementor-2319 .elementor-element.elementor-element-0c4e02a .elementor-heading-title span{
  font-weight: 300 !important;
}

.elementor-2319 .elementor-element.elementor-element-0c4e02a.is-in-grid{ overflow:auto; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2bf93af */.elementor-2319 .elementor-element.elementor-element-2bf93af { overflow: visible !important; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-79d744f *//* Flow-based version: keep position static, control with margins */
.pg-arrows-new {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 24px;
  margin-top: 5px;  /* desktop default */
  padding-right: 40px;
  position: static;  /* important: not absolute */
  z-index: 1;
}

.pg-arrow-new {
  width: 24px;
  height: 24px;
  position: relative;
  cursor: pointer;
  color: #000;
}

/* thinner chevrons */
.pg-arrow-new::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  border-style: solid;
  border-width: 1px 1px 0 0;   /* thinner stroke */
  border-color: currentColor;
  transform: translate(-50%, -50%) rotate(45deg);
  display: block;
}

.pg-prev::before { transform: translate(-50%, -50%) rotate(-135deg); }
.pg-next::before { transform: translate(-50%, -50%) rotate(45deg); }

/* Tablet */
@media (max-width: 1024px) {
  .pg-arrows-new {
    margin-top: 5px;     /* move up more on tablet */
    padding-right: 30px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .pg-arrows-new {
    margin-top: px;     /* move up even more on mobile */
    padding-right: 20px;
    gap: 18px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a80bc7c */.project-slide {
  position: relative;
}/* End custom CSS */