/* Scoped to Build & Frame layouts; unrelated pages keep their own styling. */
.bfe-page{--bfe-navy:#1e283f;--bfe-blue:#5c73c2;--bfe-text:#65718a;color:var(--bfe-navy);background:#fff;font-family:Arial,Helvetica,sans-serif;gap:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.bfe-page *{box-sizing:border-box}.bfe-page a{text-decoration:none}.bfe-page .elementor-widget{margin:0}.bfe-page .elementor-widget-heading h1,.bfe-page .elementor-widget-heading h2,.bfe-page .elementor-widget-heading h3{margin:0;letter-spacing:-.035em}.bfe-page .elementor-widget-text-editor p{margin:0}.bfe-page .e-con{--container-widget-width:100%}.bfe-page .bfe-section{padding:64px 24px!important;gap:0!important;width:100%!important;max-width:none!important}.bfe-page .bfe-wrap{width:100%!important;max-width:1160px!important;margin-inline:auto!important;gap:24px!important;padding:0!important}.bfe-page .bfe-two{display:grid!important;grid-template-columns:1fr 1fr;gap:48px!important;width:100%!important}.bfe-page .bfe-three{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px!important;width:100%!important}.bfe-page .bfe-four{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px!important;width:100%!important}.bfe-page .bfe-two>.e-con,.bfe-page .bfe-three>.e-con,.bfe-page .bfe-four>.e-con{width:100%!important;min-width:0!important;gap:18px!important}.bfe-page .bfe-pale{background:#eff3fc}.bfe-page .bfe-gray{background:#f5f6f8}.bfe-page .bfe-center{text-align:center}.bfe-page .bfe-center .elementor-button-wrapper{text-align:center}.bfe-page .bfe-navy{background:#1e283f}.bfe-page .bfe-navy .elementor-heading-title,.bfe-page .bfe-navy .elementor-widget-text-editor{color:#fff!important}.bfe-page .bfe-compact{padding-block:26px!important}.bfe-page .bfe-eyebrow{font-size:12px!important;letter-spacing:.16em;color:#65718a!important}.bfe-page .bfe-small{font-size:14px!important}.bfe-page .bfe-number{color:#5c73c2!important;font-size:28px!important;font-weight:600}.bfe-page .bfe-subtitle{font-size:22px!important}.bfe-page .bfe-person{text-align:center}.bfe-page .bfe-person .elementor-heading-title{font-size:18px}.bfe-page .bfe-experience{display:flex;flex-direction:row!important;align-items:center;justify-content:center;gap:28px!important}.bfe-page .bfe-experience-number{width:auto!important;flex-shrink:0}.bfe-page .bfe-experience-number h1{color:#5c73c2!important}.bfe-page .bfe-experience>.elementor-widget-text-editor{width:auto!important;max-width:720px}.bfe-page .bfe-contact-row{display:grid!important;grid-template-columns:1fr auto auto;gap:30px!important;align-items:center!important}.bfe-page .bfe-step-row{display:flex;align-items:center;gap:20px!important;flex-direction:row!important}.bfe-page .bfe-step-row .bfe-number{width:auto!important}.bfe-page .bfe-steps{text-align:center;padding-top:16px!important}.bfe-page .bfe-steps .elementor-heading-title{font-size:19px}.bfe-page .bfe-steps .elementor-widget-text-editor:not(.bfe-number){font-size:15px}.bfe-page .bfe-hero{padding-block:38px!important}.bfe-page .bfe-hero-row{align-items:center;gap:30px!important}.bfe-page .bfe-hero-copy{gap:24px!important}.bfe-page .bfe-image img{width:100%;max-width:100%;display:block;object-fit:cover;border-radius:5px}.bfe-page .bfe-image:has(img[src*="artwork"]){aspect-ratio:var(--bfe-ratio);position:relative;overflow:hidden;border-radius:5px}.bfe-page .bfe-image:has(img[src*="artwork"]) .elementor-widget-container{position:static!important}.bfe-page .bfe-image img[src*="artwork"]{position:absolute;max-width:none!important;width:var(--bfe-width)!important;height:auto!important;left:var(--bfe-left)!important;top:var(--bfe-top)!important;border-radius:0}.bfe-crop-hero,.bfe-crop-about{--bfe-ratio:327/338;--bfe-width:255.96330275%;--bfe-left:-139.75535168%;--bfe-top:-77.81065089%}.bfe-crop-floorplan{--bfe-ratio:312/191;--bfe-width:221.153846%;--bfe-left:-7.69230769%;--bfe-top:-600.52356%}.bfe-crop-comparison{--bfe-ratio:310/191;--bfe-width:222.580645%;--bfe-left:-114.8387097%;--bfe-top:-600.52356%}.bfe-crop-team1,.bfe-crop-team2,.bfe-crop-team3,.bfe-crop-team4{--bfe-ratio:164/154;--bfe-width:510.36585366%;--bfe-top:-885.06493506%}.bfe-crop-team1{--bfe-left:-33.53658537%}.bfe-crop-team2{--bfe-left:-148.78048780%}.bfe-crop-team3{--bfe-left:-262.80487805%}.bfe-crop-team4{--bfe-left:-378.04878049%}.bfe-page .bfe-image:not(:has(img[src*="artwork"])) img{aspect-ratio:var(--bfe-ratio);object-fit:cover}.bfe-nav-shell{width:100%;padding:24px;background:#fff}.bfe-navigation{max-width:1160px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px;font:14px Arial,sans-serif;color:#1e283f}.bfe-navigation img{width:165px;height:auto;display:block}.bfe-navigation nav{display:flex;align-items:center;gap:30px}.bfe-navigation a{color:#1e283f;text-decoration:none}.bfe-navigation a[aria-current=page]{color:#5c73c2;border-bottom:2px solid #5c73c2;padding-block:10px}.bfe-navigation .bfe-nav-contact{background:#5c73c2;color:#fff;border-radius:24px;padding:12px 24px}.bfe-carousel{font-family:Arial,Helvetica,sans-serif}.bfe-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.bfe-carousel.is-ready .bfe-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 12px}.bfe-track::-webkit-scrollbar{display:none}.bfe-service{padding:30px;border:1px solid #dee5f1;border-radius:7px;background:#fff;box-sizing:border-box}.bfe-carousel.is-ready .bfe-service{flex:0 0 calc((100% - 44px)/3);scroll-snap-align:start}.bfe-service h3{font-size:22px;font-weight:700;color:#1e283f;line-height:1.2;min-height:53px;margin:20px 0 12px;letter-spacing:-.025em}.bfe-service p{font-size:17px;color:#65718a;line-height:1.55;margin:0}.bfe-service-icon{display:flex;align-items:center;justify-content:center;background:#eff3fc;color:#5c73c2;width:54px;height:54px;border-radius:50%}.bfe-service-icon svg{width:30px;height:30px}.bfe-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px}.bfe-controls[hidden]{display:none}.bfe-controls>button{display:grid;place-items:center;background:#fff;color:#1e283f;border:1px solid #dee5f1;border-radius:50%;width:42px;height:42px;padding:0;font-size:22px;cursor:pointer}.bfe-controls>button:disabled{opacity:.3;cursor:default}.bfe-dots{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.bfe-dots button{width:10px;height:10px;border:0;border-radius:50%;background:#d5dced;padding:0;cursor:pointer;position:relative}.bfe-dots button:after{content:'';position:absolute;inset:-7px}.bfe-dots button[aria-current=true]{background:#5c73c2}.bfe-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.bfe-page a:focus-visible,.bfe-page button:focus-visible,.bfe-track:focus-visible{outline:3px solid #5c73c2;outline-offset:4px}
@media(max-width:900px){.bfe-page .bfe-section{padding:48px 24px!important}.bfe-page .bfe-two{gap:28px!important}.bfe-page .bfe-contact-row{grid-template-columns:1fr 1fr!important}.bfe-page .bfe-contact-row>.e-con{grid-column:1/-1}.bfe-carousel.is-ready .bfe-service{flex-basis:calc((100% - 22px)/2)}.bfe-track{grid-template-columns:1fr 1fr}.bfe-service{padding:24px}.bfe-page .bfe-three{gap:22px!important}}
@media(max-width:600px){.bfe-page .bfe-section{padding:36px 18px!important}.bfe-page .bfe-two,.bfe-page .bfe-three{grid-template-columns:1fr!important}.bfe-page .bfe-four{grid-template-columns:1fr 1fr!important;gap:24px 18px!important}.bfe-page .bfe-wrap{gap:22px!important}.bfe-page .bfe-contact-row{grid-template-columns:1fr!important}.bfe-page .bfe-contact-row>.e-con{grid-column:auto}.bfe-page .bfe-person .elementor-heading-title{font-size:17px!important}.bfe-navigation{gap:15px;font-size:12px}.bfe-navigation nav{gap:15px}.bfe-navigation img{width:110px}.bfe-navigation .bfe-nav-contact{padding:9px 12px}.bfe-nav-shell{padding:20px 18px}.bfe-carousel.is-ready .bfe-service{flex-basis:88%}.bfe-track{grid-template-columns:1fr}.bfe-page .bfe-step-row{justify-content:flex-start}.bfe-page .elementor-widget-text-editor{font-size:16px}.bfe-page .bfe-experience{gap:20px!important}.bfe-page .bfe-experience-number h1{font-size:46px!important}}
@media(prefers-reduced-motion:reduce){.bfe-page *{scroll-behavior:auto!important;transition:none!important}}

/* Preserve image-window height in Elementor mobile flex containers. */
.bfe-page .bfe-image{width:100%!important;flex-shrink:0!important}

/* 1.1: original brand palette, theme switch and image comparisons. */
.bfe-page{--bfe-navy:#19283e;--bfe-blue:#5b7abc;--bfe-text:#56647b;--bfe-surface:#fff;--bfe-soft:#eef2f8;--bfe-line:#dce3ee;background:var(--bfe-surface);color:var(--bfe-navy)}
.bfe-page .bfe-navy{background:#131c2d}.bfe-page .bfe-pale{background:var(--bfe-soft)}
.bfe-navigation .bfe-brand{display:block;flex-shrink:0}.bfe-navigation .bfe-brand img{width:165px;height:auto;max-height:75px;object-fit:contain}
.bfe-navigation .bfe-logo-dark{display:none}
.bfe-theme-toggle{font:inherit;white-space:nowrap;border:1px solid #c5cfdf;border-radius:24px;background:transparent;color:inherit;padding:10px 15px;cursor:pointer;min-height:44px}
.bfe-navigation .bfe-nav-contact{background:#5b7abc}
.bfe-service{transition:border-color .3s ease,background-color .3s ease}
.bfe-service-icon{background:#eef2f8;color:#5b7abc;transition:background-color .3s ease,color .3s ease,transform .3s ease}
.bfe-service h3{transition:color .3s ease}
.bfe-service:hover,.bfe-service:focus-visible{border-color:#5b7abc}
.bfe-service:hover .bfe-service-icon,.bfe-service:focus-visible .bfe-service-icon{background:#5b7abc;color:#fff;transform:translateY(-5px)}
.bfe-service:hover h3,.bfe-service:focus-visible h3{color:#5b7abc}
.bfe-comparison{margin:0;width:100%;font-family:Arial,Helvetica,sans-serif;color:var(--bfe-navy,#19283e)}
.bfe-compare-title{font-size:22px;font-weight:700;margin:0 0 18px;letter-spacing:-.025em}
.bfe-compare-stage{position:relative;width:100%;aspect-ratio:3/2;overflow:hidden;border:1px solid var(--bfe-line,#dce3ee);border-radius:12px;background:#e9edf3;isolation:isolate}
.bfe-compare-stage .bfe-compare-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;display:block;pointer-events:none;user-select:none}
.bfe-compare-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--bfe-position,50%)) 0 0)}
.bfe-demo-exposure{filter:brightness(.62) saturate(.72)}
.bfe-compare-label{position:absolute;top:16px;padding:7px 12px;background:#131c2de6;color:white;font-size:12px;border-radius:20px;pointer-events:none}.bfe-compare-label.before{left:16px}.bfe-compare-label.after{right:16px}
.bfe-divider{position:absolute;top:0;bottom:0;left:var(--bfe-position,50%);width:2px;background:#fff;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 8px #131c2d66}
.bfe-divider span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;display:grid;place-items:center;background:#fff;color:#131c2d;border-radius:50%;font-size:25px;box-shadow:0 2px 16px #131c2d33}
.bfe-compare-range{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0;margin:0!important;cursor:ew-resize;touch-action:pan-y;z-index:5}
.bfe-compare-stage:focus-within{outline:3px solid #5b7abc;outline-offset:4px}
.bfe-compare-help,.bfe-compare-note{font-size:12px!important;line-height:1.5!important;color:var(--bfe-text,#56647b);margin:12px 0 0!important}
.bfe-compare-help{font-weight:600}
html[data-bfe-theme=dark] .bfe-page{--bfe-navy:#f3f6fc;--bfe-text:#bdc9dc;--bfe-surface:#131c2d;--bfe-soft:#1c2940;--bfe-line:#35455e;background:#131c2d;color:#f3f6fc;color-scheme:dark}
html[data-bfe-theme=dark] .bfe-page .bfe-section{background-color:#131c2d!important}
html[data-bfe-theme=dark] .bfe-page .bfe-pale,html[data-bfe-theme=dark] .bfe-page .bfe-gray{background-color:#1c2940!important}
html[data-bfe-theme=dark] .bfe-page .elementor-heading-title{color:#f3f6fc!important}
html[data-bfe-theme=dark] .bfe-page .elementor-widget-text-editor,html[data-bfe-theme=dark] .bfe-page .bfe-eyebrow{color:#bdc9dc!important}
html[data-bfe-theme=dark] .bfe-page .bfe-number,html[data-bfe-theme=dark] .bfe-page .bfe-experience-number .elementor-heading-title{color:#9bb6ef!important}
html[data-bfe-theme=dark] .bfe-page .bfe-nav-shell{background:#131c2d}
html[data-bfe-theme=dark] .bfe-navigation,html[data-bfe-theme=dark] .bfe-navigation a{color:#f3f6fc}
html[data-bfe-theme=dark] .bfe-navigation a[aria-current=page]{color:#9bb6ef}
html[data-bfe-theme=dark] .bfe-navigation .bfe-logo-light{display:none}
html[data-bfe-theme=dark] .bfe-navigation .bfe-logo-dark{display:block}
html[data-bfe-theme=dark] .bfe-service{background:#1c2940;border-color:#35455e}
html[data-bfe-theme=dark] .bfe-service h3{color:#f3f6fc}
html[data-bfe-theme=dark] .bfe-service p{color:#bdc9dc}
html[data-bfe-theme=dark] .bfe-service:hover,html[data-bfe-theme=dark] .bfe-service:focus-visible{border-color:#9bb6ef}
html[data-bfe-theme=dark] .bfe-service:hover h3,html[data-bfe-theme=dark] .bfe-service:focus-visible h3{color:#9bb6ef}
html[data-bfe-theme=dark] .bfe-controls>button{background:#1c2940;color:#f3f6fc;border-color:#35455e}
html[data-bfe-theme=dark] .bfe-theme-toggle{border-color:#53647f}
.bfe-theme-toggle:focus-visible{outline:3px solid #5b7abc;outline-offset:4px}
@media(max-width:600px){.bfe-navigation{flex-wrap:wrap;gap:14px}.bfe-navigation nav{gap:12px;flex-wrap:wrap}.bfe-navigation .bfe-brand img{width:120px;max-height:54px}.bfe-theme-toggle{padding:8px 12px}.bfe-compare-label{top:10px;padding:5px 10px}.bfe-compare-label.before{left:10px}.bfe-compare-label.after{right:10px}}
@media(prefers-reduced-motion:reduce){.bfe-service,.bfe-service-icon,.bfe-service h3{transition:none!important}.bfe-service:hover .bfe-service-icon,.bfe-service:focus-visible .bfe-service-icon{transform:none}}

/* Device-controlled appearance: no manual switch. */
.bfe-theme-toggle{display:none!important}
html[data-bfe-theme="light"] .bfe-page{background-color:#fff!important;color-scheme:light}
html[data-bfe-theme="light"] .bfe-page .bfe-section:not(.bfe-pale):not(.bfe-gray):not(.bfe-navy){background-color:#fff!important}
html[data-bfe-theme="light"] .bfe-nav-shell{background-color:#fff!important}

/* Hide toggle even if Elementor or an older template still renders it. */
html .bfe-theme-toggle, html button.bfe-theme-toggle { display:none!important; }

/* Service imagery: proportional image and copy areas, with room for edited text. */
.bfe-carousel .bfe-service.bfe-service-visual{padding:0;display:grid;grid-template-rows:2fr 3fr;min-height:440px;overflow:hidden;border-radius:12px;align-self:stretch}
.bfe-service-visual .bfe-service-media{position:relative;min-height:176px;overflow:hidden;background:#e8edf6}
.bfe-service-visual .bfe-service-media img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;pointer-events:none;user-select:none;transition:transform .35s ease}
.bfe-service-visual .bfe-service-copy{padding:28px;min-width:0;overflow-wrap:anywhere}
.bfe-carousel .bfe-service-visual h3{margin:0 0 14px;min-height:0}
.bfe-service-visual:hover .bfe-service-media img{transform:scale(1.035)}
@media(max-width:600px){.bfe-service-visual .bfe-service-copy{padding:24px}}
@media(prefers-reduced-motion:reduce){.bfe-service-visual .bfe-service-media img{transition:none}.bfe-service-visual:hover .bfe-service-media img{transform:none}}
