.pu-site-header,.pu-site-footer,.pu-discover-dialog { --nav-ink:#20273a; --nav-accent:#9f5237; --nav-border:#e7ddd3; color:var(--nav-ink); font-family:Inter,sans-serif; }
.pu-site-header *, .pu-site-footer *, .pu-discover-dialog * { box-sizing:border-box; }
.pu-site-header a,.pu-site-footer a { color:inherit; text-decoration:none; }
.pu-site-header { background:#fffdfa; border-bottom:1px solid var(--nav-border); position:relative; z-index:50; }
.pu-header-main { max-width:1320px; margin:auto; padding:12px 28px; display:flex; align-items:center; gap:48px; min-height:94px; }
.pu-nav-logo { display:block; flex:0 0 115px; }
.pu-nav-logo img { width:115px; height:auto; display:block; }
.pu-header-search { flex:1; max-width:620px; margin:auto; }
.pu-nav-search { display:flex; align-items:center; background:#f6f1eb; border:1px solid var(--nav-border); border-radius:30px; overflow:hidden; margin:0; }
.pu-nav-search input[type=search] { width:100%; min-width:0; background:none; border:0; box-shadow:none; padding:13px 18px; font:400 14px/1.5 Inter,sans-serif; color:var(--nav-ink); }
.pu-nav-search button { flex:0 0 46px; display:grid; place-items:center; height:46px; padding:0; border:0; background:none; color:var(--nav-ink); box-shadow:none; }
.pu-header-actions { display:flex; align-items:center; gap:24px; font-size:13px; font-weight:600; }
.pu-header-actions a { display:flex; align-items:center; gap:8px; min-height:44px; }
.pu-nav-cart-count { display:grid; place-items:center; min-width:21px; height:21px; padding:0 4px; border-radius:50%; background:#f2e3d9; color:#9f5237; font-size:11px; }
.pu-main-navigation { border-top:1px solid #f0e9e2; }
.pu-nav-categories { display:flex; justify-content:center; align-items:center; gap:18px; max-width:1320px; padding:0 24px; margin:auto; }
.pu-nav-group { position:relative; margin:0; border:0; }
.pu-nav-group summary { display:flex; align-items:center; gap:7px; padding:14px 7px; list-style:none; cursor:pointer; font-size:14px; font-weight:600; }
.pu-nav-group summary::-webkit-details-marker { display:none; }
.pu-nav-group summary span { color:#8b7d71; font-size:14px; }
.pu-nav-group[open] summary,.pu-nav-group summary:hover { color:var(--nav-accent); }
.pu-nav-panel { position:absolute; top:100%; left:0; min-width:260px; padding:14px; background:#fffdfa; border:1px solid var(--nav-border); border-radius:0 0 14px 14px; box-shadow:0 14px 30px #20273a14; }
.pu-nav-panel a { display:block; font-size:14px; padding:11px 12px; border-radius:7px; }
.pu-nav-panel a:hover { background:#f6ece4; color:var(--nav-accent); }
.pu-nav-panel .pu-nav-view-all { color:var(--nav-accent); font-weight:650; border-bottom:1px solid var(--nav-border); border-radius:0; margin-bottom:5px; }
.pu-site-header .pu-for-you { display:flex; align-items:center; gap:7px; color:var(--nav-accent); padding:9px 13px; border-radius:22px; background:#f5e7dc; font-weight:700; font-size:14px; white-space:nowrap; }
.pu-site-header .pu-for-you:hover { background:#efdbcc; }
.pu-mobile-menu,.pu-mobile-search,.pu-mobile-nav-top,.pu-drawer-search,.pu-mobile-nav-help,.pu-mobile-discover,.pu-nav-scrim { display:none; }
.pu-site-header :focus-visible,.pu-site-footer :focus-visible,.pu-discover-dialog :focus-visible { outline:2px solid #9f5237; outline-offset:3px; }
.pu-site-footer { background:#f5eee5; border-top:1px solid var(--nav-border); padding:48px 28px 0; }
.pu-footer-grid { max-width:1264px; margin:0 auto 34px; display:grid; grid-template-columns:1.35fr 1fr 1.15fr 1fr; gap:42px; }
.pu-footer-brand img { display:block; width:135px; height:auto; margin-bottom:14px; }
.pu-footer-brand p { font-size:14px; line-height:1.6; color:#58647a; margin:0 0 12px; }
.pu-footer-brand>a:not(:first-child) { display:block; font-size:13px; margin-top:9px; }
.pu-footer-brand>a:last-child { color:var(--nav-accent); font-weight:600; }
.pu-footer-group { border:0; margin:0; }
.pu-footer-group summary { list-style:none; font-size:14px; font-weight:750; padding:12px 0 16px; pointer-events:none; }
.pu-footer-group summary::-webkit-details-marker { display:none; }
.pu-footer-group summary span { display:none; }
.pu-footer-group a { display:block; width:fit-content; padding:7px 0; font-size:13px; line-height:1.5; color:#58647a; }
.pu-site-footer a:hover { text-decoration:underline; text-underline-offset:4px; color:var(--nav-accent); }
.pu-footer-business { max-width:1264px; margin:auto; border-top:1px solid #e1d6cb; padding:22px 0; display:flex; gap:14px; justify-content:space-between; color:#58647a; font-size:12px; line-height:1.7; }
.pu-footer-business a { white-space:nowrap; }
.pu-footer-bottom { text-align:center; font-size:11px; color:#58647a; padding:18px 0; border-top:1px solid #e1d6cb; }
/* Company details now live in the shared footer on every page. */
.home .pu-home-business,.home .pu-home-legacy { display:none; }
html.pu-navigation-locked { overflow:hidden; }
.pu-discover-dialog { width:min(580px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; overscroll-behavior:contain; padding:32px; border:1px solid #e7ddd3; border-radius:20px; background:#fffdfa; margin:auto; box-shadow:0 24px 70px #20273a30; }
.pu-discover-dialog::backdrop { background:#20273a80; }
.pu-nav-close { width:44px; height:44px; border:0; border-radius:50%; background:transparent; color:#20273a; padding:0; font:400 28px/1 Inter,sans-serif; box-shadow:none; cursor:pointer; }
.pu-discover-dialog>.pu-nav-close { position:absolute; right:10px; top:10px; }
.pu-discover-eyebrow { display:flex; align-items:center; gap:8px; color:#9f5237; font-size:14px; font-weight:700; margin:0 0 14px; }
.pu-discover-dialog h2 { font:750 26px/1.2 Inter,sans-serif; letter-spacing:-.025em; text-transform:none; margin:0 20px 12px 0; color:#20273a; }
.pu-discover-dialog p { font:400 14px/1.6 Inter,sans-serif; color:#58647a; margin:0 0 16px; }
.pu-discover-interests { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:16px; }
.pu-discover-interests button { padding:9px 12px; border:1px solid #ded1c5; border-radius:20px; background:white; color:#20273a; font:600 12px/1.4 Inter,sans-serif; box-shadow:none; text-transform:none; }
.pu-discover-interests button[aria-pressed=true] { background:#9f5237; color:white; border-color:#9f5237; }
.pu-discover-result a { display:block; text-decoration:none; color:#20273a; }
.pu-discover-result img { width:100%; max-height:270px; object-fit:contain; background:#f6f1eb; border-radius:12px; }
.pu-discover-result h3 { font:700 17px/1.4 Inter,sans-serif; text-transform:none; margin:14px 0 10px; }
.pu-discover-result .pu-discover-cta { display:block; text-align:center; border-radius:9px; padding:12px; background:#9f5237; color:white; font:650 14px/1.5 Inter,sans-serif; }
.pu-discover-another { width:100%; margin-top:10px; background:transparent; border:1px solid #dccbbc; color:#9f5237; font:600 14px/1.5 Inter,sans-serif; padding:10px; border-radius:9px; box-shadow:none; text-transform:none; }
.pu-discover-dialog [hidden],.pu-site-header [hidden] { display:none!important; }
@media(min-width:1101px) { .pu-nav-group:last-of-type .pu-nav-panel { left:auto; right:0; } }
@media(max-width:1100px) {
 .pu-header-main { padding:8px 18px; min-height:72px; gap:12px; flex-wrap:wrap; justify-content:space-between; }
 .pu-nav-logo { flex:0 0 90px; position:absolute; left:50%; transform:translateX(-50%); top:5px; }
 .pu-nav-logo img { width:90px; }
 .pu-header-actions { gap:8px; }
 .pu-header-actions .pu-nav-account,.pu-cart-label { display:none; }
 .pu-nav-icon { display:grid; place-items:center; width:40px; min-height:44px; border:0; padding:0; background:none; color:#20273a; box-shadow:none; }
 .pu-nav-cart { gap:3px!important; }
 .pu-header-search { flex:0 0 100%; max-width:none; order:5; padding-top:5px; }
 .single-product .pu-nav-ready .pu-header-search { display:none; }
 .single-product .pu-nav-ready.pu-search-open .pu-header-search { display:block; }
 .pu-main-navigation { border:0; background:#fffdfa; }
 .pu-nav-ready .pu-main-navigation { display:none; position:fixed; left:0; top:0; bottom:0; width:min(390px,92vw); overflow-y:auto; padding:20px; z-index:102; box-shadow:12px 0 50px #20273a20; }
 .pu-nav-ready.pu-menu-open .pu-main-navigation { display:block; }
 .pu-mobile-nav-top { display:flex; align-items:center; justify-content:space-between; font-size:14px; gap:10px; margin-bottom:18px; }
 .pu-drawer-search { display:block; margin-bottom:18px; }
 .pu-nav-categories { display:block; padding:0; }
 .pu-nav-group { border-bottom:1px solid #e7ddd3; }
 .pu-nav-group summary { justify-content:space-between; padding:17px 4px; font-size:15px; }
 .pu-nav-panel { position:static; min-width:0; padding:0 0 12px 8px; border:0; box-shadow:none; }
 .pu-nav-categories>.pu-for-you { margin:20px 0; width:fit-content; }
 .pu-mobile-nav-help { display:flex; flex-direction:column; gap:18px; font-size:13px; padding-top:18px; margin-top:20px; border-top:1px solid #e7ddd3; }
 .pu-nav-ready.pu-menu-open .pu-nav-scrim { display:block; position:fixed; inset:0; width:100%; height:100dvh; border:0; border-radius:0; background:#20273a66; z-index:101; }
 .pu-mobile-discover { display:flex; align-items:center; justify-content:center; gap:12px; padding:8px 12px 10px; font-size:11px; color:#58647a; }
 .pu-mobile-discover .pu-for-you { font-size:12px; padding:6px 10px; }
 .pu-mobile-discover svg { width:18px; height:18px; }
 .pu-footer-grid { grid-template-columns:1fr 1fr; gap:28px; }
}
@media(max-width:600px) {
 .pu-site-footer { padding:28px 22px 0; }
 .pu-footer-grid { display:block; margin-bottom:20px; }
 .pu-footer-brand { padding-bottom:24px; }
 .pu-footer-brand img { width:115px; }
 .pu-footer-group { border-top:1px solid #e1d6cb; }
 .pu-footer-group summary { display:flex; align-items:center; justify-content:space-between; padding:18px 0; pointer-events:auto; cursor:pointer; }
 .pu-footer-group summary span { display:block; font-size:18px; font-weight:400; }
 .pu-footer-group[open] summary span { transform:rotate(45deg); }
 .pu-footer-group>div { padding-bottom:16px; }
 .pu-footer-group a { padding:9px 0; }
 .pu-footer-business { display:block; padding:18px 0; font-size:11px; }
 .pu-footer-business a { display:block; margin-top:10px; }
 .pu-discover-dialog { padding:28px 20px 22px; }
 .pu-discover-dialog h2 { font-size:23px; }
 .pu-discover-result img { max-height:230px; }
}
/* Keep the brand signature centered within its footer column on every screen. */
.pu-footer-brand { text-align:center; }
.pu-footer-brand img { margin-left:auto; margin-right:auto; }
@media(max-width:600px) {
 .pu-footer-business { text-align:center; }
}
