/* Shared site content width; catalog pages use the same 90vw / 1920px boundary. */
:root { --ach-content-width: min(1920px, 90vw); }
#vue-plugin-app { width: var(--ach-content-width); max-width: var(--ach-content-width)!important; margin: 60px auto; padding: 0; }
.ach-header-top,.ach-primary-nav { width: var(--ach-content-width); max-width:1920px; margin:auto; padding-left:0; padding-right:0; }
.ach-header-top { grid-template-columns:minmax(180px,280px) minmax(220px,1fr) auto; gap:36px; padding-top:36px; padding-bottom:24px; }
.ach-header-actions { gap:28px; }
.ach-header-shell .ach-quote-link { display:inline-flex; align-items:center; justify-content:center; gap:12px; background:#a8000d; color:white; padding:12px 18px; border-radius:5px; font-size:14px; white-space:nowrap; text-decoration:none; line-height:1.2; }
.ach-quote-count { display:inline-flex; align-items:center; justify-content:center; background:#ffffff66; border-radius:50%; min-width:22px; height:22px; }
.ach-primary-menu { justify-content:space-between; gap:16px; }
.ach-header-shell .ach-social-menu .ach-social-menu__link { color:#a8000d!important; background:transparent; }
.ach-mega-panel { width:var(--ach-content-width); border-radius:0; box-shadow:none; }
.ach-mega-panel__inner { grid-template-columns:34% 66%; height: min(580px, 37vw); min-height:400px; }
.ach-mega-panel__links { padding:30px 40px; }
.ach-mega-panel__list a { font-size:clamp(17px,1.3vw,26px); padding:7px 0; }
#vue-plugin-app .product-desktop-sticky-boundary { min-height:0!important; }
#vue-plugin-app .product-details { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:6%; align-items:start; position:relative; }
#vue-plugin-app .product-mobile-sticky-boundary { display:contents; }
#vue-plugin-app .product-hero { grid-column:1; grid-row:1 / span 3; padding:0; }
#vue-plugin-app .product-options { grid-column:2; padding:0; width:100%; }
#vue-plugin-app .product-cta { grid-column:2; padding:0; margin-top:54px; width:100%; }
#vue-plugin-app .product-options h1 { font-family:var(--heading-font); font-size:clamp(26px,2vw,40px); margin:16px 0 26px; }
#vue-plugin-app .product-breadcrumbs { display:none; }
#vue-plugin-app .product-hero__main-img { position:static!important; }
#vue-plugin-app .product-hero__main-img img { width:100%; height:min(680px,52vw); object-fit:contain; }
#vue-plugin-app .description-dropdown,#vue-plugin-app .product-variation-options,#vue-plugin-app .product-variation-options__field { max-width:none; width:100%; }
#vue-plugin-app .product-dropdown__toggle { background:#f0e7e3; color:#555; border:1px solid #ae9b92; border-radius:5px; padding:22px 26px; min-height:64px; font-size:18px; font-weight:400; width:100%; max-width:none; text-align:left; }
#vue-plugin-app .description-dropdown,#vue-plugin-app .product-variation-options__field { margin-bottom:20px; }
#vue-plugin-app .product-dropdown__arrow { border-top-color:#333; }
#vue-plugin-app .description-dropdown .product-dropdown__toggle > span:first-child,
#vue-plugin-app #product-variation-38 > span:first-child,
#vue-plugin-app #product-variation-44 > span:first-child { display:none; }
#vue-plugin-app .description-dropdown .product-dropdown__toggle:before { content:'DETAILS'; }
#vue-plugin-app #product-variation-38:before { content:'OPTIONS'; }
#vue-plugin-app #product-variation-44:before { content:'WOOD SPECIES'; }
#vue-plugin-app .product-add-to-cart,#vue-plugin-app .ach-more-options { display:block; width:100%; max-width:none; border:0; border-radius:5px; padding:14px; font:500 20px/1.2 var(--body-font); text-transform:uppercase; color:#fff; background:#940417; text-align:center; }
#vue-plugin-app .ach-more-options { background:#666; margin:0 0 20px; }
#vue-plugin-app .ach-more-options:focus-visible,#vue-plugin-app .product-add-to-cart:focus-visible { outline:3px solid #333; outline-offset:3px; }
#vue-plugin-app:not(.ach-options-open) .product-stains,#vue-plugin-app:not(.ach-options-open) .vue-plugin-product-notes { display:none; }
#vue-plugin-app .vuer-product-builders { grid-column:2; font-size:0; margin:24px 20px; }
#vue-plugin-app .vuer-product-builders a { font:18px var(--body-font); color:#940417; }
#vue-plugin-app .product-thumbnails { margin-top:20px; }
#vue-plugin-app .product-collection-includes,#vue-plugin-app .related-products { margin-top:70px; }
@media(max-width:1150px) {
 .ach-header-top { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; padding:25px 0 16px; }
 .ach-header-logo img { width:clamp(130px,36vw,280px); max-width:100%; max-height:none; }
 .ach-header-actions { gap:12px; }
 .ach-header-actions .ach-social-menu { display:none; }
 .ach-header-search { grid-column:1 / -1; width:100%; order:3; margin:0; }
 .ach-header-search-form { max-width:none; border-radius:5px; }
 .ach-header-shell.menu_open .ach-header-search { display:none; }
 .ach-header-shell.menu_open .ach-menu-toggle { background:#a8000d; color:#fff; border-radius:4px; }
 .ach-mobile-nav { background:#f2eae6; }
 .ach-mobile-menu > li > a { padding:20px 3.2vw; font-size:clamp(18px,3.6vw,28px); }
 .ach-header-shell .ach-quote-link { font-size:clamp(10px,2.5vw,16px); padding:10px 12px; gap:8px; }
 .ach-menu-toggle { flex-shrink:0; width:32px; }
}
@media(max-width:900px) {
 #vue-plugin-app { margin:30px auto; }
 #vue-plugin-app .product-details { display:flex; flex-direction:column; gap:0; }
 #vue-plugin-app .product-hero,#vue-plugin-app .product-options,#vue-plugin-app .product-cta { width:100%; }
 #vue-plugin-app .product-hero__main-img img { height:440px; max-height:65vh; }
 #vue-plugin-app .product-cta { margin-top:30px; }
 #vue-plugin-app .product-dropdown__toggle { font-size:16px; min-height:56px; padding:18px; }
 #vue-plugin-app .product-options h1 { margin-top:28px; }
}
/* The plugin's outer sticky boundary also establishes columns by default. */
#vue-plugin-app .product-desktop-sticky-boundary { display:block; }
#vue-plugin-app .product-details { grid-template-rows:auto auto 1fr; }
#vue-plugin-app .product-hero { display:block; }
#vue-plugin-app .product-hero__wrapper { display:block; }
#vue-plugin-app .product-hero__main-img img { height:auto; max-height:720px; }
@media(max-width:1150px) {
 .ach-mobile-nav { position:relative; top:auto; box-shadow:none; }
 .ach-mobile-menu > li > a { padding:13px 3.2vw; font-size:16px; line-height:1.2; }
 .ach-submenu-toggle { height:46px; }
 body.home:has(.ach-header-shell.menu_open) .homepage-slider { display:none; }
 .ach-header-top { padding-top:18px; }
}
.site-inner:has(> .vue-plugin-shell) { padding-top:0; }
#vue-plugin-app .product-dropdown__arrow { width:16px; height:12px; border:0; background:#333; clip-path:polygon(0 15%,100% 15%,50% 90%); transform:none; }
#vue-plugin-app .product-dropdown__arrow.is-open { transform:rotate(180deg); }
