/* Rosie 2.0. Scoped enhancements; preserves BeTheme / WooCommerce operations. */
:root { --rosie-burgundy:#501316; --rosie-burgundy-dark:#3f0d12; --rosie-ivory:#faf7f2; --rosie-champagne:#d9c3a0; --rosie-ink:#25211f; --rosie-muted:#77706a; --rosie-border:#e9e2da; }
body { color:var(--rosie-ink); -webkit-font-smoothing:antialiased; }
body h1,body h2,body h3,body h4,body .woocommerce-loop-product__title { letter-spacing:-.022em; }
body a { transition:color .18s ease,background-color .18s ease,border-color .18s ease; }
body a:focus-visible,body button:focus-visible,body input:focus-visible,body select:focus-visible { outline:2px solid var(--rosie-burgundy);outline-offset:3px; }
/* Navigation: existing BeTheme nav remains operative. */
#Top_bar, .header-classic #Top_bar { box-shadow:0 1px 0 rgba(51,20,20,.07); }
#Top_bar .menu > li > a { letter-spacing:.015em; }
#Top_bar .menu > li > a:hover, #Top_bar .menu > li.current-menu-item > a { color:var(--rosie-burgundy); }
#Top_bar .menu li ul { box-shadow:0 18px 46px rgba(31,17,13,.12); }
#Top_bar .menu li ul a { line-height:1.4; }
#Top_bar .menu li ul a:hover { color:var(--rosie-burgundy);background:var(--rosie-ivory); }
/* BeTheme native mega menus */
#Top_bar .menu li ul.mfn-megamenu { border-top:2px solid var(--rosie-burgundy);padding:20px 16px; }
#Top_bar .menu li ul.mfn-megamenu .mfn-megamenu-title { color:var(--rosie-burgundy);font-weight:650; }
/* WooCommerce catalogue: minimum styling, no global fixed heights. */
.woocommerce .woocommerce-products-header, .woocommerce .woocommerce-result-count { color:var(--rosie-muted); }
.woocommerce ul.products { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 22px; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display:none!important; }
.woocommerce ul.products li.product { float:none!important;width:auto!important;margin:0!important;min-width:0;clear:none!important;text-align:center; }
.woocommerce ul.products li.product .image_frame,.woocommerce ul.products li.product .product-loop-thumb { width:100%; }
.woocommerce ul.products li.product img { width:100%;height:clamp(245px,27vw,390px);object-fit:contain;background:#f6f3ee;transition:transform .35s ease; }
.woocommerce ul.products li.product a:hover img { transform:scale(1.018); }
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product h2 { font-weight:500;font-size:1.08rem;line-height:1.45;margin:15px 0 5px; }
.woocommerce ul.products li.product .price { color:var(--rosie-burgundy)!important;font-size:1rem;font-weight:500; }
.woocommerce ul.products li.product .button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { background:var(--rosie-burgundy);color:#fff;border:1px solid var(--rosie-burgundy);border-radius:4px;letter-spacing:.01em; }
.woocommerce ul.products li.product .button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { background:var(--rosie-burgundy-dark);color:#fff; }
.woocommerce nav.woocommerce-pagination ul li span.current { background:var(--rosie-burgundy);color:#fff; }
.woocommerce .product .product_title { font-size:clamp(2rem,3.4vw,3.5rem);line-height:1.1; }
.woocommerce div.product p.price,.woocommerce div.product span.price { color:var(--rosie-burgundy); }
/* Optional menu shortcode. Drop into a full-width BeBuilder header element. */
.rosie-mega,.rosie-mega * { box-sizing:border-box; }
.rosie-mega { position:relative;z-index:60;width:100%;font-family:inherit; }
.rosie-mega__root { list-style:none!important;display:flex;align-items:center;justify-content:center;gap:clamp(8px,1.8vw,28px);padding:0!important;margin:0!important; }
.rosie-mega__entry { position:static;margin:0!important;list-style:none; }
.rosie-mega__heading { display:inline-flex;align-items:center;gap:4px;white-space:nowrap; }
.rosie-mega__root a { color:var(--rosie-ink);text-decoration:none; }
.rosie-mega__heading>a,.rosie-mega__shopall>a { display:inline-flex;padding:17px 0;font-size:13px;font-weight:500; }
.rosie-mega__root a:hover { color:var(--rosie-burgundy); }
.rosie-mega__toggle { appearance:none;border:0!important;background:transparent!important;color:var(--rosie-muted)!important;cursor:pointer;padding:7px!important;font:inherit; }
.rosie-mega__panel[hidden] { display:none!important; }
.rosie-mega__panel { position:absolute;left:0;right:0;top:100%;z-index:65;background:#fff;padding:26px clamp(18px,4vw,58px) 36px;border-top:2px solid var(--rosie-burgundy);box-shadow:0 24px 45px rgba(32,23,22,.13);max-height:72vh;overflow:auto;text-align:left; }
.rosie-mega__panel-top { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;padding-bottom:14px;border-bottom:1px solid var(--rosie-border);font-size:21px;font-family:Georgia,serif; }
.rosie-mega__panel-top a { font:500 12px/1.5 inherit;color:var(--rosie-burgundy); }
.rosie-mega__columns { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 36px; }
.rosie-mega__column { min-width:0; }
.rosie-mega__column-title { display:inline-block;margin-bottom:12px;font-size:14px;font-weight:650;color:var(--rosie-burgundy)!important; }
.rosie-mega__column ul { list-style:none!important;margin:0!important;padding:0!important; }
.rosie-mega__column li { margin:0 0 9px!important;line-height:1.4; }
.rosie-mega__column li a { color:#625b57;font-size:13px; }
@media(max-width:959px) { .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px; } .rosie-mega__root { flex-wrap:wrap;justify-content:flex-start;gap:0 18px; } .rosie-mega__heading>a,.rosie-mega__shopall>a { padding:12px 0; } .rosie-mega__panel { top:100%;max-height:65vh; } .rosie-mega__columns { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:580px) { .woocommerce ul.products { gap:18px 10px; } .woocommerce ul.products li.product img { height:205px; } .woocommerce ul.products li.product h2 { font-size:14px; } .rosie-mega__root { display:block; } .rosie-mega__entry { border-bottom:1px solid var(--rosie-border); } .rosie-mega__heading { display:flex;justify-content:space-between; } .rosie-mega__panel { position:static;box-shadow:none;border-top:1px solid var(--rosie-border);padding:15px;max-height:none; } .rosie-mega__columns { grid-template-columns:1fr;gap:14px; } .rosie-mega__panel-top { font-size:18px; } }
@media(prefers-reduced-motion:reduce) { body a,.woocommerce ul.products li.product img { transition:none!important; } }

/* Rosie Shop Header: custom mega menu on desktop; native BeTheme menu on mobile. */
#Top_bar .rosie-shop-navigation-row { position:relative; }
#Top_bar .rosie-mega-menu-wrap { width:100%; }
@media (min-width:960px) {
  #Top_bar .rosie-shop-navigation-row .rosie-native-menu { display:none!important; }
}
@media (max-width:959px) {
  #Top_bar .rosie-shop-navigation-row .rosie-mega-menu-wrap { display:none!important; }
}

/* Rosie 2.1.2: keep expanded panels above BeTheme page content, with a stable hit area. */
#Top_bar .rosie-shop-navigation-row { z-index: 1000; overflow: visible !important; }
#Top_bar .rosie-mega-menu-wrap, #Top_bar .rosie-mega, #Top_bar .rosie-mega__root { overflow: visible !important; }
#Top_bar .rosie-mega__entry--open .rosie-mega__panel { pointer-events: auto; }
#Top_bar .rosie-mega__panel:not([hidden]) { z-index: 1005; }
#Top_bar .rosie-mega__panel a { position:relative; z-index: 1; pointer-events:auto; }

/* Rosie 2.2.1: left-aligned menu, consistent clickable areas and colour chips. */
#Top_bar .rosie-shop-navigation-row .rosie-mega__root { justify-content:flex-start; gap:clamp(10px,1.55vw,26px); }
#Top_bar .rosie-shop-navigation-row .rosie-mega__home>a { display:inline-flex; padding:17px 0; font-weight:600; font-size:13px; }
#Top_bar .rosie-mega__column-title, #Top_bar .rosie-mega__column li a { display:inline-flex; align-items:center; gap:10px; }
#Top_bar .rosie-mega__swatch { width:18px;height:18px;flex:0 0 18px;display:inline-block;border:1px solid rgba(25,20,20,.18);border-radius:50%;box-shadow:0 0 0 2px #fff; }
#Top_bar .rosie-mega__swatch-label {display:inline;}
@media(min-width:960px){ #Top_bar .rosie-mega__root{padding-left:0!important;margin-left:0!important;} #Top_bar .rosie-mega-menu-wrap{margin-left:0!important;} }
