/* Original layout expressed with native Elementor widgets and editable containers. */
.elementor .mgbc-native{font-family:var(--font-sans);color:#1a1a1a;font-weight:300;min-width:0;--kit-widget-spacing:0;}
.elementor .mgbc-native .elementor-widget{min-width:0;--kit-widget-spacing:0;}
.elementor .mgbc-native .elementor-widget-container{height:100%;}
.elementor .mgbc-site.e-con{width:100%;max-width:1440px;margin-left:auto;margin-right:auto;}
.elementor .mgbc-col.e-con{flex:1 1 0;min-width:0;}
.elementor .mgbc-copy p:first-child{margin-top:0;}.elementor .mgbc-copy p:last-child{margin-bottom:0;}
.elementor .mgbc-copy a{text-decoration:underline;}
.elementor .mgbc-label{margin-bottom:1.7rem;}
.elementor .mgbc-label .elementor-heading-title{line-height:1.5;}
.elementor .mgbc-image img{display:block;width:100%;height:100%;object-fit:cover;}
.elementor .mgbc-image :is(a,picture){display:block;width:100%;height:100%;}
.elementor .mgbc-button .elementor-button:hover{background:#9a3630;color:#fff;}
.elementor .mgbc-hero.e-con{height:100svh;min-height:max(560px,100svh);position:relative;overflow:hidden;}
.elementor .mgbc-hero-image{position:absolute;inset:0;height:100%;width:100%;max-width:none;}
.elementor .mgbc-hero-image img{height:100%;opacity:.92;}
.elementor .mgbc-hero-shade.e-con{position:absolute;inset:0;width:100%;height:100%;background:linear-gradient(180deg,#0008,#00000014 42%,#0009);pointer-events:none;z-index:1;}
.elementor .mgbc-hero-copy.e-con{position:relative;z-index:2;padding:0 2rem;width:100%;align-items:center;pointer-events:none;}
.elementor .mgbc-hero-copy .elementor-widget{pointer-events:auto;}
.elementor .mgbc-hero-label .elementor-heading-title{color:#fff;letter-spacing:.35em;opacity:.9;}
.elementor .mgbc-hero-title .elementor-heading-title{font-size:clamp(2.4rem,6vw,5.4rem);line-height:1.05;}
.elementor .mgbc-scroll-cue{position:absolute;bottom:2.4rem;left:50%;transform:translateX(-50%);z-index:2;width:auto;}
.elementor .mgbc-scroll-cue .elementor-button:hover{background:transparent;}
.elementor .mgbc-intro-title{max-width:940px;margin-left:auto;margin-right:auto;}
.elementor .mgbc-intro-title .elementor-heading-title{font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.45;}
.elementor .mgbc-banner.e-con{height:78vh;min-height:400px;overflow:hidden;}
.elementor .mgbc-banner-contained.e-con{height:70vh;border-radius:2px;padding-left:4rem;padding-right:4rem;}
.elementor .mgbc-banner>.mgbc-image{height:100%;width:100%;}
.elementor .mgbc-overview-title .elementor-heading-title{font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.4;}
.elementor .mgbc-life.e-con{gap:8vw;}
.elementor .mgbc-life-main{flex:0 0 56%;width:56%;aspect-ratio:4/3;overflow:hidden;border-radius:2px;}
.elementor .mgbc-life-side{flex:0 0 22%;width:22%;aspect-ratio:3/4;overflow:hidden;border-radius:2px;}
.elementor .mgbc-about-copy.e-con{flex:1 1 0;}
.elementor .mgbc-about-image{flex:1.05 1 0;aspect-ratio:3/4;overflow:hidden;border-radius:2px;}
.elementor .mgbc-about-title{margin:1rem 0 1.4rem;}
.elementor .mgbc-about-title .elementor-heading-title{font-size:2.1rem;line-height:1.4;}
.elementor .mgbc-center.e-con{align-items:center;}
.elementor .mgbc-section-title .elementor-heading-title{font-size:2.4rem;line-height:1.4;}
.elementor .mgbc-description{max-width:680px;margin:1.7rem auto 0;}
.elementor .mgbc-experience-strip.e-con{width:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;}
.elementor .mgbc-experience-card{flex:0 0 340px;width:340px;height:420px;scroll-snap-align:start;overflow:hidden;border-radius:2px;}
.elementor .mgbc-experience-card:nth-child(even){margin-top:3.5rem;height:280px;}
.elementor .mgbc-re-title{margin:1rem 0 1.4rem;}.elementor .mgbc-re-title .elementor-heading-title{font-size:2.2rem;line-height:1.4;}
.elementor .mgbc-re-list.e-con{margin-top:2.6rem;border-top:1px solid #0002;}
.elementor .mgbc-re-button{width:100%;border-bottom:1px solid #0002;}
.elementor .mgbc-re-button .elementor-button{display:block;width:100%;text-align:left;line-height:1.5;}
.elementor .mgbc-re-button.is-active .elementor-button,.elementor .mgbc-re-button .elementor-button:hover{background:transparent;color:#222;opacity:.55;padding-left:.6rem;}
.elementor .mgbc-re-images.e-con{flex:1 1 0;aspect-ratio:3/4;position:relative;overflow:hidden;min-height:0;}
.elementor .mgbc-re-photo{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;transition:opacity .5s;}
.elementor .mgbc-re-photo:first-child,.elementor .mgbc-re-photo.is-active{opacity:1;pointer-events:auto;}
.elementor .mgbc-re-images.mgbc-ready .mgbc-re-photo:not(.is-active){opacity:0;pointer-events:none;}
.elementor .mgbc-carousel.e-con{position:relative;max-width:1400px;width:calc(100% - 8rem);margin:4rem auto 0;overflow:hidden;}
.elementor .mgbc-moments-track.e-con{position:relative;transition:transform .5s cubic-bezier(.4,0,.2,1);width:100%;}
.elementor .mgbc-moment-slide.e-con{flex:0 0 62%;width:62%;max-width:900px;min-width:0;}
.elementor .mgbc-moment-image{aspect-ratio:16/9;width:100%;overflow:hidden;border-radius:2px;}
.elementor .mgbc-moment-caption{margin:2.2rem 0 1.4rem;}
.elementor .mgbc-moment-caption .elementor-heading-title{font-size:1.7rem;line-height:1.4;}
.elementor .mgbc-moment-slide:not(.is-active) .mgbc-moment-caption{visibility:hidden;}
.elementor .mgbc-prev,.elementor .mgbc-next{position:absolute;top:42%;transform:translateY(-50%);z-index:5;width:44px;}
.elementor .mgbc-prev{left:1.6rem;}.elementor .mgbc-next{right:1.6rem;}
.elementor .mgbc-prev .elementor-button,.elementor .mgbc-next .elementor-button{display:flex;width:44px;height:44px;align-items:center;justify-content:center;box-shadow:0 4px 14px #0002;}
.elementor .mgbc-prev .elementor-button:hover,.elementor .mgbc-next .elementor-button:hover{background:#fff;color:#222;}
.elementor .mgbc-explore-strip.e-con{overflow-x:auto;padding:0 4rem 1rem;margin-top:3.4rem;scrollbar-width:thin;}
.elementor .mgbc-explore-card.e-con{flex:0 0 300px;width:300px;}
.elementor .mgbc-explore-photo{aspect-ratio:1/1;width:100%;overflow:hidden;border-radius:2px;}
.elementor .mgbc-explore-caption{margin-top:1.2rem;}.elementor .mgbc-explore-caption .elementor-heading-title{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:400;line-height:1.5;}
/* Header and menu are native widgets in a separate editable template. */
.elementor .mgbc-header-root.e-con{min-height:0;position:static;}
.elementor .mgbc-site-header.e-con,.elementor .mgbc-overlay-bar.e-con{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:6.4rem;padding:0 2.6rem;gap:1rem;}
.elementor .mgbc-site-header.e-con{position:fixed;inset:0 0 auto;z-index:100;color:#fff;width:100%;transition:background .4s;}
.elementor .mgbc-brand.e-con{width:auto;justify-self:center;text-align:center;}
.elementor .mgbc-brand-word .elementor-heading-title{font-size:1.5rem;letter-spacing:.12em;line-height:1;}
.elementor .mgbc-brand-sub{margin-top:.4rem;opacity:.75;}.elementor .mgbc-brand-sub .elementor-heading-title{font-size:.55rem;letter-spacing:.32em;line-height:1;}
.elementor .mgbc-header-cta{justify-self:end;width:auto;}.elementor .mgbc-menu-toggle,.elementor .mgbc-menu-close{justify-self:start;width:auto;}
.elementor .mgbc-logo-image{width:auto;max-width:240px;height:70px;justify-self:center;}.elementor .mgbc-logo-image img{width:auto;height:100%;object-fit:contain;}
.elementor .mgbc-menu-overlay.e-con{position:fixed;inset:0;background:#203276;color:#fff;z-index:200;display:none;overflow-y:auto;}
.elementor .mgbc-menu-overlay.is-open{display:flex;}
.elementor .mgbc-menu-body.e-con{flex:1 1 auto;min-height:0;}
.elementor .mgbc-menu-left.e-con{flex:1 1 50%;padding:2rem 4rem 3rem;justify-content:space-between;}
.elementor .mgbc-menu-columns.e-con{gap:4rem;}
.elementor .mgbc-menu-col.e-con{width:auto;min-width:140px;}
.elementor .mgbc-menu-link{margin-bottom:.7rem;}.elementor .mgbc-menu-link .elementor-heading-title{line-height:1.5;}
.elementor .mgbc-menu-children{padding-left:1rem;}
body .elementor .mgbc-menu-overlay .mgbc-label .elementor-heading-title,body .elementor .mgbc-footer .mgbc-label .elementor-heading-title{color:#fff;opacity:.55;}
.elementor .mgbc-menu-location{margin-top:3rem;}
.elementor .mgbc-menu-image{flex:1 1 50%;min-width:0;padding:2rem 4rem 4rem 0;}
.elementor .mgbc-site-header.is-scrolled,.mgbc-solid-header .elementor .mgbc-site-header{background:#fff;color:#152056;box-shadow:0 2px 14px #0001;}
body .elementor .mgbc-site-header.is-scrolled .elementor-heading-title,body.mgbc-solid-header .elementor .mgbc-site-header .elementor-heading-title{color:#152056;}
body .elementor .mgbc-site-header.is-scrolled .elementor-button,body.mgbc-solid-header .elementor .mgbc-site-header .elementor-button{color:#152056;border-color:#152056;}
.elementor .mgbc-site-header .elementor-button:hover,.elementor .mgbc-menu-overlay .elementor-button:hover{background:transparent;opacity:.75;}
.elementor .mgbc-footer{color:#fff;}
.elementor .mgbc-footer>.mgbc-site{padding-left:4rem;padding-right:4rem;}
.elementor .mgbc-foot-top.e-con{gap:3rem;}
.elementor .mgbc-footer .mgbc-brand{flex:1.2 1 0;text-align:left;}
.elementor .mgbc-footer .mgbc-brand-word .elementor-heading-title{font-size:1.9rem;letter-spacing:.1em;}
.elementor .mgbc-footer .mgbc-brand-sub .elementor-heading-title{font-size:.62rem;letter-spacing:.3em;}
.elementor .mgbc-foot-columns.e-con{flex:2.6 1 0;gap:5rem;justify-content:flex-end;}
.elementor .mgbc-foot-col.e-con{width:auto;}
.elementor .mgbc-foot-contact.e-con{margin-top:5rem;}
.elementor .mgbc-foot-bottom.e-con{margin-top:5rem;padding-top:2rem;border-top:1px solid #fff3;justify-content:space-between;align-items:flex-end;gap:1.5rem;opacity:.6;}
.elementor .mgbc-foot-bottom .mgbc-copy{font-size:.8rem;}.elementor .mgbc-foot-legal,.elementor .mgbc-credit{width:auto;}
.admin-bar .mgbc-site-header.e-con,.admin-bar header.sh{top:32px;}.admin-bar .mgbc-menu-overlay.e-con{top:32px;}
.mgbc-solid-header header.sh{background:white;color:#152056;}
@media(max-width:960px){.elementor .mgbc-menu-image{display:none;}.elementor .mgbc-menu-left.e-con{flex:1;padding:1.5rem 1.6rem 2.5rem;}.elementor .mgbc-menu-columns.e-con{gap:3rem;}}
@media(max-width:900px){
 .elementor .mgbc-section.mgbc-site{padding-left:1.6rem;padding-right:1.6rem;}
 .elementor .mgbc-carousel.e-con{width:calc(100% - 3.2rem);}.elementor .mgbc-moment-slide.e-con{flex-basis:88%;width:88%;}
 .elementor .mgbc-explore-card.e-con{flex-basis:200px;width:200px;}
 .elementor .mgbc-foot-top.e-con,.elementor .mgbc-foot-bottom.e-con{flex-direction:column;align-items:stretch;}
 .elementor .mgbc-foot-columns.e-con{justify-content:flex-start;gap:3rem;}
 .elementor .mgbc-footer>.mgbc-site{padding-left:1.6rem;padding-right:1.6rem;}
 .elementor .mgbc-experience-strip.e-con,.elementor .mgbc-explore-strip.e-con{padding-left:1.6rem;padding-right:1.6rem;}
}
@media(max-width:860px){
 .elementor .mgbc-overview.e-con,.elementor .mgbc-about.e-con,.elementor .mgbc-realestate.e-con,.elementor .mgbc-life.e-con{flex-direction:column;align-items:stretch;gap:2rem;}
 .elementor .mgbc-life-main,.elementor .mgbc-life-side{flex:auto;width:100%;}
 .elementor .mgbc-about-image{flex:auto;width:100%;}.elementor .mgbc-re-images.e-con{flex:auto;width:100%;}
}
@media(max-width:782px){.admin-bar .mgbc-site-header.e-con,.admin-bar header.sh,.admin-bar .mgbc-menu-overlay.e-con{top:46px;}}
@media(max-width:600px){
 .elementor .mgbc-site-header.e-con,.elementor .mgbc-overlay-bar.e-con{padding:0 .8rem;gap:.5rem;height:5.6rem;grid-template-columns:auto 1fr;}
 .elementor .mgbc-header-cta{display:none;}.elementor .mgbc-brand-word .elementor-heading-title{font-size:1.25rem;}
 .elementor .mgbc-brand-sub .elementor-heading-title{font-size:.48rem;letter-spacing:.2em;}
 .elementor .mgbc-menu-toggle .elementor-button,.elementor .mgbc-menu-close .elementor-button{padding:10px 0;letter-spacing:.06em;}
 .elementor .mgbc-experience-card{width:72vw;flex-basis:72vw;}.elementor .mgbc-banner.e-con{height:auto;min-height:0;aspect-ratio:16/9;}
 .elementor .mgbc-banner>.mgbc-image{position:absolute;inset:0;}
 .elementor .mgbc-prev{left:.4rem;}.elementor .mgbc-next{right:.4rem;}
}
/* Editor-only guide. Hidden slider images remain reachable in the Navigator. */
.elementor-editor-active .mgbc-site-header.e-con{position:relative;top:auto;background:#203276;color:#fff;}
.elementor-editor-active .mgbc-menu-overlay.is-open{position:relative;inset:auto;min-height:650px;}
.elementor-editor-active .mgbc-hero-copy{pointer-events:none;}
.elementor-editor-active .mgbc-hero-copy .elementor-widget{pointer-events:auto;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.elementor .mgbc-moments-track.e-con,.elementor .mgbc-re-photo{transition:none;}}

/* Keep ordinary Elementor pages below the fixed theme header. */
body.mgbc-solid-header.elementor-page:not(.elementor-editor-active) article.type-page{padding-top:6.4rem;}
@media(max-width:600px){body.mgbc-solid-header.elementor-page:not(.elementor-editor-active) article.type-page{padding-top:5.6rem;}}
