/* Boutique refinement: product-first spacing, shared glass and readable type. */
html:root {
 --shop-accent: #705222;
 --shop-secondary: #555e6b;
 --shop-surface: linear-gradient(135deg,rgba(255,255,255,.66),rgba(226,233,243,.3));
 --shop-shadow: inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(55,69,95,.08),0 6px 18px rgba(36,49,73,.06);
}
html:root[data-theme=dark] {
 --shop-accent: #e6cd94;
 --shop-secondary: #b9c0d2;
 --shop-surface: linear-gradient(135deg,rgba(126,139,178,.19),rgba(39,47,75,.3));
 --shop-shadow: inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(255,255,255,.04),0 6px 18px rgba(0,0,0,.1);
}
html:root body .brand-contacts { width:calc(100% - 32px); margin-bottom: 8px; gap:10px; }
html:root body .brand-contact { background:var(--shop-surface);box-shadow:var(--shop-shadow);color:var(--shop-accent);border-radius:22px; }
html:root body .brand-whatsapp { padding:12px 14px; gap:12px; }
html:root body .brand-contact small { color:var(--shop-secondary); font-size:11px; line-height:1.45; }
html:root body .brand-contact strong { font-size:14px; line-height:1.4; letter-spacing:-.01em; }
html:root body .brand-contact .brand-contact-number { margin-top:4px;font-size:11px;line-height:1.4; }
html:root body .brand-womens { padding:8px;gap:12px; }
html:root body .brand-womens-photo { width:84px;height:94px;border-radius:14px; }
html:root body .brand-womens .brand-contact-eyebrow { color:var(--shop-accent);font-size:9px;letter-spacing:.08em;margin-bottom:4px; }
html:root body .catalog-layout .catalog-intro { padding:18px 0 8px; }
html:root body .catalog-layout .catalog-intro .eyebrow { display:none; }
html:root body .catalog-layout .catalog-intro h1 { margin:0;font-size:clamp(27px,4.2vw,44px);line-height:1.12;letter-spacing:-.035em;font-weight:600; }
html:root body .catalog-subline { padding:0 0 16px; }
html:root body .catalog-subline #product-count { color:var(--shop-secondary);font-size:11px; }
html:root body .catalog-controls { margin:8px 0 18px;gap:12px; }
html:root body .product-card .product-name { font-size:13px;line-height:1.45;letter-spacing:0; }
html:root body .product-meta strong { font-size:14px;font-variant-numeric:tabular-nums; }
html:root body .catalog-switch { min-height:56px;padding:5px; }
html:root body .catalog-switch:before { top:5px;bottom:5px;left:5px;width:calc((100% - 10px)/3); }
html:root body .catalog-switch>a,html:root body .catalog-switch>button { min-height:44px;padding:10px 5px; }
html:root body .brand-contact:focus-visible,html:root body .catalog-switch>a:focus-visible,html:root body .catalog-switch>button:focus-visible { outline:2px solid var(--shop-accent);outline-offset:3px; }
@media(max-width:700px){
 html:root body .site-header { min-height:80px;height:auto;padding-top:10px;padding-bottom:10px; }
 html:root body #app { padding-top:8px; }
 html:root body .catalog-switch { margin-top:0; }
 html:root body .product-grid { gap:22px 12px; }
}
@media(min-width:700px){
 html:root body .brand-contacts { width:calc(100% - 80px); }
 html:root body .brand-contact { min-height:112px; }
}
@media(max-width:360px){
 html:root body .brand-contact strong { font-size:12px; }
 html:root body .brand-contact small { font-size:10px; }
 html:root body .brand-whatsapp { gap:8px;padding:10px 12px; }
 html:root body .brand-whatsapp .brand-contact-symbol { width:28px;height:28px; }
 html:root body .brand-womens-photo { width:72px;height:88px; }
 html:root body .catalog-layout .catalog-intro h1 { font-size:26px; }
}
@media(hover:hover){html:root body .brand-contact:hover { box-shadow:var(--shop-shadow),inset 0 0 0 1px rgba(178,153,95,.24); }}
@media(prefers-reduced-motion:no-preference){
 html:root body .brand-contact { transition:transform 150ms ease-out,box-shadow 150ms ease-out; }
}
html:root body .catalog-controls:has(.shop-filters[hidden]) .catalog-subline { min-height:28px;padding:0 0 12px;align-items:center; }
html:root body .catalog-controls #product-count { display:inline; }
@media(min-width:700px){html:root body .brand-contacts { max-width:1280px; }}
/* Shared optical surfaces. Blur only on a few controls, never every scrolling tile. */
html:root {
 --liquid-surface:linear-gradient(125deg,rgba(255,255,255,.7) 0%,rgba(255,255,255,.25) 48%,rgba(191,207,228,.2) 100%);
 --liquid-edge:rgba(255,255,255,.65);
 --liquid-depth:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(88,111,145,.14),0 8px 24px rgba(35,52,80,.08);
}
html:root[data-theme=dark] {
 --liquid-surface:linear-gradient(125deg,rgba(173,187,222,.22) 0%,rgba(102,122,168,.08) 48%,rgba(42,53,87,.2) 100%);
 --liquid-edge:rgba(202,215,244,.24);
 --liquid-depth:inset 0 1px 0 rgba(237,243,255,.28),inset 0 -1px 0 rgba(237,243,255,.07),0 8px 24px rgba(3,7,19,.18);
}
html:root body {
 background:radial-gradient(ellipse at 12% 0%,rgba(128,150,189,.12),transparent 55%),radial-gradient(ellipse at 95% 45%,rgba(145,160,198,.07),transparent 55%),var(--canvas);
 background-attachment:scroll;
}
html:root body .brand-contact,
html:root body .search-input,
html:root body .size-filter-button,
html:root body .contact-option,
html:root body .order-summary,
html:root body .catalog-switch {
 background:var(--liquid-surface)!important;
 border:1px solid var(--liquid-edge)!important;
 box-shadow:var(--liquid-depth)!important;
 backdrop-filter:blur(16px) saturate(135%);
 -webkit-backdrop-filter:blur(16px) saturate(135%);
}
html:root body .catalog-controls { grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px;row-gap:12px; }
html:root body .catalog-controls .search-row { grid-column:1/-1; }
html:root body .catalog-controls .search-input { min-height:50px;height:auto;border-radius:25px!important;padding:0 16px; }
html:root body .search-input input { min-width:0;min-height:48px;background:transparent;border:0;box-shadow:none;color:var(--ink); }
html:root body .catalog-controls .size-filter-button { min-height:46px;border-radius:23px!important; }
html:root body .catalog-controls .catalog-subline { padding:0;min-height:24px;align-items:center; }
html:root body .catalog-controls:has(.shop-filters[hidden]) { margin:0 0 12px; }
html:root body .catalog-controls:has(.shop-filters[hidden]) .catalog-subline { padding:0; }
html:root body .search-input:focus-within { outline:2px solid var(--shop-accent);outline-offset:3px; }
html:root body .size-chip:not(.selected),html:root body .directory-item:not(.selected),html:root body .quantity {
 background:var(--liquid-surface)!important;box-shadow:var(--liquid-depth)!important;border:1px solid var(--liquid-edge)!important;
}
html:root body .directory-item { backdrop-filter:none!important;-webkit-backdrop-filter:none!important; }
html:root body .order-summary { border-radius:26px; }
html:root body .contact-option { border-radius:28px!important; }
@media(prefers-reduced-transparency:reduce){
 html:root body .brand-contact,html:root body .search-input,html:root body .size-filter-button,html:root body .contact-option,html:root body .order-summary,html:root body .catalog-switch { background:var(--panel)!important;backdrop-filter:none;-webkit-backdrop-filter:none; }
}
/* One compositor-driven wave. Keep the live controls clickable during snapshots. */
::view-transition-group(root) { animation:none; }
::view-transition-old(root),::view-transition-new(root) { animation:none;mix-blend-mode:normal; }
::view-transition-old(root) { z-index:1; }
::view-transition-new(root) { z-index:2; }
::view-transition { pointer-events:none; }
@media(prefers-reduced-motion:reduce){::view-transition-group(root){animation:none}}
