/* Native Elementor layout refinements for the Boost Electric design system. */
:root{--boost-bg:#faf9fc;--boost-ink:#100b17;--boost-primary:#611c9d;--boost-muted:#625b6b;--boost-border:#e3dfe9;--boost-yellow:#f4d118}
body{background:var(--boost-bg)}
.boost-page{font-family:Manrope,sans-serif;color:#19151e;--widgets-spacing:0px;--kit-widget-spacing:0px}
.boost-page .e-con{min-width:0}.boost-page .elementor-widget{min-width:0;margin-block-end:0}
.boost-page .elementor-heading-title{margin:0;line-height:inherit;color:inherit}
.boost-page .elementor-widget-text-editor p:last-child{margin-bottom:0}
.boost-page .boost-wrap{width:100%;max-width:1216px;margin-inline:auto;padding-inline:32px}
.boost-page .boost-section{padding-block:96px}.boost-page .boost-section-compact{padding-block:64px}
.boost-page .boost-gradient{background:radial-gradient(120% 80% at 85% 0%,oklch(32% .16 302) 0%,oklch(16% .025 300) 60%);color:#f5f4f8}
.boost-page .boost-title{max-width:896px;font:800 clamp(2.4rem,5.5vw,4.25rem)/1.02 Archivo,sans-serif;letter-spacing:-.02em;text-wrap:balance}
.boost-page .boost-h2{font:800 clamp(1.8rem,3.4vw,2.75rem)/1.1 Archivo,sans-serif;letter-spacing:-.02em;text-wrap:balance}
.boost-page .boost-h3{font:700 24px/1.3 Archivo,sans-serif;letter-spacing:-.02em}
.boost-page .boost-body{font:400 18px/1.65 Manrope,sans-serif}.boost-page .boost-muted{color:var(--boost-muted)}
.boost-page .boost-eyebrow{font:700 12px/1.5 Manrope,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--boost-primary)}
.boost-page .boost-intro{padding-block:80px}.boost-page .boost-intro .boost-body{max-width:672px;color:#b0acb9}
.boost-page .boost-hero-grid{grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.boost-page .boost-hero{padding-block:96px}
.boost-page .boost-hero-title{font:800 clamp(2.4rem,5.5vw,4.25rem)/1.02 Archivo,sans-serif;letter-spacing:-.02em;max-width:700px}
.boost-page .boost-hero-image img{width:100%;height:372px;object-fit:cover;border-radius:24px}
.boost-page .boost-hero-badge{position:absolute;bottom:-24px;left:24px;background:white;color:#19151e;padding:20px 24px;border-radius:24px;max-width:300px}
.boost-page .boost-hero-badge.e-con{width:min(300px,calc(100% - 48px))!important}
.boost-page .boost-hero-image-wrap{position:relative;padding-block:0}
.boost-page .boost-button .elementor-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 22.4px;font:700 15.2px/22px Manrope,sans-serif;transition:background .15s,transform .15s}
.boost-page .boost-button .elementor-button:hover{transform:translateY(-1px)}
.boost-page .boost-trust{background:white;border-bottom:1px solid var(--boost-border);padding-block:32px}
.boost-page .boost-service-card,.boost-page .boost-project-card{background:white;border:1px solid var(--boost-border);border-radius:16px;overflow:hidden;transition:box-shadow .2s,transform .2s}
.boost-page .boost-service-card{padding:24px;gap:12px;align-items:flex-start}
/* Stretch cards within each row while letting content determine the row height. */
.boost-page .boost-card-grid{align-items:stretch!important}
.boost-page .boost-card-grid>.e-con{align-self:stretch!important;height:100%}
.boost-page .boost-service-card>.elementor-widget:last-child{margin-top:auto!important}
.boost-page .boost-project-card>.boost-card-content{flex:1}
.boost-page .boost-project-card>.boost-card-content>.elementor-widget:last-child{margin-top:auto!important}
.boost-page .boost-card-grid>.e-con>.boost-card-action{margin-top:auto!important}
.boost-page .boost-service-card:hover,.boost-page .boost-project-card:hover{box-shadow:0 12px 32px -12px #48196b40;transform:translateY(-3px)}
.boost-page .boost-card-title{font:700 20px/1.3 Archivo,sans-serif;letter-spacing:-.02em}
.boost-page .boost-project-image img{width:100%;aspect-ratio:77/40;object-fit:cover;display:block}
.boost-page .boost-project-zoom a{display:block;overflow:hidden;border-radius:24px;cursor:zoom-in;box-shadow:0 12px 36px #21123112}
.boost-page .boost-project-zoom img{border-radius:24px!important;transition:transform .3s ease}
.boost-page .boost-project-zoom a:hover img{transform:scale(1.015)}
.boost-page .boost-project-zoom a:focus-visible{outline:3px solid #611c9d;outline-offset:5px}
.boost-page .boost-project-card .boost-card-content{padding:24px;gap:12px}
.boost-page .boost-cta-section{padding-block:80px}.boost-page .boost-cta{padding:56px;border-radius:24px;gap:20px;position:relative;overflow:hidden}
.boost-page .boost-cta .boost-h2{max-width:672px}.boost-page .boost-cta .boost-body{color:#b0acb9;max-width:576px}
.boost-page .boost-cta .boost-h2 .elementor-heading-title{max-width:672px}.boost-page .boost-cta .boost-body .elementor-heading-title{max-width:576px}.boost-page .boost-intro .boost-title .elementor-heading-title{max-width:896px}.boost-page .boost-intro .boost-body .elementor-heading-title{max-width:672px}
.boost-page .boost-cta:after{content:'ϟ';position:absolute;right:16px;top:-52px;font:800 240px/1 Archivo,sans-serif;color:#611c9d66;pointer-events:none}
.boost-page .boost-cta>.e-con{position:relative;z-index:1}
.boost-page .boost-form-card{padding:32px;border:1px solid var(--boost-border);border-radius:20px;background:white;box-shadow:0 12px 32px -12px #48196b30}
.boost-page .boost-form label{font:600 14px/20px Manrope,sans-serif;color:#19151e;margin-bottom:8px}
.boost-page .boost-form .elementor-field-group{padding:0 10px;margin-bottom:20px}
.boost-page .boost-form .elementor-form-fields-wrapper{margin-inline:-10px;margin-bottom:-20px}
.boost-page .boost-form .elementor-field:not(.elementor-select-wrapper){min-height:50px;background:#faf9fc;color:#19151e;border:1px solid #dcd6e4;border-radius:12px;padding:12px 16px;font:400 16px/24px Manrope,sans-serif}
.boost-page .boost-form .elementor-select-wrapper select{min-height:50px;padding:12px 34px 12px 16px!important}.boost-page .boost-form textarea.elementor-field{min-height:146px;resize:vertical}
.boost-page .boost-form .elementor-button{border-radius:999px;background:var(--boost-primary);color:white;min-height:48px;padding:12px 22px;font:700 15px/22px Manrope,sans-serif}
.boost-page .boost-form .elementor-button:hover{background:#4d1080}.boost-page .boost-form .elementor-message{padding:16px;border-radius:12px;line-height:1.5}
.boost-page .boost-form .elementor-message-success{background:#edf7ef;color:#216239}.boost-page .boost-form .elementor-message-danger{background:#fff0ef;color:#972d24}
.boost-page .boost-contact-grid{grid-template-columns:1fr 1.6fr;gap:48px;align-items:start}
.boost-page .boost-service-grid{grid-template-columns:1.4fr 1fr;gap:48px;align-items:start}
/* Keep the service quote beside the content, below the sticky site header. */
@media(min-width:1024px){
 .boost-page .boost-service-grid > #quote{--boost-quote-top:97px;position:sticky;top:var(--boost-quote-top);align-self:start;max-height:calc(100dvh - var(--boost-quote-top) - 24px);overflow-y:auto;scrollbar-width:thin;scroll-padding-block:16px}
 body.admin-bar .boost-page .boost-service-grid > #quote{--boost-quote-top:129px}
}
.boost-page .boost-about-grid{grid-template-columns:2.1fr 1fr;gap:64px;align-items:start}
.boost-page .boost-faq .elementor-toggle{border:1px solid var(--boost-border);border-radius:16px;overflow:hidden;background:white}
.boost-page .boost-faq .elementor-toggle-item:last-child .elementor-tab-title{border-bottom:0}
.boost-page .boost-faq .elementor-tab-title{padding:24px;border-bottom:1px solid var(--boost-border);font:700 16px/24px Manrope,sans-serif;color:#19151e}
.boost-page .boost-faq .elementor-tab-content{padding:0 24px 24px;border:0;font:400 16px/26px Manrope,sans-serif;color:var(--boost-muted)}
.boost-page .boost-faq .elementor-toggle-icon{color:var(--boost-primary)}
.boost-page .boost-breadcrumb{flex-wrap:wrap;gap:8px;font-size:14px;color:#b0acb9}
.boost-page a:focus-visible,.boost-page button:focus-visible,.boost-page input:focus-visible,.boost-page select:focus-visible,.boost-page textarea:focus-visible{outline:3px solid #9458c5;outline-offset:3px}
.boost-page [id]{scroll-margin-top:96px}
/* WordPress menu structure remains editable: Services > categories > services. */
.boost-header .boost-header-row{position:relative}
@media(min-width:1024px){
 .elementor .boost-header.boost-header .boost-desktop-menu,.elementor .boost-header.boost-header .boost-desktop-menu .elementor-nav-menu--main,.elementor .boost-header.boost-header .boost-desktop-menu .elementor-nav-menu,.elementor .boost-header.boost-header .boost-desktop-menu .boost-mega-parent{position:static!important}
 .elementor .boost-header.boost-header .boost-desktop-menu .boost-mega-parent>.sub-menu{position:absolute!important;left:0!important;top:60px!important;margin:0!important;width:832px!important;max-width:calc(100vw - 64px)!important;padding:24px!important;border-radius:20px!important;box-shadow:0 18px 40px #100b1720;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;z-index:100}
 .elementor .boost-header.boost-header .boost-desktop-menu .boost-mega-parent>a[aria-expanded=true]+.sub-menu{display:grid!important}
 .elementor .boost-header.boost-header .boost-desktop-menu .boost-menu-group{min-width:0}
 .elementor .boost-header.boost-header .boost-desktop-menu .boost-menu-group>a{font:700 12px/18px Manrope,sans-serif!important;letter-spacing:.14em;text-transform:uppercase;color:#611c9d!important;padding:0 0 12px!important;white-space:normal!important;background:transparent!important;min-width:0!important}
 .elementor .boost-header.boost-header .boost-desktop-menu .boost-menu-group>a .sub-arrow{display:none}
 .elementor .boost-header.boost-header .boost-desktop-menu .boost-menu-group>.sub-menu{display:block!important;position:static!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important}
 .elementor .boost-header.boost-header .boost-desktop-menu .boost-menu-group>.sub-menu a{font:400 14px/21px Manrope,sans-serif!important;padding:8px!important;min-width:0!important;white-space:normal!important}
}
@media(max-width:1023px){.boost-page .boost-hero-grid{grid-template-columns:1fr;gap:48px}.boost-page .boost-hero-image-wrap{max-width:640px}.boost-page .boost-service-grid,.boost-page .boost-contact-grid{grid-template-columns:1fr}.boost-page .boost-about-grid{gap:32px}.boost-header .boost-mobile-menu .boost-menu-group>a{font-weight:700;color:#611c9d}}
@media(max-width:767px){.boost-page .boost-wrap{padding-inline:20px}.boost-page .boost-section{padding-block:64px}.boost-page .boost-intro{padding-block:64px}.boost-page .boost-hero{padding-block:64px}.boost-page .boost-hero-image img{height:280px}.boost-page .boost-about-grid{grid-template-columns:1fr}.boost-page .boost-cta{padding:40px 28px}.boost-page .boost-cta-section{padding-block:56px}.boost-page .boost-form-card{padding:24px}.boost-page .boost-faq .elementor-tab-title{padding:20px}.boost-page .boost-faq .elementor-tab-content{padding:0 20px 20px}}
@media(prefers-reduced-motion:reduce){.boost-page *{scroll-behavior:auto!important;transition:none!important}.boost-page .boost-service-card:hover,.boost-page .boost-project-card:hover,.boost-page .boost-button .elementor-button:hover{transform:none}}
