/* Client View storefront: dimensions and colors follow the supplied desktop/mobile mockups. */
body.acf-client-view{--acf-wine:#52002b;--acf-ink:#303030;--vuer-checkout-accent:#52002b;color:var(--acf-ink)}
.acf-client-view .site-header{position:relative;width:100%;padding:0;background:#fff;z-index:50;border:0;box-shadow:none}
.acf-client-view .site-header>.wrap{width:100%;max-width:none;padding:0;display:block}
.acf-client-view .site-header>.wrap:after{display:none}
.acf-top{background:#3e0c25;color:#fff}
.acf-top nav{max-width:1100px;margin:auto;display:flex;justify-content:space-between;gap:24px;padding:3px 20px}
.acf-top a{color:#fff;font-size:14px;text-decoration:none;line-height:1.5}
.acf-masthead{max-width:1440px;min-height:215px;margin:auto;padding:24px 20px;display:grid;grid-template-columns:200px minmax(200px,1fr) 170px auto;align-items:center;gap:16px}
.acf-logo{display:block;width:190px;line-height:0}
.acf-logo img{width:100%;height:auto;max-height:165px;object-fit:contain}
.acf-search{width:min(100%,570px);justify-self:center;padding:0 20px}
.acf-client-view .acf-search .vuer-search__input{height:36px;border:1.5px solid #999;border-radius:5px;background:#fff;color:#333;font-size:14px;box-shadow:none;padding:0 40px 0 12px}
.acf-client-view .acf-search .vuer-search__submit{width:36px;height:36px;border:0;background:transparent;color:#999}
.acf-client-view .acf-search .vuer-search__input:focus{outline-color:var(--acf-wine)}
.acf-store{font-size:10px;font-weight:600;line-height:1.2;color:var(--acf-wine);text-align:right}
.acf-quote{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:5px;background:var(--acf-wine);color:#fff!important;padding:9px 14px;font-size:14px;font-weight:600;line-height:1.25;text-decoration:none!important;white-space:nowrap}
.acf-quote-count{display:inline-grid;place-items:center;background:#ae879e;border-radius:50%;min-width:20px;height:20px;padding:0 4px;color:#fff;font-size:12px}
.acf-menu-toggle{display:none}
.acf-client-view .acf-menu-toggle:hover,.acf-client-view .acf-menu-toggle:focus{background:transparent;color:var(--acf-wine)}
.acf-client-view .acf-room-toggle:hover,.acf-client-view .acf-room-toggle:focus{background:transparent;color:#111}
.acf-navigation{border-top:1px solid #777;border-bottom:1px solid #777;background:#fff}
.acf-navigation ul{list-style:none;margin:0;padding:0}
.acf-rooms{max-width:1440px;margin:0 auto!important;display:flex;justify-content:space-between;position:relative}
.acf-room{list-style:none;padding:0 20px}
.acf-room-heading{display:flex;align-items:center;gap:4px}
.acf-room-heading>a{display:block;padding:4px 0;color:#111;text-transform:uppercase;font-size:16px;line-height:1.35;text-decoration:none}
.acf-room-toggle{background:transparent;color:#111;border:0;padding:0;width:18px;height:28px;position:relative}
.acf-room-toggle:after{content:'';display:block;width:7px;height:7px;border-right:1.5px solid;border-bottom:1.5px solid;transform:rotate(45deg);position:absolute;left:5px;top:8px}
.acf-room-toggle[aria-expanded=true]:after{transform:rotate(225deg);top:12px}
.acf-mega{position:absolute;top:100%;left:0;right:0;background:#fff;display:grid;grid-template-columns:31% 69%;box-shadow:0 10px 18px #0001;z-index:60;min-height:440px}
.acf-mega[hidden]{display:none}
.acf-mega>ul{padding:35px 40px!important;display:flex;flex-direction:column;justify-content:space-around;gap:16px}
.acf-mega li a{color:#222;font-size:18px;line-height:1.4;text-decoration:none;display:block}
.acf-mega li a:hover,.acf-mega li a:focus{color:var(--acf-wine);text-decoration:underline}
.acf-mega-image{display:block;min-height:100%;overflow:hidden}
.acf-mega-image img{width:100%;height:100%;max-height:580px;object-fit:cover;display:block}
.acf-mobile-links{display:none}
.acf-client-view a:focus-visible,.acf-client-view button:focus-visible{outline:2px solid var(--acf-wine);outline-offset:3px}
/* Let the plugin retain its native controls, filters, gallery, and quote validation. */
.acf-client-view .site-inner:has(.vue-plugin-shell){max-width:none;width:100%;padding:0;margin:0}
.acf-client-view .vue-plugin-shell{max-width:1360px;width:100%;margin:0 auto;padding:55px 32px 70px}
.acf-client-view .vue-plugin-shell-product-default .product-information{margin:0}
.acf-client-view .product-desktop-sticky-boundary{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-rows:min-content min-content 1fr;gap:24px 90px;min-height:680px}
.acf-client-view .product-hero{border-right:0;padding-right:28px}
.acf-client-view .product-breadcrumbs{display:none}
.acf-client-view .product-hero__wrapper{grid-row:1}
.acf-client-view .product-hero__main-img{position:relative;top:auto}
@media(min-width:901px){
 .acf-client-view .vuer-product-image-trigger:before{content:'';position:absolute;top:0;bottom:0;right:-28px;width:1px;background:#ddd;pointer-events:none}
}
.acf-client-view .product-hero__main-img img{width:100%;height:630px;object-fit:contain}
.acf-client-view .vuer-product-image-trigger{position:relative}
.acf-client-view .vuer-product-image-trigger:after{content:'⌕';position:absolute;right:0;top:0;border:1px solid #ddd;border-radius:50%;background:#fff;color:#999;width:42px;height:42px;font:30px/38px Arial,sans-serif}
.acf-client-view .product-options{padding-top:65px}
.acf-client-view .product-options h1{font-family:Georgia,'Times New Roman',serif;font-size:36px;line-height:1.2;font-weight:700;margin:0 0 22px}
.acf-client-view .product-dropdown__toggle{width:100%;min-height:62px;background:#f5f5f5;color:#444;border:2px solid #ddd;border-radius:6px;padding:16px;text-transform:uppercase;font-size:16px;font-weight:400;box-shadow:none}
.acf-client-view .description-dropdown,.acf-client-view .product-variation-options,.acf-client-view .product-variation-options__field{width:100%;max-width:none;margin:0 0 14px}
.acf-client-view .product-dropdown__arrow{border:0!important;transform:none!important;width:18px;height:18px;position:relative;background:none}
.acf-client-view .product-dropdown__arrow:before,.acf-client-view .product-dropdown__arrow:after{content:'';position:absolute;top:8px;left:1px;width:16px;height:1px;background:#555}
.acf-client-view .product-dropdown__arrow:after{transform:rotate(90deg)}
.acf-client-view [aria-expanded=true]>.product-dropdown__arrow:after{display:none}
.acf-client-view .product-cta{margin-top:55px;width:100%;align-self:start}
.acf-client-view .priced-cta{display:flex;flex-direction:column;gap:14px;align-items:stretch}
.acf-client-view .product-add-to-cart,.acf-client-view .acf-more-options{display:block;width:100%;max-width:none;min-height:56px;background:var(--acf-wine);border:0;border-radius:5px;color:white;padding:16px;font-size:16px;text-transform:uppercase;font-weight:600;line-height:1.4}
.acf-client-view .acf-more-options{background:#474747;margin-bottom:14px}
.acf-client-view .acf-custom-piece{font-size:14px;margin:18px 0 24px}
.acf-client-view .acf-custom-piece a{color:var(--acf-wine)}
.acf-client-view .acf-product-code{font-size:14px;color:#555;margin:0}
.acf-client-view .product-thumbnails{margin-top:30px}
.acf-client-view .product-collection-includes,.acf-client-view .related-products{margin-top:70px}
.acf-client-view .vue-plugin-product-notes{margin-top:12px;font-size:14px;display:none}
.acf-client-view .acf-options-expanded .vue-plugin-product-notes{display:block}
.acf-client-view .vue-plugin-product-card__title{font-family:inherit;font-size:18px;font-weight:400}
.acf-client-view .vue-plugin-product-card__link{border:0;padding:12px;text-decoration:none}
.acf-client-view .vue-plugin-product-card__image-wrap{aspect-ratio:1/1}
.acf-client-view .vue-plugin-shell h1:not(.product-options h1){font-family:Georgia,serif;font-size:38px;margin-bottom:35px}
@media(min-width:901px) and (max-width:1200px){.acf-masthead{grid-template-columns:170px minmax(180px,1fr) auto;min-height:180px}.acf-logo{width:160px}.acf-store{display:none}.acf-client-view .product-desktop-sticky-boundary{gap:24px 40px}.acf-client-view .product-options h1{font-size:30px}}
@media(max-width:900px){
 .acf-top,.acf-store{display:none}
 .acf-masthead{min-height:0;padding:8px 14px;grid-template-columns:minmax(100px,1fr) auto 36px;gap:8px;max-width:none}
 .acf-logo{width:24vw;max-width:150px;min-width:0}.acf-logo img{max-height:110px;width:100%;object-position:left center}
 .acf-quote{font-size:12px;padding:8px 9px;gap:6px;justify-self:end}.acf-quote-count{min-width:18px;height:18px;font-size:11px}
 .acf-menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:36px;height:44px;border:0;padding:5px;background:none;color:var(--acf-wine)}
 .acf-menu-toggle span{display:block;height:2px;width:26px;background:currentColor;border-radius:2px;transition:transform .15s}
 .acf-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}
 .acf-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .acf-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg)}
 .acf-search{grid-column:1/-1;grid-row:2;padding:0;width:100%;margin:0 0 0}
 .acf-client-view .acf-search .vuer-search__input{height:34px;font-size:16px;border-radius:5px}
 .acf-client-view .acf-search .vuer-search__submit{height:34px;width:34px}
 .acf-navigation{display:none;border:0;padding:0 14px 22px}
 .acf-menu-open .acf-navigation{display:block}.acf-menu-open .acf-search{display:none}
 .acf-rooms{display:block}.acf-room{padding:0}
 .acf-room-heading>a{padding:10px 0;text-transform:none;font-size:18px;flex:1;line-height:1.6}
 .acf-room-toggle{width:40px;height:44px}.acf-room-toggle:after{width:10px;height:10px;top:14px;left:19px;border-width:2px}.acf-room-toggle[aria-expanded=true]:after{top:19px}
 .acf-mega{position:static;display:block;min-height:0;box-shadow:none}.acf-mega>ul{padding:4px 0 12px 18px!important;gap:0}.acf-mega li a{font-size:16px;padding:8px 0}.acf-mega-image{display:none}
 .acf-mobile-links{display:block}.acf-mobile-links a{display:block;padding:10px 0;color:#111;text-decoration:none;font-size:18px;line-height:1.6}
 .acf-client-view .vue-plugin-shell{padding:28px 16px 45px}
 .acf-client-view #vue-plugin-app{width:100%;margin:0}
 .acf-client-view .product-desktop-sticky-boundary{display:block;min-height:0}
 .acf-client-view .product-hero{display:block;border:0;padding:0}
 .acf-client-view .product-hero__main-img img{height:auto;max-height:460px;aspect-ratio:1/1;object-fit:contain}
 .acf-client-view .product-options{padding:28px 0 0}.acf-client-view .product-options h1{font-size:28px}
 .acf-client-view .product-cta{margin-top:30px}
 .acf-client-view .product-dropdown__toggle{font-size:14px;min-height:52px;padding:12px}
 .acf-client-view .product-thumbnails{margin-top:12px}.acf-client-view .product-thumbnails img{max-height:100px;object-fit:contain}
 .acf-client-view .vue-plugin-shell h1:not(.product-options h1){font-size:30px;margin-bottom:25px}
 .acf-client-view.home .wp-block-cover p{font-size:clamp(16px,4vw,24px)!important;line-height:1.65}
 .acf-client-view.home .wp-block-cover h1{font-size:clamp(25px,7vw,40px)!important}
}
@media(max-width:360px){.acf-masthead{gap:8px;padding:10px 12px}.acf-logo{max-width:120px}.acf-quote{font-size:11px;padding:8px}.acf-room-heading>a,.acf-mobile-links a{font-size:17px}}
/* Match the site's centered content columns; constrain plugin roots as well as shells. */
body.acf-client-view .vue-plugin-shell {box-sizing:border-box;width:80%!important;max-width:1360px!important;margin:0 auto!important;padding:55px 0 70px!important;min-width:0}
body.acf-client-view #vue-plugin-app {box-sizing:border-box;width:100%!important;max-width:1360px!important;min-width:0;margin:0 auto!important;padding:0}
body.acf-client-view .vuer-products-shortcode,
body.acf-client-view .vuer-categories-shortcode {box-sizing:border-box;width:100%;max-width:1360px;margin-left:auto;margin-right:auto}
body.acf-client-view .vue-plugin-shell .product-information,
body.acf-client-view .vue-plugin-shell .product-desktop-sticky-boundary {width:100%;max-width:100%;min-width:0}
body.acf-client-view .product-desktop-sticky-boundary>* {min-width:0;max-width:100%}
body.acf-client-view .vuer-product-image-trigger {background:transparent!important;padding:0;border:0;width:100%;max-width:100%}
body.acf-client-view .product-hero__main-img img {max-width:100%;height: min(580px,45vw)}
@media(max-width:900px){body.acf-client-view .vue-plugin-shell{width:calc(100% - 32px)!important;padding:28px 0 45px!important}body.acf-client-view .product-hero__main-img img{height:auto}}
/* Align the desktop masthead and menu with the category content edges. */
@media(min-width:901px){
 body.acf-client-view .acf-masthead,
 body.acf-client-view .acf-rooms {box-sizing:border-box;width:80%;max-width:1360px;margin-left:auto!important;margin-right:auto!important}
 body.acf-client-view .acf-masthead {padding-left:0;padding-right:0}
 body.acf-client-view .acf-rooms>.acf-room {padding-left:0;padding-right:0}
 body.acf-client-view .acf-rooms .acf-room-toggle {display:none}
 body.acf-client-view .acf-rooms>.acf-room>.acf-mega {left:-25px;right:-25px}
}
