.dsdhm004-scroll-lock{overflow:hidden!important}.dsdhm004-root{--hm-menu-bg:rgba(24,24,23,.85);--hm-menu-close-bg:rgba(24,24,23,.95);--hm-menu-text:#fbf9f5;--hm-menu-muted:#a6a39d;--hm-panel-border:#716f6b;--hm-backdrop:rgba(0,0,0,.05);--hm-backdrop-blur:10px;--hm-hover-gradient:rgba(0,0,0,.35);--hm-top-gradient:rgba(0,0,0,.75);--hm-scrolled-bg:#f0eee7;--hm-scrolled-text:#181817;--hm-scrolled-line:#d3d0c5;--hm-title-font:Georgia,"Times New Roman",serif;--hm-body-font:Arial,Helvetica,sans-serif;--hm-title-weight:400;--hm-body-weight:400;--hm-z:99990;--hm-open-ms:350ms;--hm-drawer-ms:200ms;--hm-fade-ms:250ms;--hm-panel-radius:0;--hm-img-fit:cover;--hm-img-position:center center;--hm-img-border-width:0px;--hm-img-border-color:#716f6b;--hm-img-radius:0px;--hm-img-overlay:rgba(0,0,0,0);--hm-img-zoom:1.05;position:fixed;z-index:var(--hm-z);inset:0 0 auto 0;width:100%;max-width:100vw;font-family:var(--hm-body-font);font-weight:var(--hm-body-weight);color:var(--hm-menu-text);box-sizing:border-box}.dsdhm004-root *,.dsdhm004-root *:before,.dsdhm004-root *:after{box-sizing:border-box}.dsdhm004-root a{color:inherit;text-decoration:none}.dsdhm004-root button{font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer}.dsdhm004-root ul{list-style:none;margin:0;padding:0}.dsdhm004-root .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.dsdhm004-navbar-bg{position:absolute;transition:transform .35s ease;inset:0 0 auto;height:100%;pointer-events:none;overflow:visible;z-index:1}.dsdhm004-navbar-bg>span{position:absolute;top:0;right:0;bottom:auto;left:0}.dsdhm004-navbar-gradient{height:165px;background:linear-gradient(to bottom,var(--hm-top-gradient),rgba(0,0,0,0));transform-origin:top;transition:opacity .35s ease,transform .35s ease}.dsdhm004-navbar-hover-gradient{height:190px;background:linear-gradient(to bottom,var(--hm-hover-gradient),var(--hm-hover-gradient),rgba(0,0,0,0));transform:translateY(-100%);transition:transform .4s ease-in-out}.dsdhm004-navbar-solid{height:100%;background:var(--hm-scrolled-bg);transform:translateY(-101%);opacity:0;transition:transform .35s ease,opacity .35s ease}.dsdhm004-navbar-line{top:auto!important;bottom:0!important;height:1px;background:var(--hm-scrolled-line);opacity:0;transition:opacity .3s ease}.dsdhm004-root:hover .dsdhm004-navbar-hover-gradient{transform:translateY(0)}.dsdhm004-root.is-scrolled .dsdhm004-navbar-gradient,.dsdhm004-root:not(.is-transparent) .dsdhm004-navbar-gradient{opacity:0}.dsdhm004-root.is-scrolled .dsdhm004-navbar-solid,.dsdhm004-root:not(.is-transparent) .dsdhm004-navbar-solid{transform:translateY(0);opacity:1}.dsdhm004-root.is-scrolled .dsdhm004-navbar-line,.dsdhm004-root:not(.is-transparent) .dsdhm004-navbar-line{opacity:1}.dsdhm004-navbar{position:relative;z-index:5;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;transition:transform .35s ease,color .3s ease,opacity .3s ease}.dsdhm004-root.is-scrolled:not(.is-menu-open):not(.is-search-open),.dsdhm004-root:not(.is-transparent):not(.is-menu-open):not(.is-search-open){color:var(--hm-scrolled-text)}.dsdhm004-root.is-hidden .dsdhm004-navbar,.dsdhm004-root.is-hidden .dsdhm004-navbar-bg{transform:translateY(-110%)}.dsdhm004-left-tools,.dsdhm004-right-tools{display:flex;align-items:center;gap:16px;min-width:0}.dsdhm004-left-tools{justify-self:start}.dsdhm004-right-tools{justify-self:end}.dsdhm004-menu-toggle,.dsdhm004-search-toggle{display:grid;place-items:center;border-radius:50%;flex:0 0 auto}.dsdhm004-menu-icon{position:relative;display:block;width:100%;height:100%;border:1px solid currentColor;border-radius:50%;transition:all .1s ease}.dsdhm004-menu-icon .b{position:absolute;left:31%;right:31%;height:1px;top:50%;background:currentColor;transform-origin:center;transition:transform .233s cubic-bezier(.125,.5,.375,1),opacity .2s ease}.dsdhm004-menu-icon .b1{transform:translateY(-5px)}.dsdhm004-menu-icon .b3{transform:translateY(5px)}.dsdhm004-menu-toggle:hover .dsdhm004-menu-icon,.dsdhm004-search-toggle:hover .hm-search>circle:first-child{stroke-width:2}.dsdhm004-root.is-menu-open .dsdhm004-menu-icon .b1{transform:rotate(45deg)}.dsdhm004-root.is-menu-open .dsdhm004-menu-icon .b2{opacity:0;transform:scaleX(.05)}.dsdhm004-root.is-menu-open .dsdhm004-menu-icon .b3{transform:rotate(-45deg)}.dsdhm004-left-labels{position:relative;overflow:hidden;white-space:nowrap;min-height:22px;display:flex;align-items:center}.dsdhm004-visit-label,.dsdhm004-close-label{display:block;transition:transform .3s cubic-bezier(0,.25,.575,1),opacity .3s ease}.dsdhm004-close-label{position:absolute;left:0;transform:translateX(-130%);opacity:0}.dsdhm004-root.is-menu-open .dsdhm004-visit-label{transform:translateX(32px);opacity:0;pointer-events:none}.dsdhm004-root.is-menu-open .dsdhm004-close-label{transform:translateX(0);opacity:1;transition-delay:.12s}.dsdhm004-logo-group{display:flex;align-items:center;justify-content:center;justify-self:center;min-width:0;transition:opacity .233s ease;color:currentColor}.dsdhm004-logo-img{display:block;width:auto;max-width:220px;object-fit:contain}.dsdhm004-logo-text{font-family:var(--hm-title-font);font-size:24px;line-height:1;white-space:nowrap}.dsdhm004-root.is-menu-open .dsdhm004-logo-group{opacity:0;pointer-events:none}.dsdhm004-root.keep-brand-open.is-menu-open .dsdhm004-logo-group{opacity:1;pointer-events:auto}.dsdhm004-tool,.dsdhm004-search-toggle{display:grid;place-items:center}.hm-svg,.hm-chevron,.hm-back{display:block;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}.dsdhm004-tool .hm-svg{width:24px;height:24px}.dsdhm004-search-toggle .hm-search{width:100%;height:100%}.dsdhm004-root.is-menu-open .dsdhm004-right-tools{opacity:0;pointer-events:none;transform:translateX(8px)}.dsdhm004-right-tools{transition:opacity .233s ease,transform .233s ease}.dsdhm004-menu-layer,.dsdhm004-search-layer{position:fixed;inset:0;z-index:3;pointer-events:none;overflow:hidden}.dsdhm004-menu-layer[aria-hidden="false"],.dsdhm004-search-layer[aria-hidden="false"]{pointer-events:auto}.dsdhm004-backdrop,.dsdhm004-search-backdrop{position:absolute!important;inset:0!important;width:100%;height:100%;background:var(--hm-backdrop)!important;backdrop-filter:blur(0);opacity:0;transition:opacity .3s ease,backdrop-filter 1s ease}.dsdhm004-root.is-menu-open .dsdhm004-backdrop,.dsdhm004-root.is-search-open .dsdhm004-search-backdrop{opacity:1;backdrop-filter:blur(var(--hm-backdrop-blur))}.dsdhm004-main-panel{position:absolute;top:0;left:0;bottom:0;background:var(--hm-menu-bg);border-radius:0 var(--hm-panel-radius) var(--hm-panel-radius) 0;opacity:0;transform:translateX(-100%);transition:opacity .2s ease,transform var(--hm-open-ms) cubic-bezier(0,.25,.375,1);overflow:hidden;z-index:2}.dsdhm004-root.is-menu-open .dsdhm004-main-panel{opacity:1;transform:translateX(0)}.dsdhm004-main-inner{height:100%;display:flex;flex-direction:column;justify-content:space-between;overflow:auto}.dsdhm004-primary-list{font-family:var(--hm-title-font);font-weight:var(--hm-title-weight)}.dsdhm004-main-link,.dsdhm004-sub-link{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left}.dsdhm004-main-link .hm-chevron,.dsdhm004-sub-link .hm-chevron{width:1em;height:1em;opacity:0;transform:translateX(-5px);transition:opacity .3s ease,transform .3s ease}.dsdhm004-main-item:hover>.dsdhm004-main-link .hm-chevron,.dsdhm004-main-item.is-active>.dsdhm004-main-link .hm-chevron,.dsdhm004-sub-item:hover>.dsdhm004-sub-link .hm-chevron,.dsdhm004-sub-link:focus .hm-chevron{opacity:1;transform:translateX(0)}.dsdhm004-primary-list:hover .dsdhm004-main-item:not(:hover):not(.is-active),.dsdhm004-primary-list:has(.is-active) .dsdhm004-main-item:not(.is-active){color:var(--hm-menu-muted)}.dsdhm004-main-item{transition:color var(--hm-fade-ms) ease}.dsdhm004-main-bottom{margin-top:44px}.dsdhm004-secondary-list,.dsdhm004-bottom-list{display:flex;flex-direction:column}.dsdhm004-secondary-list a,.dsdhm004-bottom-list a{display:flex;align-items:center;gap:9px}.dsdhm004-bottom-list .hm-svg{width:16px;height:16px}.dsdhm004-divider{height:1px;background:var(--hm-panel-border);margin-left:calc(-1 * var(--hm-panel-px));margin-right:calc(-1 * var(--hm-panel-px))}.dsdhm004-drawers{position:absolute;inset:0;z-index:1;pointer-events:none}.dsdhm004-drawer{position:absolute;top:0;bottom:0;background:var(--hm-menu-bg);border-right:1px solid var(--hm-panel-border);opacity:0;transform:translateX(-100%);transition:opacity var(--hm-drawer-ms) ease,transform var(--hm-drawer-ms) ease;overflow:hidden;pointer-events:none}.dsdhm004-root.is-menu-open.has-drawer .dsdhm004-drawer.is-active{opacity:1;transform:translateX(0);pointer-events:auto}.dsdhm004-root.has-drawer .dsdhm004-main-panel{border-right:1px solid var(--hm-panel-border)}.dsdhm004-drawer-ui{height:100%;overflow-y:auto}.dsdhm004-back-btn{display:none!important;width:100%;align-items:center;gap:10px;text-align:left;margin-bottom:20px}.dsdhm004-back-btn .hm-back{width:22px;height:22px}.dsdhm004-drawer-brand{display:flex;align-items:center;justify-content:flex-start;min-height:42px;margin:0 0 28px}.dsdhm004-drawer-brand img{display:block;max-width:min(190px,100%);width:auto;max-height:54px;height:auto;object-fit:contain}.dsdhm004-sub-list{font-family:var(--hm-title-font);font-weight:var(--hm-title-weight)}.dsdhm004-sub-list:hover .dsdhm004-sub-item:not(:hover){color:var(--hm-menu-muted)}.dsdhm004-sub-item{transition:color var(--hm-fade-ms) ease}.dsdhm004-popout{position:absolute;top:0;bottom:0;right:0;background:rgba(24,24,23,.16);overflow:hidden;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:1}.dsdhm004-popout.is-active{opacity:1;pointer-events:auto}.dsdhm004-popout.is-main-media{left:var(--hm-panel-w)}.dsdhm004-popout-media{position:absolute;inset:0;overflow:hidden}.dsdhm004-popout-media:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,var(--hm-img-overlay) 0%,rgba(0,0,0,0) 38%,rgba(0,0,0,.68) 100%);pointer-events:none}.dsdhm004-popout-media img{width:100%;height:100%;object-fit:var(--hm-img-fit);object-position:var(--hm-img-position);transform:scale(var(--hm-img-zoom));border:var(--hm-img-border-width) solid var(--hm-img-border-color);border-radius:var(--hm-img-radius);transition:transform .3s ease;display:block}.dsdhm004-popout.is-active img{transform:scale(1)}.dsdhm004-popout-copy{position:absolute;left:32px;right:32px;bottom:32px;z-index:2;color:#fff}.dsdhm004-popout-title{font-family:var(--hm-title-font);font-size:36px;line-height:1.1;margin-bottom:16px}.dsdhm004-popout-children{display:flex;flex-wrap:wrap;gap:8px 20px}.dsdhm004-popout-children a{text-decoration:underline;text-underline-offset:4px}.dsdhm004-search-panel{position:absolute;top:0;left:0;right:0;min-height:280px;background:var(--hm-menu-close-bg);transform:translateY(-100%);opacity:0;transition:opacity .2s ease,transform var(--hm-open-ms) cubic-bezier(0,.25,.375,1);padding-top:100px;z-index:2}.dsdhm004-root.is-search-open .dsdhm004-search-panel{transform:translateY(0);opacity:1}.dsdhm004-search-form{max-width:920px;margin:30px auto 60px;display:grid;grid-template-columns:1fr auto;gap:14px;padding:0 28px}.dsdhm004-search-form input{width:100%;font-family:var(--hm-title-font);font-size:38px;color:var(--hm-menu-text);background:transparent;border:0;border-bottom:1px solid var(--hm-panel-border);padding:14px 0;outline:0}.dsdhm004-search-form input::placeholder{color:var(--hm-menu-muted)}.dsdhm004-search-form button{border:1px solid var(--hm-menu-text);padding:0 28px;border-radius:999px!important}.dsdhm004-editor-preview{position:relative!important;inset:auto!important;display:block;min-height:88px;background:#2b2b2a;overflow:visible}.dsdhm004-editor-preview .dsdhm004-menu-layer,.dsdhm004-editor-preview .dsdhm004-search-layer{position:fixed}.dsdhm004-native-block{min-height:88px}

/* profile variable mapping */
@media (min-width:1200px) and (orientation:landscape){.dsdhm004-root{--hm-header-py:var(--hm-dw-header_py);--hm-header-px:var(--hm-dw-header_px);--hm-logo-h:var(--hm-dw-logo_h);--hm-logo-gap:var(--hm-dw-logo_gap);--hm-icon-btn:var(--hm-dw-icon_btn);--hm-panel-w:var(--hm-dw-panel_w);--hm-menu-top:var(--hm-dw-menu_top);--hm-main-font:var(--hm-dw-main_font);--hm-main-gap:var(--hm-dw-main_gap);--hm-sub-font:var(--hm-dw-sub_font);--hm-sub-gap:var(--hm-dw-sub_gap);--hm-utility-font:var(--hm-dw-utility_font);--hm-utility-gap:var(--hm-dw-utility_gap);--hm-panel-px:var(--hm-dw-panel_px)}}
@media (min-width:1200px) and (orientation:portrait){.dsdhm004-root{--hm-header-py:var(--hm-dp-header_py);--hm-header-px:var(--hm-dp-header_px);--hm-logo-h:var(--hm-dp-logo_h);--hm-logo-gap:var(--hm-dp-logo_gap);--hm-icon-btn:var(--hm-dp-icon_btn);--hm-panel-w:var(--hm-dp-panel_w);--hm-menu-top:var(--hm-dp-menu_top);--hm-main-font:var(--hm-dp-main_font);--hm-main-gap:var(--hm-dp-main_gap);--hm-sub-font:var(--hm-dp-sub_font);--hm-sub-gap:var(--hm-dp-sub_gap);--hm-utility-font:var(--hm-dp-utility_font);--hm-utility-gap:var(--hm-dp-utility_gap);--hm-panel-px:var(--hm-dp-panel_px)}}
@media (min-width:768px) and (max-width:1199px) and (orientation:landscape){.dsdhm004-root{--hm-header-py:var(--hm-tw-header_py);--hm-header-px:var(--hm-tw-header_px);--hm-logo-h:var(--hm-tw-logo_h);--hm-logo-gap:var(--hm-tw-logo_gap);--hm-icon-btn:var(--hm-tw-icon_btn);--hm-panel-w:var(--hm-tw-panel_w);--hm-menu-top:var(--hm-tw-menu_top);--hm-main-font:var(--hm-tw-main_font);--hm-main-gap:var(--hm-tw-main_gap);--hm-sub-font:var(--hm-tw-sub_font);--hm-sub-gap:var(--hm-tw-sub_gap);--hm-utility-font:var(--hm-tw-utility_font);--hm-utility-gap:var(--hm-tw-utility_gap);--hm-panel-px:var(--hm-tw-panel_px)}}
@media (min-width:768px) and (max-width:1199px) and (orientation:portrait){.dsdhm004-root{--hm-header-py:var(--hm-tp-header_py);--hm-header-px:var(--hm-tp-header_px);--hm-logo-h:var(--hm-tp-logo_h);--hm-logo-gap:var(--hm-tp-logo_gap);--hm-icon-btn:var(--hm-tp-icon_btn);--hm-panel-w:var(--hm-tp-panel_w);--hm-menu-top:var(--hm-tp-menu_top);--hm-main-font:var(--hm-tp-main_font);--hm-main-gap:var(--hm-tp-main_gap);--hm-sub-font:var(--hm-tp-sub_font);--hm-sub-gap:var(--hm-tp-sub_gap);--hm-utility-font:var(--hm-tp-utility_font);--hm-utility-gap:var(--hm-tp-utility_gap);--hm-panel-px:var(--hm-tp-panel_px)}}
@media (max-width:767px) and (orientation:landscape){.dsdhm004-root{--hm-header-py:var(--hm-pw-header_py);--hm-header-px:var(--hm-pw-header_px);--hm-logo-h:var(--hm-pw-logo_h);--hm-logo-gap:var(--hm-pw-logo_gap);--hm-icon-btn:var(--hm-pw-icon_btn);--hm-panel-w:var(--hm-pw-panel_w);--hm-menu-top:var(--hm-pw-menu_top);--hm-main-font:var(--hm-pw-main_font);--hm-main-gap:var(--hm-pw-main_gap);--hm-sub-font:var(--hm-pw-sub_font);--hm-sub-gap:var(--hm-pw-sub_gap);--hm-utility-font:var(--hm-pw-utility_font);--hm-utility-gap:var(--hm-pw-utility_gap);--hm-panel-px:var(--hm-pw-panel_px)}}
@media (max-width:767px) and (orientation:portrait){.dsdhm004-root{--hm-header-py:var(--hm-pp-header_py);--hm-header-px:var(--hm-pp-header_px);--hm-logo-h:var(--hm-pp-logo_h);--hm-logo-gap:var(--hm-pp-logo_gap);--hm-icon-btn:var(--hm-pp-icon_btn);--hm-panel-w:var(--hm-pp-panel_w);--hm-menu-top:var(--hm-pp-menu_top);--hm-main-font:var(--hm-pp-main_font);--hm-main-gap:var(--hm-pp-main_gap);--hm-sub-font:var(--hm-pp-sub_font);--hm-sub-gap:var(--hm-pp-sub_gap);--hm-utility-font:var(--hm-pp-utility_font);--hm-utility-gap:var(--hm-pp-utility_gap);--hm-panel-px:var(--hm-pp-panel_px)}}
.dsdhm004-navbar{padding:var(--hm-header-py) var(--hm-header-px)}.dsdhm004-menu-toggle,.dsdhm004-search-toggle{width:var(--hm-icon-btn);height:var(--hm-icon-btn)}.dsdhm004-logo-group{gap:var(--hm-logo-gap)}.dsdhm004-logo-img{height:var(--hm-logo-h)}.dsdhm004-main-panel{width:var(--hm-panel-w)}.dsdhm004-main-inner{padding:var(--hm-menu-top) var(--hm-panel-px) 0}.dsdhm004-primary-list{font-size:var(--hm-main-font);line-height:1.06}.dsdhm004-primary-list>li+li{margin-top:var(--hm-main-gap)}.dsdhm004-secondary-list,.dsdhm004-bottom-list{font-size:var(--hm-utility-font);line-height:1.35}.dsdhm004-secondary-list>li+li,.dsdhm004-bottom-list>li+li{margin-top:var(--hm-utility-gap)}.dsdhm004-divider{margin-top:28px;margin-bottom:28px}.dsdhm004-drawer{left:var(--hm-panel-w);width:var(--hm-panel-w);padding-top:var(--hm-menu-top)}.dsdhm004-drawer-ui{padding:0 var(--hm-panel-px) 32px}.dsdhm004-sub-list{font-size:var(--hm-sub-font);line-height:1.08}.dsdhm004-sub-list>li+li{margin-top:var(--hm-sub-gap)}.dsdhm004-popout{left:calc(var(--hm-panel-w) * 2)}
.dsdhm004-root.is-mobile-mode .dsdhm004-navbar{grid-template-columns:1fr auto 1fr}.dsdhm004-root.is-mobile-mode .dsdhm004-left-labels,.dsdhm004-root.is-mobile-mode .dsdhm004-tool.dsdhm004-account,.dsdhm004-root.is-mobile-mode .dsdhm004-tool.dsdhm004-pin{display:none}.dsdhm004-root.is-mobile-mode .dsdhm004-menu-layer{background:var(--hm-menu-bg);opacity:0;transform:translateY(8rem);transition:opacity .2s ease,transform var(--hm-open-ms) cubic-bezier(0,.25,.375,1)}.dsdhm004-root.is-mobile-mode.is-menu-open .dsdhm004-menu-layer{opacity:1;transform:translateY(0)}.dsdhm004-root.is-mobile-mode .dsdhm004-backdrop{display:none}.dsdhm004-root.is-mobile-mode .dsdhm004-main-panel{width:100%;background:transparent;transform:none!important;opacity:1!important;border:0!important}.dsdhm004-root.is-mobile-mode .dsdhm004-main-inner{padding-bottom:24px}.dsdhm004-root.is-mobile-mode .dsdhm004-drawers{z-index:4}.dsdhm004-root.is-mobile-mode .dsdhm004-drawer{left:0;width:100%;background:var(--hm-menu-bg);transform:translateX(100%);border:0;padding-top:var(--hm-menu-top)}.dsdhm004-root.is-mobile-mode.is-menu-open.has-drawer .dsdhm004-drawer.is-active{transform:translateX(0)}.dsdhm004-root.is-mobile-mode.has-drawer .dsdhm004-main-panel{transform:translateX(-64px)!important;opacity:.05!important;pointer-events:none}.dsdhm004-root.is-mobile-mode .dsdhm004-back-btn{display:flex!important}.dsdhm004-root.is-mobile-mode .dsdhm004-main-link .hm-chevron{opacity:1}.dsdhm004-root.is-mobile-mode .dsdhm004-popout{display:none}.dsdhm004-root.is-mobile-mode .dsdhm004-search-panel{min-height:100vh;padding-top:70px}.dsdhm004-root.is-mobile-mode .dsdhm004-search-form{grid-template-columns:1fr;margin-top:70px}.dsdhm004-root.is-mobile-mode .dsdhm004-search-form input{font-size:32px}.dsdhm004-root.is-mobile-mode .dsdhm004-search-form button{height:50px}.dsdhm004-root.is-mobile-mode.is-menu-open .dsdhm004-logo-group{opacity:0}.dsdhm004-root.is-mobile-mode.is-menu-open .dsdhm004-right-tools{opacity:0}
@media (prefers-reduced-motion:reduce){.dsdhm004-root *{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}}

.dsdhm004-root.is-mobile-mode.keep-brand-open.is-menu-open .dsdhm004-logo-group{opacity:1;pointer-events:auto}

/* v3.0.5 — viewport/header integration repair.
   The block is inserted inside a page-builder section, but the actual header is
   portaled to <body> by frontend.js so transformed/stacked builder wrappers cannot
   sit above or clip it. The original block host contributes no height on the live
   page; the hero/media section can start at the top of the viewport. */
[data-dsdhm004-theme-header-hidden="1"]{display:none!important}
.dsdhm004-native-block.dsdhm004-live-host{height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;line-height:0!important}
.dsd-header-menu-004-native.dsdhm004-live-section{height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important}
.dsdhm004-portal-marker{display:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important}
.dsdhm004-root.is-portaled{position:fixed!important;inset:0 0 auto 0!important;width:100vw!important;max-width:100vw!important;margin:0!important;transform:none!important;isolation:isolate}
.dsdhm004-root.dsdhm004-duplicate-root{display:none!important}

/* The reference site removes the top background fader while the menu is open.
   Keeping it visible created the heavy black bar that covered the first menu row. */
.dsdhm004-root.is-menu-open .dsdhm004-navbar-bg{opacity:0!important;pointer-events:none!important}

/* Never allow the first row to slide underneath the close/menu control. The user's
   Menu top padding can still be increased, but it cannot be reduced below the safe
   navbar footprint. */
.dsdhm004-main-inner{
  position:relative;
  z-index:1;
  padding-top:max(var(--hm-menu-top),calc(var(--hm-icon-btn) + var(--hm-header-py) + var(--hm-header-py) + 8px))!important;
}
.dsdhm004-drawer{padding-top:var(--hm-drawer-top)!important}
@media (max-width:899px){.dsdhm004-drawer{padding-top:max(var(--hm-drawer-top),calc(var(--hm-icon-btn) + var(--hm-header-py) + var(--hm-header-py) + 8px))!important}}
.dsdhm004-main-panel:before{
  content:"";
  position:absolute;
  z-index:0;
  top:0;
  left:0;
  right:0;
  height:max(var(--hm-menu-top),calc(var(--hm-icon-btn) + var(--hm-header-py) + var(--hm-header-py) + 8px));
  background:var(--hm-menu-close-bg);
  pointer-events:none;
}

/* Builder editor copies retain a small selectable host while the visible fixed
   header is still shown at the viewport top. Live pages use the zero-height host. */
.dsdhm004-native-block.dsdhm004-builder-host{min-height:88px!important;height:88px!important;overflow:visible!important}

/* v3.1.0 — Colibri-only integration.
   Colibri has a separate fixed off-canvas panel/overlay in addition to its normal
   navigation. Both must be suppressed or they stack above this replacement menu. */
body.dsdhm004-colibri-header-active .h-navigation_outer,
body.dsdhm004-colibri-header-active .h-navigation,
body.dsdhm004-colibri-header-active .h-navigation_sticky,
body.dsdhm004-colibri-header-active .h-navigation_container-in-sticky,
body.dsdhm004-colibri-header-active .h-navigation_overlap,
body.dsdhm004-colibri-header-active .h-offcanvas-panel,
body.dsdhm004-colibri-header-active .h-offscreen-panel,
body.dsdhm004-colibri-header-active .offscreen-overlay,
body.dsdhm004-colibri-header-active .h-hamburger-button,
body.dsdhm004-colibri-header-active .h-main-menu,
body.dsdhm004-colibri-header-active .colibri-menu-container,
body.dsdhm004-colibri-header-active ul.colibri-menu{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
html.dsdhm004-replaces-theme-header .h-offcanvas-panel,
html.dsdhm004-replaces-theme-header .h-offscreen-panel,
html.dsdhm004-replaces-theme-header .offscreen-overlay{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* The live header is a viewport component, never a Colibri section/row. */
html body .dsdhm004-root:not(.dsdhm004-editor-preview){
  position:fixed!important;
  top:0!important;
  right:0!important;
  bottom:auto!important;
  left:0!important;
  width:100vw!important;
  max-width:100vw!important;
  margin:0!important;
  transform:none!important;
}
html body .dsdhm004-root:not(.dsdhm004-editor-preview) .dsdhm004-menu-layer,
html body .dsdhm004-root:not(.dsdhm004-editor-preview) .dsdhm004-search-layer{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  min-height:100vh!important;
}
html body .dsdhm004-root:not(.dsdhm004-editor-preview) .dsdhm004-main-panel,
html body .dsdhm004-root:not(.dsdhm004-editor-preview) .dsdhm004-drawer,
html body .dsdhm004-root:not(.dsdhm004-editor-preview) .dsdhm004-popout{
  min-height:100vh!important;
  min-height:100dvh!important;
}

/* Hard safety floor: the primary list can never sit underneath the close button,
   even when a previously saved profile contains a very small/negative top value. */
.dsdhm004-main-inner{
  padding-top:max(var(--hm-menu-top,88px),calc(var(--hm-icon-btn,48px) + (var(--hm-header-py,16px) * 2) + 12px))!important;
}
.dsdhm004-main-panel:before{
  height:max(var(--hm-menu-top,88px),calc(var(--hm-icon-btn,48px) + (var(--hm-header-py,16px) * 2) + 12px))!important;
}

/* v3.1.1 — Colibri legacy-host cleanup.
   v3.0.x could leave a saved DSD block section in the Colibri page. v3.1.0
   stripped the inner snapshot but left that outer section behind, producing an
   empty outlined bar and making the replacement header appear to disappear. */
body.dsdhm004-colibri-header-active .dsd-header-menu-004-native,
body.dsdhm004-colibri-header-active .dsdhm004-native-block,
body.dsdhm004-colibri-header-active [data-dsdhm004-native-block="1"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
  min-height:0!important;
  height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  overflow:hidden!important;
}

/* Colibri's native navigation must not reserve layout space behind the fixed
   replacement header. */
body.dsdhm004-colibri-header-active .h-navigation_outer,
body.dsdhm004-colibri-header-active .h-navigation,
body.dsdhm004-colibri-header-active .h-navigation_sticky,
body.dsdhm004-colibri-header-active .h-navigation_container-in-sticky,
body.dsdhm004-colibri-header-active .h-navigation_overlap{
  min-height:0!important;
  height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}


/* v3.2.0 — Colibri production repair.
   The solid/scrolled state is exactly the navbar height. Earlier builds painted
   130–180% of that height, which created the oversized white band over the hero. */
body.dsdhm004-colibri-header-active [data-dsdhm004-legacy-wrapper-hidden="1"],
html.dsdhm004-replaces-theme-header [data-dsdhm004-legacy-wrapper-hidden="1"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
  min-height:0!important;
  height:0!important;
  max-height:0!important;
  width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  overflow:hidden!important;
}

/* Colibri sometimes leaves inline min-height/borders on the row/column that used
   to contain this block. JS marks only wrappers proven to contain no other live
   content; this rule removes that exact empty spacer without touching the hero. */
.dsdhm004-root:not(.is-scrolled).is-transparent:not(.is-menu-open):not(.is-search-open){
  color:var(--hm-menu-text);
}
.dsdhm004-root.is-scrolled .dsdhm004-navbar-bg,
.dsdhm004-root:not(.is-transparent) .dsdhm004-navbar-bg{
  overflow:hidden;
}
.dsdhm004-root.is-scrolled .dsdhm004-navbar-hover-gradient,
.dsdhm004-root:not(.is-transparent) .dsdhm004-navbar-hover-gradient{
  display:none;
}

/* Remove browser/theme focus decoration that was being drawn as a full-width
   black rectangle around the old header host. Keep an accessible control focus. */
.dsdhm004-root:focus,
.dsdhm004-root:focus-visible,
.dsdhm004-navbar:focus,
.dsdhm004-navbar:focus-visible{outline:0!important}
.dsdhm004-root a:focus-visible,
.dsdhm004-root button:focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* The global replacement cannot inherit Colibri section visibility/opacity rules. */
html body .dsdhm004-root[data-dsdhm004-global="1"]{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:var(--hm-z)!important;
  pointer-events:auto!important;
}

/* v3.2.0 mobile branding safety: preserve an uploaded compact logo while preventing
   a long text fallback from overlapping the close button on narrow screens. */
@media (max-width:767px){
  .dsdhm004-logo-group{max-width:46vw;overflow:hidden}
  .dsdhm004-logo-img{max-width:46vw}
  .dsdhm004-logo-text{max-width:46vw;overflow:hidden;text-overflow:ellipsis;font-size:min(20px,5vw)}
}


/* v3.2.1 — remove boxed header lines and white rollover backgrounds.
   The top bar must stay visually clean like the reference: no outer rectangle,
   no theme hover fill, and only a subtle bottom divider while transparent. */
.dsdhm004-root,
.dsdhm004-root .dsdhm004-navbar,
.dsdhm004-root .dsdhm004-navbar-bg,
.dsdhm004-root .dsdhm004-left-tools,
.dsdhm004-root .dsdhm004-right-tools,
.dsdhm004-root .dsdhm004-logo-group,
.dsdhm004-root .dsdhm004-tool,
.dsdhm004-root .dsdhm004-menu-toggle,
.dsdhm004-root .dsdhm004-search-toggle,
.dsdhm004-root .dsdhm004-visit-label,
.dsdhm004-root .dsdhm004-close-label{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

.dsdhm004-root:hover .dsdhm004-navbar-hover-gradient,
.dsdhm004-root.is-scrolled .dsdhm004-navbar-hover-gradient,
.dsdhm004-root:not(.is-transparent) .dsdhm004-navbar-hover-gradient{
  opacity:0!important;
  transform:translateY(-100%)!important;
}

.dsdhm004-root .dsdhm004-navbar-gradient{
  height:100%!important;
}

.dsdhm004-root .dsdhm004-navbar-solid{
  box-shadow:none!important;
  border:0!important;
}

.dsdhm004-root .dsdhm004-navbar-line{
  opacity:1!important;
  top:auto!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  height:1px!important;
  background:rgba(255,255,255,.45)!important;
}
.dsdhm004-root.is-scrolled .dsdhm004-navbar-line,
.dsdhm004-root:not(.is-transparent) .dsdhm004-navbar-line{
  background:var(--hm-scrolled-line)!important;
}

/* Kill theme-inherited hover/focus fills that were flashing a white rectangle. */
.dsdhm004-root a,
.dsdhm004-root a:hover,
.dsdhm004-root a:focus,
.dsdhm004-root a:active,
.dsdhm004-root button,
.dsdhm004-root button:hover,
.dsdhm004-root button:focus,
.dsdhm004-root button:active{
  background:transparent!important;
  box-shadow:none!important;
}

/* Keep only the intended circular stroke around the hamburger/search icons. */
.dsdhm004-root .dsdhm004-menu-icon,
.dsdhm004-root .hm-search > circle:first-child{
  border:1px solid currentColor!important;
}
