/* DSD Menu 003 — isolated front-end */
.dsdm003-root,.dsdm003-root *{box-sizing:border-box}.dsdm003-root{font-family:var(--dsdm003-font);font-size:var(--dsdm003-size);font-weight:var(--dsdm003-weight);color:var(--dsdm003-text);position:relative;z-index:var(--dsdm003-z);line-height:1.25}.dsdm003-root button,.dsdm003-root a{font:inherit}
.dsdm003-header{height:var(--dsdm003-header-h);position:fixed;z-index:30;top:0;left:0;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--dsdm003-header-pad);background:var(--dsdm003-header-transparent-bg);color:var(--dsdm003-header-transparent-text);transition:background var(--dsdm003-speed),color var(--dsdm003-speed),box-shadow var(--dsdm003-speed)}.admin-bar .dsdm003-header{top:32px}.dsdm003-root.is-scrolled .dsdm003-header,.dsdm003-root.is-open .dsdm003-header{background:var(--dsdm003-header-scrolled-bg);color:var(--dsdm003-header-scrolled-text);box-shadow:var(--dsdm003-header-shadow)}
.dsdm003-header-left,.dsdm003-header-right{display:flex;align-items:center;gap:32px}.dsdm003-header-right{justify-content:flex-end}.dsdm003-header a{color:inherit;text-decoration:none}.dsdm003-trigger{appearance:none;border:0;background:none;color:inherit;padding:0;display:inline-flex;align-items:center;gap:12px;cursor:pointer}.dsdm003-logo{display:grid;place-items:center;min-width:var(--dsdm003-logo-w);height:var(--dsdm003-header-h);font-family:Georgia,serif;font-size:var(--dsdm003-logo);font-weight:700;letter-spacing:.035em;color:inherit;text-decoration:none}.dsdm003-logo img{grid-area:1/1;width:min(var(--dsdm003-logo-w),30vw);max-height:min(var(--dsdm003-logo-max-h),calc(var(--dsdm003-header-h) - 12px));object-fit:contain;display:block;transition:opacity var(--dsdm003-speed)}.dsdm003-logo-scrolled{opacity:0}.dsdm003-root.is-scrolled .dsdm003-logo-transparent,.dsdm003-root.is-open .dsdm003-logo-transparent{opacity:0}.dsdm003-root.is-scrolled .dsdm003-logo-scrolled,.dsdm003-root.is-open .dsdm003-logo-scrolled{opacity:1}.dsdm003-logo-original{opacity:1!important}
.dsdm003-ico{width:var(--dsdm003-icon);height:var(--dsdm003-icon);position:relative;display:inline-block;flex:none}.dsdm003-ico:before,.dsdm003-ico:after{content:"";position:absolute}.dsdm003-ico[data-icon=menu]:before{left:1px;right:1px;top:5px;height:1.5px;background:currentColor;box-shadow:0 7px currentColor}.dsdm003-ico[data-icon=close]:before,.dsdm003-ico[data-icon=close]:after{left:1px;right:1px;top:10px;height:1.5px;background:currentColor;transform:rotate(45deg)}.dsdm003-ico[data-icon=close]:after{transform:rotate(-45deg)}.dsdm003-ico[data-icon=search]{width:17px;height:17px;border:1.5px solid currentColor;border-radius:50%;margin-right:5px}.dsdm003-ico[data-icon=search]:after{width:7px;height:1.5px;right:-6px;bottom:-3px;background:currentColor;transform:rotate(45deg)}.dsdm003-ico[data-icon=heart]:before{content:'♡';font-size:27px;line-height:20px}.dsdm003-ico[data-icon=user]:before{content:'○';border:1.4px solid currentColor;border-radius:50%;width:8px;height:8px;left:6px;top:0}.dsdm003-ico[data-icon=user]:after{border:1.4px solid currentColor;border-bottom:0;border-radius:10px 10px 0 0;width:16px;height:9px;left:2px;top:12px}.dsdm003-ico[data-icon=bag]:before{border:1.4px solid currentColor;width:15px;height:15px;left:3px;top:6px}.dsdm003-ico[data-icon=bag]:after{border:1.4px solid currentColor;border-bottom:0;border-radius:8px 8px 0 0;width:7px;height:5px;left:7px;top:2px}.dsdm003-ico[data-icon=phone]:before{content:'☎';font-size:21px;line-height:21px}.dsdm003-ico[data-icon=globe]:before{content:'◎';font-size:23px;line-height:21px}
.dsdm003-overlay{position:fixed;inset:0;z-index:10;background:var(--dsdm003-overlay);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--dsdm003-speed),visibility 0s linear var(--dsdm003-speed)}.dsdm003-drawer{position:fixed;z-index:20;inset:0 auto 0 0;display:flex;width:min(calc(var(--dsdm003-p1) + var(--dsdm003-p2)),calc(var(--dsdm003-max) * 2));max-width:100vw;visibility:hidden;pointer-events:none}.admin-bar .dsdm003-drawer{top:32px}.dsdm003-panel{height:100%;background:var(--dsdm003-bg);transform:translateX(-102%);transition:transform var(--dsdm003-speed) cubic-bezier(.22,.61,.36,1);border-right:var(--dsdm003-border);overflow:hidden}.dsdm003-primary{width:50%;min-width:0;padding:calc(var(--dsdm003-header-h) + 26px) var(--dsdm003-pr) var(--dsdm003-pb) var(--dsdm003-pl);display:flex;flex-direction:column}.dsdm003-secondary{width:50%;min-width:0;position:relative;transition-delay:45ms}.dsdm003-primary-top{display:none}
.dsdm003-root.is-open .dsdm003-overlay{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.dsdm003-root.is-open .dsdm003-drawer{visibility:visible;pointer-events:auto}.dsdm003-root.is-open .dsdm003-primary,.dsdm003-root.is-open.has-sub .dsdm003-secondary{transform:translateX(0)}body.dsdm003-lock{overflow:hidden!important}
.dsdm003-main-list{display:flex;flex-direction:column;gap:0;margin:0}.dsdm003-main-item{appearance:none;display:flex;justify-content:space-between;align-items:center;width:100%;min-height:38px;padding:0;border:0;background:none;color:var(--dsdm003-muted);text-align:left;cursor:pointer;transition:color .18s}.dsdm003-main-item:hover,.dsdm003-main-item.is-active{color:var(--dsdm003-text)}.dsdm003-main-item:first-child{color:var(--dsdm003-text)}.dsdm003-chevron{font-size:25px;font-weight:300;line-height:1}.dsdm003-utilities{margin-top:auto;display:flex;flex-direction:column;gap:17px;padding-top:24px}.dsdm003-utilities a{display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none;font-size:13px}
.dsdm003-subview{position:absolute;inset:0;display:none;flex-direction:column;padding-top:var(--dsdm003-header-h)}.dsdm003-subview.is-active{display:flex}.dsdm003-sub-scroll{flex:1;overflow:auto;padding:26px var(--dsdm003-pr) 24px var(--dsdm003-pl);scrollbar-width:thin}.dsdm003-section{margin:0 0 var(--dsdm003-section-gap)}.dsdm003-section-label{font-size:11px;color:var(--dsdm003-muted);letter-spacing:.02em;margin:0 0 20px}.dsdm003-sub-link{display:block;color:inherit;text-decoration:none;margin:0 0 19px}.dsdm003-sub-link strong{display:block;font-weight:400}.dsdm003-sub-link small{display:block;color:var(--dsdm003-muted);margin-top:4px;font-size:12px}.dsdm003-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;height:auto;flex:none;padding:0 var(--dsdm003-pr) 24px var(--dsdm003-pl);background:var(--dsdm003-bg)}.dsdm003-media-card{display:block;min-width:0;background:transparent;color:var(--dsdm003-text);text-decoration:none;text-align:center;overflow:visible}.dsdm003-media-visual{display:block;width:100%;aspect-ratio:1.08/1;overflow:hidden;background:#ddd}.dsdm003-media-card img,.dsdm003-media-card video,.dsdm003-placeholder{width:100%;height:100%;display:block;object-fit:cover}.dsdm003-placeholder{background:linear-gradient(135deg,#e8e8e8,#c8c8c8)}.dsdm003-media-card:after{display:none}.dsdm003-media-caption{position:static;display:block;padding:7px 4px 0;color:var(--dsdm003-text);line-height:1.25}.dsdm003-media-caption strong,.dsdm003-media-caption small{display:block;font-weight:400}.dsdm003-media-caption small{margin-top:3px;color:var(--dsdm003-muted);font-size:12px}.dsdm003-mobile-back{display:none}
.dsdm003-theme-header-hidden{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;overflow:hidden!important;pointer-events:none!important}.dsdm003-mode-drawer_only .dsdm003-header{display:none}
body.dsdm003-full-header-active #masthead,body.dsdm003-full-header-active .site-header,body.dsdm003-full-header-active .main-header,body.dsdm003-full-header-active .header-wrapper,body.dsdm003-full-header-active .h-navigation,body.dsdm003-full-header-active .h-navigation_outer,body.dsdm003-full-header-active .elementor-location-header{display:none!important}
@media(max-width:1024px){.admin-bar .dsdm003-header,.admin-bar .dsdm003-drawer{top:46px}.dsdm003-header{padding:0 22px}.dsdm003-header-right>a:first-child{display:none}.dsdm003-logo{min-width:var(--dsdm003-logo-w-tablet)}.dsdm003-logo img{width:min(var(--dsdm003-logo-w-tablet),30vw)}.dsdm003-drawer{width:100vw}.dsdm003-primary,.dsdm003-secondary{width:50%}}
@media(max-width:767px){.dsdm003-header{padding:0 15px}.dsdm003-header-left{gap:0}.dsdm003-header-left .dsdm003-search-toggle,.dsdm003-header-right a:not(:last-child){display:none}.dsdm003-trigger>span:last-child{display:none}.dsdm003-logo{min-width:var(--dsdm003-logo-w-phone);font-size:22px}.dsdm003-logo img{width:min(var(--dsdm003-logo-w-phone),39vw)}.dsdm003-drawer{width:100vw}.dsdm003-primary,.dsdm003-secondary{position:absolute;inset:0;width:100%;min-width:100%;border:0}.dsdm003-secondary{transform:translateX(100%);transition-delay:0}.dsdm003-root.is-open .dsdm003-primary{transform:translateX(0)}.dsdm003-root.is-open.has-sub .dsdm003-primary{transform:translateX(-100%)}.dsdm003-root.is-open.has-sub .dsdm003-secondary{transform:translateX(0)}.dsdm003-mobile-back{display:flex;align-items:center;gap:9px;border:0;background:none;padding:18px var(--dsdm003-pl) 6px;font:inherit}.dsdm003-subview{padding-top:var(--dsdm003-header-h)}.dsdm003-sub-scroll{padding-top:8px}.dsdm003-media-grid{height:auto;gap:12px;padding-left:20px;padding-right:20px}.dsdm003-media-visual{aspect-ratio:1/1}.dsdm003-primary{padding-left:24px;padding-right:24px}.dsdm003-utilities{padding-bottom:env(safe-area-inset-bottom)}}
@media(orientation:landscape) and (max-height:520px){.dsdm003-primary{padding-top:calc(var(--dsdm003-header-h) + 12px)}.dsdm003-main-item{min-height:31px}.dsdm003-utilities{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 18px}.dsdm003-media-grid{height:auto}.dsdm003-media-visual{aspect-ratio:1.18/1}}

/* v0.3.9 targeted submenu-link behavior */
@media(min-width:768px){
  .dsdm003-drawer{overflow:visible}
  .dsdm003-secondary{transform:none!important;clip-path:inset(0 100% 0 0);visibility:hidden;pointer-events:none;transform-origin:left center;transition:clip-path var(--dsdm003-speed) cubic-bezier(.22,.61,.36,1),visibility 0s linear var(--dsdm003-speed)}
  .dsdm003-root.is-open.has-sub .dsdm003-secondary{clip-path:inset(0 0 0 0);visibility:visible;pointer-events:auto;transition-delay:0s}
}
.dsdm003-main-item:first-child{color:var(--dsdm003-muted)}
.dsdm003-main-item:hover,.dsdm003-main-item:focus-visible,.dsdm003-main-item.is-active{color:var(--dsdm003-text)}
.dsdm003-chevron{opacity:0;transform:translateX(-5px);transition:opacity .18s ease,transform .18s ease,color .18s ease;color:inherit}
.dsdm003-main-item:hover .dsdm003-chevron,.dsdm003-main-item:focus-visible .dsdm003-chevron,.dsdm003-main-item.is-active .dsdm003-chevron{opacity:1;transform:translateX(0)}
.dsdm003-sub-link,.dsdm003-utilities a,.dsdm003-header a,.dsdm003-trigger{transition:color .18s ease,opacity .18s ease}
.dsdm003-sub-link:hover,.dsdm003-sub-link:focus-visible,.dsdm003-utilities a:hover,.dsdm003-utilities a:focus-visible,.dsdm003-header a:hover,.dsdm003-header a:focus-visible,.dsdm003-trigger:hover,.dsdm003-trigger:focus-visible{color:var(--dsdm003-text);opacity:.62}
.dsdm003-media-card img,.dsdm003-media-card video{transition:transform .35s ease}
.dsdm003-media-card:hover img,.dsdm003-media-card:hover video,.dsdm003-media-card:focus-visible img,.dsdm003-media-card:focus-visible video{transform:scale(1.025)}
/* Force reliable white/black switching when the same source image is used for both states. */
.dsdm003-logo-automatic .dsdm003-logo-transparent.dsdm003-logo-force-mono{filter:brightness(0) invert(1)}
.dsdm003-logo-automatic .dsdm003-logo-scrolled.dsdm003-logo-force-mono{filter:brightness(0)}

/* v0.4.0 editable top-right header items */
.dsdm003-header-item{display:inline-flex;align-items:center;justify-content:center;gap:var(--item-gap,8px);padding:var(--item-py,0) var(--item-px,0);font-size:var(--item-label-size,14px);color:var(--item-transparent,currentColor)!important;transition:color .18s ease,opacity .18s ease,transform .18s ease}.dsdm003-root.is-scrolled .dsdm003-header-item,.dsdm003-root.is-open .dsdm003-header-item{color:var(--item-scrolled,currentColor)!important}.dsdm003-header-item:hover,.dsdm003-header-item:focus-visible{color:var(--item-hover,currentColor)!important;opacity:1!important}.dsdm003-header-item .dsdm003-ico{width:var(--item-icon-size,22px);height:var(--item-icon-size,22px)}.dsdm003-header-upload-icon{display:block;width:var(--item-icon-size,22px);height:var(--item-icon-size,22px);object-fit:contain;filter:brightness(0) invert(1)}.dsdm003-root.is-scrolled .dsdm003-header-upload-icon,.dsdm003-root.is-open .dsdm003-header-upload-icon{filter:brightness(0)}.dsdm003-logo-original~*{}.dsdm003-hide-desktop{display:none!important}
@media(max-width:1024px){.dsdm003-header-item.dsdm003-hide-desktop{display:inline-flex!important}.dsdm003-header-item.dsdm003-hide-tablet{display:none!important}}
@media(max-width:767px){.dsdm003-header-right a{display:inline-flex}.dsdm003-header-item.dsdm003-hide-tablet{display:inline-flex!important}.dsdm003-header-item.dsdm003-hide-phone{display:none!important}.dsdm003-header-item-label{display:none}}

/* v0.4.2 functional search panel — does not alter menu layout */
.dsdm003-search-panel{position:fixed;z-index:25;top:var(--dsdm003-header-h);left:0;right:0;background:var(--dsdm003-bg);border-top:var(--dsdm003-border);border-bottom:var(--dsdm003-border);padding:28px var(--dsdm003-header-pad);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px);transition:opacity var(--dsdm003-speed),transform var(--dsdm003-speed),visibility 0s linear var(--dsdm003-speed)}
.admin-bar .dsdm003-search-panel{top:calc(var(--dsdm003-header-h) + 32px)}
.dsdm003-search-form{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px}
.dsdm003-search-form input[type=search]{width:100%;height:52px;border:0;border-bottom:1px solid #111;background:transparent;border-radius:0;padding:0 4px;font:inherit;font-size:24px;color:var(--dsdm003-text);outline:0}
.dsdm003-search-form input[type=search]::placeholder{color:var(--dsdm003-muted)}
.dsdm003-search-form button{appearance:none;border:0;background:none;color:var(--dsdm003-text);display:inline-flex;align-items:center;gap:10px;padding:12px 4px;cursor:pointer}
.dsdm003-search-close{width:42px;height:42px;justify-content:center}
.dsdm003-root.is-search-open .dsdm003-search-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}
.dsdm003-root.is-search-open .dsdm003-overlay{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.dsdm003-root.is-search-open .dsdm003-header{background:var(--dsdm003-header-scrolled-bg);color:var(--dsdm003-header-scrolled-text);box-shadow:var(--dsdm003-header-shadow)}
.dsdm003-root.is-search-open .dsdm003-logo-transparent{opacity:0}.dsdm003-root.is-search-open .dsdm003-logo-scrolled{opacity:1}
.dsdm003-root.is-search-open .dsdm003-header-item{color:var(--item-scrolled,currentColor)!important}
@media(max-width:1024px){.admin-bar .dsdm003-search-panel{top:calc(var(--dsdm003-header-h) + 46px)}.dsdm003-search-panel{padding-left:22px;padding-right:22px}}
@media(max-width:767px){.dsdm003-search-panel{padding:18px 15px}.dsdm003-search-form{grid-template-columns:minmax(0,1fr) auto;gap:10px}.dsdm003-search-form input[type=search]{font-size:19px;height:46px}.dsdm003-search-form button[type=submit] span:last-child{display:none}.dsdm003-search-close{display:none}}

/* v0.4.3: preserve the complete DSD header when WordPress menu content is used */
body.dsdm003-full-header-active #masthead:not(.dsdm003-header),body.dsdm003-full-header-active .site-header:not(.dsdm003-header),body.dsdm003-full-header-active .main-header:not(.dsdm003-header),body.dsdm003-full-header-active .header-wrapper:not(.dsdm003-header),body.dsdm003-full-header-active .h-navigation:not(.dsdm003-header),body.dsdm003-full-header-active .h-navigation_outer:not(.dsdm003-header),body.dsdm003-full-header-active .elementor-location-header:not(.dsdm003-header){display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}

/* v0.4.4 force DSD header above theme and suppress detected theme headers */
.dsdm003-root{position:relative;z-index:2147480000!important}.dsdm003-header{z-index:2147483640!important}.dsdm003-drawer{z-index:2147483630!important}.dsdm003-overlay{z-index:2147483620!important}.dsdm003-search-panel{z-index:2147483635!important}.dsdm003-theme-header-hidden{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;min-height:0!important;max-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;pointer-events:none!important}

/* v0.4.9 desktop first-column auto sizing.
   The first divider starts slightly farther left and expands only when a
   longer WordPress menu title needs additional room. Other layout areas stay unchanged. */
@media(min-width:1025px){
  .dsdm003-drawer{
    width:auto;
    max-width:100vw;
  }
  .dsdm003-primary{
    flex:0 1 max-content;
    width:max-content;
    min-width:380px;
    max-width:min(460px,42vw);
  }
  .dsdm003-secondary{
    flex:0 0 min(var(--dsdm003-p2),var(--dsdm003-max));
    width:min(var(--dsdm003-p2),var(--dsdm003-max));
  }
  .dsdm003-main-item > span:first-child{
    white-space:normal;
    overflow-wrap:anywhere;
  }
}
