/* Don's catalog shell. Keep selectors isolated from Genesis and VUE internals. */
:root{--dh-green:#07644f;--dh-ink:#121212;--dh-width:1200px}
.dh-header,.dh-header *,.dh-hero,.dh-room-grid{box-sizing:border-box}
.dh-header{position:relative;z-index:100;background:#fff;color:var(--dh-ink);font-family:Arial,sans-serif}
.dh-header a{text-decoration:none;color:inherit}
.dh-utility{background:#000;color:#fff;padding:10px 24px}
.dh-utility nav{max-width:var(--dh-width);margin:auto}
.dh-utility-links{display:flex;justify-content:flex-end;gap:24px;list-style:none;margin:0;padding:0}
.dh-utility-links li{list-style:none;margin:0;padding:0;font-size:14px}
.dh-utility ul.dh-utility-links{display:flex!important;width:max-content;max-width:100%;margin-left:auto!important;margin-right:0!important;float:none}
.dh-header-main{max-width:var(--dh-width);margin:auto;display:grid;grid-template-columns:160px minmax(200px,1fr) 170px;align-items:center;gap:65px;padding:16px 32px}
.dh-logo{display:block;width:140px;height:auto;object-fit:contain;margin:0}
.dh-header-search{min-width:0}
.dh-quote{display:inline-flex!important;align-items:center;justify-content:center;gap:14px;background:#000!important;color:#fff!important;border-radius:4px;padding:12px 16px;font:15px/1.2 Arial,sans-serif;text-decoration:none;white-space:nowrap;width:max-content}
.dh-quote-count{display:inline-flex;justify-content:center;align-items:center;min-width:21px;height:21px;border-radius:50%;padding:2px 5px;background:var(--dh-green);color:#fff;font-size:12px}
.dh-menu-toggle{display:none;background:none!important;border:0;padding:8px;width:48px;color:#111}
.dh-menu-toggle span{display:block;height:3px;background:currentColor;margin:7px 0;border-radius:3px}
.dh-navigation{border-block:1px solid #777;position:relative}
.dh-rooms{max-width:var(--dh-width);display:flex;align-items:stretch;justify-content:space-between;list-style:none;padding:0 25px;margin:0 auto}
.dh-room{list-style:none;margin:0;padding:0}
.dh-room-row{display:flex;align-items:center}
.dh-room-row>a{padding:10px 12px;font-size:16px;line-height:1.2}
.dh-room-toggle{background:transparent!important;border:0;color:#111!important;padding:10px 5px;font:18px/1 Arial;min-width:30px}
.dh-room-row>a:hover,.dh-room-row>a:focus-visible{color:var(--dh-green)}
.dh-mega[hidden]{display:none!important}
.dh-mega{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:32px 45px;background:white;position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(1100px,calc(100vw - 48px));box-shadow:0 12px 20px #0002;border:1px solid #eee}
.dh-mega-links{display:grid;grid-auto-flow:column;grid-template-rows:repeat(5,auto);grid-auto-columns:1fr;gap:18px 30px;list-style:none;margin:0;padding:22px 0;align-content:center}
.dh-mega-links li{list-style:none;margin:0;padding:0}
.dh-mega-links a{font-family:Georgia,serif;font-size:15px;text-transform:uppercase;line-height:1.5;display:block}
.dh-mega-links a:hover,.dh-mega-links a:focus-visible{color:var(--dh-green);text-decoration:underline}
.dh-mega-photo{display:block;min-width:0}
.dh-mega-photo img{display:block;width:100%;height:300px;object-fit:cover}
.dh-mobile-utility{display:none}
.dh-header button:focus-visible,.dh-header a:focus-visible,.dh-hero button:focus-visible{outline:2px solid var(--dh-green);outline-offset:4px}
.dh-header--home .dh-header-main{display:none}
.dh-header--home .dh-navigation{background:#fff}
.dh-header .vuer-search__form,.dh-hero .vuer-search__form{margin:0}
.dh-header .vuer-search__input,.dh-hero .vuer-search__input{font:16px/1.4 Arial,sans-serif;border:1px solid #333;border-radius:4px;background:#fff;min-height:44px;padding:10px 45px 10px 14px;width:100%;box-shadow:none}
.dh-header .vuer-search__submit,.dh-hero .vuer-search__submit{background:transparent;color:#999}
.dh-header .vuer-search__suggestions,.dh-hero .vuer-search__suggestions{z-index:150;text-align:left}
.home .site-inner:has(.dh-hero){padding:0;max-width:none;margin:0;width:100%}
.home .content:has(.dh-hero),.home .content-sidebar-wrap:has(.dh-hero){max-width:none;width:100%;padding:0;float:none}
.dh-hero{position:relative;min-height:620px;height:calc(100vh - 90px);max-height:950px;display:flex;align-items:flex-end;justify-content:center;padding:0 24px 25px;margin:0;background:#e9e7e4;isolation:isolate}
.dh-hero-slides,.dh-hero-slide{position:absolute;inset:0;width:100%;height:100%}
.dh-hero-slides{z-index:-2;overflow:hidden}
.dh-hero-slide{object-fit:cover;opacity:0;transition:opacity .6s}
.dh-hero-slide.is-active{opacity:1}
.dh-hero:after{content:'';position:absolute;inset:38% 0 0;z-index:-1;background:linear-gradient(transparent,#ffffff70 35%,#fff 94%)}
.dh-hero-content{width:min(100%,1100px);text-align:center}
.dh-hero-content>.dh-logo{width:350px;max-width:65%;margin:0 auto 8px}
.dh-hero-tools{position:relative;display:flex;align-items:center;justify-content:center;gap:50px;padding:4px 0 18px}
.dh-hero-search{width:560px;max-width:65%}
.dh-slide-prev,.dh-slide-next{position:absolute;top:42%;border:0;background:transparent!important;color:white!important;font-size:60px;line-height:1;padding:10px;z-index:1}
.dh-slide-prev{left:12px}.dh-slide-next{right:12px}
.dh-room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;max-width:1400px;margin:40px auto 75px;padding:0 40px}
.dh-room-card{display:block;background:#eee;text-align:center;text-decoration:none;color:#111}
.dh-room-card img{display:block;width:100%;aspect-ratio:1.2;object-fit:cover}
.dh-room-card h2{font-family:Arial,sans-serif;font-weight:400;font-size:25px;margin:0;padding:26px 10px;text-transform:none}
.dh-room-card:hover{color:var(--dh-green)}
.dh-home-editorial{max-width:1200px;margin:auto;padding:0 30px}
.dh-catalog-status{font-size:14px;text-align:center;padding:15px;margin:0}
/* Native Product Barn UI: retain real selectors, notes, gallery and quote actions. */
.vue-plugin-shell{padding:55px 28px;background:#fff}
.site-inner:has(.vue-plugin-shell){width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.vue-plugin-shell #vue-plugin-app{max-width:1600px!important}
#vue-plugin-app .product-title,#vue-plugin-app h1{font-family:Georgia,serif;color:#111;text-transform:uppercase;font-size:28px}
#vue-plugin-app .product-dropdown__toggle{background:#fff;color:#111;border:1px solid #aaa;border-radius:4px;min-height:70px;padding:20px 28px;font-size:19px}
#vue-plugin-app .product-add-to-cart button{background:#000;color:white;border-radius:4px;min-height:52px}
#vue-plugin-app .product-add-to-cart{background:#000;color:#fff;border-radius:4px;min-height:52px;font:16px/1.3 Arial,sans-serif;font-weight:400;text-transform:none;max-width:none}
#vue-plugin-app .product-dropdown__toggle,#vue-plugin-app .vue-plugin-product-notes{font-family:Arial,sans-serif;text-transform:none}
#vue-plugin-app .product-hero__main-img{object-fit:contain}
@media(min-width:1500px){.dh-room-grid{grid-template-columns:repeat(6,minmax(0,1fr));max-width:1750px;gap:32px}.dh-room-card h2{font-size:21px}}
@media(max-width:900px){
 .dh-utility{display:none}.dh-header-main{display:flex;gap:18px;padding:15px 22px;justify-content:flex-end}.dh-brand{margin-right:auto}.dh-header-main .dh-logo{width:95px}.dh-header-search{display:none}.dh-menu-toggle{display:block}.dh-header--home .dh-header-main{display:flex}.dh-header--home{position:absolute;top:0;left:0;right:0;background:transparent}.admin-bar .dh-header--home{top:32px}.dh-header--home .dh-brand{display:none}.dh-header--home .dh-header-main{padding-top:20px}
 .dh-navigation{display:none;background:#fff;max-height:calc(100dvh - 90px);overflow:auto;border:0;box-shadow:0 8px 16px #0002}.dh-header.is-menu-open .dh-navigation{display:block}.dh-rooms{display:block;padding:15px 24px}.dh-room-row{justify-content:space-between;border-bottom:1px solid #ddd}.dh-room-row>a{padding:16px 0;font-size:19px}.dh-room-toggle{padding:15px;min-width:48px}.dh-mega{position:static;transform:none;width:100%;display:block;padding:12px 10px;box-shadow:none;border:0}.dh-mega-links{display:grid;grid-auto-flow:row;grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:10px 0}.dh-mega-links a{font-size:13px}.dh-mega-photo{display:none}.dh-mobile-utility{display:block;padding:10px 24px 25px}.dh-mobile-utility .dh-utility-links{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:20px}.dh-header.is-menu-open .dh-menu-toggle{color:var(--dh-green)}
 .dh-hero{height:80vh;min-height:600px;max-height:850px;padding:0 28px 0}.dh-hero-content>.dh-logo{width:310px;max-width:80%;margin-bottom:10px}.dh-hero-tools{display:block;padding:0 0 5px}.dh-hero-tools>.dh-quote{display:none!important}.dh-hero-search{max-width:none;width:100%}.dh-hero:after{inset:45% 0 0}.dh-slide-prev,.dh-slide-next{font-size:42px;padding:5px}.dh-room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:50px auto;padding:0 28px}.dh-room-card h2{font-size:20px;padding:24px 6px}.dh-home-editorial{padding:0 25px}.vue-plugin-shell{padding:25px 10px}
}
@media(prefers-reduced-motion:reduce){.dh-hero-slide{transition:none}}

/* Mockup uses room names without dropdown arrows. Touch users expand by name. */
#dh-header .dh-room-toggle{display:none}
.dh-view-room{display:none}
@media(max-width:900px),(hover:none){.dh-view-room{display:block}.dh-room-row>a{flex:1}}

/* Match every product dropdown to the full-width Add to Quote control. */
#vue-plugin-app.product-page .description-dropdown,
#vue-plugin-app.product-page .product-variation-options,
#vue-plugin-app.product-page .product-variation-options__field,
#vue-plugin-app.product-page .product-dropdown__toggle {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

/* Homepage mockup: black utility bar above the hero; category bar on interior pages only. */
@media (min-width: 901px) {
    #dh-header.dh-header--home .dh-navigation { display: none; }
}

/* Restore live homepage proportions without altering the Product Barn integration. */
.home .dh-hero { height: 74vh; min-height: 0; max-height: none; }
.home .dh-home-editorial { width: 100%; max-width: none; padding: 0; margin: 0; }

/* Preserve the original content context for full-width editorial blocks. */
.home .dh-home-editorial.entry-content { width: 95%; max-width: none; margin: 0 auto; padding: 0; }

/* Match the live primary menu typography and desktop distribution. */
.dh-navigation { font-family: "Arial Narrow", sans-serif; }
@media (min-width: 901px) {
    .dh-navigation { border-block: 2px solid #000; }
    .dh-rooms { max-width: none; width: 100%; padding: 0; justify-content: space-evenly; }
    .dh-room-row > a { font-family: "Arial Narrow", sans-serif; font-size: 22px; font-weight: 400; line-height: 40px; padding: 0 25px 0 20px; color: #221f20; }
}

/* Mobile navigation follows the live single-column menu, with explicit toggle states. */
@media (max-width: 900px) {
    #dh-header .dh-menu-toggle { color: #000 !important; position: relative; height: 48px; }
    #dh-header .dh-menu-toggle span { position: absolute; width: 32px; left: 8px; margin: 0; background: #000; }
    #dh-header .dh-menu-toggle span:nth-child(1) { top: 12px; }
    #dh-header .dh-menu-toggle span:nth-child(2) { top: 23px; }
    #dh-header .dh-menu-toggle span:nth-child(3) { top: 34px; }
    #dh-header.is-menu-open .dh-menu-toggle span:nth-child(1) { top: 23px; transform: rotate(45deg); }
    #dh-header.is-menu-open .dh-menu-toggle span:nth-child(2) { opacity: 0; }
    #dh-header.is-menu-open .dh-menu-toggle span:nth-child(3) { top: 23px; transform: rotate(-45deg); }
    #dh-header .dh-navigation { border-block: 2px solid #000; box-shadow: none; }
    #dh-header .dh-rooms { padding: 0 24px; }
    #dh-header .dh-room-row { border: 0; }
    #dh-header .dh-room-toggle { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 0; }
    #dh-header .dh-room-toggle::after { content: ''; width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 7px solid #000; }
    #dh-header .dh-room-toggle[aria-expanded="true"]::after { border-top: 0; border-bottom: 7px solid #000; }
    #dh-header .dh-mega { padding: 0 0 8px 18px; }
    #dh-header .dh-mega-links { display: flex; flex-direction: column; gap: 0; padding: 0; }
    #dh-header .dh-mega-links a { display: block; padding: 12px 0; }
    #dh-header .dh-pricing { display: none; }
    #dh-header .dh-mobile-utility { padding: 0 24px; }
    #dh-header .dh-mobile-utility .dh-utility-links { display: flex !important; flex-direction: column; align-items: stretch; gap: 0; width: 100%; margin: 0 !important; }
    #dh-header .dh-mobile-utility .dh-utility-links li { display: block; width: 100%; font-size: 19px; }
    #dh-header .dh-mobile-utility .dh-utility-links a { display: block; padding: 16px 0; font-family: "Arial Narrow", sans-serif; font-size: 19px; font-weight: 400; line-height: 1.2; }
    #dh-header .dh-mobile-utility li:has(a[href*="/furniture-pricing"]) { order: 1; }
    #dh-header .dh-mobile-utility li:has(a[href*="/contact-us"]) { order: 2; }
}

/* Mobile child links use the same typography as their parent items. */
@media (max-width: 900px) {
    #dh-header .dh-mega-links a { font-family: "Arial Narrow", sans-serif; font-size: 19px; font-weight: 400; line-height: 1.2; text-transform: none; }
}

/* Desktop dropdowns share the category navigation's full width and edges. */
@media (min-width: 901px) {
    #dh-header .dh-mega { left: var(--dh-dropdown-left, 0px); right: auto; width: var(--dh-dropdown-width, 100%); max-width: none; transform: none; }
}

/* Align the desktop category labels with the logo and quote button above. */
@media (min-width: 901px) {
    #dh-header .dh-rooms { width: var(--dh-menu-width, calc(100% - 64px)); margin-left: var(--dh-menu-left, 32px); margin-right: 0; justify-content: space-between; }
    #dh-header .dh-room-row > a { padding-left: 0; padding-right: 0; white-space: nowrap; }
}
