.elementor-218211 .elementor-element.elementor-element-244099e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-218211 .elementor-element.elementor-element-73b6115{--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;--justify-content:space-between;--align-items:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:rgba(255,255,255,0.08);--border-color:rgba(255,255,255,0.08);--padding-top:14px;--padding-bottom:14px;--padding-left:24px;--padding-right:24px;}.elementor-218211 .elementor-element.elementor-element-73b6115:not(.elementor-motion-effects-element-type-background), .elementor-218211 .elementor-element.elementor-element-73b6115 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:rgba(31,29,25,0.94);}.elementor-218211 .elementor-element.elementor-element-f1057e0{text-align:start;}.elementor-218211 .elementor-element.elementor-element-f1057e0 img{width:190px;}.elementor-218211 .elementor-element.elementor-element-d6e9c8f.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-218211 .elementor-element.elementor-element-e3ccacf .elementor-button{background-color:#F4313F;font-family:"Inter", Sans-serif;font-size:14px;font-weight:800;text-transform:uppercase;line-height:1em;letter-spacing:1.4px;fill:#FFFFFF;color:#FFFFFF;border-radius:2px 2px 2px 2px;padding:14px 22px 14px 22px;}.elementor-218211 .elementor-element.elementor-element-e3ccacf .elementor-button:hover, .elementor-218211 .elementor-element.elementor-element-e3ccacf .elementor-button:focus{background-color:#2C2A25;color:#FFFFFF;}.elementor-218211 .elementor-element.elementor-element-e3ccacf .elementor-button:hover svg, .elementor-218211 .elementor-element.elementor-element-e3ccacf .elementor-button:focus svg{fill:#FFFFFF;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-218211 .elementor-element.elementor-element-f1057e0 img{width:140px;}}@media(min-width:768px){.elementor-218211 .elementor-element.elementor-element-73b6115{--content-width:1320px;}}/* Start custom CSS *//* premium header */
body:not(.elementor-editor-active) .wg-hdr{position:fixed!important;top:var(--wp-admin--admin-bar--height,0px)!important;left:0!important;right:0!important;width:100%!important;max-width:none!important;z-index:9990!important;background:transparent!important;padding-top:22px!important;padding-bottom:22px!important;transition:background-color .45s ease,padding .45s ease,box-shadow .45s ease;isolation:isolate}
body:not(.elementor-editor-active) .wg-hdr::before{content:"";position:absolute;inset:0 0 -50px 0;background:linear-gradient(180deg,rgba(10,9,8,.72) 0%,rgba(10,9,8,.35) 60%,rgba(10,9,8,0) 100%);pointer-events:none;z-index:-2;transition:opacity .45s ease}
body:not(.elementor-editor-active) .wg-hdr::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,rgba(244,49,63,0),#F4313F 18%,#F4313F 82%,rgba(244,49,63,0));opacity:0;transition:opacity .45s ease;pointer-events:none}
body:not(.elementor-editor-active) .wg-hdr.wgh-scrolled{background:rgba(22,20,17,.88)!important;-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);padding-top:10px!important;padding-bottom:10px!important;box-shadow:0 12px 34px rgba(0,0,0,.28)}
body:not(.elementor-editor-active) .wg-hdr.wgh-scrolled::before{opacity:0}
body:not(.elementor-editor-active) .wg-hdr.wgh-scrolled::after{opacity:1}
body:not(.elementor-editor-active) .wg-hdr.wgh-open{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.wg-hdr .wg-hdr-logo img{width:200px!important;max-width:none!important;height:auto;transition:width .45s ease;filter:drop-shadow(0 2px 8px rgba(0,0,0,.35))}
.wg-hdr.wgh-scrolled .wg-hdr-logo img{width:150px!important}
.wg-hdr .wg-hdr-nav{flex:1 1 auto!important;min-width:0}
.wg-hdr .wg-hdr-btn .elementor-button{border-radius:999px!important;padding:15px 28px!important;letter-spacing:.1em;box-shadow:0 8px 24px rgba(244,49,63,.35);transition:transform .25s ease,box-shadow .25s ease}
.wg-hdr .wg-hdr-btn .elementor-button:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(244,49,63,.5)}
body:not(.elementor-editor-active) .wg-page-hero{padding-top:150px!important}
@media (max-width:1099px){.wg-hdr .wg-hdr-logo img{width:160px!important}.wg-hdr.wgh-scrolled .wg-hdr-logo img{width:130px!important}body:not(.elementor-editor-active) .wg-hdr{padding-top:14px!important;padding-bottom:14px!important}}
@media (max-width:600px){.wg-hdr .wg-hdr-btn .elementor-button{padding:11px 16px!important;font-size:11px!important}.wg-hdr .wg-hdr-logo img{width:130px!important}.wg-hdr.wgh-scrolled .wg-hdr-logo img{width:112px!important}.wg-hdr .wgh-phone{display:none}body:not(.elementor-editor-active) .wg-page-hero{padding-top:120px!important}}

/* premium header v2 */
body:not(.elementor-editor-active) .wg-hdr{border:0!important}
body:not(.elementor-editor-active) .wg-hdr>.e-con-inner{padding-top:0!important;padding-bottom:0!important}
.wg-hdr .wg-hdr-logo img{width:150px!important}
.wg-hdr.wgh-scrolled .wg-hdr-logo img{width:112px!important}
.wg-hdr .wgh-menu>li>a,.wg-hdr .wg-hdr-btn .elementor-button{white-space:nowrap}
.wg-hdr .wg-hdr-btn .elementor-button-text{white-space:nowrap}
@media (max-width:1099px){.wg-hdr .wg-hdr-logo img{width:130px!important}.wg-hdr.wgh-scrolled .wg-hdr-logo img{width:105px!important}}
@media (max-width:600px){.wg-hdr .wg-hdr-logo img{width:108px!important}.wg-hdr.wgh-scrolled .wg-hdr-logo img{width:92px!important}.wg-hdr .wgh-phone{display:flex}.wg-hdr .wgh-ph-ic{width:36px;height:36px}.wg-hdr .wgh{gap:6px}.wg-hdr .wg-hdr-btn .elementor-button{padding:10px 14px!important;font-size:10.5px!important;letter-spacing:.06em}}

/* premium header v3 */
body:not(.elementor-editor-active) .wg-hdr::before{height:calc(100% + 70px)!important;bottom:auto!important;border:0!important;background:linear-gradient(180deg,rgba(10,9,8,.78) 0%,rgba(10,9,8,.5) 45%,rgba(10,9,8,.18) 75%,rgba(10,9,8,0) 100%)!important}

/* premium header v4 */
.wg-hdr .wgh-burger,.wg-hdr .wgh-burger:hover,.wg-hdr .wgh-burger:focus{background:transparent!important;border:1.5px solid rgba(255,255,255,.35)!important;border-radius:50%!important;width:40px!important;height:40px!important;padding:0 11px!important;box-shadow:none!important;color:#fff!important}
.wg-hdr .wgh-burger span{width:16px}
.wg-hdr.wgh-open .wgh-burger{border-color:#F4313F!important;background:#F4313F!important}
.wg-hdr .wgh-open .wgh-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}

/* loader wrap */
.wg-loader-wrap{padding:0!important;min-height:0!important;height:0;overflow:visible}

/* ===== WG design system (shared by all redesign pages) ===== */
:root{--wg-red:#F4313F;--wg-gold:#E8B23A;--wg-ink:#14120F;--wg-char:#1F1D19;--wg-char2:#2C2A25;--wg-paper:#F3F1EC;--wg-paper2:#E9E4DA}
.wg-sec,.wg-ph{position:relative!important;isolation:isolate;overflow:hidden}
.wg-sec{padding-top:110px!important;padding-bottom:120px!important}
.wg-sec>*,.wg-ph>*{position:relative;z-index:2}
.wg-sec::before,.wg-ph::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}
.wg-light{background-color:var(--wg-paper)!important}
.wg-dark{background-color:var(--wg-ink)!important}
/* rooftop divider at the bottom of a section: set --wg-next to the next section colour */
.wg-roof-b::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:64px;z-index:3;pointer-events:none;background:var(--wg-next,#14120F);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 90V62l70-24 70 24h30v-8l80-34 80 34v8h50V40h18v8l62-22 100 36h40l90-32 90 32h20V50l100-38 100 38v12h40V44h16v8l54-20 110 30h40l80-26 80 26h30V48l90-30 90 30v14h0V90z'/%3E%3C/svg%3E") center bottom/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 90V62l70-24 70 24h30v-8l80-34 80 34v8h50V40h18v8l62-22 100 36h40l90-32 90 32h20V50l100-38 100 38v12h40V44h16v8l54-20 110 30h40l80-26 80 26h30V48l90-30 90 30v14h0V90z'/%3E%3C/svg%3E") center bottom/100% 100% no-repeat}
/* gable bottom (same shape as the loading screen exit) */
.wg-gable{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--wg-gh,70px)),50% 100%,0 calc(100% - var(--wg-gh,70px)))}
.wg-gable+.e-con{margin-top:calc(var(--wg-gh,70px) * -1)!important;padding-top:calc(110px + var(--wg-gh,70px))!important}
/* ---- type ---- */
.wg-sec .elementor-heading-title,.wg-ph .elementor-heading-title{font-family:"Barlow Condensed",sans-serif!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.005em!important;line-height:.96!important}
.wg-sec h1.elementor-heading-title,.wg-sec h2.elementor-heading-title{font-size:clamp(40px,4.6vw,64px)!important}
.wg-sec h3.elementor-heading-title,.wg-sec h4.elementor-heading-title,.wg-sec h5.elementor-heading-title,.wg-sec h6.elementor-heading-title{font-size:clamp(28px,2.7vw,38px)!important}
.wg-light .elementor-heading-title{color:var(--wg-ink)!important}
.wg-dark .elementor-heading-title,.wg-ph .elementor-heading-title{color:#fff!important}
.wg-sec .elementor-widget-text-editor,.wg-sec .elementor-widget-text-editor p,.wg-sec .elementor-widget-text-editor li{font-family:Inter,sans-serif!important;font-size:16.5px!important;line-height:1.75!important}
.wg-light .elementor-widget-text-editor,.wg-light .elementor-widget-text-editor *{color:#4a463f!important}
.wg-dark .elementor-widget-text-editor,.wg-dark .elementor-widget-text-editor *{color:rgba(255,255,255,.8)!important}
.wg-sec .elementor-widget-text-editor strong{color:inherit!important;font-weight:700}
.wg-dark .elementor-widget-text-editor strong{color:#fff!important}
.wg-sec .elementor-widget-text-editor a{color:var(--wg-red)!important;text-decoration:none;border-bottom:1px solid rgba(244,49,63,.35)}
.wg-hl .elementor-heading-title{position:relative;padding-bottom:22px}
.wg-hl .elementor-heading-title::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:4px;background:repeating-linear-gradient(90deg,var(--wg-gold) 0 10px,transparent 10px 16px)}
.wg-hl.wg-center .elementor-heading-title::after{left:50%;transform:translateX(-50%)}
.wg-eyebrow,.wg-eyebrow *{font-family:Inter,sans-serif!important;font-size:12.5px!important;font-weight:700!important;letter-spacing:.28em!important;text-transform:uppercase!important;color:var(--wg-red)!important;line-height:1.4!important}
.wg-eyebrow p{margin:0!important}
.wg-dark .wg-eyebrow,.wg-dark .wg-eyebrow *{color:var(--wg-gold)!important}
/* ---- buttons ---- */
.wg-sec .elementor-button,.wg-ph .elementor-button{background:var(--wg-red)!important;color:#fff!important;border:0!important;border-radius:0!important;font-family:Inter,sans-serif!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-size:13px!important;padding:18px 30px!important;box-shadow:0 12px 28px rgba(244,49,63,.3);transition:transform .25s ease,box-shadow .25s ease,background .25s ease!important}
.wg-sec .elementor-button:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(244,49,63,.45);background:#e0202f!important}
.wg-sec .elementor-button *{color:#fff!important}
/* ---- media ---- */
.wg-sec .elementor-widget-image img{border-radius:18px!important;box-shadow:0 26px 60px rgba(0,0,0,.28);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.wg-sec .elementor-widget-image:hover img{transform:scale(1.015)}
.wg-sec .elementor-widget-video .elementor-wrapper,.wg-sec .elementor-widget-video video{border-radius:18px!important;overflow:hidden;box-shadow:0 26px 60px rgba(0,0,0,.45)}
.wg-card{background:#fff;border-radius:18px;box-shadow:0 20px 50px rgba(20,18,15,.10);border:1px solid rgba(20,18,15,.06)}
.wg-glass{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:20px!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
/* ---- accordion (FAQ) ---- */
.wg-sec .elementor-accordion .elementor-accordion-item{border:1px solid rgba(255,255,255,.1)!important;border-radius:14px!important;margin-bottom:12px;overflow:hidden;background:rgba(255,255,255,.04)}
.wg-light .elementor-accordion .elementor-accordion-item{border-color:rgba(20,18,15,.1)!important;background:#fff}
.wg-sec .elementor-accordion .elementor-tab-title{padding:20px 24px!important;border:0!important;background:transparent!important}
.wg-sec .elementor-accordion .elementor-tab-title a,.wg-sec .elementor-accordion .elementor-tab-title .elementor-accordion-title{font-family:"Barlow Condensed",sans-serif!important;font-weight:800!important;font-size:21px!important;letter-spacing:.02em!important;text-transform:uppercase!important;color:#fff!important}
.wg-light .elementor-accordion .elementor-tab-title a{color:var(--wg-ink)!important}
.wg-sec .elementor-accordion .elementor-tab-title.elementor-active{background:linear-gradient(90deg,rgba(244,49,63,.18),rgba(244,49,63,0))!important;box-shadow:inset 3px 0 0 var(--wg-red)}
.wg-sec .elementor-accordion .elementor-accordion-icon,.wg-sec .elementor-accordion .elementor-accordion-icon i{color:var(--wg-red)!important}
.wg-sec .elementor-accordion .elementor-tab-content{border:0!important;padding:0 24px 22px!important;background:transparent!important;font-family:Inter,sans-serif!important;font-size:15.5px;line-height:1.7;color:rgba(255,255,255,.78)!important}
.wg-light .elementor-accordion .elementor-tab-content{color:#4a463f!important}
/* ---- testimonial slides ---- */
.wg-sec .elementor-slides .swiper-slide-bg{background:transparent!important}
.wg-sec .elementor-slides .elementor-slide-heading{font-family:"Barlow Condensed",sans-serif!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.06em;font-size:22px!important;color:var(--wg-ink)!important}
.wg-sec .elementor-slides .elementor-slide-description{font-family:Inter,sans-serif!important;font-size:16px!important;line-height:1.75!important;color:#4a463f!important;font-style:italic}
.wg-sec .elementor-slides-wrapper{background:#fff;border-radius:22px;box-shadow:0 30px 70px rgba(20,18,15,.14);border-top:4px solid var(--wg-red)}
.wg-sec .elementor-slides .swiper-pagination-bullet-active{background:var(--wg-red)!important}
.wg-sec .elementor-slides .elementor-swiper-button{color:var(--wg-red)!important}
/* ---- forms (Gravity Forms) ---- */
.wg-form .gform_wrapper input:not([type=submit]):not([type=checkbox]):not([type=radio]),.wg-form .gform_wrapper textarea,.wg-form .gform_wrapper select{width:100%!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:10px!important;color:#fff!important;padding:14px 16px!important;font-family:Inter,sans-serif!important;font-size:15px!important;transition:border-color .2s,background .2s}
.wg-form .gform_wrapper input:focus,.wg-form .gform_wrapper textarea:focus{outline:0;border-color:var(--wg-red)!important;background:rgba(255,255,255,.1)!important}
.wg-form .gform_wrapper .gfield_label,.wg-form .gform_wrapper legend{color:#fff!important;font-family:Inter,sans-serif!important;font-size:12.5px!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase!important}
.wg-form .gform_wrapper .gfield_required{color:var(--wg-red)!important}
.wg-form .gform_wrapper .gform_footer input[type=submit],.wg-form .gform_wrapper .gform_button{background:var(--wg-red)!important;color:#fff!important;border:0!important;border-radius:0!important;padding:18px 34px!important;font-family:Inter,sans-serif!important;font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-size:13px!important;cursor:pointer;box-shadow:0 12px 28px rgba(244,49,63,.3)}
.wg-form .gform_wrapper .gfield_description,.wg-form .gform_wrapper .ginput_complex label{color:rgba(255,255,255,.6)!important}
/* ---- page hero ---- */
.wg-ph{min-height:clamp(440px,64vh,660px)!important;justify-content:flex-end!important;padding-top:180px!important;padding-bottom:120px!important;background-color:var(--wg-ink)!important}
.wg-ph::before{background-size:cover;background-position:center;animation:wgKen 22s ease-in-out infinite alternate;transform-origin:60% 40%}
.wg-ph::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(10,9,8,.72) 0%,rgba(10,9,8,.25) 38%,rgba(10,9,8,.55) 70%,rgba(10,9,8,.92) 100%),linear-gradient(90deg,rgba(10,9,8,.75) 0%,rgba(10,9,8,0) 65%)}
.wg-ph .elementor-heading-title{font-size:clamp(64px,10vw,150px)!important;line-height:.86!important;text-shadow:0 10px 40px rgba(0,0,0,.45)}
.wg-ph .elementor-widget-heading{animation:wgRise 1s cubic-bezier(.2,.7,.2,1) .15s both}
.wg-ph .elementor-widget-heading .elementor-heading-title::after{content:"";display:block;width:120px;height:6px;margin-top:22px;background:repeating-linear-gradient(90deg,var(--wg-red) 0 18px,transparent 18px 26px)}
@keyframes wgKen{from{transform:scale(1.04) translate3d(0,0,0)}to{transform:scale(1.14) translate3d(-1.5%,-1%,0)}}
@keyframes wgRise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
/* sketch art helper: put art on ::before with these */
.wg-art-fixed::before{background-attachment:fixed!important}
@media (max-width:1024px){.wg-art-fixed::before{background-attachment:scroll!important}}
@media (max-width:767px){.wg-sec{padding-top:80px!important;padding-bottom:90px!important}.wg-ph{padding-top:150px!important;padding-bottom:90px!important;min-height:420px!important}.wg-roof-b::after{height:36px}.wg-gable{--wg-gh:36px}}
.wg-sec .elementor-heading-title span,.wg-ph .elementor-heading-title span{color:inherit!important;font-size:inherit!important;font-family:inherit!important}
.wg-sec .elementor-widget-text-editor span{font-size:inherit!important}
.wg-gable{z-index:3}
.wg-ph .elementor-widget-heading .elementor-heading-title::after{margin-left:auto;margin-right:auto}
.wg-dark .elementor-accordion .elementor-accordion-item{background:rgba(255,255,255,.045)!important;box-shadow:none!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.wg-light .elementor-accordion .elementor-accordion-item{background:#fff!important}
.wg-sec .elementor-accordion .elementor-tab-content p{color:inherit!important;font-size:inherit!important}
/* icon boxes */
.wg-sec .elementor-widget-icon-box>.elementor-widget-container,.wg-sec .elementor-widget-icon-box .elementor-icon-box-wrapper{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.wg-sec .elementor-widget-icon-box .elementor-icon-box-wrapper{padding:34px 28px;border-radius:20px;height:100%}
.wg-dark .elementor-widget-icon-box .elementor-icon-box-wrapper{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.wg-light .elementor-widget-icon-box .elementor-icon-box-wrapper{background:#fff;border:1px solid rgba(20,18,15,.06);box-shadow:0 18px 45px rgba(20,18,15,.08)}
.wg-sec .elementor-widget-icon-box:hover .elementor-icon-box-wrapper{transform:translateY(-6px)}
.wg-sec .elementor-icon-box-icon .elementor-icon{background:rgba(244,49,63,.12)!important;color:#F4313F!important;fill:#F4313F!important;border:1.5px solid rgba(244,49,63,.5)!important;border-radius:50%!important;width:74px;height:74px;display:inline-flex!important;align-items:center;justify-content:center;font-size:30px!important;padding:0!important}
.wg-sec .elementor-icon-box-icon .elementor-icon svg{fill:#F4313F!important;width:30px;height:30px}
.wg-sec .elementor-icon-box-title,.wg-sec .elementor-icon-box-title *{font-family:"Barlow Condensed",sans-serif!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.03em!important;font-size:24px!important;line-height:1.05!important}
.wg-dark .elementor-icon-box-title,.wg-dark .elementor-icon-box-title *{color:#fff!important}
.wg-light .elementor-icon-box-title,.wg-light .elementor-icon-box-title *{color:#14120F!important}
.wg-sec .elementor-icon-box-description{font-family:Inter,sans-serif!important;font-size:15.5px!important;line-height:1.7!important}
.wg-dark .elementor-icon-box-description{color:rgba(255,255,255,.75)!important}
.wg-light .elementor-icon-box-description{color:#4a463f!important}
/* shortcode content (business card, etc.) on dark */
.wg-dark .elementor-widget-shortcode :is(p,span,div,li,td,th,strong,b,address,h1,h2,h3,h4,h5,h6,dt,dd){color:rgba(255,255,255,.8)!important}
.wg-dark .elementor-widget-shortcode :is(h1,h2,h3,h4,h5,h6,strong,b,dt){color:#fff!important;font-family:"Barlow Condensed",sans-serif!important;letter-spacing:.04em}
.wg-dark .elementor-widget-shortcode a{color:#F4313F!important}
.wg-dark .elementor-widget-shortcode hr{border-color:rgba(255,255,255,.15)!important}
.wg-dark .elementor-widget-html,.wg-dark .elementor-widget-html :is(p,span,div,li){color:rgba(255,255,255,.8)}
.wg-sec .elementor-widget-google_maps iframe,.wg-sec iframe[src*="google.com/maps"]{border-radius:18px!important;filter:grayscale(.2) contrast(1.05)}
/* phone link hover */
.wgh-phone,.wgh-phone:visited,.wgh-phone:focus{color:#fff!important}
.wgh-phone:hover,.wgh-phone:hover .wgh-ph-tx{color:#F4313F!important}
.wgh-phone:hover .wgh-ph-ic{color:#fff!important}
a[href^="tel:"]:hover{color:#F4313F!important}
.wg-aside-call a[href^="tel:"]:hover{color:#14120F!important}
/* ===== global tighten + form card ===== */
html body .wg-sec.e-con{padding-top:72px!important;padding-bottom:84px!important}
html body .wg-ph.e-con{min-height:clamp(380px,50vh,520px)!important;padding-top:160px!important;padding-bottom:100px!important}
html body .wg-ph .elementor-element-439384f{min-height:0!important;padding:0!important}
html body .wg-gable+.e-con{padding-top:calc(64px + var(--wg-gh,70px))!important}
.wg-sec .e-con{--padding-top:0px;--padding-bottom:0px}
.wg-sec .e-con-inner,.wg-sec>.e-con{row-gap:18px}
.wg-sec .elementor-widget:not(:last-child){margin-bottom:0!important}
.wg-hl .elementor-heading-title{padding-bottom:16px}
.wg-sec .elementor-widget-text-editor p:last-child{margin-bottom:0}

/* FAQ + contact combined */

html body .wg-sec .elementor-accordion .elementor-accordion-item{margin-bottom:8px!important;border-radius:12px!important}
html body .wg-sec .elementor-accordion .elementor-tab-title{padding:14px 18px!important}
html body .wg-sec .elementor-accordion .elementor-tab-title a{font-size:17px!important;letter-spacing:.03em!important}
html body .wg-sec .elementor-accordion .elementor-tab-content{padding:0 18px 16px!important;font-size:14.5px!important}
html body .wg-form-card{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.1)!important;border-top:4px solid #F4313F!important;border-radius:20px!important;padding:28px 28px 24px!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 30px 60px rgba(0,0,0,.4)}
html body .wg-form-card .elementor-heading-title{font-size:34px!important}
html body .wg-form-card .wg-hl .elementor-heading-title{padding-bottom:12px}
html body .wg-form-card .gform_wrapper .gform_fields{row-gap:12px!important}
html body .wg-form-card .gform_wrapper .gfield{margin:0!important}
html body .wg-form-card .gform_wrapper .gfield_label{font-size:11px!important;margin-bottom:5px!important}
html body .wg-form-card .gform_wrapper input:not([type=submit]):not([type=checkbox]):not([type=radio]){padding:10px 13px!important;font-size:14px!important;min-height:0!important}
html body .wg-form-card .gform_wrapper textarea{height:96px!important;min-height:0!important;padding:10px 13px!important;font-size:14px!important}
html body .wg-form-card .gform_wrapper .gform_footer{margin-top:14px!important;padding:0!important}
html body .wg-form-card .gform_wrapper .gform_footer input[type=submit]{padding:15px 28px!important;width:100%}
html body .wg-form-card .gform_wrapper .ginput_recaptcha{transform:scale(.88);transform-origin:left top;margin-bottom:-8px}
html body .wg-form-card .gform_wrapper .gfield--type-captcha .gfield_label{display:none!important}
@media (min-width:768px){html body .wg-form-card .gform_wrapper .gform_fields{display:grid!important;grid-template-columns:1fr 1fr;column-gap:12px}html body .wg-form-card .gform_wrapper .gfield--type-textarea,html body .wg-form-card .gform_wrapper .gfield--type-captcha,html body .wg-form-card .gform_wrapper .gfield--type-name,html body .wg-form-card .gform_wrapper .gfield:first-child{grid-column:1/-1}}
@media (max-width:767px){html body .wg-sec.e-con{padding-top:56px!important;padding-bottom:66px!important}}



html body .wg-sec .elementor-accordion .elementor-accordion-item{padding:0!important}
html body .wg-form-card .gform_wrapper .gform_footer .gform_button{width:100%!important;padding:15px 28px!important}
/* ph inner reset */
html body .wg-ph>.e-con,html body .wg-ph>.e-con-inner>.e-con{min-height:0!important;padding-top:0!important;padding-bottom:0!important}
/* ===== end global tighten ===== */

/* roofline cut dividers */
.wg-roof-b::after{display:none!important}
html body .wg-cut{position:relative!important;z-index:3!important;-webkit-mask:linear-gradient(#000 0 0),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 90V62l70-24 70 24h30v-8l80-34 80 34v8h50V40h18v8l62-22 100 36h40l90-32 90 32h20V50l100-38 100 38v12h40V44h16v8l54-20 110 30h40l80-26 80 26h30V48l90-30 90 30v14h0V90z'/%3E%3C/svg%3E") center bottom/100% 64px no-repeat;-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 90V62l70-24 70 24h30v-8l80-34 80 34v8h50V40h18v8l62-22 100 36h40l90-32 90 32h20V50l100-38 100 38v12h40V44h16v8l54-20 110 30h40l80-26 80 26h30V48l90-30 90 30v14h0V90z'/%3E%3C/svg%3E") center bottom/100% 64px no-repeat;mask-composite:exclude}
html body .wg-cut+.e-con{margin-top:-64px!important;position:relative;z-index:1}
html body .wg-cut+.wg-sec.e-con,html body .wg-cut+.wg-post-more.e-con{padding-top:136px!important}
@media (max-width:767px){html body .wg-cut{-webkit-mask-size:auto,100% 34px;mask-size:auto,100% 34px}html body .wg-cut+.e-con{margin-top:-34px!important}html body .wg-cut+.wg-sec.e-con{padding-top:90px!important}}
/* ===== end WG design system ===== */

/* ===== Services system (service + lighting pages) ===== */
/* hero: photo on ::before via --wg-img, video bg kept underneath if present */
html body .wg-sh>.elementor-background-video-container,html body .wg-sh>.elementor-background-slideshow{position:absolute!important;inset:0;z-index:0!important}
html body .wg-sh>.elementor-background-overlay{display:none!important}
.wg-sh::before{background-image:var(--wg-img)!important;background-position:var(--wg-pos,center)!important}
html body .wg-sh .elementor-heading-title{font-size:clamp(50px,6.6vw,100px)!important;line-height:.88!important;max-width:1100px}
html body .wg-sh .e-con,html body .wg-sh .e-con-inner{background:transparent!important;--background-overlay:none}
html body .wg-sh .e-con::before{display:none!important}
/* shared section helpers */
html body .wg-sec .e-con:not(.wg-tile):not(.wg-imgblock):not(.wg-glass):not(.wg-card):not(.wg-form-card){background-color:transparent!important;background-image:none!important}
html body .wg-sec .e-con:not(.wg-tile):not(.wg-imgblock)>.elementor-background-overlay{display:none!important}
html body .wg-sec>.elementor-background-overlay,html body .wg-sec>.elementor-background-video-container{display:none!important}
/* dark photo section */
.wg-t-photo{background-color:#14120F!important}
.wg-t-photo::before{background:radial-gradient(ellipse 50% 70% at var(--gx,88%) 25%,rgba(244,49,63,.24),rgba(244,49,63,0) 70%),linear-gradient(100deg,rgba(14,13,11,.94) 0%,rgba(14,13,11,.84) 50%,rgba(14,13,11,.6) 100%),var(--wg-img) var(--wg-pos,center)/cover no-repeat!important}
.wg-t-photo.wg-flip::before{background:radial-gradient(ellipse 50% 70% at 12% 25%,rgba(232,178,58,.18),rgba(232,178,58,0) 70%),linear-gradient(260deg,rgba(14,13,11,.94) 0%,rgba(14,13,11,.84) 50%,rgba(14,13,11,.58) 100%),var(--wg-img) var(--wg-pos,center)/cover no-repeat!important}
/* red-wash photo (why choose us) */
.wg-t-redwash{background-color:#1a0a0b!important}
.wg-t-redwash::before{background:linear-gradient(100deg,rgba(26,8,9,.95) 0%,rgba(110,14,24,.86) 55%,rgba(200,30,46,.62) 100%),var(--wg-img) var(--wg-pos,center)/cover no-repeat!important}
/* light paper section: pattern + sketch art */
.wg-t-paper{background-color:var(--wg-bgc,#F3F1EC)!important}
.wg-t-paper::before{background:var(--wg-art,none) var(--wg-artpos,right -3% bottom 30px)/var(--wg-artsz,min(760px,52vw)) auto no-repeat,var(--wg-pat,none)!important;opacity:var(--wg-op,.9)}
/* red band */
.wg-t-red{background-color:#E2293A!important}
.wg-t-red::before{background:radial-gradient(ellipse 60% 90% at 100% 0%,rgba(255,255,255,.14),rgba(255,255,255,0) 70%),radial-gradient(ellipse 60% 90% at 0% 100%,rgba(20,18,15,.35),rgba(20,18,15,0) 70%),var(--wg-pat,none)!important}
html body .wg-t-red .elementor-heading-title,html body .wg-t-red .elementor-widget-text-editor,html body .wg-t-red .elementor-widget-text-editor *{color:#fff!important}
html body .wg-t-red .elementor-widget-text-editor a{border-bottom-color:rgba(255,255,255,.5)!important}
html body .wg-t-red .elementor-button{background:#14120F!important;box-shadow:0 14px 30px rgba(0,0,0,.3)!important}
html body .wg-t-red .wg-hl .elementor-heading-title::after{background:repeating-linear-gradient(90deg,#fff 0 10px,transparent 10px 16px)!important}
html body .wg-t-red .wg-eyebrow,html body .wg-t-red .wg-eyebrow *{color:#14120F!important}
/* dark pattern section (contact etc.) */
.wg-t-ink{background-color:var(--wg-bgc,#1F1D19)!important}
.wg-t-ink::before{background:radial-gradient(ellipse 70% 55% at var(--gx,85%) 110%,rgba(244,49,63,.32),rgba(244,49,63,0) 70%),var(--wg-art,none) var(--wg-artpos,left -2% bottom 20px)/var(--wg-artsz,min(700px,48vw)) auto no-repeat,var(--wg-pat,none)!important}
/* ---- light patterns ---- */
.wg-p-grid{--wg-pat:linear-gradient(rgba(44,42,37,.045) 1px,transparent 1px) 0 0/28px 28px,linear-gradient(90deg,rgba(44,42,37,.045) 1px,transparent 1px) 0 0/28px 28px,linear-gradient(rgba(44,42,37,.07) 1px,transparent 1px) 0 0/140px 140px,linear-gradient(90deg,rgba(44,42,37,.07) 1px,transparent 1px) 0 0/140px 140px}
.wg-p-dots{--wg-pat:radial-gradient(rgba(44,42,37,.16) 1.2px,transparent 1.6px) 0 0/22px 22px}
.wg-p-plus{--wg-pat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cpath d='M28 23v10M23 28h10' stroke='%232C2A25' stroke-opacity='.11' stroke-width='1.3'/%3E%3C/svg%3E") 0 0/56px 56px}
.wg-p-ruled{--wg-pat:repeating-linear-gradient(180deg,transparent 0 33px,rgba(44,42,37,.07) 33px 34px),linear-gradient(90deg,transparent 0 90px,rgba(244,49,63,.12) 90px 91px,transparent 91px)}
.wg-p-diag{--wg-pat:repeating-linear-gradient(135deg,rgba(44,42,37,.05) 0 1px,transparent 1px 22px)}
.wg-p-shingle{--wg-pat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='48'%3E%3Cpath d='M0 23.5h120M0 47.5h120M40 0v24M100 0v24M10 24v24M70 24v24' stroke='%232C2A25' stroke-opacity='.08' fill='none'/%3E%3C/svg%3E") 0 0/120px 48px}
.wg-p-seam{--wg-pat:repeating-linear-gradient(90deg,transparent 0 58px,rgba(44,42,37,.06) 58px 59px,rgba(255,255,255,.7) 59px 60px)}
.wg-p-chev{--wg-pat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='40'%3E%3Cpath d='M0 40L40 8l40 32' stroke='%232C2A25' stroke-opacity='.07' fill='none' stroke-width='1.2'/%3E%3C/svg%3E") 0 0/80px 40px}
.wg-p-blue{--wg-pat:linear-gradient(rgba(30,60,110,.06) 1px,transparent 1px) 0 0/24px 24px,linear-gradient(90deg,rgba(30,60,110,.06) 1px,transparent 1px) 0 0/24px 24px}
/* ---- dark patterns ---- */
.wg-d-seam{--wg-pat:linear-gradient(180deg,rgba(31,29,25,0) 40%,rgba(31,29,25,.9) 100%),repeating-linear-gradient(90deg,rgba(255,255,255,0) 0 54px,rgba(255,255,255,.06) 54px 56px,rgba(0,0,0,.25) 56px 58px,rgba(255,255,255,0) 58px 112px)}
.wg-d-cross{--wg-pat:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 1px,transparent 1px 38px),repeating-linear-gradient(45deg,rgba(255,255,255,.035) 0 1px,transparent 1px 38px)}
.wg-d-grid{--wg-pat:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px) 0 0/32px 32px,linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px) 0 0/32px 32px}
.wg-d-chev{--wg-pat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='44'%3E%3Cpath d='M0 44L45 8l45 36' stroke='%23fff' stroke-opacity='.06' fill='none' stroke-width='1.2'/%3E%3C/svg%3E") 0 0/90px 44px}
.wg-d-dots{--wg-pat:radial-gradient(rgba(255,255,255,.09) 1.2px,transparent 1.6px) 0 0/24px 24px}
.wg-d-shingle{--wg-pat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='48'%3E%3Cpath d='M0 23.5h120M0 47.5h120M40 0v24M100 0v24M10 24v24M70 24v24' stroke='%23fff' stroke-opacity='.06' fill='none'/%3E%3C/svg%3E") 0 0/120px 48px}
/* ---- red patterns ---- */
.wg-r-chev{--wg-pat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='44'%3E%3Cpath d='M0 44L45 8l45 36' stroke='%23fff' stroke-opacity='.12' fill='none' stroke-width='1.4'/%3E%3C/svg%3E") 0 0/90px 44px}
.wg-r-diag{--wg-pat:repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 2px,transparent 2px 26px)}
.wg-r-shingle{--wg-pat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='48'%3E%3Cpath d='M0 23.5h120M0 47.5h120M40 0v24M100 0v24M10 24v24M70 24v24' stroke='%23fff' stroke-opacity='.13' fill='none'/%3E%3C/svg%3E") 0 0/120px 48px}
.wg-r-dots{--wg-pat:radial-gradient(rgba(255,255,255,.18) 1.3px,transparent 1.8px) 0 0/22px 22px}
/* ---- inner pieces ---- */
html body .wg-sec .wg-tile{position:relative!important;border-radius:18px!important;overflow:hidden!important;isolation:isolate;min-height:220px;justify-content:flex-end!important;box-shadow:0 22px 50px rgba(20,18,15,.18);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s;background-size:cover!important;background-position:center!important}
html body .wg-sec .wg-tile::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(20,18,15,0) 30%,rgba(20,18,15,.88) 100%);transition:background .4s;pointer-events:none}
html body .wg-sec .wg-tile:hover{transform:translateY(-8px);box-shadow:0 34px 70px rgba(20,18,15,.28)}
html body .wg-sec .wg-tile:hover::after{background:linear-gradient(180deg,rgba(244,49,63,.15) 0%,rgba(20,18,15,.9) 100%)}
html body .wg-sec .wg-tile>*{position:relative;z-index:1}
html body .wg-sec .wg-tile>.elementor-background-overlay{display:none!important}
html body .wg-sec .wg-tile .elementor-widget-text-editor,html body .wg-sec .wg-tile .elementor-widget-text-editor *,html body .wg-sec .wg-tile .elementor-heading-title{font-family:"Barlow Condensed",sans-serif!important;font-weight:800!important;text-transform:uppercase!important;font-size:24px!important;line-height:1!important;letter-spacing:.03em!important;color:#fff!important;border:0!important}
html body .wg-sec .wg-tile .elementor-widget-text-editor p{margin:0!important}
html body .wg-sec .wg-tile .elementor-widget-text-editor::after{content:"";display:block;width:42px;height:3px;margin-top:10px;background:#F4313F;transition:width .35s}
html body .wg-sec .wg-tile:hover .elementor-widget-text-editor::after{width:80px}
html body .wg-sec .wg-imgblock{border-radius:20px!important;overflow:hidden;min-height:320px;box-shadow:0 30px 60px rgba(0,0,0,.35);background-size:cover!important;background-position:center!important}
html body .wg-sec .wg-imgblock>.elementor-background-overlay{display:none!important}
html body .wg-light .wg-card,html body .wg-t-paper .wg-card{background:#fff!important;border-radius:20px!important;box-shadow:0 22px 50px rgba(20,18,15,.09)!important;border:1px solid rgba(20,18,15,.06)!important;padding:32px!important}
html body .wg-sec .wg-glass{padding:34px!important}
/* icon boxes + icon lists */
html body .wg-sec .elementor-icon-box-title,html body .wg-sec .elementor-icon-box-title *{font-family:"Barlow Condensed",sans-serif!important;font-weight:800!important;text-transform:uppercase!important;font-size:22px!important;letter-spacing:.03em!important;line-height:1.05!important}
html body .wg-dark .elementor-icon-box-title,html body .wg-dark .elementor-icon-box-title *,html body .wg-t-red .elementor-icon-box-title *{color:#fff!important}
html body .wg-light .elementor-icon-box-title,html body .wg-light .elementor-icon-box-title *{color:#14120F!important}
html body .wg-sec .elementor-icon-box-description{font-family:Inter,sans-serif!important;font-size:15px!important;line-height:1.65!important}
html body .wg-dark .elementor-icon-box-description{color:rgba(255,255,255,.75)!important}
html body .wg-light .elementor-icon-box-description{color:#4a463f!important}
html body .wg-sec .elementor-widget-icon-box .elementor-icon{color:#F4313F!important;fill:#F4313F!important;border-color:#F4313F!important}
html body .wg-sec .elementor-widget-icon-box .elementor-icon svg{fill:#F4313F!important}
html body .wg-sec .elementor-icon-list-text{font-family:Inter,sans-serif!important;font-size:16px!important}
html body .wg-dark .elementor-icon-list-text{color:rgba(255,255,255,.85)!important}
html body .wg-light .elementor-icon-list-text{color:#2C2A25!important}
html body .wg-sec .elementor-icon-list-icon i,html body .wg-sec .elementor-icon-list-icon svg{color:#F4313F!important;fill:#F4313F!important}
/* bullet lists in text */
html body .wg-sec .elementor-widget-text-editor ul{list-style:none!important;padding-left:0!important;margin:0}
html body .wg-sec .elementor-widget-text-editor ul li{position:relative;padding-left:30px;margin-bottom:10px}
html body .wg-sec .elementor-widget-text-editor ul li::before{content:"";position:absolute;left:0;top:.55em;width:14px;height:10px;background:#F4313F;clip-path:polygon(0 100%,50% 0,100% 100%,82% 100%,50% 40%,18% 100%)}
html body .wg-t-red .elementor-widget-text-editor ul li::before{background:#fff}
html body .wg-dark .elementor-widget-text-editor ul li::before{background:#E8B23A}
/* posts widget cards */
html body .wg-sec .elementor-posts .elementor-post{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 18px 45px rgba(20,18,15,.08);transition:transform .4s}
html body .wg-sec .elementor-posts .elementor-post:hover{transform:translateY(-8px)}
html body .wg-sec .elementor-posts .elementor-post__title a{font-family:"Barlow Condensed",sans-serif!important;font-weight:800!important;text-transform:uppercase;color:#14120F!important;font-size:22px!important}
html body .wg-sec .elementor-posts .elementor-post__text{padding:20px 22px 24px!important}
/* images */
html body .wg-sec .elementor-widget-image img{border-radius:18px!important}
html body .wg-t-paper .elementor-widget-image img{border:6px solid #fff}
/* contact section: stacked form card */
html body .wg-sec.wg-contact .wg-form-card .elementor-widget-text-editor,html body .wg-sec.wg-contact .wg-form-card .elementor-widget-text-editor *{color:rgba(255,255,255,.78)!important}
html body .wg-sec.wg-contact iframe{border-radius:16px;filter:grayscale(.3) contrast(1.05)}
html body .wg-sec .wg-form-card .gform_wrapper .gform_footer{margin-top:16px!important;padding:0!important}
@media (max-width:767px){html body .wg-sh .elementor-heading-title{font-size:clamp(40px,11vw,60px)!important}html body .wg-t-paper::before{opacity:.35}html body .wg-sec .wg-tile{min-height:180px}}
/* ===== end Services system ===== *//* End custom CSS */