.dpe-page{--admin-bar-height:0px}.dpe-page.admin-bar{--admin-bar-height:32px}
@media(max-width:782px){.dpe-page.admin-bar{--admin-bar-height:46px}}
/* Compatibility only: dimensions, fonts and spacing live in native Elementor controls. */
.dpe-content{max-width:2200px;margin-inline:auto}
.de-scene{isolation:isolate;--de-photo-height:clamp(560px,calc((100svh - var(--admin-bar-height,0px)) * .8),860px)}
.dpe-page .elementor-element.de-photo{position:absolute;left:0;right:0;top:calc(-1 * var(--header-height));height:var(--de-photo-height);overflow:hidden;z-index:-1;mask-image:linear-gradient(#000 86%,transparent)}
.de-photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#ffffffe6 0%,#ffffffc7 29%,#ffffff59 47%,transparent 65%)}
.de-photo img{display:block}
.de-description{max-width:680px}
.de-card,.de-contact{overflow-wrap:anywhere}
.de-heading .elementor-heading-title{text-wrap:balance}
.de-description .elementor-heading-title{text-wrap:pretty}
.de-photo-mobile{mask-image:linear-gradient(transparent,#000 18%,#000 78%,transparent)}
@media(min-width:768px) and (max-width:1300px){.de-hero{min-height:calc(var(--de-photo-height) - var(--header-height))}.de-photo:after{background:linear-gradient(90deg,#fffffff5,#fffffff0 48%,transparent 90%)}}
@media(max-width:767px){.de-scene{min-height:0}.de-photo-mobile{position:relative}.de-description br{display:none}}
@media(min-width:1301px){.de-scene--home .de-features{max-width:1200px}}
/* Keep photo selection available through Elementor's Structure panel. */
.elementor-editor-active .de-photo{pointer-events:none}
/* Elementor normally ghosts hidden responsive widgets in the editor;
   use the same photo visibility as the published page. */
@media(min-width:768px){.elementor-editor-active .elementor-element.de-photo-mobile{display:none!important}}
@media(max-width:767px){.elementor-editor-active .elementor-element.de-photo{display:none!important}}