.elementor-339 .elementor-element.elementor-element-f992b0a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:104px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-f992b0a:not(.elementor-motion-effects-element-type-background), .elementor-339 .elementor-element.elementor-element-f992b0a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBF8F1;}.elementor-339 .elementor-element.elementor-element-10ab6fc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-339 .elementor-element.elementor-element-a6641b6{--display:flex;}.elementor-339 .elementor-element.elementor-element-a7e095c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-339 .elementor-element.elementor-element-8cf8270{--display:flex;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-339 .elementor-element.elementor-element-bf312fa .elementor-button{background-color:var( --e-global-color-accent );fill:#FFFFFF;color:#FFFFFF;}.elementor-339 .elementor-element.elementor-element-a54f746{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-357a488{--display:flex;}.elementor-339 .elementor-element.elementor-element-4a0bfb3{--display:flex;}.elementor-339 .elementor-element.elementor-element-eafc319{--display:flex;}.elementor-339 .elementor-element.elementor-element-6de3d4f8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overflow:visible;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:40;}.elementor-339 .elementor-element.elementor-element-6de3d4f8:not(.elementor-motion-effects-element-type-background), .elementor-339 .elementor-element.elementor-element-6de3d4f8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-339 .elementor-element.elementor-element-6ea5d5a7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-339 .elementor-element.elementor-element-2406f5d1 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-339 .elementor-element.elementor-element-2406f5d1 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-339 .elementor-element.elementor-element-2406f5d1{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-339 .elementor-element.elementor-element-2406f5d1 .elementor-icon-list-text{transition:color 0.3s;}.elementor-339 .elementor-element.elementor-element-6754e639{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:104px;--padding-bottom:104px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-6754e639:not(.elementor-motion-effects-element-type-background), .elementor-339 .elementor-element.elementor-element-6754e639 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBF8F1;}.elementor-339 .elementor-element.elementor-element-15ffa5e8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-339 .elementor-element.elementor-element-5824b773{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-1d52bcf{--display:flex;}.elementor-339 .elementor-element.elementor-element-31ade6e4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-374fcb1c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-60a896cf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-2dbb786 .elementor-icon-list-icon i{color:#E87722;transition:color 0.3s;}.elementor-339 .elementor-element.elementor-element-2dbb786 .elementor-icon-list-icon svg{fill:#E87722;transition:fill 0.3s;}.elementor-339 .elementor-element.elementor-element-2dbb786{--e-icon-list-icon-size:6px;--icon-vertical-offset:0px;}.elementor-339 .elementor-element.elementor-element-2dbb786 .elementor-icon-list-text{transition:color 0.3s;}.elementor-339 .elementor-element.elementor-element-38cf0225 .elementor-button{background-color:var( --e-global-color-accent );fill:#FFFFFF;color:#FFFFFF;}.elementor-339 .elementor-element.elementor-element-1b4789f2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:104px;--padding-bottom:104px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-1b4789f2:not(.elementor-motion-effects-element-type-background), .elementor-339 .elementor-element.elementor-element-1b4789f2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBF8F1;}.elementor-339 .elementor-element.elementor-element-311ebcfc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-339 .elementor-element.elementor-element-e4e1807{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-448370dc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:104px;--padding-bottom:104px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-448370dc:not(.elementor-motion-effects-element-type-background), .elementor-339 .elementor-element.elementor-element-448370dc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#062B3D;}.elementor-339 .elementor-element.elementor-element-121e8c06{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-339 .elementor-element.elementor-element-391a0e69{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-66656254{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-40e29513{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:104px;--padding-bottom:104px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-40e29513:not(.elementor-motion-effects-element-type-background), .elementor-339 .elementor-element.elementor-element-40e29513 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBF8F1;}.elementor-339 .elementor-element.elementor-element-7a3038a4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-339 .elementor-element.elementor-element-44d42bdf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-6ba57fff{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-6fee0dc8{--display:flex;}.elementor-339 .elementor-element.elementor-element-47f2212{--display:flex;}.elementor-339 .elementor-element.elementor-element-25c6641d{--display:flex;}.elementor-339 .elementor-element.elementor-element-2f2843c5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:104px;--padding-bottom:104px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-2f2843c5:not(.elementor-motion-effects-element-type-background), .elementor-339 .elementor-element.elementor-element-2f2843c5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#062B3D;}.elementor-339 .elementor-element.elementor-element-77d52c17{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-339 .elementor-element.elementor-element-5144ba1e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-11440e3b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-16618003 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-339 .elementor-element.elementor-element-16618003 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-339 .elementor-element.elementor-element-16618003{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-339 .elementor-element.elementor-element-16618003 .elementor-icon-list-text{transition:color 0.3s;}.elementor-339 .elementor-element.elementor-element-646facaa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-6cb1375b{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:16px 16px;--row-gap:16px;--column-gap:16px;}.elementor-339 .elementor-element.elementor-element-219ed439 .elementor-button{background-color:var( --e-global-color-accent );fill:#FFFFFF;color:#FFFFFF;}.elementor-339 .elementor-element.elementor-element-1b926b18{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:120px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-1b926b18:not(.elementor-motion-effects-element-type-background), .elementor-339 .elementor-element.elementor-element-1b926b18 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBF8F1;}.elementor-339 .elementor-element.elementor-element-4b1cd71b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-339 .elementor-element.elementor-element-4b43b0ac{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-339 .elementor-element.elementor-element-4cd56337{--display:flex;}.elementor-339 .elementor-element.elementor-element-eb7cb5c .elementor-button{background-color:var( --e-global-color-accent );fill:#FFFFFF;color:#FFFFFF;}@media(min-width:768px){.elementor-339 .elementor-element.elementor-element-10ab6fc{--content-width:1200px;}.elementor-339 .elementor-element.elementor-element-6ea5d5a7{--content-width:1200px;}.elementor-339 .elementor-element.elementor-element-15ffa5e8{--content-width:1200px;}.elementor-339 .elementor-element.elementor-element-311ebcfc{--content-width:1200px;}.elementor-339 .elementor-element.elementor-element-121e8c06{--content-width:1200px;}.elementor-339 .elementor-element.elementor-element-7a3038a4{--content-width:1200px;}.elementor-339 .elementor-element.elementor-element-77d52c17{--content-width:1200px;}.elementor-339 .elementor-element.elementor-element-4b1cd71b{--content-width:1200px;}}@media(max-width:1024px){.elementor-339 .elementor-element.elementor-element-f992b0a{--padding-top:80px;--padding-bottom:72px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-10ab6fc{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-339 .elementor-element.elementor-element-6de3d4f8{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-6ea5d5a7{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-339 .elementor-element.elementor-element-6754e639{--padding-top:76px;--padding-bottom:76px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-15ffa5e8{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-339 .elementor-element.elementor-element-1b4789f2{--padding-top:76px;--padding-bottom:76px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-311ebcfc{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-339 .elementor-element.elementor-element-448370dc{--padding-top:76px;--padding-bottom:76px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-121e8c06{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-339 .elementor-element.elementor-element-40e29513{--padding-top:76px;--padding-bottom:76px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-7a3038a4{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-339 .elementor-element.elementor-element-2f2843c5{--padding-top:76px;--padding-bottom:76px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-77d52c17{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-339 .elementor-element.elementor-element-1b926b18{--padding-top:88px;--padding-bottom:88px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-4b1cd71b{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}}@media(max-width:767px){.elementor-339 .elementor-element.elementor-element-f992b0a{--padding-top:56px;--padding-bottom:52px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-10ab6fc{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-339 .elementor-element.elementor-element-6de3d4f8{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-6ea5d5a7{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-339 .elementor-element.elementor-element-6754e639{--padding-top:56px;--padding-bottom:56px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-15ffa5e8{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-339 .elementor-element.elementor-element-1b4789f2{--padding-top:56px;--padding-bottom:56px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-311ebcfc{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-339 .elementor-element.elementor-element-448370dc{--padding-top:56px;--padding-bottom:56px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-121e8c06{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-339 .elementor-element.elementor-element-40e29513{--padding-top:56px;--padding-bottom:56px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-7a3038a4{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-339 .elementor-element.elementor-element-2f2843c5{--padding-top:56px;--padding-bottom:56px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-77d52c17{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-339 .elementor-element.elementor-element-1b926b18{--padding-top:72px;--padding-bottom:72px;--padding-left:0px;--padding-right:0px;}.elementor-339 .elementor-element.elementor-element-4b1cd71b{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}}/* Start custom CSS for container, class: .elementor-element-f992b0a *//* RULE-011 heading-margin reset (mandatory first block) */
.esls-hero-dba .elementor-heading-title { margin: 0 !important; }
.esls-hero-dba .elementor-widget-heading { padding: 0 !important; }

/* P3 hero v1.2 — A · Specimen split. Self-contained section: copy left,
   hairline specimen plate right (rhymes with the overview key-facts card).
   Split = the esls-two-col-60-40 GRID idiom proven live (F-P2-7). Every rule
   that changes a container's display carries ≥ two classes (X-8 rule). */
.esls-hero-dba .esls-two-col-60-40 { display: grid; grid-template-columns: 7fr 5fr; gap: 72px; align-items: center; }
.esls-hero-dba .esls-hero-dba-copy { display: flex; flex-direction: column; gap: 26px; }
.esls-hero-dba .esls-display-1 .elementor-heading-title { max-width: 15ch; }
.esls-hero-dba .esls-body-lg { max-width: 520px; }
/* Explicit row: plugin §9 sets no direction (F-P2-7). */
.esls-hero-dba .esls-cta-btn-row { display: flex; flex-direction: row; flex-wrap: wrap; gap: 12px; align-items: center; }

/* Specimen plate — transparent ground, hairline border (the key-facts card
   language, hero register). */
.esls-hero-dba .esls-spec-plate {
  display: flex; flex-direction: column;
  border: 1px solid var(--esls-border-warm);
  border-radius: var(--radius-lg);
  padding: 36px 40px 26px;
}
.esls-hero-dba .esls-spec-label { padding-bottom: 20px; border-bottom: 1px solid var(--esls-border-warm); }
.esls-hero-dba .esls-spec-label .elementor-heading-title {
  font-family: 'JetBrains Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace !important;
  font-weight: 500 !important; font-size: 11px !important;
  letter-spacing: 0.22em !important; text-transform: uppercase !important;
  color: var(--esls-text-tertiary) !important;
}
/* Fact rows: numeral | label on a shared baseline. Grid at 0,2,0 (X-8 rule). */
.esls-hero-dba .esls-spec-row {
  display: grid; grid-template-columns: 96px minmax(0, 1fr);
  column-gap: 20px; align-items: baseline;
  padding: 20px 0; border-bottom: 1px solid var(--esls-border-warm);
}
/* Size scoped over P-26's 44px (higher specificity wins across sheets). */
.esls-hero-dba .esls-spec-row .esls-fact-num .elementor-heading-title { font-size: 40px !important; }
.esls-hero-dba .esls-spec-row .esls-fact-label .elementor-heading-title { max-width: none; }
.esls-hero-dba .esls-spec-foot { padding-top: 18px; }

@media (max-width: 1024px) {
  .esls-hero-dba .esls-two-col-60-40 { grid-template-columns: 1fr 1fr; gap: 44px; }
  /* Pair idiom from ≤767 extended to tablet: the 1fr copy column (~340px at
     768) cannot seat both buttons at natural width, so they share the row
     (MBA v1.2 reference implementation). */
  .esls-hero-dba .esls-cta-btn-row { flex-direction: row; flex-wrap: nowrap; gap: 12px; }
  .esls-hero-dba .esls-cta-btn-row .elementor-widget-button { flex: 1 1 0; min-width: 0; }
  .esls-hero-dba .esls-cta-btn-row .elementor-button { width: 100%; justify-content: center; padding-left: 12px; padding-right: 12px; }
}
@media (max-width: 767px) {
  .esls-hero-dba .esls-two-col-60-40 { grid-template-columns: 1fr; gap: 40px; }
  .esls-hero-dba .esls-spec-plate { padding: 26px 22px 18px; }
  .esls-hero-dba .esls-spec-row { grid-template-columns: 72px minmax(0, 1fr); padding: 16px 0; }
  .esls-hero-dba .esls-spec-row .esls-fact-num .elementor-heading-title { font-size: 30px !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6de3d4f8 *//* RULE-011 heading-margin reset (mandatory first block) */
.esls-subnav .elementor-heading-title { margin: 0 !important; }
.esls-subnav .elementor-widget-heading { padding: 0 !important; }

/* ---------------------------------------------------------------------------
   P-13 MECHANISM CONTRACT — pinning is Elementor's NATIVE Sticky on this
   section (sticky = top). There is deliberately NO position/top declaration
   below, and no page-level script. Behaviour is plugin-owned (esls-subnav.js).
   Do not reintroduce `position: sticky` here (defect X-1).
   --------------------------------------------------------------------------- */

/* P-13.1 containing-block note. The plugin injects the fades and arrow as
   absolutely-positioned children of this root, but rule 2 forbids
   `position: relative` here. Native Sticky supplies the containing block once
   pinned. If the arrow misplaces on FIRST paint (before any scroll), the fix
   is `contain: layout` on this root — NOT `position: relative`. Deliberately
   not pre-applied: it is a novel property on a root Elementor Pro is about to
   take over, and P-13.1 gates it behind an observed fault. */

/* X-18 — ONE offset token. Must equal the plugin's `esls_subnav_offset`
   (DEFAULT_OFFSET = 150 in v0.1.9), so JS landings and native #hash landings
   agree. Fallback holds until --esls-subnav-offset ships in esls-tokens.css. */
#overview, #curriculum, #dissertation, #tuition, #apply {
  scroll-margin-top: var(--esls-subnav-offset, 150px);
}

/* ===== BEGIN X-10 SKIN SHIM — DELETE THIS WHOLE BLOCK AT PLUGIN v0.1.9.1 =====
   v0.1.9's esls-subnav.css ports EIASM's colour ROLES, not just its mechanism:
   cream-85% surface, border-warm hairline, blue-400 active, 15px links. It also
   doubles link spacing (this list's `gap: 32px` + the plugin's
   `li { margin: 0 32px 0 0 !important }`). The plugin enqueues at priority 99,
   i.e. AFTER this post CSS, so each rule below is deliberately raised one class
   above the plugin's .elementor-339 .elementor-element.elementor-element-6de3d4f8 to win on specificity. Target = P-13.4.
   When the plugin is repainted, delete from BEGIN to END — nothing else here
   depends on it. */

.esls-subnav.esls-subnav {
  background-color: #FFFFFF;
  border-bottom: 1px solid var(--esls-blue-200);
  box-shadow: var(--shadow-sm);
}

/* Spacing declared ONCE, on the list (P-13.4). Plugin's li margin neutralised. */
.esls-subnav .esls-subnav-list .elementor-icon-list-items {
  gap: 32px;
  max-width: 1080px;
  margin-inline: auto !important;
  padding-left: 24px !important;
  padding-right: 64px !important;
  justify-content: flex-start;
}
.esls-subnav .esls-subnav-list li.elementor-icon-list-item {
  margin: 0 !important;
}
@media (min-width: 1025px) {
  .esls-subnav .esls-subnav-list .elementor-icon-list-items { justify-content: center; }
}
@media (max-width: 767px) {
  .esls-subnav .esls-subnav-list .elementor-icon-list-items {
    gap: 24px; padding-left: 16px !important; padding-right: 56px !important;
  }
}

/* Link type — 14px/600, ESLS lock (plugin ships 15px/400). */
.esls-subnav .esls-subnav-list .elementor-icon-list-text {
  font-family: 'Source Sans 3', system-ui, sans-serif;
  font-size: 14px; font-weight: 600; letter-spacing: 0.01em;
  color: var(--esls-text-secondary);
}
.esls-subnav .esls-subnav-list .elementor-icon-list-icon { display: none; }
.esls-subnav .esls-subnav-list .elementor-icon-list-item:after { display: none; border: 0; }

/* Hover + active — ORANGE, never blue. */
.esls-subnav .esls-subnav-list li.elementor-icon-list-item:hover {
  border-bottom: 2px solid rgba(232, 119, 34, 0.35) !important;
}
.esls-subnav .esls-subnav-list li.elementor-icon-list-item.active-nav-link {
  border-bottom: 2px solid var(--esls-orange-400) !important;
}
.esls-subnav .esls-subnav-list li.elementor-icon-list-item.active-nav-link .elementor-icon-list-text {
  color: var(--esls-orange-600) !important; font-weight: 700 !important;
}

/* Injected fades must track the surface — plugin hardcodes #FBF8F1. */
.esls-subnav .js-nav-fade-left {
  width: 48px;
  background: linear-gradient(90deg, #FFFFFF 25%, rgba(255, 255, 255, 0) 100%);
}
.esls-subnav .js-nav-fade-right {
  width: 96px;
  background: linear-gradient(-90deg, #FFFFFF 40px, rgba(255, 255, 255, 0) 100%);
}

/* Injected arrow — 32px white circle, border-warm hairline, orange stroke. */
.esls-subnav .js-nav-btn {
  width: 32px !important; height: 32px !important; right: 8px !important;
  background-color: #FFFFFF !important;
  border: 1px solid var(--esls-border-warm) !important;
  box-shadow: var(--shadow-md) !important;
}
.esls-subnav .js-nav-btn svg {
  width: 16px !important; height: 16px !important;
  stroke: var(--esls-orange-400) !important; stroke-width: 2px !important;
}
.esls-subnav .js-nav-btn.is-flipped {
  background-color: var(--esls-orange-400) !important;
  border-color: var(--esls-orange-400) !important;
  box-shadow: 0 4px 12px rgba(232, 119, 34, 0.4) !important;
}
.esls-subnav .js-nav-btn.is-flipped svg { stroke: #FFFFFF !important; }
/* ===== END X-10 SKIN SHIM ===== *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6754e639 *//* RULE-011 heading-margin reset (mandatory first block) */
.esls-overview-dba .elementor-heading-title { margin: 0 !important; }
.esls-overview-dba .elementor-widget-heading { padding: 0 !important; }

/* Opener (P-30) sits full-width above the split; the split itself is the
   esls-two-col-60-40 GRID idiom proven live on BBA/MBA (F-P2-7). */
.esls-overview-dba .esls-two-col-60-40 { display: grid; grid-template-columns: 7fr 5fr; gap: 56px; align-items: start; }
.esls-overview-dba .esls-overview-left { display: flex; flex-direction: column; gap: 20px; }
.esls-overview-dba .esls-overview-copy { max-width: 600px; }
.esls-overview-dba .esls-overview-copy p { margin: 0; }
.esls-overview-dba .esls-overview-copy p + p { margin-top: 16px; }
/* Key Facts rail — sticky on md+ (RULE-013: grid handles the gap, no width math) */
.esls-overview-dba .esls-sticky-col { display: flex; flex-direction: column; gap: 12px; }
@media (min-width: 768px) {
  .esls-overview-dba .esls-sticky-col { position: sticky; top: var(--esls-subnav-offset, 150px); align-self: start; }
}
/* Hairline key-facts card — monograph form: transparent ground, border only.
   MBA's cream card + shadow deliberately not reused (D-4). */
.esls-overview-dba .esls-keyfacts-card {
  background: transparent; border: 1px solid var(--esls-border-warm);
  border-radius: var(--radius-lg); padding: 28px;
  display: flex; flex-direction: column; gap: 16px; margin-bottom: 4px;
}
.esls-overview-dba .esls-keyfacts-list .elementor-icon-list-items { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; }
.esls-overview-dba .esls-keyfacts-list .elementor-icon-list-item { margin: 0; padding: 0; display: flex; align-items: flex-start; }
.esls-overview-dba .esls-keyfacts-list .elementor-icon-list-item:after { display: none; }
.esls-overview-dba .esls-keyfacts-list .elementor-icon-list-text {
  font-family: 'Source Sans 3', system-ui, sans-serif; font-size: 14px; line-height: 1.8;
  color: var(--esls-text-primary); padding-inline-start: 10px;
}
/* X-13 (extended) — bullet painted on `.elementor-icon-list-icon`, which
   Elementor always renders. No icon font is enqueued or required. */
.esls-overview-dba .esls-keyfacts-list .elementor-icon-list-icon {
  display: block; flex: 0 0 6px; width: 6px; height: 6px;
  margin-top: 9px; font-size: 0; line-height: 0;
  border-radius: 50%;
  background-color: var(--esls-orange-400);
}
.esls-overview-dba .esls-keyfacts-list .elementor-icon-list-icon .esls-bullet,
.esls-overview-dba .esls-keyfacts-list .elementor-icon-list-icon svg { display: none; }
/* FLAG-12: prospectus button hidden until the PDF exists — remove .esls-hidden
   to reveal. (Correct use of a page-local duplicate: this button's hidden state
   must survive plugin deactivation, unlike the curriculum fallback — X-7.) */
.esls-overview-dba .esls-hidden { display: none !important; }
@media (max-width: 767px) {
  .esls-overview-dba .esls-two-col-60-40 { grid-template-columns: 1fr; gap: 36px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b4789f2 *//* RULE-011 heading-margin reset (mandatory first block) */
.esls-curriculum-dba .elementor-heading-title { margin: 0 !important; }
.esls-curriculum-dba .elementor-widget-heading { padding: 0 !important; }

/* No P-16 card rules here: the explorer stylesheet owns the cards and drives
   columns from --esls-course-cols — a hardcoded repeat(3,1fr) would break the
   flat 2-column DBA render (F-P2-6, delegated decision in the P2 note). */
/* NOTE (X-7): deliberately NO page-local `.esls-hidden` duplicate in this
   section. esls-tokens.css owns the F-B fallback rule — a page copy would
   survive plugin deactivation and defeat the V-10 plugin-off reveal (see the
   contract comment in esls-tokens.css). The Overview FLAG-12 duplicate is the
   correct use; this one is not. */
@media (max-width: 767px) {
  .esls-curriculum-dba .esls-mono-open { margin-bottom: 32px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-448370dc *//* RULE-011 heading-margin reset (mandatory first block) */
.esls-dissert-dba .elementor-heading-title { margin: 0 !important; }
.esls-dissert-dba .elementor-widget-heading { padding: 0 !important; }
/* Band presentation is plugin-owned (P-31, theme-customizer §13): orange-ruled
   opener, orange-300 index, Fraunces pull, hairline status row. *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-40e29513 *//* RULE-011 heading-margin reset (mandatory first block) */
.esls-candidacy-dba .elementor-heading-title { margin: 0 !important; }
.esls-candidacy-dba .elementor-widget-heading { padding: 0 !important; }

/* Line-list presentation is plugin-owned (P-33, numbered-row form) — the
   rows run the full 1200px measure; nothing page-local to add. *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2f2843c5 *//* RULE-011 heading-margin reset (mandatory first block) */
.esls-tuition-dba .elementor-heading-title { margin: 0 !important; }
.esls-tuition-dba .elementor-widget-heading { padding: 0 !important; }

/* Left-aligned monograph form — the MBA's centered intro/column deliberately
   not reused (D-4). Ledger presentation is plugin-owned (P-32). */
.esls-tuition-dba .esls-tuition-ledger { display: flex; flex-direction: column; gap: 20px; max-width: 640px; }
.esls-tuition-dba .esls-apply-cta { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; margin-top: 72px; }
/* Explicit row (F-P2-7). */
.esls-tuition-dba .esls-cta-row { display: flex; flex-direction: row; flex-wrap: wrap; gap: 16px; }
@media (max-width: 767px) {
  .esls-tuition-dba .esls-apply-cta { margin-top: 48px; }
  /* Buttons stay side by side and share the full row (MBA v1.2 reference). */
  .esls-tuition-dba .esls-cta-row { flex-wrap: nowrap; gap: 12px; width: 100%; }
  .esls-tuition-dba .esls-cta-row .elementor-widget-button { flex: 1 1 0; min-width: 0; }
  .esls-tuition-dba .esls-cta-row .elementor-button { width: 100%; justify-content: center; padding-left: 12px; padding-right: 12px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b926b18 *//* RULE-011 heading-margin reset (mandatory first block) */
.esls-cta-dba .elementor-heading-title { margin: 0 !important; }
.esls-cta-dba .elementor-widget-heading { padding: 0 !important; }

.esls-cta-dba .esls-cta-col {
  max-width: 620px; margin: 0 auto; text-align: center;
  display: flex; flex-direction: column; align-items: center; gap: 24px;
}
.esls-cta-dba .esls-body-lg,
.esls-cta-dba .esls-body-lg p { max-width: 480px; margin: 0 auto; }
/* Explicit row (F-P2-7). */
.esls-cta-dba .esls-cta-btn-row { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 16px; }

@media (max-width: 767px) {
  .esls-cta-dba .esls-display-2 .elementor-heading-title { font-size: 30px !important; }
  .esls-cta-dba .esls-cta-col { gap: 20px; max-width: 100%; }
  /* Buttons stay side by side and share the full row (MBA v1.2 reference). */
  .esls-cta-dba .esls-cta-btn-row { width: 100%; flex-wrap: nowrap; gap: 12px; }
  .esls-cta-dba .esls-cta-btn-row .elementor-widget-button { flex: 1 1 0; min-width: 0; }
  .esls-cta-dba .esls-cta-btn-row .elementor-button { width: 100%; justify-content: center; padding-left: 12px; padding-right: 12px; }
}/* End custom CSS */