.elementor-kit-6{--e-global-color-primary:#455560;--e-global-color-secondary:#202A30;--e-global-color-text:#455560;--e-global-color-accent:#E31937;--e-global-color-c5742e9:#E31937;--e-global-color-2fbea47:#455560;--e-global-color-05c5cc3:#F4F4F4;--e-global-color-e861144:#202A30;--e-global-color-8f933ed:#192227;--e-global-color-d32a8a7:#34434C;--e-global-color-661cb58:#6F7D86;--e-global-color-c3071c0:rgba(69,85,96,0.14);--e-global-typography-primary-font-family:"sitka-heading";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"sitka-heading";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:600;font-family:"Poppins", sans-serif;font-weight:400;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}body{overflow-x:inherit !important;}.elementor a, .elementor a:link, .elementor a:focus, .elementor a:active, .elementor a:hover{text-decoration:inherit !important;}.elementor a:link, .elementor .smooth-hover a:link, {transition:inherit;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1390px;}.e-con{--container-max-width:1390px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@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 *//* Web fonts (Sitka via Adobe kit + Spectral) are enqueued in wp-content/novamira-sandbox/sg-font-loading.php.
   Do NOT re-add @import here: Elementor writes this block to the END of post-6.css, where @import is invalid and ignored. */
h1,h2,h3,h4{font-family:'sitka-heading','Spectral',Georgia,'Times New Roman',serif !important;}
h1 em,h2 em,h3 em,h4 em{font-style:italic;font-weight:300;}
/* Footer/header logo knockout */
.sg-logo-white img{filter:brightness(0) invert(1);height:64px;width:auto;}
.sg-footer a{transition:color .2s}
.sg-footer a:hover{color:#e31937 !important}

/* Header scroll-state color swaps (plugin handles bg+logo) */
.sg-header .elementor-nav-menu .elementor-item{color:#ffffff;}
.sg-header .sg-phone,.sg-header .sg-phone a{color:#ffffff;}
.sg-header.elementor-sticky--effects .elementor-nav-menu .elementor-item{color:#455560 !important;}
.sg-header.elementor-sticky--effects .sg-phone,.sg-header.elementor-sticky--effects .sg-phone a{color:#455560 !important;}
.sg-header.elementor-sticky--effects .sg-cta .elementor-button{color:#202a30 !important;border-color:rgba(69,85,96,.4) !important;}

/* Nav: spacing + red underline pointer */
.sg-nav .elementor-item{margin:0 14px;}
.sg-nav .e--pointer-underline .elementor-item:before,.sg-nav .e--pointer-underline .elementor-item:after{background-color:#e31937;}
.sg-phone a{white-space:nowrap;}

/* ===== Home page helpers ===== */
.sg-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:.7em;font-weight:600;text-transform:uppercase;letter-spacing:.22em;}
.sg-eyebrow .elementor-heading-title:before{content:'';width:26px;height:1px;background:currentColor;display:inline-block;flex:0 0 auto;}
.sg-eyebrow.sg-eyebrow--center .elementor-heading-title{justify-content:center;}
/* Service cards */
.sg-svc{border-top:3px solid transparent !important;transition:.3s ease;}
.sg-svc:hover{border-top-color:#e31937 !important;transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(32,42,48,.5);}
.sg-svc .sg-more{font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.8rem;}
.sg-svc:hover .sg-more .elementor-heading-title{color:#e31937 !important;}
/* Projects asymmetric grid */
.sg-proj-grid{display:grid !important;grid-template-columns:repeat(6,1fr);gap:18px;}
.sg-proj-feature{grid-column:span 4;}
.sg-proj-half{grid-column:span 2;}
.sg-proj-third{grid-column:span 3;}
.sg-proj{overflow:hidden;transition:transform .35s ease;}
.sg-proj:hover{transform:translateY(-3px);}
@media(max-width:1024px){.sg-proj-grid{grid-template-columns:1fr;}.sg-proj-feature,.sg-proj-half,.sg-proj-third{grid-column:span 1;}}
/* Category chip */
.sg-chip .elementor-heading-title{display:inline-block;background:#e31937;color:#fff;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;padding:5px 11px;border-radius:2px;}
/* Section padding helper */
.sg-pad-y{padding-top:104px;padding-bottom:104px;}
@media(max-width:767px){.sg-pad-y{padding-top:64px;padding-bottom:64px;}}

/* Hero (Pro Slides) sizing */
.sg-hero .elementor-slide-heading{font-size:clamp(2.4rem,5.5vw,5rem) !important;font-weight:500 !important;max-width:18ch;line-height:1.08;}
.sg-hero .elementor-slide-description{font-size:1.1rem !important;max-width:48ch;opacity:.92;}
.sg-hero .elementor-slide-content{padding-bottom:clamp(70px,11vh,120px);}
/* Project card gradient overlay */
.sg-proj{position:relative;}
.sg-proj:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,27,32,.92),rgba(20,27,32,.15) 55%,transparent);z-index:1;pointer-events:none;}
.sg-proj > .e-con-inner{position:relative;z-index:2;}
/* Client chips */
.sg-clientchip .elementor-heading-title{background:#fff;border:1px solid rgba(69,85,96,.14);padding:12px 18px;border-radius:2px;font-weight:600;color:#455560;display:inline-block;}
/* Faint service numbers */
.sg-num .elementor-heading-title{color:rgba(69,85,96,.18) !important;}

/* ===== ID-based container hooks ===== */
#sg-header.elementor-sticky--effects .elementor-nav-menu .elementor-item{color:#455560 !important;}
#sg-header.elementor-sticky--effects .sg-phone,#sg-header.elementor-sticky--effects .sg-phone a{color:#455560 !important;}
#sg-header.elementor-sticky--effects .sg-phone .elementor-icon-list-text,.sg-header.elementor-sticky--effects .sg-phone .elementor-icon-list-text{color:#455560 !important;}
#sg-header.elementor-sticky--effects .sg-cta .elementor-button{color:#202a30 !important;border-color:rgba(69,85,96,.4) !important;}
#sg-svc-grid > .e-con{border-top:3px solid transparent;transition:.3s ease;}
#sg-svc-grid > .e-con:hover{border-top-color:#e31937;transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(32,42,48,.5);}
#sg-proj-grid > .e-con{position:relative;overflow:hidden;border-radius:3px;}
#sg-proj-grid > .e-con:nth-child(1){grid-column:span 4;}
#sg-proj-grid > .e-con:nth-child(2){grid-column:span 2;}
#sg-proj-grid > .e-con:nth-child(3){grid-column:span 3;}
#sg-proj-grid > .e-con:nth-child(4){grid-column:span 3;}
#sg-proj-grid > .e-con:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,27,32,.92),rgba(20,27,32,.15) 55%,transparent);z-index:1;pointer-events:none;}
#sg-proj-grid > .e-con > .e-con-inner{position:relative;z-index:2;}
@media(max-width:1024px){#sg-proj-grid > .e-con{grid-column:span 1 !important;}}

/* Hero: align slide content to the 1390 container (bottom-left) */
.sg-hero .elementor-slide-content{width:100%;max-width:1390px;margin-left:auto;margin-right:auto;padding-left:45px;padding-right:45px;box-sizing:border-box;}

/* Hero: align slide content to 1390 container (real wrapper = .swiper-slide-contents) */
.sg-hero .swiper-slide-inner{padding-left:0 !important;padding-right:0 !important;}
.sg-hero .swiper-slide-contents{width:100% !important;max-width:1390px !important;margin-left:auto !important;margin-right:auto !important;padding-left:45px !important;padding-right:45px !important;padding-bottom:clamp(70px,11vh,120px) !important;box-sizing:border-box;text-align:left;}

/* Stats counters left-aligned */
#sg-stats .elementor-counter-number-wrapper{justify-content:flex-start;}
#sg-stats .elementor-counter-title{text-align:left;margin-top:10px;}

/* Solid sub-page header: shrink on scroll */
#sg-header-solid{transition:min-height .35s ease;}
#sg-header-solid.elementor-sticky--effects{min-height:84px !important;box-shadow:0 1px 0 rgba(69,85,96,.14),0 10px 30px -18px rgba(0,0,0,.25);}
#sg-header-solid .sg-logo img{transition:height .35s ease;}
#sg-header-solid.elementor-sticky--effects .sg-logo img{height:64px !important;}
#sg-header-solid .sg-cta .elementor-button:hover{background:#e31937 !important;color:#fff !important;border-color:#e31937 !important;}

/* ===== Sub-page helpers ===== */
.sg-checks2 .elementor-icon-list-items{display:grid;grid-template-columns:1fr 1fr;gap:6px 26px;}
@media(max-width:767px){.sg-checks2 .elementor-icon-list-items{grid-template-columns:1fr;}}
.sg-crumb a:hover{color:#fff !important;}
/* value/feature card hover via id */
.sg-cardgrid > .e-con{transition:.3s ease;border-top:3px solid transparent;}
.sg-cardgrid > .e-con:hover{border-top-color:#e31937;transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(32,42,48,.5);}

/* Feature/market/value cards (id hook) */
#sg-cardgrid > .e-con{transition:.3s ease;border-top:3px solid transparent;}
#sg-cardgrid > .e-con:hover{border-top-color:#e31937;transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(32,42,48,.5);}

/* About timeline */
#sg-timeline{border-left:2px solid rgba(69,85,96,.14);max-width:880px;}
#sg-timeline > .e-con{position:relative;}
#sg-timeline > .e-con:before{content:'';position:absolute;left:-9px;top:6px;width:16px;height:16px;border-radius:50%;background:#e31937;box-shadow:0 0 0 5px #f4f4f4;}
/* About expertise checks + member photos */
.sg-memberphoto{background:linear-gradient(150deg,#5a6770,#33414a);} .sg-founderphoto{background:linear-gradient(150deg,#46555f,#222d33);}

/* Stat numerals: force lining figures so digits sit on the baseline next to % */
.sg-stat-num .elementor-heading-title,#sg-stats .elementor-counter-number-wrapper{font-variant-numeric:lining-nums tabular-nums;font-feature-settings:'lnum' 1,'tnum' 1;}

/* Leadership social icons (Elementor renders FA as inline SVG, not <i>) */
.sg-social .elementor-icon-list-icon i,.sg-social .elementor-icon-list-icon svg{transition:color .2s ease,fill .2s ease;}
.sg-social .elementor-icon-list-item:hover .elementor-icon-list-icon i{color:#e31937 !important;}
.sg-social .elementor-icon-list-item:hover .elementor-icon-list-icon svg{fill:#e31937 !important;}
.sg-social .elementor-icon-list-text{display:none;}

/* Mobile burger dropdown (home header widget fd6bb30): make the hover/active
   background full-bleed. Elementor Pro paints it on the <a>, so the anchor and
   its li/ul ancestors must fill the whole dropdown panel. */
.elementor-element-fd6bb30 .elementor-nav-menu--dropdown.elementor-nav-menu__container,.elementor-element-sg-sub-mobile-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container{width:100vw !important;max-width:100vw !important;left:auto !important;right:0 !important;}
.elementor-element-fd6bb30 .elementor-nav-menu--dropdown .elementor-nav-menu,.elementor-element-sg-sub-mobile-nav .elementor-nav-menu--dropdown .elementor-nav-menu{width:100% !important;margin:0 !important;padding:0 !important;}
.elementor-element-fd6bb30 .elementor-nav-menu--dropdown .elementor-nav-menu > li,.elementor-element-sg-sub-mobile-nav .elementor-nav-menu--dropdown .elementor-nav-menu > li{width:100% !important;margin-left:0 !important;margin-right:0 !important;padding-left:0 !important;padding-right:0 !important;list-style:none !important;}
.elementor-element-fd6bb30 .elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item,.elementor-element-sg-sub-mobile-nav .elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item{display:flex !important;width:100% !important;margin-left:0 !important;margin-right:0 !important;border-inline-start-width:0 !important;box-sizing:border-box !important;}

/* Client-logo strip (5caf697) sits at the bottom of section 218d00f and shares
   its #202a30 background. The section's .sg-pad-y bottom padding therefore reads
   as part of the strip, making it look ~200px tall with the logos above centre.
   The strip supplies its own 40px top/bottom padding, so drop the section's on mobile.
   Needs the extra class for specificity: .sg-pad-y's plain padding-bottom otherwise
   beats Elementor's padding-block-end on .e-con-full. */
@media(max-width:767px){.elementor-element-218d00f.sg-pad-y{padding-bottom:0;}}

/* The header phone is now an Icon List widget. The sticky colour swap above only
   sets `color`; Elementor renders the icon as an inline SVG, which takes `fill`. */
.sg-header .sg-phone .elementor-icon-list-icon svg{fill:#ffffff;}
.sg-header.elementor-sticky--effects .sg-phone .elementor-icon-list-icon svg,#sg-header.elementor-sticky--effects .sg-phone .elementor-icon-list-icon svg{fill:#455560 !important;}
/* Single-item phone list: kill the list-item bottom spacing so it aligns with the CTA. */
.sg-phone .elementor-icon-list-items{margin:0;}
.sg-phone .elementor-icon-list-item{align-items:center;}

/* === SG PROJECT GALLERY (page 435) === */
/* Filter chips (JetSmartFilters radio #914; markup: .jet-radio-list > form.jet-radio-list-wrapper > fieldset > .jet-radio-list__row > label.jet-radio-list__item) */
#sg-project-filter .jet-radio-list-wrapper{margin:0}
#sg-project-filter .jet-radio-list-wrapper fieldset{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 22px;margin:0;padding:0;border:0}
#sg-project-filter .jet-radio-list__row{width:auto;margin:0;padding:0}
#sg-project-filter .jet-radio-list .jet-radio-list__item{position:relative;display:inline-flex;align-items:center;margin:0;padding:8px 4px 10px;font-family:'Poppins',sans-serif;font-size:13.5px;font-weight:500;line-height:1.4;color:#8a969e;cursor:pointer;transition:color .2s}
#sg-project-filter .jet-radio-list__button{display:inline-flex;align-items:center;padding:0;margin:0}
#sg-project-filter .jet-radio-list__decorator{display:none!important}
#sg-project-filter .jet-radio-list__label{color:inherit;font:inherit;padding:0;margin:0}
#sg-project-filter .jet-radio-list__item::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:#e31937;transition:right .3s cubic-bezier(.22,.61,.36,1)}
#sg-project-filter .jet-radio-list__item:hover{color:#455560}
#sg-project-filter .jet-radio-list__item:has(.jet-radio-list__input:checked){color:#26333d;font-weight:600}
#sg-project-filter .jet-radio-list__item:has(.jet-radio-list__input:checked)::after{right:0}
#sg-project-filter .jet-filter-label,#sg-project-filter .apply-filters{display:none}
/* Tiles (JetEngine listing grid #project-gallery, listing item 'Project Tile' #915) */
#project-gallery .jet-listing-grid__item>.elementor>.e-con{aspect-ratio:4/3;min-height:0;cursor:pointer;border-radius:25px;overflow:hidden;transition:transform .7s cubic-bezier(.22,.61,.36,1)}
#project-gallery .jet-listing-grid__item:hover>.elementor>.e-con{transform:scale(1.03)}
#project-gallery .jet-listing-grid__item>.elementor>.e-con>.e-con{width:100%}
#project-gallery .sg-tile-cat,#project-gallery .sg-tile-cat *{font-family:'Poppins',sans-serif;font-size:10px;font-weight:500;line-height:1.2;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.6);text-decoration:none}
#project-gallery .sg-tile-cat{margin-bottom:11px}
#project-gallery .sg-tile-title .jet-listing-dynamic-field__content{font-family:'sitka-heading','Spectral',Georgia,serif;font-weight:400;font-size:30px;line-height:1.16;letter-spacing:.01em;color:#fff;margin:0}
#project-gallery .sg-tile-title .jet-listing-dynamic-field__content::after{content:"";display:block;width:30px;height:2px;background:#e31937;margin-top:16px;transition:width .45s cubic-bezier(.22,.61,.36,1)}
#project-gallery .jet-listing-grid__item:hover .sg-tile-title .jet-listing-dynamic-field__content::after{width:64px}
#project-gallery .sg-tile-blurb .jet-listing-dynamic-field__content{font-family:'Poppins',sans-serif;font-size:14.5px;font-weight:400;line-height:1.6;color:rgba(255,255,255,.76);margin:15px 0 0;max-width:44ch;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#project-gallery .sg-tile-meta .jet-listing-dynamic-field__content{font-family:'Poppins',sans-serif;font-size:11.5px;font-weight:400;line-height:1.4;letter-spacing:.06em;color:rgba(255,255,255,.5);margin-top:16px}
#project-gallery .jet-listing-not-found{padding:70px 0;text-align:center;color:#98a3ab;font-size:14.5px}
@media(max-width:767px){#project-gallery .sg-tile-title .jet-listing-dynamic-field__content{font-size:24px}}
/* Popup (JetPopup #911 'Project Gallery'; slider = JetEngine Swiper gallery) */
#sg-popup-body .sg-pop-cat,#sg-popup-body .sg-pop-cat *{font-family:'Poppins',sans-serif;font-size:9.5px;font-weight:500;line-height:1.2;letter-spacing:.2em;text-transform:uppercase;color:#e31937;text-decoration:none}
#sg-popup-body .sg-pop-cat{margin-bottom:9px}
#sg-popup-body .sg-pop-title .jet-listing-dynamic-field__content{font-family:'sitka-heading','Spectral',Georgia,serif;font-weight:400;font-size:26px;line-height:1.2;color:#fff;margin:0 0 7px}
#sg-popup-body .sg-pop-blurb .jet-listing-dynamic-field__content{font-family:'Poppins',sans-serif;font-size:13px;font-weight:400;line-height:1.6;color:rgba(255,255,255,.6);max-width:62ch;margin:0}
#sg-popup-body .sg-pop-slider{margin-top:6px}
#sg-popup-body .sg-pop-slider .jet-listing-dynamic-field__content{padding:0}
#sg-popup-body .jet-engine-gallery-slider{padding:0;position:relative;overflow:hidden}
#sg-popup-body .jet-engine-gallery-slider .swiper-wrapper{align-items:center}
#sg-popup-body .jet-engine-gallery-slider__item{display:flex;align-items:center;justify-content:center}
#sg-popup-body .jet-engine-gallery-slider__item img{width:100%;max-width:calc(100% - 156px);height:auto;max-height:66vh;object-fit:contain;margin:0 auto}
#sg-popup-body .jet-engine-arrow{position:absolute;top:calc(50% - 14px);transform:translateY(-50%);width:52px;height:52px;margin:0;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);color:#fff;z-index:3;transition:.22s;display:flex!important;align-items:center;justify-content:center;border-radius:0;cursor:pointer}
#sg-popup-body .jet-engine-arrow svg{width:22px;height:22px}
#sg-popup-body .jet-engine-arrow svg path{fill:currentColor}
#sg-popup-body .jet-engine-arrow:hover{background:#e31937;border-color:#e31937;color:#fff}
#sg-popup-body .jet-engine-arrow.prev-arrow{left:18px}
#sg-popup-body .jet-engine-arrow.next-arrow{right:18px}
#sg-popup-body .swiper-pagination,#sg-popup-body .jet-engine-swiper-pagination-wrapper{position:static;margin:14px 0 0;display:flex;justify-content:center;gap:6px}
#sg-popup-body .swiper-pagination-bullet{width:8px;height:8px;margin:0;background:rgba(255,255,255,.4);opacity:1;border-radius:0}
#sg-popup-body .swiper-pagination-bullet-active{background:#e31937}
.jet-popup-911 .jet-popup__close-button{width:42px;height:42px;display:grid;place-items:center;background:transparent;border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.8);border-radius:0;transition:.22s;top:26px;right:34px}
.jet-popup-911 .jet-popup__close-button:hover{background:#e31937;border-color:#e31937;color:#fff}
@media(max-width:760px){#sg-popup-body .sg-pop-blurb{display:none}#sg-popup-body .sg-pop-title .jet-listing-dynamic-field__content{font-size:20px}#sg-popup-body .jet-engine-gallery-slider__item img{max-width:100%}#sg-popup-body .jet-engine-arrow{width:38px;height:38px;background:rgba(11,17,21,.55);border-color:rgba(255,255,255,.2)}#sg-popup-body .jet-engine-arrow svg{width:18px;height:18px}#sg-popup-body .jet-engine-arrow.prev-arrow{left:6px}#sg-popup-body .jet-engine-arrow.next-arrow{right:6px}.jet-popup-911 .jet-popup__close-button{top:12px;right:12px;width:36px;height:36px}}
/* === /SG PROJECT GALLERY === *//* End custom CSS */