:root{
  --deen-olive:#17352f;
  --deen-olive-2:#245347;
  --deen-ivory:#f8f5ee;
  --deen-ink:#18201d;
  --deen-muted:#6f766f;
  --deen-border:#d9ddd8;
  --deen-brass:#b89b6b;
}
.deen-shell-inner{width:min(100% - 48px,1320px);margin-inline:auto}
.deen-announcement{background:var(--deen-olive);color:#fff;font-family:Manrope,sans-serif;font-size:12px;letter-spacing:.08em;text-align:center;padding:10px 0}
.deen-site-header{background:#fff;border-bottom:1px solid var(--deen-border);position:relative;z-index:40}
.deen-header-row{min-height:88px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px}
.deen-brand .custom-logo-link{display:block;line-height:0}
.deen-brand img{display:block;width:190px;max-height:64px;object-fit:contain}
.deen-primary-nav{min-width:0}
.deen-menu{display:flex;align-items:center;justify-content:center;gap:26px;list-style:none;margin:0;padding:0;white-space:nowrap}
.deen-menu a{font-family:Manrope,sans-serif;font-size:14px;color:var(--deen-ink);text-decoration:none}
.deen-menu a:hover,.deen-menu a:focus{color:var(--deen-olive-2)}
.deen-utilities{display:flex;align-items:center;gap:10px}
.deen-icon-link,.deen-search button{width:38px;height:38px;border:0;background:transparent;color:var(--deen-ink);display:grid;place-items:center;padding:0;position:relative}
.deen-icon-link svg,.deen-search svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.deen-search{display:flex;align-items:center;border:1px solid transparent;border-radius:4px;transition:.2s ease}
.deen-search:focus-within{border-color:var(--deen-border);padding-left:8px}
.deen-search input{width:0;opacity:0;border:0!important;box-shadow:none!important;padding:0!important;height:36px;transition:.2s ease;background:transparent}
.deen-search:focus-within input{width:160px;opacity:1;padding-inline:6px!important}
.deen-cart-count{position:absolute;right:1px;top:1px;background:var(--deen-olive);color:#fff;border-radius:999px;font-size:9px;line-height:16px;min-width:16px;height:16px;text-align:center;padding:0 4px}
.deen-mobile-menu{display:none}
.deen-mobile-menu summary{list-style:none;width:38px;height:38px;display:grid;place-content:center;gap:4px;cursor:pointer}
.deen-mobile-menu summary::-webkit-details-marker{display:none}
.deen-mobile-menu summary span{display:block;width:18px;height:1.5px;background:var(--deen-ink)}
.deen-mobile-panel{position:absolute;left:0;right:0;top:100%;width:100%;box-sizing:border-box;background:#fff;border-bottom:1px solid var(--deen-border);padding:18px 24px 24px;max-height:calc(100vh - 108px);overflow-y:auto;overflow-x:hidden;z-index:70}
.deen-mobile-nav{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.deen-mobile-nav a{display:block;padding:10px 0;color:var(--deen-ink);text-decoration:none;font-family:Manrope,sans-serif}
.deen-site-footer{background:#0f1e1a;color:#dce2df;padding:64px 0 28px}
.deen-footer-grid{display:grid;grid-template-columns:1.25fr .9fr .9fr;gap:64px}
.deen-footer-logo a{display:inline-block;line-height:0;background:transparent}
.deen-footer-logo img{display:block;width:190px;height:auto;opacity:.98}
.deen-footer-tagline{font-family:"Playfair Display",serif;font-size:26px;line-height:1.3;margin:24px 0 8px;color:#fff}
.deen-footer-positioning,.deen-footer-pending{font-family:Manrope,sans-serif;color:#aeb9b4;font-size:13px;line-height:1.7;max-width:360px}
.deen-footer-column h2{font-family:Manrope,sans-serif;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#d8c196;margin:0 0 18px}
.deen-footer-column ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.deen-footer-column a{font-family:Manrope,sans-serif;color:#eef2f0;font-size:14px;text-decoration:none}
.deen-footer-column a:hover,.deen-footer-column a:focus{color:#d8c196}
.deen-footer-pending{margin-top:20px}
.deen-footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:52px;padding-top:22px;display:flex;justify-content:space-between;gap:24px;color:#8f9c96;font:12px/1.6 Manrope,sans-serif}
.deen-footer-bottom p{margin:0}
@media(max-width:1100px){
  .deen-shell-inner{width:min(100% - 40px,1040px)}
  .deen-header-row{grid-template-columns:auto 1fr;min-height:80px}
  .deen-primary-nav{display:none}
  .deen-utilities{justify-self:end}
  .deen-mobile-menu{display:block}
  .deen-brand img{width:170px}
  .deen-footer-grid{grid-template-columns:1.2fr 1fr 1fr;gap:36px}
}
@media(max-width:700px){
  .deen-shell-inner{width:min(100% - 32px,668px)}
  .deen-announcement{font-size:11px;padding:9px 0}
  .deen-header-row{min-height:72px;gap:12px}
  .deen-brand img{width:132px}
  .deen-icon-link[aria-label="My account"]{display:none}
  .deen-search-panel{position:fixed;right:16px;left:16px;top:auto;width:auto;max-width:none;margin-top:10px}
  .deen-mobile-panel{padding:16px;max-height:calc(100vh - 104px)}
  .deen-mobile-nav a{white-space:normal;overflow-wrap:anywhere}
  .deen-footer-grid{grid-template-columns:1fr;gap:36px}
  .deen-site-footer{padding:48px 0 24px}
  .deen-footer-bottom{margin-top:40px;flex-direction:column}
}

@media(max-width:360px){
  .deen-shell-inner{width:min(100% - 24px,336px)}
  .deen-brand img{width:116px}
  .deen-utilities{gap:4px}
  .deen-icon-link,.deen-search-menu summary,.deen-mobile-menu summary{width:34px;height:34px}
  .deen-mobile-panel{padding:14px 12px}
}


/* =========================================================
   DEEN v1.0.2 — Search stabilization
   This block intentionally overrides stale v1.0.0 search rules.
   ========================================================= */

.deen-site-header .deen-header-row{
  position:relative;
}

.deen-site-header .deen-utilities{
  position:relative;
  flex:0 0 auto;
}

.deen-site-header .deen-search-menu{
  position:relative;
  display:block;
  flex:0 0 38px;
  width:38px;
  height:38px;
  margin:0;
  padding:0;
}

.deen-site-header .deen-search-menu > summary{
  list-style:none;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  min-width:38px;
  min-height:38px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--deen-ink);
  cursor:pointer;
  box-sizing:border-box;
}

.deen-site-header .deen-search-menu > summary::-webkit-details-marker{
  display:none;
}

.deen-site-header .deen-search-menu > summary::marker{
  content:"";
  display:none;
}

.deen-site-header .deen-search-menu > summary svg,
.deen-site-header .deen-search-form button svg{
  display:block;
  width:20px;
  height:20px;
  max-width:20px;
  max-height:20px;
  overflow:visible;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}

.deen-site-header .deen-search-panel{
  position:absolute !important;
  z-index:1000;
  top:calc(100% + 12px) !important;
  right:0 !important;
  left:auto !important;
  width:320px !important;
  max-width:calc(100vw - 32px) !important;
  height:auto !important;
  margin:0 !important;
  padding:16px !important;
  box-sizing:border-box;
  overflow:visible;
  background:#fff !important;
  border:1px solid var(--deen-border) !important;
  border-radius:0;
  box-shadow:0 18px 45px rgba(24,32,29,.14);
}

.deen-site-header .deen-search-form{
  display:block;
  width:100%;
  margin:0;
  padding:0;
}

.deen-site-header .deen-search-form > label{
  display:block;
  width:100%;
  margin:0 0 8px;
  padding:0;
  color:var(--deen-ink);
  font:600 12px/1.4 Manrope,sans-serif;
}

.deen-site-header .deen-search-field-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 42px;
  align-items:center;
  width:100%;
  height:44px;
  margin:0;
  padding:0;
  border:1px solid var(--deen-border);
  background:#fff;
  box-sizing:border-box;
}

.deen-site-header .deen-search-form input[type="search"]{
  display:block !important;
  position:static !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:42px !important;
  margin:0 !important;
  padding:0 12px !important;
  opacity:1 !important;
  visibility:visible !important;
  border:0 !important;
  outline:0;
  box-shadow:none !important;
  background:#fff !important;
  color:var(--deen-ink) !important;
  font:400 14px/1 Manrope,sans-serif;
  transform:none !important;
}

.deen-site-header .deen-search-form input[type="search"]:focus{
  outline:2px solid rgba(36,83,71,.18);
  outline-offset:-2px;
}

.deen-site-header .deen-search-form button{
  display:grid !important;
  place-items:center;
  position:static !important;
  width:42px !important;
  min-width:42px !important;
  height:42px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-left:1px solid var(--deen-border) !important;
  background:#fff !important;
  color:var(--deen-ink) !important;
  box-shadow:none !important;
}

@media (max-width:1100px){
  .deen-site-header .deen-search-panel{
    right:0 !important;
    left:auto !important;
    width:320px !important;
    max-width:calc(100vw - 24px) !important;
  }
}

@media (max-width:700px){
  .deen-site-header .deen-search-menu{
    flex-basis:34px;
    width:34px;
    height:34px;
  }

  .deen-site-header .deen-search-menu > summary{
    width:34px;
    height:34px;
    min-width:34px;
    min-height:34px;
  }

  .deen-site-header .deen-search-panel{
    position:fixed !important;
    z-index:10000;
    top:108px !important;
    right:16px !important;
    left:16px !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:14px !important;
  }
}

@media (max-width:360px){
  .deen-site-header .deen-search-panel{
    right:12px !important;
    left:12px !important;
    padding:12px !important;
  }
}

/* WP admin bar is present during authenticated QA. */
@media (max-width:700px){
  body.admin-bar .deen-site-header .deen-search-panel{
    top:154px !important;
  }
}


/* =========================================================
   DEEN v1.0.3 — Mobile overlay containing-block fix
   Search and mobile nav anchor to the full site header,
   not the narrow utilities cluster.
   ========================================================= */

@media (max-width:700px){

  /* Make the full header the positioning context for both overlays. */
  .deen-site-header{
    position:relative !important;
  }

  .deen-site-header .deen-header-row,
  .deen-site-header .deen-utilities,
  .deen-site-header .deen-search-menu,
  .deen-site-header .deen-mobile-menu{
    position:static !important;
  }

  /* Search panel begins exactly below the actual header height. */
  .deen-site-header .deen-search-panel,
  body.admin-bar .deen-site-header .deen-search-panel{
    position:absolute !important;
    top:100% !important;
    right:16px !important;
    left:16px !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    z-index:10000;
  }

  /* Mobile menu uses the whole header width instead of utilities width. */
  .deen-site-header .deen-mobile-panel{
    position:absolute !important;
    top:100% !important;
    right:0 !important;
    left:0 !important;
    width:auto !important;
    max-width:none !important;
    box-sizing:border-box !important;
    z-index:9999;
  }
}

@media (max-width:360px){
  .deen-site-header .deen-search-panel,
  body.admin-bar .deen-site-header .deen-search-panel{
    right:12px !important;
    left:12px !important;
  }

  .deen-site-header .deen-mobile-panel{
    right:0 !important;
    left:0 !important;
    width:auto !important;
  }
}
